Neural Networks and Search Landscapes for Software Testing

Total Page:16

File Type:pdf, Size:1020Kb

Neural Networks and Search Landscapes for Software Testing Neural Networks and Search Landscapes for Software Testing Leonid Joffe A report submitted in fulfilment of the requirements for the degree of Doctor of Philosophy of UCL. Department of Computer Science UCL July 9, 2020 This thesis was made possible thanks to my father's persistent efforts { and despite mine. Thanks, dad. 1 Declaration I, Leonid Joffe, confirm that the work presented in this thesis is my own. Where information has been derived from other sources, I confirm that this has been indicated in the work. 2 Summary of Publications Parts of the work presented in this thesis have been published in the following papers. For each of these papers, the author of this thesis contributed to developing the concept and to writing, conducted all experimental work, and presented the papers at venues. • Leonid Joffe and David Clark. Constructing Search Spaces for SBST using Machine Learning, published at the International Symposium on Search Based Software Engineering (SSBSE 2019). This paper forms the basis of Chapter 3, and outlines the concepts upon which further chapters build. • Leonid Joffe and David Clark. Directing a Search Towards Execution Properties with a Learned Fitness Function, published at the 12th IEEE International Conference on Software Testing, Validation and Verifica- tion (ICST 2019). Chapter 4 is based on this paper. • Leonid Joffe. Machine Learning Augmented Fuzzing, published at the International Symposium on Software Reliability Engineering Work- shops (ISSREW 2018). This PhD symposium short paper is an overview of the whole thesis, as implemented and planned at the time of publi- cation. In addition, the author of this thesis co-authored the following publications that are not related to the work described in this thesis. • David R White, Leonid Joffe, Edward Bowles, Jerry Swan. Deep Pa- rameter Tuning of Concurrent Divide and Conquer Algorithms in Akka, published at the European Conference on the Applications of Evolu- tionary Computation (EvoStar 2017). Initially intended as a submis- sion to the SSBSE challenge track, this short paper is a proof of concept for automatic deep parameter tuning for a Java concurrency framework. The author of this thesis participated in implementing and conducting 3 the experiments, and writing. • Akhil Mathur, Tianlin Zhang, Sourav Bhattacharya, Petar Velickovic, Leonid Joffe, Nicholas D Lane, Fahim Kawsar, Pietro Li´o. Using Deep Data Augmentation Training to Address Software and Hardware Het- erogeneities in Wearable and Smartphone Sensing Devices, published at the 17th ACM/IEEE International Conference on Information Pro- cessing in Sensor Networks (IPSN 2018). For this paper, the author of this thesis participated in the implementation of the experiments. 4 Abstract Search-Based Software Testing (SBST) methods are popular for improving the reliability of software. They do, however, suffer from chal- lenges: poor representation, ineffective fitness functions and search land- scapes, and restricted testing strategies. Neural Networks (NN) are a ma- chine learning technique that can process complex data, they are continuous by design, and they can be used in a generative capacity. This thesis ex- plores a number of approaches that leverage these properties to tackle the challenges of SBST. The first use case is for defining fitness functions to target specific properties of interest. This is showcased by first training an NN to classify an execution trace as crashing or non-crashing. The estimate is then used to prioritise previously unseen executions that are deemed more likely to crash by the NN. This fitness function yields more efficient crash discovery than a baseline. The second proposition is to use NNs to define a search space for a diversity driven testing strategy. The space is constructed by encoding execution traces into an n-dimensions, where distance represents the degree of feature similarity. This thesis argues that this notion of similarity can drive a diversification driven testing strategy. Finally, an application of a generative model for SBST is presented. Initially, random inputs are fed to the program and execution traces are collected and encoded. Redundant executions are culled, distinct ones are kept and the loop is repeated. Over time, this mechanism discovers new program behaviours and these are added to the ever more diverse training dataset. Although this approach does not yet compete with existing tools, experiments show that the notion of similarity is meaningful, the generated program inputs are sensible and faults are found. Much of the work presented in this thesis is exploratory and is meant to serve as basis for future research. 5 Impact Statement Testing is an integral part of a software development process. Many popular approaches use feedback to guide an automatic generator of program inputs. These methods fall under a discipline known as Search-Based Software Test- ing (SBST). The effectiveness of any SBST process depends on choices of representation, fitness function and search strategy. A poor representation restricts the choice of a fitness function and the resulting search landscape. A poor search landscape in turn limits the choice of search strategies. As a result, the effectiveness of an SBST process is hampered. This thesis proposes the use of Neural Networks (NN) to address these chal- lenges. The first part of the thesis shows how an NN can be used to process ob- servations of program execution to construct convenient, continuous search landscapes { for targeted and diversification-driven strategies alike. For tar- geted strategies, observations are used to train an NN to predict a execution property of interest, and the output of the NN is then interpreted as a fit- ness. For diversification-driven strategies, execution traces are encoded into a \latent" space which defines an ordering over program behaviours using ap- parently non-orderable observations. Experimental results show that these search spaces are continuous and large, and that they have a strong predictive ability for various properties of interest. To the best of the author's knowl- edge, constructing search landscapes for SBST in this manner is novel. The second part of the thesis shows that an NN-generated search landscape for a property targeting strategy is effective. An NN is first trained to predict the presence of a crash given an execution trace. During testing, the output of the NN is used as a fitness of executions that have not yet crashed. Em- pirical results show that a search using this fitness consistently outperforms benchmarks. 6 The final portion of the thesis is a framework for diversity driven testing. The approach combines two NNs: one generates program inputs, and the other encodes execution traces. As the networks train, they generate new program inputs that explore the program's behaviours. Uninteresting datapoints are periodically discarded, so the training is conducted with a dataset comprised of the most interesting datapoints. Experimental results show that such a framework can be trained, that it does produce diverse program inputs, that the notion of similarity in the latent space is meaningful and that it can actually discover crashes. The work presented does not attempt to outperform state of the art testing tools. Instead, it is intended to propose and explore a number of approaches for alleviating the challenges of SBST by using NNs. The presented results reflect these aims; they show that although the tools' immediate efficacy for automated testing is limited, the approaches are viable and can be used as a basis for various directions of future work. 7 Contents 1 Introduction 15 1.1 Basic Concepts . 17 1.2 Challenge of Testing in General . 19 1.3 Search-Based Software Testing and its Challenges . 22 1.4 Overview, Contributions and Scope . 28 1.4.1 Producing Search Landscapes for SBST with Neural Networks . 29 1.4.2 Fitness Functions for Property Targeting Search . 30 1.4.3 Deconvolutional Generative Adversarial Fuzzer . 31 2 Background and Literature 33 2.1 Search-Based Software Testing . 34 2.1.1 Fuzzing and the American Fuzzy Lop . 34 2.1.2 Representations and Fitness Landscapes . 40 2.1.3 Search Strategies . 47 2.2 Neural Networks . 54 2.2.1 Neural Network Model . 54 2.2.2 Training . 56 2.2.3 Inference . 59 2.2.4 Embeddings . 60 2.2.5 Autoencoders . 63 8 2.2.6 Recurrent Neural Networks . 68 2.2.7 Convolutional Neural Networks . 69 2.2.8 Generative Neural Networks . 71 2.3 Machine Learning in Software Engineering . 75 2.3.1 Program Profiling . 76 2.3.2 GNNs in Software Engineering . 77 3 Producing Search Landscapes for SBST with Neural Net- works 80 3.1 Overview . 81 3.1.1 Property Targeting Search Landscape . 81 3.1.2 Diversity Driven Search Landscape . 83 3.1.3 Contributions and Scope . 84 3.2 Datasets and Tools . 84 3.2.1 Program Corpus . 85 3.2.2 Properties of Interest . 86 3.2.3 PIN Traces . 88 3.2.4 Ftrace Traces . 90 3.3 Experimental Setup . 91 3.3.1 Exp.1 { Search Landscape for a Property Targeting Strategy . 91 3.3.2 Exp.2 { Search Landscape for a Diversity Driven Strategy 94 3.4 Results . 94 3.4.1 Size and Continuity of Landscapes . 95 3.4.2 Representation Condition . 96 3.4.3 Meaningful Ordering of Candidate Solutions . 99 3.5 Conclusion . 102 4 Fitness Functions for Property Targeting Search 104 4.1 Overview . 105 4.2 Research Goals . 106 9 4.2.1 Representation . 106 4.2.2 Fitness Function . 107 4.2.3 Generalisability to real world Programs . 107 4.3 Experimental Setup . 107 4.3.1 Dataset . 108 4.3.2 Trace Instrumentation . 108 4.3.3 Experiments . 111 4.3.4 Regression Classifier Neural Network . 112 4.3.5 Modifications to AFL . 113 4.4 Results . 117 4.4.1 RQ1 { Correlation of C Library Call Traces and Crashes117 4.4.2 RQ2 { Fuzzing with a Targeted Fitness Function .
Recommended publications
  • Deep Learning Is Robust to Massive Label Noise
    Deep Learning is Robust to Massive Label Noise David Rolnick * 1 Andreas Veit * 2 Serge Belongie 2 Nir Shavit 3 Abstract Thus, annotation can be expensive and, for tasks requiring expert knowledge, may simply be unattainable at scale. Deep neural networks trained on large supervised datasets have led to impressive results in image To address this limitation, other training paradigms have classification and other tasks. However, well- been investigated to alleviate the need for expensive an- annotated datasets can be time-consuming and notations, such as unsupervised learning (Le, 2013), self- expensive to collect, lending increased interest to supervised learning (Pinto et al., 2016; Wang & Gupta, larger but noisy datasets that are more easily ob- 2015) and learning from noisy annotations (Joulin et al., tained. In this paper, we show that deep neural net- 2016; Natarajan et al., 2013; Veit et al., 2017). Very large works are capable of generalizing from training datasets (e.g., Krasin et al.(2016); Thomee et al.(2016)) data for which true labels are massively outnum- can often be obtained, for example from web sources, with bered by incorrect labels. We demonstrate remark- partial or unreliable annotation. This can allow neural net- ably high test performance after training on cor- works to be trained on a much wider variety of tasks or rupted data from MNIST, CIFAR, and ImageNet. classes and with less manual effort. The good performance For example, on MNIST we obtain test accuracy obtained from these large, noisy datasets indicates that deep above 90 percent even after each clean training learning approaches can tolerate modest amounts of noise example has been diluted with 100 randomly- in the training set.
    [Show full text]
  • Using Neural Networks for Image Classification Tim Kang San Jose State University
    View metadata, citation and similar papers at core.ac.uk brought to you by CORE provided by SJSU ScholarWorks San Jose State University SJSU ScholarWorks Master's Projects Master's Theses and Graduate Research Spring 5-18-2015 Using Neural Networks for Image Classification Tim Kang San Jose State University Follow this and additional works at: https://scholarworks.sjsu.edu/etd_projects Part of the Artificial Intelligence and Robotics Commons Recommended Citation Kang, Tim, "Using Neural Networks for Image Classification" (2015). Master's Projects. 395. DOI: https://doi.org/10.31979/etd.ssss-za3p https://scholarworks.sjsu.edu/etd_projects/395 This Master's Project is brought to you for free and open access by the Master's Theses and Graduate Research at SJSU ScholarWorks. It has been accepted for inclusion in Master's Projects by an authorized administrator of SJSU ScholarWorks. For more information, please contact [email protected]. Using Neural Networks for Image Classification San Jose State University, CS298 Spring 2015 Author: Tim Kang ([email protected]), San Jose State University ​ ​ Advisor: Robert Chun ([email protected]), San Jose State University ​ ​ Committee: Thomas Austin ([email protected]), San Jose State University ​ ​ Committee: Thomas Howell ([email protected]), San Jose State University ​ ​ Abstract This paper will focus on applying neural network machine learning methods to images for the purpose of automatic detection and classification. The main advantage of using neural network methods in this project is its adeptness at fitting non­linear data and its ability to work as an unsupervised algorithm. The algorithms will be run on common, publically available datasets, namely the MNIST and CIFAR­10, so that our results will be easily reproducible.
    [Show full text]
  • The MNIST Database of Handwritten Digit Images for Machine Learning Research
    best of THE WEB Li Deng [ ] The MNIST Database of Handwritten Digit Images for Machine Learning Research n this issue, “Best of the Web” pres- The MNIST database was constructed their results that were obtained using the ents the modified National Institute of out of the original NIST database; hence, MNIST database. In most experiments, the Standards and Technology (MNIST) modified NIST or MNIST. There are existing training data from the database resources, consisting of a collection of 60,000 training images (some of these were used in learning the classifiers, where handwritten digit images used exten- training images can also be used for cross- “none” is entered in the “Preprocessing” Isively in optical character recognition and validation purposes) and 10,000 test column of the table on the Web site. In machine learning research. images, both drawn from the same distri- some experiments, the training set was Handwritten digit recognition is an bution. All these black and white digits are augmented with artificially distorted ver- important problem in optical character size normalized, and centered in a fixed- sions of the original training samples. The recognition, and it has been used as a test size image where the center of gravity of distortions include random combinations case for theories of pattern recognition the intensity lies at the center of the of jittering, shifts, scaling, deskewing, and machine learning algorithms for image with 28 # 28 pixels. Thus, the deslanting, blurring, and compression. The many years. Historically, to promote dimensionality of each image sample vec- type(s) of these and other distortions are machine learning and pattern recognition tor is 28 * 28 = 784, where each element specified in the “Preprocessing” column of research, several standard databases have is binary.
    [Show full text]
  • Data Augmentation for Supervised Learning with Generative Adversarial Networks Manaswi Podduturi Iowa State University
    Iowa State University Capstones, Theses and Graduate Theses and Dissertations Dissertations 2018 Data augmentation for supervised learning with generative adversarial networks Manaswi Podduturi Iowa State University Follow this and additional works at: https://lib.dr.iastate.edu/etd Part of the Computer Sciences Commons Recommended Citation Podduturi, Manaswi, "Data augmentation for supervised learning with generative adversarial networks" (2018). Graduate Theses and Dissertations. 16439. https://lib.dr.iastate.edu/etd/16439 This Thesis is brought to you for free and open access by the Iowa State University Capstones, Theses and Dissertations at Iowa State University Digital Repository. It has been accepted for inclusion in Graduate Theses and Dissertations by an authorized administrator of Iowa State University Digital Repository. For more information, please contact [email protected]. Data augmentation for supervised learning with generative adversarial networks by Manaswi Podduturi A thesis submitted to the graduate faculty in partial fulfillment of the requirements for the degree of MASTER OF SCIENCE Major: Computer Science Program of Study Committee: Chinmay Hegde, Co-major Professor Jin Tian, Co-major Professor Pavan Aduri The student author, whose presentation of the scholarship herein was approved by the program of study committee, is solely responsible for the content of this thesis. The Graduate College will ensure this thesis is globally accessible and will not permit alterations after a degree is conferred. Iowa State University Ames, Iowa 2018 Copyright c Manaswi Podduturi, 2018. All rights reserved. ii DEDICATION I would like to dedicate this thesis to my late father Prasad who pushed his boundaries to make me what I am today.
    [Show full text]
  • Improved Handwritten Digit Recognition Using Convolutional Neural Networks (CNN)
    sensors Article Improved Handwritten Digit Recognition Using Convolutional Neural Networks (CNN) Savita Ahlawat 1, Amit Choudhary 2, Anand Nayyar 3, Saurabh Singh 4 and Byungun Yoon 4,* 1 Department of Computer Science and Engineering, Maharaja Surajmal Institute of Technology, New Delhi 110058, India; [email protected] 2 Department of Computer Science, Maharaja Surajmal Institute, New Delhi 110058, India; [email protected] 3 Graduate School, Duy Tan University, Da Nang 550000, Vietnam; [email protected] 4 Department of Industrial & Systems Engineering, Dongguk University, Seoul 04620, Korea; [email protected] * Correspondence: [email protected] Received: 25 May 2020; Accepted: 9 June 2020; Published: 12 June 2020 Abstract: Traditional systems of handwriting recognition have relied on handcrafted features and a large amount of prior knowledge. Training an Optical character recognition (OCR) system based on these prerequisites is a challenging task. Research in the handwriting recognition field is focused around deep learning techniques and has achieved breakthrough performance in the last few years. Still, the rapid growth in the amount of handwritten data and the availability of massive processing power demands improvement in recognition accuracy and deserves further investigation. Convolutional neural networks (CNNs) are very effective in perceiving the structure of handwritten characters/words in ways that help in automatic extraction of distinct features and make CNN the most suitable approach for solving handwriting recognition problems. Our aim in the proposed work is to explore the various design options like number of layers, stride size, receptive field, kernel size, padding and dilution for CNN-based handwritten digit recognition. In addition, we aim to evaluate various SGD optimization algorithms in improving the performance of handwritten digit recognition.
    [Show full text]
  • BEGINNER's GUIDE to NEURAL NETWORKS for the MNIST DATASET USING MATLAB Bitna Kim and Young Ho Park 1. Introduction Machine
    Korean J. Math. 26 (2018), No. 2, pp. 337{348 https://doi.org/10.11568/kjm.2018.26.2.337 BEGINNER'S GUIDE TO NEURAL NETWORKS FOR THE MNIST DATASET USING MATLAB Bitna Kim and Young Ho Park∗ Abstract. MNIST dataset is a database containing images of hand- written digits, with each image labeled by an integer from 0 to 9. It is used to benchmark the performance of machine learning algo- rithms. Neural networks for MNIST are regarded as the starting point of the studying machine learning algorithms. However it is not easy to start the actual programming. In this expository article, we will give a step-by-step instruction to build neural networks for MNIST dataset using MATLAB. 1. Introduction Machine learning or more generally artificial intelligence is a real hot topic in these days. We have many applications of these principles to areas including virtual assistances, traffic predictions, video surveillance, social media services, email Spam filtering, etc. Many mathematicians want to learn about machine learning, particularly neural networks. There are so many books and internet pages for neural networks scat- tered around all over the places. However it is hard to find a right and fast track to actual programming for neural networks for beginners. Python is known to be the best programming language for machine learn- ing. But many mathematicians are more familiar with MATLAB than Received June 7, 2018. Revised June 18, 2018. Accepted June 20, 2018. 2010 Mathematics Subject Classification: 68T10, 68T35. Key words and phrases: Neural network, Machine learning, Pattern recognition, MNIST dataset, MATLAB.
    [Show full text]
  • Recognition of Handwritten Digit Using Convolutional Neural Network (CNN) by Md
    View metadata, citation and similar papers at core.ac.uk brought to you by CORE provided by Global Journal of Computer Science and Technology (GJCST) Global Journal of Computer Science and Technology: D Neural & Artificial Intelligence Volume 19 Issue 2 Version 1.0 Year 2019 Type: Double Blind Peer Reviewed International Research Journal Publisher: Global Journals Online ISSN: 0975-4172 & Print ISSN: 0975-4350 Recognition of Handwritten Digit using Convolutional Neural Network (CNN) By Md. Anwar Hossain & Md. Mohon Ali Pabna University of Science & Technology Abstract- Humans can see and visually sense the world around them by using their eyes and brains. Computer vision works on enabling computers to see and process images in the same way that human vision does. Several algorithms developed in the area of computer vision to recognize images. The goal of our work will be to create a model that will be able to identify and determine the handwritten digit from its image with better accuracy. We aim to complete this by using the concepts of Convolutional Neural Network and MNIST dataset. We will also show how MatConvNet can be used to implement our model with CPU training as well as less training time. Though the goal is to create a model which can recognize the digits, we can extend it for letters and then a person’s handwriting. Through this work, we aim to learn and practically apply the concepts of Convolutional Neural Networks. Keywords: convolutional neural network; MNIST dataset; MatConvNet; ReLu; softmax. GJCST-D Classification: I.2.6 RecognitionofHandwrittenDigitusingConvolutionalNeuralNetworkCNN Strictly as per the compliance and regulations of: © 2019.
    [Show full text]
  • Facial Recognition Using Deep Learning Neural Network Shrinath Oza, Abdullah Khan, Nilabh Swapnil, Aayush Sharma
    ISSN: 2350-0328 International Journal of Advanced Research in Science, Engineering and Technology Vol. 4, Issue 11 , November 2017 Facial Recognition Using Deep Learning Neural Network Shrinath Oza, Abdullah Khan, Nilabh Swapnil, Aayush Sharma,. Jayashree Chaudhari Student, Dr. D. Y. Patil School of Engineering, Pune, India Student, Dr. D. Y. Patil School of Engineering, Pune, India Student, Dr. D. Y. Patil School of Engineering, Pune, India Student, Dr. D. Y. Patil School of Engineering, Pune, India Professor, Dr. D. Y. Patil School of Engineering, Pune, India ABSTRACT: By implementing Restricted Boltzmann Machine with the rules of deep learning and deep belief network, a facial recognition system algorithm is proposed. The algorithm will face images storing them as input and will store them in a database, after that a comparison will be made between the given input and already classified features in the database and dataset. The implementation of neural network and greedy layer wise training of the same network will ensure efficient and improved facial recognition system. KEYWORDS: Facial recognition, Deep Learning, Neural Network, Deep Belief Network, Greedy Layer Algorithm, I. INTRODUCTION Facial recognition has become the norm with almost every device and every security system depending on it one way or other. With increased application of facial recognition the research on the same has increased exponentially. The main purpose of a facial recognition system is analysing, identifying and verifying a person from a digital image, video source or a database. Despite immense research and development most of the facial recognition system struggle to accurately identify and detect a face.
    [Show full text]
  • “A Review on Generative Adversarial Networks for Unsupervised Machine Learning”
    Bachelor's Degree in Telecommunication Technologies Engineering Academic Year 2018/2019 Bachelor Thesis “A review on Generative Adversarial Networks for unsupervised Machine Learning” Pablo Javier de Paz Carbajo Supervised by: Pablo Martínez Olmos Madrid, June 2019 This work is licensed under Creative Commons Attribution – Non Commercial – Non Derivatives ABSTRACT This thesis is conceived to provide an in-depth review of Generative Adversarial Networks (GANs) for unsupervised Machine Learning by introducing the basic concepts of Deep Learning as one of the main current techniques for unsupervised learning with deep neural networks as well as carefully explaining what and how a GAN works. The approach followed during this year-long work consists in learning and internalizing the technical concepts of Deep Learning and, particularly, GANs. After that, an analysis of the most used techniques takes place. For the experimentation, TensorFlow over Python is used to obtain experimental results for different types of public datasets of images (MNIST, Fashion-MNIST and CIFAR–10). GANs are outstandingly interesting in Deep Learning because of its endless capabilities and huge potential in many fields such as the health industry, the agriculture, banking and insurance, transportation, security, education… Its capabilities to generate new data that, mimics the input learning data given to it, are impressive and never seen before. This method is very nice approach for Data Science when dealing with a huge amount of (unlabeled) data, like most of the companies, institutions and governments do today. This thesis is restricted to image applications, but the outcomes can be applied to other datasets or fields such as text or voice applications.
    [Show full text]
  • Deep Neural Networks Are Easily Fooled: High Confidence Predictions for Unrecognizable Images
    Deep Neural Networks are Easily Fooled: High Confidence Predictions for Unrecognizable Images Anh Nguyen Jason Yosinski Jeff Clune University of Wyoming Cornell University University of Wyoming [email protected] [email protected] [email protected] Abstract Deep neural networks (DNNs) have recently been achieving state-of-the-art performance on a variety of pattern-recognition tasks, most notably visual classification problems. Given that DNNs are now able to classify objects in images with near-human-level performance, questions naturally arise as to what differences remain between com- puter and human vision. A recent study [30] revealed that changing an image (e.g. of a lion) in a way imperceptible to humans can cause a DNN to label the image as something else entirely (e.g. mislabeling a lion a library). Here we show a related result: it is easy to produce images that are completely unrecognizable to humans, but that state-of-the- art DNNs believe to be recognizable objects with 99.99% confidence (e.g. labeling with certainty that white noise static is a lion). Specifically, we take convolutional neu- ral networks trained to perform well on either the ImageNet or MNIST datasets and then find images with evolutionary algorithms or gradient ascent that DNNs label with high confidence as belonging to each dataset class. It is possi- ble to produce images totally unrecognizable to human eyes that DNNs believe with near certainty are familiar objects, which we call “fooling images” (more generally, fooling ex- Figure 1. Evolved images that are unrecognizable to humans, amples). Our results shed light on interesting differences but that state-of-the-art DNNs trained on ImageNet believe with between human vision and current DNNs, and raise ques- ≥ 99:6% certainty to be a familiar object.
    [Show full text]
  • Incorporating Nesterov Momentum Into Adam
    Incorporating Nesterov Momentum into Adam Timothy Dozat 1 Introduction Algorithm 1 Gradient Descent gt ∇q f (q t−1) When attempting to improve the performance of a t−1 q t q t−1 − hgt deep learning system, there are more or less three approaches one can take: the first is to improve the structure of the model, perhaps adding another layer, sum (with decay constant m) of the previous gradi- switching from simple recurrent units to LSTM cells ents into a momentum vector m, and using that in- [4], or–in the realm of NLP–taking advantage of stead of the true gradient. This has the advantage of syntactic parses (e.g. as in [13, et seq.]); another ap- accelerating gradient descent learning along dimen- proach is to improve the initialization of the model, sions where the gradient remains relatively consis- guaranteeing that the early-stage gradients have cer- tent across training steps and slowing it along turbu- tain beneficial properties [3], or building in large lent dimensions where the gradient is significantly amounts of sparsity [6], or taking advantage of prin- oscillating. ciples of linear algebra [15]; the final approach is to try a more powerful learning algorithm, such as in- Algorithm 2 Classical Momentum cluding a decaying sum over the previous gradients gt ∇qt−1 f (q t−1) in the update [12], by dividing each parameter up- mt mmt−1 + gt date by the L2 norm of the previous updates for that q t q t−1 − hmt parameter [2], or even by foregoing first-order algo- rithms for more powerful but more computationally [14] show that Nesterov’s accelerated gradient costly second order algorithms [9].
    [Show full text]
  • CNN Model for Image Classification on MNIST and Fashion-MNIST Dataset
    Volume 64, Issue 2, 2020 Journal of Scientific Research Institute of Science, Banaras Hindu University, Varanasi, India. CNN Model for Image Classification on MNIST and Fashion-MNIST Dataset Shivam S. Kadam, Amol C. Adamuthe*, and Ashwini B. Patil Dept. of CS & IT, RIT, Rajaramnagar, Sangli, MS, India. [email protected], [email protected]*, [email protected] Abstract: Paper presents application of convolutional neural flatten it to pass on to the output layer, which will make the network for image classification problem. MNIST and Fashion- prediction. Due to such architecture, it will take fewer parameter MNIST datasets used to test the performance of CNN model. Paper to learn and reduce the amount of data required to train the presents five different architectures with varying convolutional model. CNNs inspired by time-delay neural networks in which layers, filter size and fully connected layers. Experiments conducted the weights are shared in temporal dimension for reduction in with varying hyper-parameters namely activation function, optimizer, learning rate, dropout rate and batch size. Results show computation. Successful training of the hierarchical layers leads that selection of activation function, optimizer and dropout rate has CNN as the first successful deep learning architecture proved by impact on accuracy of results. All architectures give accuracy more Liu et al. (2017). CNN has shown excellent performance for than 99% for MNIST dataset. Fashion-MNIST dataset is complex machine learning applications. Due to practical benefits of CNN, than MNIST. For Fashion-MNIST dataset architecture 3 gives it gives better accuracy and improve the performance of system better results.
    [Show full text]