Implementation and Performance Evaluation of Neural Network for English Alphabet Recognition System

One of the most classical applications of the Artificial Neural Network is the character recognition system. This system is the base for many different types of applications in various fields, many of which are used in daily lives. Cost effective and less time consuming, businesses, post offices, banks, security systems, and even the field of robotics employ this system as the base of their operations. For character recognition, there are many prosperous algorithms for training neural networks. Back propagation (BP) is the most popular algorithm for supervised training multilayer neural networks. In this paper, Back propagation (BP) Character Recognition software is also used in scanners and faxes that allow the user to turn graphic images of text into editable documents. Newer applications have even expanded outside the limitations of just characters. Eye, face, and fingerprint scans used in high-security areas employ a newer kind of recognition. More and more assembly lines are becoming equipped with robots scanning the gears that pass underneath for faults, and it has been applied in the field of robotics to allow robots to detect edges, shapes, and colors. algorithm is implemented for the training of Character recognition is one of the most widely used multilayer neural networks employing in character recognition system. The neural network architecture used in this implementation is a fully connected three layer network. The network can train over 16 characters since the 4-element output vector is used as applications of Neural Networks. However, the problems of slow training process, choosing suitable values for the parameters and escaping from local minima remain a major problem that face the developers when using Neural Network. In recent output units. This paper also evaluates the years, a pen-based computer has become popular as performance of Back propagation (BP) algorithm with an input device. Since character recognition systems various learning rates and mean MATLAB Programming language implementation. square errors. is used for are the preferred input methods, there are many character recognition methods that have been introduced. In this paper, Back propagation (BP) is developed and trained to recognize characters. Back

Character Recognition software is also used in scanners and faxes that allow the user to turn graphic images of text into editable documents. Newer applications have even expanded outside the limitations of just characters. Eye, face, and fingerprint scans used in high-security areas employ a newer kind of recognition. More and more assembly lines are becoming equipped with robots scanning the gears that pass underneath for faults, and it has been applied in the field of robotics to allow robots to detect edges, shapes, and colors. algorithm is implemented for the training of Character recognition is one of the most widely used multilayer neural networks employing in character recognition system. The neural network architecture used in this implementation is a fully connected three layer network. The network can train over 16 characters since the 4-element output vector is used as applications of Neural Networks. However, the problems of slow training process, choosing suitable values for the parameters and escaping from local minima remain a major problem that face the developers when using Neural Network. In recent output units. This paper also evaluates the years, a pen-based computer has become popular as performance of Back propagation (BP) algorithm with an input device. propagation (BP) applies a non-linear function on the error from each output unit before applying the back propagation phase. The (BP) aims to speed up the training process and escape from local minima. Character Recognition is used widely post offices, banks, airports, airline today in the offices, and II. PROPOSED IMPLEMENTATION STEPS businesses. Address readers sort incoming and outgoing mail, check readers in banks capture images of checks for processing, airline ticket and passport readers are used for various purposes from accounting for passenger revenues to checking database records.

OF ALPHABET RECOGNITION
The steps needed for the implementation of alphabet recognition are described in the following articles. Journal of Trend in S Sc cientific an d Development (IJT TSRD)

Internatio nal Open Access Journal
A. Creating the Alphabet Recognition The Character Recognition System must first be created through a few simple steps in order to prepare it for presentation into MATLAB. The matrixes of each letter of the alphabet must be created along with the network structure. In addition, one must understand how to pull the Binary Input Code from the matrix, and how to interpret the Binary Output Code, which the computer ultimately produces.

B. Alphabet Matrixes
A character matrix is an array of black and white pixels; the vector of 1 represented by black, and 0 by white. They can be created by the use of MATLAB, in size or font imaginable; in addition, multiple fonts of the same alphabet may even be used under separate training sessions. In this paper, 24 x 21 size of character matrix is used and Tahoma font type is used for testing.

C. Neural Network
The network receives the 504 Boolean values as a 504-element input vector. It is then required to identify the letter by responding with a 4-element output vector. In this paper, since 16 English characters (A-P) are trained and tested, the system yields 16 4-element output vectors. Each output vector represents a letter. To operate correctly, the network should respond with a value closing to the corresponding targeted output vector of the letter being presented to the network.

D. Architecture
The neural network needs 504 inputs and 4 neurons in its output layer to identify the letters. The sigmoid transfer function was picked because its output range (0 to 1) is perfect for learning to output Boolean values. The hidden layer has 84 neurons.
E. Setting the Weight There are two sets of weights; input-hidden layer weights and hidden-output layer weights. These weights represent the memory of the neural network, where final training weights can be used when running the network. Initial weights are generated randomly there, after; weights are updated using the error (difference) between the actual output of the network and the desired (target) output. Weight updating occurs each iteration, and the network learns while iterating repeatedly until a net minimum error value is achieved.

F. Training
The network is first trained on ideal vectors until it has a low mean squared error. Then, the network is trained on all sets of vectors. The network is trained on noise-free alphabet to maintain the network's ability to classify ideal input vectors. All training is done using back propagation with adaptive learning rate.
III.IMPLEMENTING THE BACK PROPAGATION LEARNING ALGORITHM FOR A FULLY CONNECTED THREE LAYER NETWORK Neural networks are developed and trained to recognize characters. Back propagation (BP), which applies a non-linear function on the error from each output unit before applying the back propagation phase. The BP aims to speed up the training process and escape from local minima.
IV. EXPERIMENTAL PARAMETERS Two three-layered neural networks are implemented, each with different learning parameters.  The experiments were made on recognizing characters from A to P. Characters are represented as N-vector which is given to the input layer of each neural network. As shown in Fig.1  There are many steps in Neural Network program. If the user wants to run this program, the following command has to type in command window of MATLAB.
>> Main-Program At this time, cover window appears as shown in Figure 2.

Figure. 2 Cover window
After main program has opened, the cover window appears as shown in Figure.2. In this screen, there are two submenus under Main menu. If the user wants to train the data set, the submenu "Train" can be chosen. Otherwise, the submenu "Test" can be chosen if the user want to test. If the user chooses the "Train" menu, the command window appears as in Fig. 4, requesting the user to give desired learning rate and mean square error. Then the training program perform its task (training data set) and outputs the results of total iteration number, total time taken (in seconds), mean squared error and actual output vector as shown in figure.    Table3 shows the results of training process with VI. CONCLUSIONS This paper aims to apply the BP algorithm on one of the Back propagation neural network application, learning rate = 0.5 for five various mean square error which is character recognition. The architecture of parameters. Firstly, the user uses the learning rate 504×84×4 was used with various values for the parameter = 0.5 for mean square error = 0.00001. learning rate. The experimental results show that Then, the result output can be seen as the total using the BP can speed up convergence of the training iteration numbers are 157 and the time taken is process. Although small values for the learning rate 38.9225 seconds. If the user wants to test the data set, were used, the BP was able to train the neural the submenu "Test" can be chosen. The user can enter the test character file from A to P for both purposes of network. The performance of recognition can be training and testing processes. Fig. 3 shows the results of testing characters which have been trained. Firstly, 'Enter Test File:' request the user to give the desired for any image recognition applications. The network is a 3 layer configuration, with the required "It is B", etc.), will appear as shown in Fig. 5. The input and output layers, as well as a single hidden user can test 16 characters (A to P) by entering desired test file. For the question, "Do you want to test the next character (y/n)?", the user can write "y or layer that choosing the number of hidden layers is a difficult task with no hard rules or guidelines. However, the size of a hidden layer is related to the n". If the user writes "y", continue to test the next features or distinguishing characteristics that are to be character otherwise "n" to exit the command window. discerned from the data. Here, the network applies one hidden layer, which has 84 neurons. The output layer is where the output vector can be retrieved. Each neuron in this layer outputs a value between 0 and 1 by applying logical sigmoid function (sig = 1/ (1+exp (-1*s)). In addition, to obtain the accurate output values (0 or 1); the threshold value of 0.5 is used when calculating each neuron's output.