Learning, Recognizing and Early Classification of Spatio-Temporal Patterns Using Spike Timing Neural Networks
Total Page:16
File Type:pdf, Size:1020Kb
University of Nevada, Reno Learning, Recognizing and Early Classification of Spatio-Temporal Patterns using Spike Timing Neural Networks A dissertation submitted in partial fulfillment of the requirements for the degree of Doctor of Philosophy in Computer Science and Engineering by Banafsheh Rekabdar Dr. Monica Nicolescu/Thesis Advisor Dr. Mircea Nicolescu/Thesis Co-Advisor May 2017 THE GRADUATE SCHOOL We recommend that the dissertation prepared under our supervision by BANAFSHEH REKABDAR Entitled Learning, Recognizing and Early Classification Of Spatio-Temporal Patterns Using Spike Timing Neural Networks be accepted in partial fulfillment of the requirements for the degree of DOCTOR OF PHILOSOPHY Monica Nicolescu, Ph.D., Advisor Mircea Nicolescu, Ph.D., Committee Member George Bebis, Ph.D., Committee Member Sushil Louis, Ph.D., Committee Member Raul Rojas, Ph.D., Graduate School Representative David W. Zeh, Ph. D., Dean, Graduate School May, 2017 i Abstract by Banafsheh Rekabdar Learning and recognizing spatio-temporal patterns is an important problem for all biological systems. Gestures, movements, activities, all encompass both spatial and temporal information that is critical for implicit communication and learning. This dissertation presents a novel, unsupervised approach for learning, recognizing and early classifying spatio-temporal patterns using spiking neural networks for human- robotic domains. The proposed spiking approach has five variations which have been validated on images of handwritten digits and human hand gestures and motions. The main contributions of this work are as follows: i) it requires a very small number of training examples, ii) it enables early recognition from only partial information of the pattern, iii) it learns patterns in an unsupervised manner, iv) it accepts variable sized input patterns, v) it is invariant to scale and translation, vi) it can recognize pat- terns in real-time and, vii) it is suitable for human-robot interaction applications and has been successfully tested on a PR2 robot. This dissertation presents comparison between all variations of this approach with well-known supervised and unsupervised machine learning techniques on in-house and publicly available datasets. Although the proposed approaches in this dissertation are unsupervised, they outperform other state-of-the-art and in some cases, provide comparable results with other methods. ii Acknowledgements The research journey is the most challenging and valuable experience I have ever had in my life. This dissertation is the milestone that marks all my efforts and achievements along the research journey. The friendships I have made during these years at University of Nevada, Reno are equally important as well. This dissertation was made possible due to the generous help of so many people in my life. Without them I would not be where I am today. Their support means the most to me. I would like to extend thanks to all of them. I would like to express my sincerest respect and gratitude towards my advisor, Dr Monica Nicolescu. I am grateful for her insights and advices to guide me through research problems. I also appreciate her patience to allow me to search and work on research topics that I am interested in. Her teaching of how to write and present in a scholarly manner is very beneficial. I am lucky to receive this amount of training under the expertise of Dr Nicolescu. She has really been there for me and I cannot thank her enough. My special thanks go out to my co-advisor Dr. Mircea Nicolescu that has provided me with inspiration and motivation to strive to produce better work everyday and for his generous support and patience. I would like to thank the professors who share their precious time to be on my dissertation committee: Dr. George Bebis, Dr. Sushil Louis and Dr. Raul Rojas. I iii also would like to thank those with the CSE department who are always kind to offer help: Lisa Cody and Heather Lara. Finally but not least, I would like to thank my parents for their endless love and support since the day I was born. I also want to thank my lovely sister Nasim for her encouragement and company. My family makes me who I am today. Without their support, this work would not have been completed. iv Contents Abstracti Acknowledgements ii List of Figures vii List of Tables ix 1 Introduction1 1.1 Spatio-Temporal Pattern Classification.................1 1.2 Early Detection Problem.........................2 1.3 Early Detection of Human Hand Gestures in Human-Robot Interaction Systems..................................3 1.4 Contribution................................4 1.5 Conclusion.................................8 2 Previous Work9 2.1 Statistical Approaches.......................... 10 2.2 Gesture Recognition........................... 11 2.3 Spatio-Temporal Patterns........................ 12 2.4 Biological Neural Networks........................ 12 2.5 Conclusion................................. 14 3 SNN Approach 1 for Hand-Written Digits 15 3.1 Approach................................. 16 3.1.1 Network Structure........................ 16 3.1.2 Temporal Structure of Data................... 18 3.1.3 Network Training Approach................... 19 3.1.4 Finding Polychronous Neuronal Groups (PNGs)........ 21 3.1.5 Classification Algorithm..................... 24 3.1.6 Early Detection.......................... 25 3.2 Experimental Results........................... 27 Contents v 3.2.1 Training Stage.......................... 27 3.2.2 Generalization Results...................... 28 3.2.3 Comparison Results........................ 29 3.2.4 Early Detection.......................... 32 3.3 Conclusion................................. 37 4 SNN Approach 2 for Hand-Written Digits 39 4.1 Approach................................. 40 4.1.1 Spike Timing Neural Network Structure............ 40 4.1.2 Temporal Structure of Data................... 40 4.1.3 Training Spike Timing Neural Networks............ 41 4.1.4 Modeling Data with Temporal Patterns of Firing Neurons.. 41 4.1.5 Classification Algorithm..................... 43 4.1.6 Parallelizing the Classification Algorithm............ 47 4.1.7 Early Classification........................ 47 4.2 Experimental Results........................... 48 4.2.1 Comparison with Other Approaches............... 51 4.2.1.1 Unsupervised Spike Timing Neural Network with Jac- card Index........................ 52 4.2.1.2 Support Vector Machines............... 52 4.2.1.3 Regularized Logistic Regression............ 52 4.2.1.4 Ensemble Neural Networks.............. 52 4.2.1.5 Bayes Network..................... 53 4.2.1.6 Multilayer Perceptron................. 54 4.2.1.7 Radial Basis Function Network............ 54 4.2.1.8 Random Forest..................... 55 4.2.1.9 Stacked Denoising Auto Encoder........... 55 4.2.2 Early detection results...................... 57 4.3 Conclusion................................. 62 5 SNN Approach 1 for Human Hand Gestures 64 5.1 Approach................................. 65 5.1.1 Mapping of Spatio-Temporal Patterns to Spike Trains..... 65 5.1.2 Finding Polychronous Neuronal Groups (PNGs)........ 67 5.1.3 Classification Algorithm..................... 70 5.1.4 Early Detection.......................... 70 5.2 Experimental Results........................... 71 5.2.1 Classification Results....................... 71 5.2.2 Early Detection Results..................... 75 5.2.3 Comparison with Other Approaches............... 79 5.3 Discussion and future work........................ 84 Contents vi 5.4 Conclusion................................. 85 6 LCS based SNN Approach 2 for Human Hand Gestures 86 6.1 Approach................................. 87 6.1.1 Mapping of Spatio-Temporal Patterns to Spike Trains..... 87 6.1.2 Finding Polychronous Neuronal Groups (PNGs)........ 87 6.1.3 Classification Algorithm..................... 87 6.2 Early Detection.............................. 88 6.2.1 Experimental Results....................... 88 6.3 Conclusion................................. 95 7 Real-time SNN Approach 3 for Human Hand Gestures 96 7.1 General Approach............................. 97 7.1.1 Mapping of Spatio-Temporal Patterns to Spike Trains..... 98 7.1.2 Finding Polychronous Neuronal Groups (PNGs)........ 98 7.1.3 Classification Algorithm..................... 100 7.1.4 Real-Time Recognition...................... 100 7.1.5 Early Classification (Intent Recognition)............ 102 7.1.6 Early Classification Measurements................ 104 7.2 Results................................... 104 7.2.1 In-house Dataset......................... 104 7.2.2 6dmg Dataset........................... 105 7.2.3 Real-Time Classifier....................... 105 7.2.4 Comparison with Other Approaches............... 110 7.2.5 Early Detection Results..................... 114 7.3 Conclusion................................. 115 8 Conclusion and Future Work 117 Bibliography 119 vii List of Figures 1.1 Training procedure............................5 1.2 Testing procedure.............................6 3.1 Spatio-temporal pattern representation; Left: a sample pattern; Mid- dle: pixel intensity values; Right: corresponding spiking pattern... 18 3.2 Spike timing dependent plasticity (STDP)................ 20 3.3 Training algorithm............................ 21 3.4 Possible combinations of 3 anchor neurons for a pattern........ 22 3.5 Algorithm for building the models for the training patterns...... 24 3.6 Classification algorithm.......................... 25 3.7 Early detection approach......................... 26 3.8 Digits