SlideShare une entreprise Scribd logo
1  sur  68
Télécharger pour lire hors ligne
Building Neural Network
Through Neuroevolution
Alexandre Bergel
DCC - University of Chile
http://bergel.eu
10/12/2019
1
2
In a Nutshell
Classical deep learning is about training models
Neuroevolution is about evolving neural
networks
Neuroevolution is a combination of genetic
algorithm and deep learning
3
Outline
Genetic Programming: Simulation of Evolution
Neuroevolution: Combining Deep Learning and
Evolution
NEAT Algorithm: Evolving species of networks
4
5
Premise of Genetic Algorithm
Natural selection is pioneered by Charles Darwin
(1809-1882), biologist who worked on natural evolution
“On the Origin of Species by Means of Natural
Selection, or the Preservation of Favoured Races in the
Struggle for Life”, 1859
“One general low, leading to the advancement of all
organic beings, namely, vary, let the strongest live
and the weakest die”
— Charles Darwin
6
“Guess the 3-letter word I have in mind”
Secret word: cat
7
“Guess the 3-letter word I have in mind”
“For each try, I tell you the number of correct letters”
Secret word: cat
8
Secret word: cat
“cow”
“poz”
“gaz”
1
0
1
9
gaz
cow
poz
10
Using genetic
operators,
the words are
combined and
some letters are
randomly modified
gaz
cow
gow
caz
poz pow
11
atc
gozgaz
cow
gow
caz
poz pow poz
12
gozgaz
cow
gow
caz
1st generation 2nd generation 3rd generation
atc
poz pow poz
Flow chart of an evolution algorithm
13
Selection
Population Parents
Offspring
Reproduction
Replacement
Flow chart of an evolution algorithm
14
Selection
Population Parents
Offspring
Reproduction
Replacement
Many EAs are around:
Ant colony optimization,
Artificial immune system,
Cultural algorithms,
Genetic Algorithm,
Genetic Programming,
Grammatical evolution,
…
Flow chart of a genetic algorithm
15
Yes
Initialize
population
Evaluate fitness
Solution
found?
Selection
Reproduction
No
End
Flow chart of a genetic algorithm
16
Yes
Initialize
population
Evaluate fitness
Solution
found?
Selection
Reproduction
No
End
We create a set of
random 3-letter words
Flow chart of a genetic algorithm
17
Yes
Initialize
population
Evaluate fitness
Solution
found?
Selection
Reproduction
No
End
Compute the score
of each word
Flow chart of a genetic algorithm
18
Yes
Initialize
population
Evaluate fitness
Solution
found?
Selection
Reproduction
No
End
Do we have a word with
score = 3?
Flow chart of a genetic algorithm
19
Yes
Initialize
population
Evaluate fitness
Solution
found?
Selection
Reproduction
No
End
We take the words that
are close to 3
Flow chart of a genetic algorithm
20
Yes
Initialize
population
Evaluate fitness
Solution
found?
Selection
Reproduction
No
End
We combine and mutate
words to form a new set of
words
Flow chart of a genetic algorithm
21
Yes
Initialize
population
Evaluate fitness
Solution
found?
Selection
Reproduction
No
End
We combine and mutate
words to form a new set of
words
DEMO
22
Genetic Algorithm in a Nutshell
Evolutionary computation technique that
automatically solves problems without specifying the
form or structure of the solution in advance
Generally speaking, genetic algorithms are
simulations of evolution, using biological genetic
operations
Finding such as is maximal, is a tuple
of any arbitrary dimension and domain value,
x f(x) = y x
y ∈ ℝ
Flexible Muscle-Based Locomotion
for Bipedal Creatures
23
https://www.youtube.com/watch?v=pgaEE27nsQw
24
25
26
= Neuroevolution
+
27
Gradient descent
Gradient descent is commonly used to make a
neural network “learn”
28
Gradient descent requires examples
Examples are required to train a neural network
Picture recognition may require thousands of
pictures
Requiring a large number of training examples
may be problematic
e.g., video games, self-driving cars
29
Generalization
How do we get from where we are to artificial
general intelligence?
How to make the learning process closer to how
human learn?
https://www.nature.com/articles/s42256-018-0006-z
30
Neuroevolution
“Neuroevolution is a form of artificial intelligence
that uses evolutionary algorithms to generate
artificial neural networks, parameters, topology and
rules. It is most commonly applied in artificial life,
general game playing and evolutionary robotics.”
— Wikipedia
“The evolution of neural networks is called neuroevolution”
— Hannah Le
31
Idea of Neuroevolution
Supervised learning algorithms require correct
input-output pairs
Neuroevolution only requires a measure of a
network’s performance
A major inspiration for the investigation of
neuroevolution is the evolution of brains in nature
32
Examples of neuroevolution
33
MarIO
https://www.youtube.com/watch?v=qv6UVOQ0F44
34
Flappy Bird
https://github.com/xviniette/FlappyLearning
35
A simple algorithm for neuroevolution
36
Simple Algorithm
Use Genetic Algorithm to search for the weights
and bias of each neuron
The fitness function to optimize could be based
on the error function (e.g., MSE loss)
37
38
39
40
41
42
43
44
New neural network
With a better accuracy
45
Genetic operations
Applying genetic algorithm to find weights and bias of
a neural network involves particular genetic operations
The cross-over operations must consider the neuron
as a whole
ie. Crossover should not divide the genetic information obtained
from a neuron
Cross-over happens only at a limit of a neuron
Because of the competing convention we will later see
46
Variant of crossover
We have originally presented GA with two genetic
operations
In fact, we can run GA with more operations
You can also have an additional second cross-
over operations that crosscut only at the limit of a
layer
Cross-over happens at the junction of a layer
47
Genetically modified neural network
Neuroevolution is convenient when training data is
either missing, insufficient, or unusable (eg bad
quality, imbalanced)
The small algorithm we have just seen is effective
in many situations
Iris or seed data set

AI for a simple game (e.g., Flappy bird)
48
What about network architecture?
This simple algorithm finds weights and bias while
maintaining a fixed network structure
Structure of the network and some of its
parameters can also be discovered
The idea of searching for a network architecture is
to look for simple and minimal networks
Actually, fully-connected forward networks are
pretty far away from what nature has brought us
49
NEAT — NeuroEvolution of Augmenting Topologies
Kenneth O. Stanley and Risto Miikkulainen. 2002.
Evolving neural networks through augmenting
topologies
Evolutionary Computation archive
Volume 10 Issue 2, Summer 2002
Pages 99-127
http://dx.doi.org/10.1162/106365602320169811
50
Essence of NEAT
Genetic algorithm that produces neural networks
NEAT varies the structure of the network, producing
complex solutions over time
NEAT needs its overall population of networks to be diverse
The reproduction phase should produces a novel individual
NEAT groups similar individuals into species
Direct competition for survival happens only within a
species
51
Essence of NEAT
Species compete with each other for
reproduction rights
Mating only happens within species (unless
interspecies matin is explicitly allowed)
Because NEAT uses species, it takes longer for
the whole population to become uniform
52
Limitation of gradient-based approaches
Neuroevolution can learn things that classical
neural networks cannot learn
activation functions, hyperparameter, architectures
53
Encoding
54
Encoding
Inputs and outputs nodes are not encoded
Hidden nodes can be added or removed
A connection may be enabled or not, and has an innovation number
Individuals do not necessarily have the same size
55
Mutation
56
Mutation
If a new node is added:
1 - it is placed between two connected nodes

2 - the previous connection is disabled (but still present in the
genome)
57
Competing Convention Problem
In ordinary evolution algorithms it can happen that
two individuals encode very similar behavior, but
with very different genotype
This is called competing conventions
If these individual are subject to crossover, their
children are likely to be worse than their either
parent
58
Competing Convention Problem
59
Competing Convention Problem
NEAT solves this by keeping historical markings of
new structural elements
When a new structural element is created (via
structural mutation, such as adding a new node or
gene), it receives an innovation number
When two individuals are crossed over, their
genotypes are aligned in such a way that the
corresponding innovation numbers match and only the
different elements are exchanged
60
61
Speciation
Most new evolutions are not good ones
A new connection or node degrades the
performance of the individual
How can we protect new networks from being
eliminated?
NEAT suggests speciation
62
Speciation
Splits up the population into several species
Based on the similarity of topology and connections
Individuals in a population only have to compete
within other individuals within that species
Allow for a new network to be created and optimized
without being quickly eliminated
Explore the idea of explicit fitness sharing: the whole
population has a fitness
63
Speciation
Speciation project innovations in the population
When a network diverges far enough from other
networks in the population, NEAT identifies it and
put it in its own species
Using innovation numbers NEAT computes the
distance between two genomes
64
Minimal structure
NEAT favors minimal networks to be evolved
Mutations is about adding a node, adding a
connection, or changing a weight
… and not removing structural elements
65
What have we seen?
An overview of Genetic Algorithm
Two algorithms for Neuroevolution
Simple: Blindly applying GA to Deep learning
NEAT: Use of species to achieve incremental
evolution of network complexity
66
Extensions of NEAT
Many improvements were proposed around NEAT
HyperNEAT: indirect encoding of network
ESHyperNEAT: higher density of neurons when
necessary
CoDeepNEAT: macro systems
Indirect coding using rules mimicking cell divisions
67
References
Designing neural networks through neuroevolution —
Nature Machine Intelligence volume 1, 24–35(2019)
A Hypercube-Based Indirect Encoding for Evolving
Large-Scale Neural Networks — Artificial Life journal
15(2), Cambridge, MA: MIT Press, 2009
Building Neural Networks Through Neuroevolution

Contenu connexe

Tendances

Optimization Simulated Annealing
Optimization Simulated AnnealingOptimization Simulated Annealing
Optimization Simulated AnnealingUday Wankar
 
Module 1 introduction to machine learning
Module 1  introduction to machine learningModule 1  introduction to machine learning
Module 1 introduction to machine learningSara Hooker
 
Neural Networks: Multilayer Perceptron
Neural Networks: Multilayer PerceptronNeural Networks: Multilayer Perceptron
Neural Networks: Multilayer PerceptronMostafa G. M. Mostafa
 
MACHINE LEARNING - GENETIC ALGORITHM
MACHINE LEARNING - GENETIC ALGORITHMMACHINE LEARNING - GENETIC ALGORITHM
MACHINE LEARNING - GENETIC ALGORITHMPuneet Kulyana
 
Particle Swarm Optimization - PSO
Particle Swarm Optimization - PSOParticle Swarm Optimization - PSO
Particle Swarm Optimization - PSOMohamed Talaat
 
Probabilistic Reasoning
Probabilistic ReasoningProbabilistic Reasoning
Probabilistic ReasoningJunya Tanaka
 
Deep Generative Models
Deep Generative Models Deep Generative Models
Deep Generative Models Chia-Wen Cheng
 
Mtech Fourth progress presentation
Mtech Fourth progress presentationMtech Fourth progress presentation
Mtech Fourth progress presentationNEERAJ BAGHEL
 
Deep residual learning for image recognition
Deep residual learning for image recognitionDeep residual learning for image recognition
Deep residual learning for image recognitionYoonho Shin
 
Bayesian Networks - A Brief Introduction
Bayesian Networks - A Brief IntroductionBayesian Networks - A Brief Introduction
Bayesian Networks - A Brief IntroductionAdnan Masood
 
Simulated Annealing
Simulated AnnealingSimulated Annealing
Simulated AnnealingJason Larsen
 

Tendances (20)

Optimization Simulated Annealing
Optimization Simulated AnnealingOptimization Simulated Annealing
Optimization Simulated Annealing
 
Module 1 introduction to machine learning
Module 1  introduction to machine learningModule 1  introduction to machine learning
Module 1 introduction to machine learning
 
Neural Networks: Multilayer Perceptron
Neural Networks: Multilayer PerceptronNeural Networks: Multilayer Perceptron
Neural Networks: Multilayer Perceptron
 
Introduction to Genetic Algorithms
Introduction to Genetic AlgorithmsIntroduction to Genetic Algorithms
Introduction to Genetic Algorithms
 
MACHINE LEARNING - GENETIC ALGORITHM
MACHINE LEARNING - GENETIC ALGORITHMMACHINE LEARNING - GENETIC ALGORITHM
MACHINE LEARNING - GENETIC ALGORITHM
 
Federated Learning
Federated LearningFederated Learning
Federated Learning
 
Particle Swarm Optimization - PSO
Particle Swarm Optimization - PSOParticle Swarm Optimization - PSO
Particle Swarm Optimization - PSO
 
Probabilistic Reasoning
Probabilistic ReasoningProbabilistic Reasoning
Probabilistic Reasoning
 
Uncertainty in Deep Learning
Uncertainty in Deep LearningUncertainty in Deep Learning
Uncertainty in Deep Learning
 
Deep Generative Models
Deep Generative Models Deep Generative Models
Deep Generative Models
 
Attention
AttentionAttention
Attention
 
Soft computing
Soft computingSoft computing
Soft computing
 
Mtech Fourth progress presentation
Mtech Fourth progress presentationMtech Fourth progress presentation
Mtech Fourth progress presentation
 
Deep residual learning for image recognition
Deep residual learning for image recognitionDeep residual learning for image recognition
Deep residual learning for image recognition
 
Genetic Algorithm
Genetic AlgorithmGenetic Algorithm
Genetic Algorithm
 
Anfis (1)
Anfis (1)Anfis (1)
Anfis (1)
 
Explainable AI
Explainable AIExplainable AI
Explainable AI
 
Bayesian Networks - A Brief Introduction
Bayesian Networks - A Brief IntroductionBayesian Networks - A Brief Introduction
Bayesian Networks - A Brief Introduction
 
Simulated Annealing
Simulated AnnealingSimulated Annealing
Simulated Annealing
 
Genetic algorithm
Genetic algorithmGenetic algorithm
Genetic algorithm
 

Similaire à Building Neural Networks Through Neuroevolution

NEAT: Neuroevolution of Augmenting Topologies
NEAT: Neuroevolution of Augmenting TopologiesNEAT: Neuroevolution of Augmenting Topologies
NEAT: Neuroevolution of Augmenting TopologiesKhush Patel
 
Diagnosis Chest Diseases Using Neural Network and Genetic Hybrid Algorithm
Diagnosis Chest Diseases Using Neural Network and Genetic Hybrid AlgorithmDiagnosis Chest Diseases Using Neural Network and Genetic Hybrid Algorithm
Diagnosis Chest Diseases Using Neural Network and Genetic Hybrid AlgorithmIJERA Editor
 
Evolving Neural Networks Through Augmenting Topologies
Evolving Neural Networks Through Augmenting TopologiesEvolving Neural Networks Through Augmenting Topologies
Evolving Neural Networks Through Augmenting TopologiesDaniele Loiacono
 
scRNA-Seq Workshop Presentation - Stem Cell Network 2018
scRNA-Seq Workshop Presentation - Stem Cell Network 2018scRNA-Seq Workshop Presentation - Stem Cell Network 2018
scRNA-Seq Workshop Presentation - Stem Cell Network 2018David Cook
 
[PR12] understanding deep learning requires rethinking generalization
[PR12] understanding deep learning requires rethinking generalization[PR12] understanding deep learning requires rethinking generalization
[PR12] understanding deep learning requires rethinking generalizationJaeJun Yoo
 
Introduction to artificial intelligence technique
Introduction to artificial intelligence technique Introduction to artificial intelligence technique
Introduction to artificial intelligence technique Aishwarya Phalke
 
A clonal based algorithm for the reconstruction of genetic network using s sy...
A clonal based algorithm for the reconstruction of genetic network using s sy...A clonal based algorithm for the reconstruction of genetic network using s sy...
A clonal based algorithm for the reconstruction of genetic network using s sy...eSAT Journals
 
A clonal based algorithm for the reconstruction of
A clonal based algorithm for the reconstruction ofA clonal based algorithm for the reconstruction of
A clonal based algorithm for the reconstruction ofeSAT Publishing House
 
Unit I & II in Principles of Soft computing
Unit I & II in Principles of Soft computing Unit I & II in Principles of Soft computing
Unit I & II in Principles of Soft computing Sivagowry Shathesh
 
Knowledge extraction and visualisation using rule-based machine learning
Knowledge extraction and visualisation using rule-based machine learningKnowledge extraction and visualisation using rule-based machine learning
Knowledge extraction and visualisation using rule-based machine learningjaumebp
 
Cornell Pbsb 20090126 Nets
Cornell Pbsb 20090126 NetsCornell Pbsb 20090126 Nets
Cornell Pbsb 20090126 NetsMark Gerstein
 
Neural Networks-introduction_with_prodecure.pptx
Neural Networks-introduction_with_prodecure.pptxNeural Networks-introduction_with_prodecure.pptx
Neural Networks-introduction_with_prodecure.pptxRatuRumana3
 
Ted Willke, Sr Principal Engineer, Intel at MLconf SEA - 5/20/16
Ted Willke, Sr Principal Engineer, Intel at MLconf SEA - 5/20/16Ted Willke, Sr Principal Engineer, Intel at MLconf SEA - 5/20/16
Ted Willke, Sr Principal Engineer, Intel at MLconf SEA - 5/20/16MLconf
 
Neural Networks in Data Mining - “An Overview”
Neural Networks  in Data Mining -   “An Overview”Neural Networks  in Data Mining -   “An Overview”
Neural Networks in Data Mining - “An Overview”Dr.(Mrs).Gethsiyal Augasta
 
Emerging Approach to Computing Techniques.pptx
Emerging Approach to Computing Techniques.pptxEmerging Approach to Computing Techniques.pptx
Emerging Approach to Computing Techniques.pptxPoonamKumarSharma
 
Genetic algorithm
Genetic algorithmGenetic algorithm
Genetic algorithmRespa Peter
 
Deep learning: Cutting through the Myths and Hype
Deep learning: Cutting through the Myths and HypeDeep learning: Cutting through the Myths and Hype
Deep learning: Cutting through the Myths and HypeSiby Jose Plathottam
 

Similaire à Building Neural Networks Through Neuroevolution (20)

NEAT: Neuroevolution of Augmenting Topologies
NEAT: Neuroevolution of Augmenting TopologiesNEAT: Neuroevolution of Augmenting Topologies
NEAT: Neuroevolution of Augmenting Topologies
 
Diagnosis Chest Diseases Using Neural Network and Genetic Hybrid Algorithm
Diagnosis Chest Diseases Using Neural Network and Genetic Hybrid AlgorithmDiagnosis Chest Diseases Using Neural Network and Genetic Hybrid Algorithm
Diagnosis Chest Diseases Using Neural Network and Genetic Hybrid Algorithm
 
Evolving Neural Networks Through Augmenting Topologies
Evolving Neural Networks Through Augmenting TopologiesEvolving Neural Networks Through Augmenting Topologies
Evolving Neural Networks Through Augmenting Topologies
 
scRNA-Seq Workshop Presentation - Stem Cell Network 2018
scRNA-Seq Workshop Presentation - Stem Cell Network 2018scRNA-Seq Workshop Presentation - Stem Cell Network 2018
scRNA-Seq Workshop Presentation - Stem Cell Network 2018
 
bbbPaper
bbbPaperbbbPaper
bbbPaper
 
[PR12] understanding deep learning requires rethinking generalization
[PR12] understanding deep learning requires rethinking generalization[PR12] understanding deep learning requires rethinking generalization
[PR12] understanding deep learning requires rethinking generalization
 
Introduction to artificial intelligence technique
Introduction to artificial intelligence technique Introduction to artificial intelligence technique
Introduction to artificial intelligence technique
 
A clonal based algorithm for the reconstruction of genetic network using s sy...
A clonal based algorithm for the reconstruction of genetic network using s sy...A clonal based algorithm for the reconstruction of genetic network using s sy...
A clonal based algorithm for the reconstruction of genetic network using s sy...
 
A clonal based algorithm for the reconstruction of
A clonal based algorithm for the reconstruction ofA clonal based algorithm for the reconstruction of
A clonal based algorithm for the reconstruction of
 
Unit I & II in Principles of Soft computing
Unit I & II in Principles of Soft computing Unit I & II in Principles of Soft computing
Unit I & II in Principles of Soft computing
 
Knowledge extraction and visualisation using rule-based machine learning
Knowledge extraction and visualisation using rule-based machine learningKnowledge extraction and visualisation using rule-based machine learning
Knowledge extraction and visualisation using rule-based machine learning
 
Cornell Pbsb 20090126 Nets
Cornell Pbsb 20090126 NetsCornell Pbsb 20090126 Nets
Cornell Pbsb 20090126 Nets
 
Neural Networks-introduction_with_prodecure.pptx
Neural Networks-introduction_with_prodecure.pptxNeural Networks-introduction_with_prodecure.pptx
Neural Networks-introduction_with_prodecure.pptx
 
02 Fundamental Concepts of ANN
02 Fundamental Concepts of ANN02 Fundamental Concepts of ANN
02 Fundamental Concepts of ANN
 
Ted Willke, Sr Principal Engineer, Intel at MLconf SEA - 5/20/16
Ted Willke, Sr Principal Engineer, Intel at MLconf SEA - 5/20/16Ted Willke, Sr Principal Engineer, Intel at MLconf SEA - 5/20/16
Ted Willke, Sr Principal Engineer, Intel at MLconf SEA - 5/20/16
 
Ga 1 conference
Ga 1 conferenceGa 1 conference
Ga 1 conference
 
Neural Networks in Data Mining - “An Overview”
Neural Networks  in Data Mining -   “An Overview”Neural Networks  in Data Mining -   “An Overview”
Neural Networks in Data Mining - “An Overview”
 
Emerging Approach to Computing Techniques.pptx
Emerging Approach to Computing Techniques.pptxEmerging Approach to Computing Techniques.pptx
Emerging Approach to Computing Techniques.pptx
 
Genetic algorithm
Genetic algorithmGenetic algorithm
Genetic algorithm
 
Deep learning: Cutting through the Myths and Hype
Deep learning: Cutting through the Myths and HypeDeep learning: Cutting through the Myths and Hype
Deep learning: Cutting through the Myths and Hype
 

Plus de bergel

Roassal presentation
Roassal presentationRoassal presentation
Roassal presentationbergel
 
2011 famoosr
2011 famoosr2011 famoosr
2011 famoosrbergel
 
2011 ecoop
2011 ecoop2011 ecoop
2011 ecoopbergel
 
Test beautycleanness
Test beautycleannessTest beautycleanness
Test beautycleannessbergel
 
Multi dimensional profiling
Multi dimensional profilingMulti dimensional profiling
Multi dimensional profilingbergel
 
Profiling blueprints
Profiling blueprintsProfiling blueprints
Profiling blueprintsbergel
 
The Pharo Programming Language
The Pharo Programming LanguageThe Pharo Programming Language
The Pharo Programming Languagebergel
 
2008 Sccc Inheritance
2008 Sccc Inheritance2008 Sccc Inheritance
2008 Sccc Inheritancebergel
 
2008 Sccc Smalltalk
2008 Sccc Smalltalk2008 Sccc Smalltalk
2008 Sccc Smalltalkbergel
 
Presentation of Traits
Presentation of TraitsPresentation of Traits
Presentation of Traitsbergel
 
2006 Seaside
2006 Seaside2006 Seaside
2006 Seasidebergel
 
2006 Small Scheme
2006 Small Scheme2006 Small Scheme
2006 Small Schemebergel
 
2004 Esug Prototalk
2004 Esug Prototalk2004 Esug Prototalk
2004 Esug Prototalkbergel
 
2005 Oopsla Classboxj
2005 Oopsla Classboxj2005 Oopsla Classboxj
2005 Oopsla Classboxjbergel
 
2006 Esug Omnibrowser
2006 Esug Omnibrowser2006 Esug Omnibrowser
2006 Esug Omnibrowserbergel
 

Plus de bergel (15)

Roassal presentation
Roassal presentationRoassal presentation
Roassal presentation
 
2011 famoosr
2011 famoosr2011 famoosr
2011 famoosr
 
2011 ecoop
2011 ecoop2011 ecoop
2011 ecoop
 
Test beautycleanness
Test beautycleannessTest beautycleanness
Test beautycleanness
 
Multi dimensional profiling
Multi dimensional profilingMulti dimensional profiling
Multi dimensional profiling
 
Profiling blueprints
Profiling blueprintsProfiling blueprints
Profiling blueprints
 
The Pharo Programming Language
The Pharo Programming LanguageThe Pharo Programming Language
The Pharo Programming Language
 
2008 Sccc Inheritance
2008 Sccc Inheritance2008 Sccc Inheritance
2008 Sccc Inheritance
 
2008 Sccc Smalltalk
2008 Sccc Smalltalk2008 Sccc Smalltalk
2008 Sccc Smalltalk
 
Presentation of Traits
Presentation of TraitsPresentation of Traits
Presentation of Traits
 
2006 Seaside
2006 Seaside2006 Seaside
2006 Seaside
 
2006 Small Scheme
2006 Small Scheme2006 Small Scheme
2006 Small Scheme
 
2004 Esug Prototalk
2004 Esug Prototalk2004 Esug Prototalk
2004 Esug Prototalk
 
2005 Oopsla Classboxj
2005 Oopsla Classboxj2005 Oopsla Classboxj
2005 Oopsla Classboxj
 
2006 Esug Omnibrowser
2006 Esug Omnibrowser2006 Esug Omnibrowser
2006 Esug Omnibrowser
 

Dernier

SensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving CarsSensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving CarsChristian Birchler
 
Introduction Computer Science - Software Design.pdf
Introduction Computer Science - Software Design.pdfIntroduction Computer Science - Software Design.pdf
Introduction Computer Science - Software Design.pdfFerryKemperman
 
PREDICTING RIVER WATER QUALITY ppt presentation
PREDICTING  RIVER  WATER QUALITY  ppt presentationPREDICTING  RIVER  WATER QUALITY  ppt presentation
PREDICTING RIVER WATER QUALITY ppt presentationvaddepallysandeep122
 
20240415 [Container Plumbing Days] Usernetes Gen2 - Kubernetes in Rootless Do...
20240415 [Container Plumbing Days] Usernetes Gen2 - Kubernetes in Rootless Do...20240415 [Container Plumbing Days] Usernetes Gen2 - Kubernetes in Rootless Do...
20240415 [Container Plumbing Days] Usernetes Gen2 - Kubernetes in Rootless Do...Akihiro Suda
 
CRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. SalesforceCRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. SalesforceBrainSell Technologies
 
Unveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesUnveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesŁukasz Chruściel
 
Intelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmIntelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmSujith Sukumaran
 
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)jennyeacort
 
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...Cizo Technology Services
 
Folding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesFolding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesPhilip Schwarz
 
Machine Learning Software Engineering Patterns and Their Engineering
Machine Learning Software Engineering Patterns and Their EngineeringMachine Learning Software Engineering Patterns and Their Engineering
Machine Learning Software Engineering Patterns and Their EngineeringHironori Washizaki
 
Odoo 14 - eLearning Module In Odoo 14 Enterprise
Odoo 14 - eLearning Module In Odoo 14 EnterpriseOdoo 14 - eLearning Module In Odoo 14 Enterprise
Odoo 14 - eLearning Module In Odoo 14 Enterprisepreethippts
 
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte GermanySuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte GermanyChristoph Pohl
 
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...OnePlan Solutions
 
How to submit a standout Adobe Champion Application
How to submit a standout Adobe Champion ApplicationHow to submit a standout Adobe Champion Application
How to submit a standout Adobe Champion ApplicationBradBedford3
 
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...Natan Silnitsky
 
Implementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureImplementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureDinusha Kumarasiri
 
How To Manage Restaurant Staff -BTRESTRO
How To Manage Restaurant Staff -BTRESTROHow To Manage Restaurant Staff -BTRESTRO
How To Manage Restaurant Staff -BTRESTROmotivationalword821
 
Ahmed Motair CV April 2024 (Senior SW Developer)
Ahmed Motair CV April 2024 (Senior SW Developer)Ahmed Motair CV April 2024 (Senior SW Developer)
Ahmed Motair CV April 2024 (Senior SW Developer)Ahmed Mater
 
Innovate and Collaborate- Harnessing the Power of Open Source Software.pdf
Innovate and Collaborate- Harnessing the Power of Open Source Software.pdfInnovate and Collaborate- Harnessing the Power of Open Source Software.pdf
Innovate and Collaborate- Harnessing the Power of Open Source Software.pdfYashikaSharma391629
 

Dernier (20)

SensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving CarsSensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving Cars
 
Introduction Computer Science - Software Design.pdf
Introduction Computer Science - Software Design.pdfIntroduction Computer Science - Software Design.pdf
Introduction Computer Science - Software Design.pdf
 
PREDICTING RIVER WATER QUALITY ppt presentation
PREDICTING  RIVER  WATER QUALITY  ppt presentationPREDICTING  RIVER  WATER QUALITY  ppt presentation
PREDICTING RIVER WATER QUALITY ppt presentation
 
20240415 [Container Plumbing Days] Usernetes Gen2 - Kubernetes in Rootless Do...
20240415 [Container Plumbing Days] Usernetes Gen2 - Kubernetes in Rootless Do...20240415 [Container Plumbing Days] Usernetes Gen2 - Kubernetes in Rootless Do...
20240415 [Container Plumbing Days] Usernetes Gen2 - Kubernetes in Rootless Do...
 
CRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. SalesforceCRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. Salesforce
 
Unveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesUnveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New Features
 
Intelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmIntelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalm
 
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
 
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
 
Folding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesFolding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a series
 
Machine Learning Software Engineering Patterns and Their Engineering
Machine Learning Software Engineering Patterns and Their EngineeringMachine Learning Software Engineering Patterns and Their Engineering
Machine Learning Software Engineering Patterns and Their Engineering
 
Odoo 14 - eLearning Module In Odoo 14 Enterprise
Odoo 14 - eLearning Module In Odoo 14 EnterpriseOdoo 14 - eLearning Module In Odoo 14 Enterprise
Odoo 14 - eLearning Module In Odoo 14 Enterprise
 
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte GermanySuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
 
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
 
How to submit a standout Adobe Champion Application
How to submit a standout Adobe Champion ApplicationHow to submit a standout Adobe Champion Application
How to submit a standout Adobe Champion Application
 
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
 
Implementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureImplementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with Azure
 
How To Manage Restaurant Staff -BTRESTRO
How To Manage Restaurant Staff -BTRESTROHow To Manage Restaurant Staff -BTRESTRO
How To Manage Restaurant Staff -BTRESTRO
 
Ahmed Motair CV April 2024 (Senior SW Developer)
Ahmed Motair CV April 2024 (Senior SW Developer)Ahmed Motair CV April 2024 (Senior SW Developer)
Ahmed Motair CV April 2024 (Senior SW Developer)
 
Innovate and Collaborate- Harnessing the Power of Open Source Software.pdf
Innovate and Collaborate- Harnessing the Power of Open Source Software.pdfInnovate and Collaborate- Harnessing the Power of Open Source Software.pdf
Innovate and Collaborate- Harnessing the Power of Open Source Software.pdf
 

Building Neural Networks Through Neuroevolution

  • 1. Building Neural Network Through Neuroevolution Alexandre Bergel DCC - University of Chile http://bergel.eu 10/12/2019 1
  • 2. 2 In a Nutshell Classical deep learning is about training models Neuroevolution is about evolving neural networks Neuroevolution is a combination of genetic algorithm and deep learning
  • 3. 3 Outline Genetic Programming: Simulation of Evolution Neuroevolution: Combining Deep Learning and Evolution NEAT Algorithm: Evolving species of networks
  • 4. 4
  • 5. 5 Premise of Genetic Algorithm Natural selection is pioneered by Charles Darwin (1809-1882), biologist who worked on natural evolution “On the Origin of Species by Means of Natural Selection, or the Preservation of Favoured Races in the Struggle for Life”, 1859 “One general low, leading to the advancement of all organic beings, namely, vary, let the strongest live and the weakest die” — Charles Darwin
  • 6. 6 “Guess the 3-letter word I have in mind” Secret word: cat
  • 7. 7 “Guess the 3-letter word I have in mind” “For each try, I tell you the number of correct letters” Secret word: cat
  • 10. 10 Using genetic operators, the words are combined and some letters are randomly modified gaz cow gow caz poz pow
  • 12. 12 gozgaz cow gow caz 1st generation 2nd generation 3rd generation atc poz pow poz
  • 13. Flow chart of an evolution algorithm 13 Selection Population Parents Offspring Reproduction Replacement
  • 14. Flow chart of an evolution algorithm 14 Selection Population Parents Offspring Reproduction Replacement Many EAs are around: Ant colony optimization, Artificial immune system, Cultural algorithms, Genetic Algorithm, Genetic Programming, Grammatical evolution, …
  • 15. Flow chart of a genetic algorithm 15 Yes Initialize population Evaluate fitness Solution found? Selection Reproduction No End
  • 16. Flow chart of a genetic algorithm 16 Yes Initialize population Evaluate fitness Solution found? Selection Reproduction No End We create a set of random 3-letter words
  • 17. Flow chart of a genetic algorithm 17 Yes Initialize population Evaluate fitness Solution found? Selection Reproduction No End Compute the score of each word
  • 18. Flow chart of a genetic algorithm 18 Yes Initialize population Evaluate fitness Solution found? Selection Reproduction No End Do we have a word with score = 3?
  • 19. Flow chart of a genetic algorithm 19 Yes Initialize population Evaluate fitness Solution found? Selection Reproduction No End We take the words that are close to 3
  • 20. Flow chart of a genetic algorithm 20 Yes Initialize population Evaluate fitness Solution found? Selection Reproduction No End We combine and mutate words to form a new set of words
  • 21. Flow chart of a genetic algorithm 21 Yes Initialize population Evaluate fitness Solution found? Selection Reproduction No End We combine and mutate words to form a new set of words DEMO
  • 22. 22 Genetic Algorithm in a Nutshell Evolutionary computation technique that automatically solves problems without specifying the form or structure of the solution in advance Generally speaking, genetic algorithms are simulations of evolution, using biological genetic operations Finding such as is maximal, is a tuple of any arbitrary dimension and domain value, x f(x) = y x y ∈ ℝ
  • 23. Flexible Muscle-Based Locomotion for Bipedal Creatures 23 https://www.youtube.com/watch?v=pgaEE27nsQw
  • 24. 24
  • 25. 25
  • 27. 27 Gradient descent Gradient descent is commonly used to make a neural network “learn”
  • 28. 28 Gradient descent requires examples Examples are required to train a neural network Picture recognition may require thousands of pictures Requiring a large number of training examples may be problematic e.g., video games, self-driving cars
  • 29. 29 Generalization How do we get from where we are to artificial general intelligence? How to make the learning process closer to how human learn? https://www.nature.com/articles/s42256-018-0006-z
  • 30. 30 Neuroevolution “Neuroevolution is a form of artificial intelligence that uses evolutionary algorithms to generate artificial neural networks, parameters, topology and rules. It is most commonly applied in artificial life, general game playing and evolutionary robotics.” — Wikipedia “The evolution of neural networks is called neuroevolution” — Hannah Le
  • 31. 31 Idea of Neuroevolution Supervised learning algorithms require correct input-output pairs Neuroevolution only requires a measure of a network’s performance A major inspiration for the investigation of neuroevolution is the evolution of brains in nature
  • 35. 35 A simple algorithm for neuroevolution
  • 36. 36 Simple Algorithm Use Genetic Algorithm to search for the weights and bias of each neuron The fitness function to optimize could be based on the error function (e.g., MSE loss)
  • 37. 37
  • 38. 38
  • 39. 39
  • 40. 40
  • 41. 41
  • 42. 42
  • 43. 43
  • 44. 44 New neural network With a better accuracy
  • 45. 45 Genetic operations Applying genetic algorithm to find weights and bias of a neural network involves particular genetic operations The cross-over operations must consider the neuron as a whole ie. Crossover should not divide the genetic information obtained from a neuron Cross-over happens only at a limit of a neuron Because of the competing convention we will later see
  • 46. 46 Variant of crossover We have originally presented GA with two genetic operations In fact, we can run GA with more operations You can also have an additional second cross- over operations that crosscut only at the limit of a layer Cross-over happens at the junction of a layer
  • 47. 47 Genetically modified neural network Neuroevolution is convenient when training data is either missing, insufficient, or unusable (eg bad quality, imbalanced) The small algorithm we have just seen is effective in many situations Iris or seed data set AI for a simple game (e.g., Flappy bird)
  • 48. 48 What about network architecture? This simple algorithm finds weights and bias while maintaining a fixed network structure Structure of the network and some of its parameters can also be discovered The idea of searching for a network architecture is to look for simple and minimal networks Actually, fully-connected forward networks are pretty far away from what nature has brought us
  • 49. 49 NEAT — NeuroEvolution of Augmenting Topologies Kenneth O. Stanley and Risto Miikkulainen. 2002. Evolving neural networks through augmenting topologies Evolutionary Computation archive Volume 10 Issue 2, Summer 2002 Pages 99-127 http://dx.doi.org/10.1162/106365602320169811
  • 50. 50 Essence of NEAT Genetic algorithm that produces neural networks NEAT varies the structure of the network, producing complex solutions over time NEAT needs its overall population of networks to be diverse The reproduction phase should produces a novel individual NEAT groups similar individuals into species Direct competition for survival happens only within a species
  • 51. 51 Essence of NEAT Species compete with each other for reproduction rights Mating only happens within species (unless interspecies matin is explicitly allowed) Because NEAT uses species, it takes longer for the whole population to become uniform
  • 52. 52 Limitation of gradient-based approaches Neuroevolution can learn things that classical neural networks cannot learn activation functions, hyperparameter, architectures
  • 54. 54 Encoding Inputs and outputs nodes are not encoded Hidden nodes can be added or removed A connection may be enabled or not, and has an innovation number Individuals do not necessarily have the same size
  • 56. 56 Mutation If a new node is added: 1 - it is placed between two connected nodes 2 - the previous connection is disabled (but still present in the genome)
  • 57. 57 Competing Convention Problem In ordinary evolution algorithms it can happen that two individuals encode very similar behavior, but with very different genotype This is called competing conventions If these individual are subject to crossover, their children are likely to be worse than their either parent
  • 59. 59 Competing Convention Problem NEAT solves this by keeping historical markings of new structural elements When a new structural element is created (via structural mutation, such as adding a new node or gene), it receives an innovation number When two individuals are crossed over, their genotypes are aligned in such a way that the corresponding innovation numbers match and only the different elements are exchanged
  • 60. 60
  • 61. 61 Speciation Most new evolutions are not good ones A new connection or node degrades the performance of the individual How can we protect new networks from being eliminated? NEAT suggests speciation
  • 62. 62 Speciation Splits up the population into several species Based on the similarity of topology and connections Individuals in a population only have to compete within other individuals within that species Allow for a new network to be created and optimized without being quickly eliminated Explore the idea of explicit fitness sharing: the whole population has a fitness
  • 63. 63 Speciation Speciation project innovations in the population When a network diverges far enough from other networks in the population, NEAT identifies it and put it in its own species Using innovation numbers NEAT computes the distance between two genomes
  • 64. 64 Minimal structure NEAT favors minimal networks to be evolved Mutations is about adding a node, adding a connection, or changing a weight … and not removing structural elements
  • 65. 65 What have we seen? An overview of Genetic Algorithm Two algorithms for Neuroevolution Simple: Blindly applying GA to Deep learning NEAT: Use of species to achieve incremental evolution of network complexity
  • 66. 66 Extensions of NEAT Many improvements were proposed around NEAT HyperNEAT: indirect encoding of network ESHyperNEAT: higher density of neurons when necessary CoDeepNEAT: macro systems Indirect coding using rules mimicking cell divisions
  • 67. 67 References Designing neural networks through neuroevolution — Nature Machine Intelligence volume 1, 24–35(2019) A Hypercube-Based Indirect Encoding for Evolving Large-Scale Neural Networks — Artificial Life journal 15(2), Cambridge, MA: MIT Press, 2009