# How to speed up the learning mechanism in a connectionist...

## Transcription

How to speed up the learning mechanism in a connectionist...

How to speed up the learning mechanism in a connectionist model Szil´ard Vajda, Abdel Bela¨ıd Henri Poincar´e University, Nancy 1 Loria Research Center READ Group Campus Scientifique, BP. 239 Vandoeuvre les Nancy, 54506, France {vajda,abelaid}@loria.fr Abstract In this paper a fast data driven learning-corpus building algorithm (FDDLCB) is proposed. The generic technique allows to build dynamically a representative and compact learning corpus for a connectionist model. The constructed dataset contains just a reduced number of patterns but sufficiently descriptive to characterize the different classes which should be separated. The method is based on a double least mean squares (LMS) error minimization mechanism trying to find the optimal boundaries of the different pattern classes. In the classical learning process the LMS is serving to minimize the error during the learning and this process is improved with a second one, as the new samples selection is also based on the idea to minimize the recognition error. Reinforcing the class boundaries where the recognition fails let us achieve a rapid and good generalization without any loss of occuracy. A modified version of the algorithm will be also presented. The experiments were performed on MNIST1 separated digit dataset. The encouraging result (98.51%) using just 1.85% of the available patterns from the original training dataset is comparable even with the state of the art techniques. 1. Introduction In the last few decades among the neural network (NN) based applications that have been proposed for pattern recognition, character recognition has been one of the most successful. The most common approach applied in this field is the usage of a multi-layer perceptron (MLP) with a supervised learning scheme based mainly on the least mean squares (LMS) error minimization rule. 1 Modified NIST Generally to train such a system, a huge data amount is needed in order to cover the different intra-class and inter-class variations. Hence in the neural network scheme based approaches we can find equally advantages and disadvantages. Among the advantages we can enumerate: good generalization property based on solid mathematical background, good convergence rate, fast recognition process, etc. [2]. Among the disadvantages can be enumerated some restrictions like: the size of the input should be fixed, the nature of the input is not obvious for the different pattern recognition tasks, it is hard to implant in the network topology some a priori knowledge based on the data corpus. In the same time, the system convergence speed can be long, as the adjustment of the decision surface (hyperplane) in the function of the network’s free parameters and the huge data amount can be a time costly process. The excessive data amount, the network architecture and the course of dimensionality are always an endless trade-off in the neural networks theory [15]. In order to tackle these problems, different techniques have been proposed in the literature. Some of them use some a priori knowledge derived from the dataset, some other methods modify the network topology in order to reduce the number of free-parameters, some other techniques try to reduce the dimension of the input using feature selection techniques and some others try to develop so called active learning techniques which goal is to use an optimal training dataset through selection of most informative patterns from the original dataset. Our proposition is based on this active learning technique more exactly belonging to the branch of incremental learning where the dataset is constructed dynamically during the training. Using the FDDLCB algorithm based mainly on LMS error minimization we have reduced considerably the training time factor without any loss of accuracy. The rest of the paper is organized as follows. In Section 2. a brief description of the existing improvements and ac- tive learning techniques is provided while Section 3. will discuss in detail the proposed algorithm. Section 4. is dedicated to the results and finally in Section 5. some concluding remarks are given. 2. Related works During the years different classifier systems have been proposed and developed for the different pattern recognition tasks inspired from real life applications. Nowadays, more or less each baseline recognition system has reached its limits as there is no existing system allowing to realistically model the human vision. Hence, the research was oriented toward different improvements of the existing systems by refining the mathematical formalism or by implanting in the systems empirical knowledge. Considering the nature of the improvements, different research axis can be distinguished. In order to select the most descriptive features, in the last few years many feature extraction algorithms were proposed. In character recognition these features can be grouped as: statistical features, geometrical features [4, 8, 9, 14], size and rotation invariant features [1, 7, 12, 19], etc. For the combination of these features many feature subset selection mechanisms were designed. The feature subset selection is based mainly on neural networks (NN) and genetic algorithms (GA) [21] operating with randomized heuristic search techniques [3]. Concerning the network topology there is a consensus in the NN community. One or two hidden layer is sufficient for the different pattern classification problems but LeCun and his colleagues proved than it is possible to use multiple hidden layers based on multiple maps using convolution, sub-sampling and weight sharing techniques in order to achieve excellent results on separated digit recognition [4, 18]. Spirkovska and Reid using a higher order neural network introduced inside the topology some position, size and rotation invariant a priori information [19]. Another solution is the optimal brain damage (OBD), proposed by LeCun in [5] which removes the unimportant weights in order to achieve a better generalization and a speed-up of the training/testing procedure. The optimal cell damage (OCD) and its derivatives are also based on the idea to prune the network structure. All approaches solve more or less the encountered problems but each of them has a considerable time complexity. The best approach seems to be the so called active learning and its different derivatives. In such an approach the learner, the classifier is guided during the training process. Some information control mechanism is implanted in the system. Rather than passively accepting all the available training samples, the classifier on his own guides its learn- ing process by finding the most informative patterns. With such a guided training, where the training patterns are selected dynamically, we can reduce considerably the training duration and a better generalization can be obtained as all non interesting data can be discarded. As stated in [16] the generalization error decrease more rapidly for active learning than for passive learning. Engelbrecht in [6] is grouping these techniques in two classes in function of their action mechanism: 1. Selective learning, where the classifier selects at each selection interval a new training subset from the original candidate set. 2. Incremental learning, where the classifier starts with an initial subset selected somehow from the candidate set. During the learning process, at specified selection intervals some new samples are selected from the candidate set and these patterns are added to the training set. While in [6, 13, 16] the authors have been developed active learning techniques for feedforward neural networks, for SVM approaches similar systems have been proposed in [11, 17, 20]. In this second case all the pattern selection algorithms are based on the idea than the hyperplane constructed by the SVM is depending only on a reduced subset of the training patterns called also support vectors that lies close to the decision surface. Mostly the selection methods in that case are based on kNN, clustering, confidence measure, Hausdorf distance, etc.. The drawback of such systems is quite difficult to fix the different parameters of the systems as stated by Shin and Cho in [17]. Another limitation of the approach is a second training procedure which is necessary while for NN the training process is applied just once. This drawback can be also found in case of the different network pruning algorithms proposed by Le Cun. 3. FDDLCB algorithm description Our method is based on incremental learning using error selection. The approach is based on an MLP type classifier with one hidden layer. The main idea of the FDDLCB algorithm is to build-up in run-time a data driven minimal learning-corpus based on the LMS by adding additional patterns to the training corpus at each training level in order to cover maximally the different variations of the patterns and reducing the recognition error. Let us denote by GlobalLearningCorpus (GLC) the whole set of patterns which can be used during the training procedure, by GlobalTestingCorpus (GTC) the whole set of patterns which can be used for the test and by DynamicLearningCorpus (DLC) the minimal set of patterns which can serve to train the network. Let’s also denote by NN the neural network and by N the iterator, which provides the number of new patterns to be considered at each learning level and M denotes the number of classes to be separated. Algorithm description: Initialization: DLC = {xi ∈ GLC | i = 1, M } GLC = GLC − DLC Database Building: repeat { repeat { TrainNetwork(NN,DLC) }until(NetworkError(NN,DLC,ALL) T hreshold1 ) TestNetwork(NN,GTC) if (NetworkError(NN,GTC,ALL)≺ T hreshold2 ) then STOP else { TestNetwork(NN,GLC) if (NetworkError(NN,GLC,ALL)≺ T hreshold1 ) then STOP else { DLC = DLC ∪ {yi ∈ GLC | i = 1, N } GLC = GLC − DLC } } }until(| GLC |> 0) Results: NN contains the modified weight set DLC contains the minimal number of patterns which is sufficient to train the NN where: • TrainNetwork(NN,DATASET) will train the NN with the given DATASET using classical LMS error minimization and error backpropagation • TestNetwork(NN,DATASET) will test the NN with the given DATASET • NetworkError(NN,DATASET,SAMPLES NUMBER) calculates the error given by NN using SAMPLES NUMBER of patterns from the DATASET using the LMS criterion • yi denotes the pattern from the GLC giving the ith highest error during the test • | DAT ASET DATASET | denotes the cardinality of the The algorithm is starting with an initialized DLC set where we have selected for each class one random representative pattern (xi ) in order to not favour one or another class initially. The algorithm performs the network training with these samples. Once the training error is less than an empirical threshold value, the training process stops and we test our network with the samples belonging to the GTC. If the error criterion is satisfied the algorithm stops as the training was successful. Otherwise we should continue by adding new samples to our DLC set. To do this we are looking from the GLC for the N samples (yi ) giving the highest error in the classification. If this error is less than a threshold value we are stopping the algorithm, as we cannot add extra helpful information to the network. Otherwise we are picking these N elements from GLC and move them in the DLC and restart the training on this new extended dataset. The algorithm stops when the error criterion is satisfied or there are no more available patterns in GLC set. In the second case we are in the classical training as finally we are using the whole dataset. So there is no restriction in the algorithm. In the worst case we should have almost the same results as in case of using the whole dataset. A modified version of the FDDLCB algorithm consists to feed the network with class samples having the same distribution. This precaution is necessary as stated by [10] in order to not influence the system in a way or another. For that reason we modified the conditions of the DLC set creation. Now, at each iteration we add N samples for each pattern class based on their highest error contribution in their class instead of using the first N samples of the dataset giving the highest error rate. Using this selection process we can guarantee the distribution uniformity for each pattern class. 4. Test results The experiments performed by the FDDLCB algorithm used as input data the MNIST reference database. This dataset contains 60.000 samples for learning and 10.000 samples for test. The 28x28 normalized gray-scale images contain separated handwritten digits from 0 to 9. The tests were performed with a fully connected MLP with one hidden layer. As input raw images were used, so our input vector contains 784 values. In order to achieve a recognition rate like 98.6%, using the whole learning corpus we need at least 30 learning epochs. That means we should present at least 30×60.000=1.800.000 patterns to our network. In Table 1we show different constructed datasets, the number of patterns presented to the system and the obtained results by the FDDLCB algorithm on the test set in function of the N parameter. So we can achieve comparable result with even 1,110 samples from the possible 60,000 that means the other patterns can be considered redundant information so it’s not necessary to use them. The learning process can be reduced substantially as it is possible to achieve almost similar results presenting just 58,690 patterns to the network. So we can speed up the learning process 14 times that is a considerable gain even for a high-tech computer. N 50 100 150 200 250 300 350 Generated learning set (DLC) 1110 2210 2260 2810 3010 2710 3510 Patterns presented Recognition rate 58690 113940 127600 15630 139410 123180 123180 98.51% 98.47% 98.51% 98.50% 98.48% 98.48% 98.50% Table 1. Results obtained with different datasets constructed by FDDLCB algorithm As in [17] the authors provide results of their pattern selection method on MNIST benchmark dataset, a comparison study can be performed. Nine SVM type binary classifier was used: class 8 is paired with each of the rest. The reported recognition error in average over nine classifiers is 0.28% using all the available patterns and 0.38% for the pattern selection based technique. The lost of accuracy is similar as in our case. Unfortunately there is no results reported concerning the real recognition accuracy for each separated digit class so a direct comparison can not be performed with our method. The time factor is reduced with a factor of 11.8 which is much less as in our case. Similarly the number of used patterns (16.76%) serving as support vector is much more considerably than our 1.85% selected patterns to train the system. The modified FDDLCB algorithm result 98.01% is near to the result produced by the original algorithm but it needs much more iteration and samples (9,000 different samples were selected while 864,600 patterns were presented to the network). In the Figure 1 we present the class distribution for the different datasets built by FDDLCB in function of the N parameter. The x-axis means the different classes, and the y-axis means the distribution percentage of the different classes. We can see than the element distribution variance is not significant for the different datasets so the N parameter can control just the learning convergence speed and the size of the built dataset. The empirical value N = 50 was established after some trial runs performed with different N values. We found this is the optimal value which should be used in order to achieve a considerable speed gain. Similarly the results presented in Table 1 prove than the changing of parameter N has no major influence on the results. It can influence just the size of the built dataset and Figure 1. The samples distribution in the classes for the different constructed datasets the speed of the building process. Using the same pattern distribution as in Figure 1 using random choice for the patterns selection for the dataset creation, the recognition accuracy cannot achieve higher average recognition scores than 91.01%. Analyzing the dynamic learning corpus we can pronounce also in the matter of the intra-class and inter-class variance. In the MNIST database the class ”0” contains the fewest variance and the class ”9” contains the most variation, so we need much more samples belonging to class ”9” in order to achieve a good recognition score. In pattern complexity terms speaking, the class ”0”, ”1”, ”6” are the classes which are the simplest and the classes ”3”, ”8”, ”9” are the more complex ones, which is natural as they can be confused. 5. Conclusion We proposed in this paper generic, simple and fast active learning algorithm to build run-time a minimal learning corpus, based on an MLP classifier. The algorithm is based on a dual LMS error estimation, which can guarantee the convergence of the algorithm. The first LMS minimization is used in the training process in the error backpropagation. The second one is used when we are calculating the LMS error for the samples during the recognition. The misclassified patterns should be added to the DLC set in order to minimize the recognition error by learning these new items which have contributed to the error accumulation. The method reduces substantially the learning period and discards the redundant information in order to avoid the overfitting. The performed tests on MNIST showed that is possible to achieve 98,51% recognition accuracy using just 1,110 different samples and the learning time can be reduced by a factor of 14, a time gain which is also considerable considering the algorithm complexity. The mechanism cannot function for the improvement of the system presented in [18] which is based on the data redundancy. The algorithm tries to enlarge the different class boundaries using in learning the extreme patterns. The algorithm increases the number of forward steps (propagation) but decreases substantially the number of backward steps (error backpropagation) which are much more costly in calculus. The FDDLCB algorithm can be also used to solve the challenge proposed by Japkowicz in [10] in order to deal with the class imbalance problem, which often occurs in the real world applications. Many times we deal with learning corpuses where the distribution of the samples for the different classes is not uniform. There are under represented classes and respectively low represented classes. The methods presented in [10] based on down-sizing and re-sampling are restrictive as there is no rigorous selection criteria to choose which elements should be discarded or re-sampled. The FDDLCB can avoid the overfitting effect caused by the presented methods using a rigorous selection criterion. References [1] S. Adam, J. M. Ogier, C. Cariou, R. Mullot, J. Gardes, and Y. Lecourtier. Multi-scaled and multi oriented character recognition: An original strategy. In ICDAR, pages 45–48, 1999. [2] C. M. Bishop. Neural Networks for Pattern Recognition. Oxford University Press, 1995. [3] T. H. Cormen, C. E. Leiserson, and R. L. Rivest. Introduction to algorithms. MIT Press, 1995. [4] Y. L. Cun, L. Bottou, Y. Bengio, and P. Haffner. Gradientbased learning applied to document recognition. Intelligent Signal Processing, pages 306–351, 2001. [5] Y. L. Cun, J. S. Denker, and S. A. Solla. Optimal brain damage. Advances in Neural Information Processing Systems 2 (NIPS*89), 1990. [6] A. P. Engelbrecht. Selective learning for multilayer feedforward neural networks. J Mira and A Prieto (eds.) In Lecture Notes in Computer Science, 2084:386–393, 2001. [7] A. Goshtasby. Description and discrimination of planar shapes using shapes matrices. IEEE Transactions of Pattern Recognition and Machine Intelligence, 7(6):738–743, 1984. [8] I. Guyon. Application of neural networks to character recognition. International Journal of Pattern Recognition and Artificial Intelligence, 5(1):353–382, 1991. [9] M. S. Hoque and M. C. Fairhurst. A moving window classifier for off-line character recognition. In Proceedings of 7th [10] [11] [12] [13] [14] [15] [16] [17] [18] [19] [20] [21] International Workshop on Frontiers in Handwriting Recognition, pages 595–600, 1998. N. Japkowicz. The class imbalance problem: significance and strategies. In Proceedings of International Conference on Artificial Intelligence 2000 (IC-AI2000), 2000. R. Koggalage and S. Halgamuge. Reducing the number of training samples for support vector machine classification. Neural Information Processing - Letters and Reviews, 2(3):57–65, 2004. S.-W. Lee, H.-S. Park, and Y. Y. Tang. Translation-, scale-, and rotation-invariant recognition of hangul characters with ring projection. Proceeding of 1st International Conference on Document Analysis and Recognition, pages 829– 836, 1991. S. U. P. Polikar, L. Udpa and V. Honavar. Learn++: An incremental learning algorithm for supervised neural networks. IEEE Transactions on Systems, Man and Cybernetics - Part C: Application and Reviews, 31(4):497–508, 2001. R. Romero, R. Berger, R. Thibadeau, and D. Touretzky. Neural network classifiers for optical chinese character recognition. Proceedings of the 4th annual Symposium on Document Analysis and Information Retrieval, pages 385– 389, 1995. D. E. Rumelhart, G. E. Hinton, and R. J. Williams. Learning internal representations by error propagation. pages 318– 362, 1986. H. S. Seung, M. Opper, and H. Sompolinsky. Query by committee. Proceeding of 5th Annual ACM Workshop on Computational Learning Theory, pages 287–299, 1992. H. Shin and S. Cho. Fast pattern selection for support vector classifier. Proceedings of the 7th Pacific-Asia Conference on Knowledge Discovery and Data Mining, LNCS, (2637), 2003. P. Y. Simard, D. Steinkraus, and J. C. Platt. Best practices for convolutional neural networks applied to visual document analysis. ICDAR, pages 958–962, 2003. L. Spirkovska and M. B. Reid. Robust position, scale and rotation invariant object recognition using higher- order neural networks. Pattern Recognition, 25(9):975–985, 1992. J. Wang, P. Neskovic, and L. N. Cooper. Training data selection for support vector machines. International Conference on Neural Computation, 2005. J. Yang and V. Honavar. Feature subset selection using genetic algorithms. IEEE Transactions, Intelligent Systems, (34):45–49, 1998.