Artificial Neural Network Evolutionary Algorithm (ANNEVA) Abstract

Similar documents
Artificial Neural Network based Curve Prediction

A GENETIC ALGORITHM FOR CLUSTERING ON VERY LARGE DATA SETS

Distributed Optimization of Feature Mining Using Evolutionary Techniques

A New Selection Operator - CSM in Genetic Algorithms for Solving the TSP

Introduction to Genetic Algorithms

arxiv: v1 [cs.ne] 28 Mar 2016

Perceptrons and Backpropagation. Fabio Zachert Cognitive Modelling WiSe 2014/15

Genetic Algorithms. Kang Zheng Karl Schober

Segmentation of Noisy Binary Images Containing Circular and Elliptical Objects using Genetic Algorithms

A Genetic Algorithm for Graph Matching using Graph Node Characteristics 1 2

LECTURE NOTES Professor Anita Wasilewska NEURAL NETWORKS

Lecture #11: The Perceptron

A Genetic Algorithm for Minimum Tetrahedralization of a Convex Polyhedron

Evolutionary Optimization of Neural Networks for Face Detection

Genetic Algorithms for Vision and Pattern Recognition

1. Introduction. 2. Motivation and Problem Definition. Volume 8 Issue 2, February Susmita Mohapatra

CS6220: DATA MINING TECHNIQUES

Neural Network Weight Selection Using Genetic Algorithms

CS 4510/9010 Applied Machine Learning. Neural Nets. Paula Matuszek Fall copyright Paula Matuszek 2016

Using Genetic Algorithms to Improve Pattern Classification Performance

Particle Swarm Optimization applied to Pattern Recognition

A Neural Network Model Of Insurance Customer Ratings

Machine Learning 13. week

Introduction to Evolutionary Computation

FACE DETECTION AND RECOGNITION OF DRAWN CHARACTERS HERMAN CHAU

Lecture 10: Semantic Segmentation and Clustering

Ensemble Image Classification Method Based on Genetic Image Network

A Review on Plant Disease Detection using Image Processing

Performance Analysis of Data Mining Classification Techniques

Introduction (7.1) Genetic Algorithms (GA) (7.2) Simulated Annealing (SA) (7.3) Random Search (7.4) Downhill Simplex Search (DSS) (7.

Information Fusion Dr. B. K. Panigrahi

IN recent years, neural networks have attracted considerable attention

1 Lab + Hwk 5: Particle Swarm Optimization

EE 589 INTRODUCTION TO ARTIFICIAL NETWORK REPORT OF THE TERM PROJECT REAL TIME ODOR RECOGNATION SYSTEM FATMA ÖZYURT SANCAR

Back propagation Algorithm:

Neural Network Application Design. Supervised Function Approximation. Supervised Function Approximation. Supervised Function Approximation

Evolutionary origins of modularity

Grid-Based Genetic Algorithm Approach to Colour Image Segmentation

The k-means Algorithm and Genetic Algorithm

Genetic Algorithms Applied to the Knapsack Problem

CSC321: Neural Networks. Lecture 13: Learning without a teacher: Autoencoders and Principal Components Analysis. Geoffrey Hinton

Neuro-Fuzzy Inverse Forward Models

Introduction to Genetic Algorithms. Genetic Algorithms

Review: Final Exam CPSC Artificial Intelligence Michael M. Richter

ANTICIPATORY VERSUS TRADITIONAL GENETIC ALGORITHM

Evolving Hierarchical and Recursive Teleo-reactive Programs through Genetic Programming

Analytical model A structure and process for analyzing a dataset. For example, a decision tree is a model for the classification of a dataset.

Learning Composite Operators for Object Detection

1 Lab + Hwk 5: Particle Swarm Optimization

Evolutionary Computation. Chao Lan

Machine Evolution. Machine Evolution. Let s look at. Machine Evolution. Machine Evolution. Machine Evolution. Machine Evolution

Model Generation for an Intrusion Detection System Using Genetic Algorithms

Malaysian License Plate Recognition Artificial Neural Networks and Evolu Computation. The original publication is availabl

GENETIC ALGORITHM VERSUS PARTICLE SWARM OPTIMIZATION IN N-QUEEN PROBLEM

Coevolving Functions in Genetic Programming: Classification using K-nearest-neighbour

Solving the Travelling Salesman Problem in Parallel by Genetic Algorithm on Multicomputer Cluster

Evolutionary Linkage Creation between Information Sources in P2P Networks

A Visualization Tool to Improve the Performance of a Classifier Based on Hidden Markov Models

Traffic Signal Control Based On Fuzzy Artificial Neural Networks With Particle Swarm Optimization

Educational Fusion. Implementing a Production Quality User Interface With JFC

Escaping Local Optima: Genetic Algorithm

Lecture 6: Genetic Algorithm. An Introduction to Meta-Heuristics, Produced by Qiangfu Zhao (Since 2012), All rights reserved

Genetic programming. Lecture Genetic Programming. LISP as a GP language. LISP structure. S-expressions

Improving Performance of Multi-objective Genetic for Function Approximation through island specialisation

1 Lab 5: Particle Swarm Optimization

Outline. Motivation. Introduction of GAs. Genetic Algorithm 9/7/2017. Motivation Genetic algorithms An illustrative example Hypothesis space search

Character Recognition Using Convolutional Neural Networks

Work with Shapes. Concepts CHAPTER. Concepts, page 3-1 Procedures, page 3-5

Point Grouping Using a Genetic Algorithm

Neuro-fuzzy, GA-Fuzzy, Neural-Fuzzy-GA: A Data Mining Technique for Optimization

GENETIC ALGORITHM with Hands-On exercise

Active learning for visual object recognition

Notes on Multilayer, Feedforward Neural Networks

DEFECT DETECTION AND CLASSIFICATION USING MACHINE LEARNING CLASSIFIER

Multi prototype fuzzy pattern matching for handwritten character recognition

Lecture 2 Notes. Outline. Neural Networks. The Big Idea. Architecture. Instructors: Parth Shah, Riju Pahwa

Understanding Tracking and StroMotion of Soccer Ball

Hand Writing Numbers detection using Artificial Neural Networks

Bi-Objective Optimization for Scheduling in Heterogeneous Computing Systems

Kyrre Glette INF3490 Evolvable Hardware Cartesian Genetic Programming

Place Value. Unit 1 Lesson 1

Genetic Algorithms and the Evolution of Neural Networks for Language Processing

Principal Component Analysis and Neural Network Based Face Recognition

Image enhancement for face recognition using color segmentation and Edge detection algorithm

NEURAL NETWORK-BASED SEGMENTATION OF TEXTURES USING GABOR FEATURES

Evolutionary Art with Cartesian Genetic Programming

Evolutionary Algorithms. CS Evolutionary Algorithms 1

Comparative Analysis of Genetic Algorithm Implementations

Tutorial 1 Answers. Question 1

Combining Abstract Images using Texture Transfer

NEXT-GENERATION Arithmetic

Machine Learning : Clustering, Self-Organizing Maps

Genetic Algorithm for Dynamic Capacitated Minimum Spanning Tree

ARTIFICIAL INTELLIGENCE (CSCU9YE ) LECTURE 5: EVOLUTIONARY ALGORITHMS

Digital Image Processing

DERIVATIVE-FREE OPTIMIZATION

Performance analysis of a MLP weight initialization algorithm

For Monday. Read chapter 18, sections Homework:

A Systematic Study of Automated Program Repair: Fixing 55 out of 105 Bugs for $8 Each

A Genetic Algorithm-Based Approach for Building Accurate Decision Trees

Transcription:

Artificial Neural Network Evolutionary Algorithm (ANNEVA) Tyler Haugen Dr. Jeff McGough Math and Computer Science Department South Dakota School of Mines and Technology Rapid City, SD 57701 tyler.haugen@mines.sdsmt.edu jeff.mcgough@sdsmt.edu Abstract Anneva is a project that is attempting to lower the amount of supervision required to train an artificial neural network through the use of simulated evolution. Many neural network training methods rely on training vectors to outline the inputs and desired output of a network. Anneva sets out to replace this set of exemplars with a genetic operators. Anneva still uses established network training methods but applies them to the learning process in a novel manor.

Introduction Anneva is an evolutionary algorithm that is designed to guide the learning process of Artificial Neural Networks. The project does set out to replace existing Neural Network training method but to control their application. The Backpropagation method can successfully train a Neural Network to a set of training vectors. This does not answer some important questions. How are the training vectors created and will these networks that generalizes well to the problem? Anneva replaces the need to define training vectors with the genetic operators used during the evolution. Artificial Neural Networks An Artificial Neural Networks is a form of Artificial Intelligence that is modeled after biological neural networks such as the human mind. In a simplified model, the input layer to the network provides our sensory input from the environment; the middle layer, or cerebral cortex, processes the inputs; and the output layer provides motor control back to the environment (Jones 166). This paper will not going into working of Artificial Neural Networks but this information is not critical to understanding of the working of Anneva. There are however a couple of important things to know about Neural Network. A Neural Network will take an input vector and determine a classification (or output) based on the values in the vector. In order make an intelligent classification a Neural Network must be trained. Anneva utilized the Backpropagation Algorithm to accomplish the training. Evolutionary Algorithms Evolutionary Algorithms are a technique for that optimization that simulates the principals of evolution. First a population of random solutions is created. These solutions are evaluated using a fitness functions and the fitness function is used to select members of the population for recombination. Selection methods generally give a fitter solution a higher a probability of selection than a less fit solution. The recombination will take sections from selected parents and create a new solution from these pieces of solution. To keep a population from becoming locked into a local maximum a mutation scheme is applied to the recombination. Mutations are random changes that are applied to the values in the solution in a newly created generation. The same process is then applied to newly created generation to create the third generation and so on until a algorithm converges on a solution (or an exit condition is meet). Network Application A simplified image recognition problem was created in order to test the performance of ANNEVA. The problem consists of trying to find a search image that has been drawn onto a background image. Since search image is not taken from the background a transparency mask is applied to the search image to help it blend into the background. Drawing the search image onto the background in this 1

manner helps to make the search image stand out and easier to identify. Figure One shows intensity values from a sub-section of the background image. Figure Two shows that same section of the background after the search image draw over it. The intensity value is taken from the HSI (hue, saturation, intensity) model representation of the pixel values. The HSI model closely corresponds with the way humans describe and interpret color. (Gonzalex and Woods 402) The HSI model decouples the color-carrying information from the intensity (brightness). Since the intensity represents meaningful information about a pixel in a single value it is an ideal choice for the input value. The search image is a star icon taken of the open source Crystal Project icon set. The background image is a picture of a sunset that comes with some Windows installations as a sample picture. The image is resized from 128x128 pixels to 10x10 pixels. After the resize all pixels with a intensity greater than 0.90 (intensities are store as in a range 0.0 1.0) are set to be fully transparent. This causes a convex section of the search image to become transparent. Figure Three shows the search in the different stages of the image processing. 2

The Standard Widget Toolkit (SWT) for Java was utilized for most of the image processing done in Anneva. Network Input Before a network can determine whether a section of the combined image (the background after the search image has been drawn) contains the search image, information about the section must be extracted into a input vector. To do this a ten by ten section of the image is read from the combined image and the intensity of each of the pixels is calculated. Each of the intensity value taken from the ten by ten section is treated as an input into the Neural Network. This gives each network a total of a hundred input nodes. Network Topology All the Neural Networks created in Anneva have the same network topology. As mentioned in the previous section, the networks will have 100 inputs. Two outputs nodes are need, one node to represent a match and another for a miss. A single hidden layer of fifty nodes was chosen for network in Anneva. The decision to choose fifty nodes was arbitrary and since it does not have trouble training to a set of intensity vectors it was not changed. Figure 4 is a graphically representation of the described topology. 3

Direct Training Method In order to test the performance of ANNEVA two different Neural Networks were trained directly to intensity vectors taken from sample images. Two sampling methods were used to extract training vector to train the Neural Networks. The first method will take 30 random samples from the background image and classify them as a misses and stored them as training vectors. Ten random location will the be chosen from through out the background. The intensities at the random locations will be classified as misses and stored training vectors as well. The search image will then be drawn at the previously chosen random location. The intensities of the combined image will as be stored as a input vector but this time they will be classified as matches. The second directly trained Neural Network will extract 36 samples from background taken from evenly space interval spanning the entire image. Seven random location will be chosen from through out the background, classified as misses and stored. The search image will then be drawn at the previously chosen random location and intensities of the combined image will be stored. Evolutionary Approach The population used in the evolutionary algorithm consist of Multilayer Perception Neural Networks with 100 input, 50 hidden, 2 output nodes. Anneva is able to converge consistently with in 100 4

generations with small populations. Population sizes of ten and twenty-five were tested and converged in a timely manner. Genetic Operators Fitness A networks performance is measure by testing it against a generated tested image. When generating the test image ten search images are placed in random locations on the background image. The intensities at the search image locations are stored. The intensities from only the background image at the search image locations are also stored. Thirty more ten by ten sub-sections of intensities are taken from random location in the background image. The fifty intensity vectors are used as a set of test vectors to evaluate the performance of a particular network. When a network correctly identifies a vector as not having the search image its fitness is increased by one. Since there is forty such vectors this moves the fitness range to forty as well. If one of the vectors containing a search image is correctly identified then that networks fitness is increased by two. This makes that highest possible fitness sixty. Selection Anneva uses a roulette section mechanism to select the parent of the next generation. Roulette selection works by assigning each member a probability of selection based on its fitness. To compute this probability the total fitness of the population is summed. Each member of the population's fitness is divided by the total fitness and that value is assigned as that networks probability. This ensures that the sum of the fitnesses will total 1.0. This allows the probabilities to represent a section of the range 0.0 to 1.0. A random number between zero and one is generated and used to select the corresponding member of the population. Recombination The recombination consists of two major parts, a set of training vectors and the actual parent networks. The training vectors are generated in a similar fashion as the training vectors used to direct training approach. Each generation a set of intensities vectors are pulled from a combined image but are not classified. These vectors will be used in the recombination each member of next generation. Since these vectors affect all the member of the next generation they are looked at as the environment for the next generation. After two parents have been selected they are used to classify each of the environment vectors. Once the environment vectors are classified there are trained to a member of the next generation using backpropagation. In the initial stages of evolution many of the environment vectors will be classified incorrectly but as the fitness of the population increases will happen less. The environment vectors change each generation to try and prevent the population from evolving networks that do not generalize to the problem space. The mutation scheme is applied directly to environment vectors before the 5

member of the next generation is trained. Elitism was initialed implemented as part of the Anneva's recombination. Elitism is the coping of the top percentage current generation into the next. This help to ensure that the best member of a population will not be lost during the selection process. The elitism seems cause a the algorithm to converges a few generation quicker but does cause a significant impact on the performance. It did however provide a useful piece of information. After a top member of the population is copied over to next generation it was evaluated with the new set of environment vectors. When having its fitness reevaluated a top-member of the previous generation can end up having a lower fitness in the next generation. Mutation The mutation scheme used in Anneva is fairly simply and is applied to a classified environment vector before they are trained to the next generation. A random number between 0.0 and 1.0 is chosen and if that number is below the mutation rate of 2.5 percent a mutation occurs. The mutation will randomly assign a new classification to the environment vector. This mutation scheme which will not always cause a change in classification since it is possible the new classification will be the same value as the original classification. Results A total of four networks were tested against two test images. A network was trained for each of the two direct training methods and the two of the evolved networks. The first evolved network was evolved in a population of size 25 and the second evolved in a population of size 10. Since the algorithm converges easily without Elitism, it was not used during the evolution of these networks. Each of the testing images contain five search images drawn onto the various location of the background image. Data Representation The results of the tests are stored in an image that is the same dimension as the test image. Every pixel location in a test image is feed into the network that is being tested. If that location is determined to match the search pattern the corresponding position in the result image is set to red. If the network classifies a miss the corresponding position in the result image is set white. Test Image One The first test image will place its search images at the following pixel locations: (5, 5), (30,30), (55,5), (5,55), and (55,55). The resulting test image is show in Figure 5. 6

Test Image One Results 7

From these images we can see that the evolved networks cluster tighter around the the locations of the search images. Test Image Two The second test image will place its search images at the following pixel locations: (15,15), (35,65), (105,5), (5,105), and (105,105). The resulting test image is show in Figure 10. This test pattern proved much hard to classify. The search image at (105,105) proved the hardest to classify correctly as the background and search images have many pixels close to the same intensity. 8

Test Image Two Results 9

Conclusion Anneva was successfully in training Neural Networks using Simulated Evolution. The evolved Neural Networks are created without defining a specific set of training vectors. These network performed as well as if not better than network trained using traditional Backpropagation for the simplified image recognition problem. 10

References [1] Alpaydin, Ethem. Introduction To Machine Learning. Combridge, Massachusetts: The MIT Press, 2004. [2] Coppin, Ben. Artificial Intelligence illumintaed. Sunbury, Massachusetts: Janes and Bartlett Publishers, 2004. [3] Gonzalez, Rafael, Richard Woods. Digital Image Processing. Upper Saddle River, NJ: Pearson Prentice Hal, 2008. [4] Hagan, Martin, Howard Demuth, and Mark Beale. Neural Network Design. Bolder, Colorado: University of Colorado Bookstore. [5] Jones, Tim. AI Application Programming. Hingham, Massachusetts: Charles River Media, 2005. [6] Winchester, Joe. Taking a look at SWT Images. IBM. 10 Sept. 2003 <http://www.eclipse.org/articles/article-swt-images/graphics-resources.html> 11