Geetika Garg

Publication Date

Fall 2015

Degree Type

Master's Project


Computer Science


4 ABSTRACT NEURAL NETWORK CAPTCHA CRACKER A CAPTCHA (acronym for "Completely Automated Public Turing test to tell Computers and Humans Apart") is a type of challenge-response test used to determine whether or not a user providing the response is human. In this project, we used a deep neural network framework for CAPTCHA recognition. The core idea of the project is to learn a model that breaks image-based CAPTCHAs. We used convolutional neural networks and recurrent neural networks instead of the conventional methods of CAPTCHA breaking based on segmenting and recognizing a CAPTCHA. Our models consist of two convolutional layers to learn image features and a recurrent layer to output character sequence. We tried different configurations, including wide and narrow layers and deep and shallow networks. We synthetically generated a CAPTCHA dataset of varying complexity and used different libraries to avoid overfitting on one library. We trained on both fixed-and variable-length CAPTCHAs and were able to get accuracy levels of 99.8% and 80%, respectively.