SlideShare a Scribd company logo
1 of 18
Alan Nochenson
IST 511
Oct 15, 2012
   Branch of AI
   Geared towards taking input and yielding
    patterns or predictions
   Use data to capture uncertainty in underlying
    probability distributions
   1959 – Arthur Samuel: "Field of study that
    gives computers the ability to learn without
    being explicitly programmed".
   Machine learning != data mining
   Decision trees
   Association rule learning
   Artificial neural networks
   Genetic programming
   Inductive logic programming
   Support vector machines
   Clustering
   Bayesian networks
   Reinforcement learning
   Representation learning
   Sparse dictionary learning
   Machine learning technique
   Used to optimize a program’s ability to
    perform some kind of task
   Inspired by biological evolution (i.e.
    Darwinian evolution)
   Explicit + implicit parallelism
   Gracefulness
   Knowledge about evolutionary processes
    (brain processes are harder)
   Natural evolution is too slow
     Silly argument – generations are much quicker in
     computers than biology and so many generations
     have given great process
   Waddington (1967) says GP algorithms are
    too simple to get to the same type of
    complexity as real evolution
     Answer: GP works for efficiency in a wide range of
     problems
   E.g.
   Initialization
   Selection
   Crossover (breeding)
   Mutation
   Termination
   Let us try to find an algorithm, where the
    operators are + and – to get to a target
    number, which we call x. We will restrict
    ourselves to 5 “spots” and single digit
    numbers
   E.g. Let x=10
     Solutions would be:
      ▪ 0+2+8, 1+9-0 , 8+3-1, …
   Create a population of individuals
     1+3-4
     ++23-
     0+4+1
     983-2
     …
   How far off of our target are we?
     1+3-4 (fitness=10-0=0)
     ++23- (fitness=-100 since invalid)
     0+4+1 (fitness = 10-5=5)
     983-2 = 3-2 (fitness = 1)
     …
   Select the most fit individuals to breed (or
    some other algorithm)
     1+3-4 (fitness=0)
     ++23- (fitness=-100 since invalid)
     0+4+1 (fitness = 5)
     983-2 = 3-2 = 0+3-2 (fitness = 1)
     …
   Crossover (take part from each)
     0+4+1
     0+3-2
     => 0+3+1 = 4 (fitness = 4)
   Mutate with some probability (change one
    number of operator
   Put new individual into population
   Remove least fit individual (the invalid one)
 1+3-4 = 0
 ++23- = -100 (gets removed)
 0+4+1 = 5
 0+3-2 = 1
 0+3+1 = 4
   Keep going until you have a perfectly fit
    individual
   Sometimes the trait you need isn’t in the
    population
     That’s why mutation exists
   Applications are much wider than this, and
    can generate real programming language
    code
   http://en.wikipedia.org/wiki/Machine_learnin
    g
   http://en.wikipedia.org/wiki/Genetic_progra
    mming
   D. E. Goldberg and J. H. Holland, “Genetic
    Algorithms and Machine Learning,” Machine
    Learning, vol. 3, no. 2, pp. 95–99, 1988.

More Related Content

Viewers also liked

The Impact of Algorithmic Trading
The Impact of Algorithmic TradingThe Impact of Algorithmic Trading
The Impact of Algorithmic TradingLov Loothra
 
NoSQL Graph Databases - Why, When and Where
NoSQL Graph Databases - Why, When and WhereNoSQL Graph Databases - Why, When and Where
NoSQL Graph Databases - Why, When and WhereEugene Hanikblum
 
An Introduction to Neural Networks and Machine Learning
An Introduction to Neural Networks and Machine LearningAn Introduction to Neural Networks and Machine Learning
An Introduction to Neural Networks and Machine LearningChris Nicholls
 
Reinforcing AML systems with graph technologies.
Reinforcing AML systems with graph technologies.Reinforcing AML systems with graph technologies.
Reinforcing AML systems with graph technologies.Linkurious
 
Introduction to the graph technologies landscape
Introduction to the graph technologies landscapeIntroduction to the graph technologies landscape
Introduction to the graph technologies landscapeLinkurious
 
GraphGen: Conducting Graph Analytics over Relational Databases
GraphGen: Conducting Graph Analytics over Relational DatabasesGraphGen: Conducting Graph Analytics over Relational Databases
GraphGen: Conducting Graph Analytics over Relational DatabasesPyData
 
Solving Problems with Graphs
Solving Problems with GraphsSolving Problems with Graphs
Solving Problems with GraphsMarko Rodriguez
 
Using graph technologies to fight fraud
Using graph technologies to fight fraudUsing graph technologies to fight fraud
Using graph technologies to fight fraudLinkurious
 
Intro to Graphs and Neo4j
Intro to Graphs and Neo4jIntro to Graphs and Neo4j
Intro to Graphs and Neo4jNeo4j
 
Link analysis .. Data Mining
Link analysis .. Data MiningLink analysis .. Data Mining
Link analysis .. Data MiningMustafa Salam
 
Business Intelligence For Anti-Money Laundering
Business Intelligence For Anti-Money LaunderingBusiness Intelligence For Anti-Money Laundering
Business Intelligence For Anti-Money LaunderingKartik Mehta
 
Machine Learning: Introduction to Neural Networks
Machine Learning: Introduction to Neural NetworksMachine Learning: Introduction to Neural Networks
Machine Learning: Introduction to Neural NetworksFrancesco Collova'
 
The Graph Traversal Programming Pattern
The Graph Traversal Programming PatternThe Graph Traversal Programming Pattern
The Graph Traversal Programming PatternMarko Rodriguez
 
Graph Databases: Trends in the Web of Data
Graph Databases: Trends in the Web of DataGraph Databases: Trends in the Web of Data
Graph Databases: Trends in the Web of DataMarko Rodriguez
 
Relational to Big Graph
Relational to Big GraphRelational to Big Graph
Relational to Big GraphNeo4j
 
Converting Relational to Graph Databases
Converting Relational to Graph DatabasesConverting Relational to Graph Databases
Converting Relational to Graph DatabasesAntonio Maccioni
 
Big Graph Analytics on Neo4j with Apache Spark
Big Graph Analytics on Neo4j with Apache SparkBig Graph Analytics on Neo4j with Apache Spark
Big Graph Analytics on Neo4j with Apache SparkKenny Bastani
 
Designing and Building a Graph Database Application – Architectural Choices, ...
Designing and Building a Graph Database Application – Architectural Choices, ...Designing and Building a Graph Database Application – Architectural Choices, ...
Designing and Building a Graph Database Application – Architectural Choices, ...Neo4j
 

Viewers also liked (20)

The Impact of Algorithmic Trading
The Impact of Algorithmic TradingThe Impact of Algorithmic Trading
The Impact of Algorithmic Trading
 
NoSQL Graph Databases - Why, When and Where
NoSQL Graph Databases - Why, When and WhereNoSQL Graph Databases - Why, When and Where
NoSQL Graph Databases - Why, When and Where
 
Link Analysis
Link AnalysisLink Analysis
Link Analysis
 
An Introduction to Neural Networks and Machine Learning
An Introduction to Neural Networks and Machine LearningAn Introduction to Neural Networks and Machine Learning
An Introduction to Neural Networks and Machine Learning
 
Reinforcing AML systems with graph technologies.
Reinforcing AML systems with graph technologies.Reinforcing AML systems with graph technologies.
Reinforcing AML systems with graph technologies.
 
Introduction to the graph technologies landscape
Introduction to the graph technologies landscapeIntroduction to the graph technologies landscape
Introduction to the graph technologies landscape
 
Building a Scalable Data Science Platform with R
Building a Scalable Data Science Platform with RBuilding a Scalable Data Science Platform with R
Building a Scalable Data Science Platform with R
 
GraphGen: Conducting Graph Analytics over Relational Databases
GraphGen: Conducting Graph Analytics over Relational DatabasesGraphGen: Conducting Graph Analytics over Relational Databases
GraphGen: Conducting Graph Analytics over Relational Databases
 
Solving Problems with Graphs
Solving Problems with GraphsSolving Problems with Graphs
Solving Problems with Graphs
 
Using graph technologies to fight fraud
Using graph technologies to fight fraudUsing graph technologies to fight fraud
Using graph technologies to fight fraud
 
Intro to Graphs and Neo4j
Intro to Graphs and Neo4jIntro to Graphs and Neo4j
Intro to Graphs and Neo4j
 
Link analysis .. Data Mining
Link analysis .. Data MiningLink analysis .. Data Mining
Link analysis .. Data Mining
 
Business Intelligence For Anti-Money Laundering
Business Intelligence For Anti-Money LaunderingBusiness Intelligence For Anti-Money Laundering
Business Intelligence For Anti-Money Laundering
 
Machine Learning: Introduction to Neural Networks
Machine Learning: Introduction to Neural NetworksMachine Learning: Introduction to Neural Networks
Machine Learning: Introduction to Neural Networks
 
The Graph Traversal Programming Pattern
The Graph Traversal Programming PatternThe Graph Traversal Programming Pattern
The Graph Traversal Programming Pattern
 
Graph Databases: Trends in the Web of Data
Graph Databases: Trends in the Web of DataGraph Databases: Trends in the Web of Data
Graph Databases: Trends in the Web of Data
 
Relational to Big Graph
Relational to Big GraphRelational to Big Graph
Relational to Big Graph
 
Converting Relational to Graph Databases
Converting Relational to Graph DatabasesConverting Relational to Graph Databases
Converting Relational to Graph Databases
 
Big Graph Analytics on Neo4j with Apache Spark
Big Graph Analytics on Neo4j with Apache SparkBig Graph Analytics on Neo4j with Apache Spark
Big Graph Analytics on Neo4j with Apache Spark
 
Designing and Building a Graph Database Application – Architectural Choices, ...
Designing and Building a Graph Database Application – Architectural Choices, ...Designing and Building a Graph Database Application – Architectural Choices, ...
Designing and Building a Graph Database Application – Architectural Choices, ...
 

Similar to 10-15 511 genetic algorithms and machine learning (alan nochenson)

Artificial intelligence cs607 handouts lecture 11 - 45
Artificial intelligence   cs607 handouts lecture 11 - 45Artificial intelligence   cs607 handouts lecture 11 - 45
Artificial intelligence cs607 handouts lecture 11 - 45Sattar kayani
 
An Introduction to Deep Learning (May 2018)
An Introduction to Deep Learning (May 2018)An Introduction to Deep Learning (May 2018)
An Introduction to Deep Learning (May 2018)Julien SIMON
 
Genetic programming with clojure.spec and Beyond
Genetic programming with clojure.spec and BeyondGenetic programming with clojure.spec and Beyond
Genetic programming with clojure.spec and BeyondCarin Meier
 
Useful Techniques in Artificial Intelligence
Useful Techniques in Artificial IntelligenceUseful Techniques in Artificial Intelligence
Useful Techniques in Artificial IntelligenceIla Group
 
Deep Learning for Developers
Deep Learning for DevelopersDeep Learning for Developers
Deep Learning for DevelopersJulien SIMON
 
9.b-CMPS 403-F20-Session 9-Intro to ML II.pdf
9.b-CMPS 403-F20-Session 9-Intro to ML II.pdf9.b-CMPS 403-F20-Session 9-Intro to ML II.pdf
9.b-CMPS 403-F20-Session 9-Intro to ML II.pdfAmirMohamedNabilSale
 
An introduction to deep learning concepts
An introduction to deep learning conceptsAn introduction to deep learning concepts
An introduction to deep learning conceptsAmazon Web Services
 
Data Science - Part XIV - Genetic Algorithms
Data Science - Part XIV - Genetic AlgorithmsData Science - Part XIV - Genetic Algorithms
Data Science - Part XIV - Genetic AlgorithmsDerek Kane
 
Computational Biology, Part 4 Protein Coding Regions
Computational Biology, Part 4 Protein Coding RegionsComputational Biology, Part 4 Protein Coding Regions
Computational Biology, Part 4 Protein Coding Regionsbutest
 
Getting Started with Keras and TensorFlow - StampedeCon AI Summit 2017
Getting Started with Keras and TensorFlow - StampedeCon AI Summit 2017Getting Started with Keras and TensorFlow - StampedeCon AI Summit 2017
Getting Started with Keras and TensorFlow - StampedeCon AI Summit 2017StampedeCon
 
Introduction to Machine Learning
Introduction to Machine LearningIntroduction to Machine Learning
Introduction to Machine LearningAI Summary
 
Get connected with python
Get connected with pythonGet connected with python
Get connected with pythonJan Kroon
 
10 tips I wish I had known before I started a Data Journey
10 tips I wish I had known before I started a Data Journey10 tips I wish I had known before I started a Data Journey
10 tips I wish I had known before I started a Data JourneyCarlos Bort
 
Google Big Data Expo
Google Big Data ExpoGoogle Big Data Expo
Google Big Data ExpoBigDataExpo
 
Diagnosing cancer with Computational Intelligence
Diagnosing cancer with Computational IntelligenceDiagnosing cancer with Computational Intelligence
Diagnosing cancer with Computational IntelligenceSimon van Dyk
 
An Introduction to Deep Learning I AWS Dev Day 2018
An Introduction to Deep Learning I AWS Dev Day 2018An Introduction to Deep Learning I AWS Dev Day 2018
An Introduction to Deep Learning I AWS Dev Day 2018AWS Germany
 
An Introduction to Deep Learning (April 2018)
An Introduction to Deep Learning (April 2018)An Introduction to Deep Learning (April 2018)
An Introduction to Deep Learning (April 2018)Julien SIMON
 

Similar to 10-15 511 genetic algorithms and machine learning (alan nochenson) (20)

Artificial intelligence cs607 handouts lecture 11 - 45
Artificial intelligence   cs607 handouts lecture 11 - 45Artificial intelligence   cs607 handouts lecture 11 - 45
Artificial intelligence cs607 handouts lecture 11 - 45
 
Genetic algorithm
Genetic algorithmGenetic algorithm
Genetic algorithm
 
Machine learning
Machine learningMachine learning
Machine learning
 
An Introduction to Deep Learning (May 2018)
An Introduction to Deep Learning (May 2018)An Introduction to Deep Learning (May 2018)
An Introduction to Deep Learning (May 2018)
 
Genetic programming with clojure.spec and Beyond
Genetic programming with clojure.spec and BeyondGenetic programming with clojure.spec and Beyond
Genetic programming with clojure.spec and Beyond
 
Deep Learning in a nutshell
Deep Learning in a nutshellDeep Learning in a nutshell
Deep Learning in a nutshell
 
Useful Techniques in Artificial Intelligence
Useful Techniques in Artificial IntelligenceUseful Techniques in Artificial Intelligence
Useful Techniques in Artificial Intelligence
 
Deep Learning for Developers
Deep Learning for DevelopersDeep Learning for Developers
Deep Learning for Developers
 
9.b-CMPS 403-F20-Session 9-Intro to ML II.pdf
9.b-CMPS 403-F20-Session 9-Intro to ML II.pdf9.b-CMPS 403-F20-Session 9-Intro to ML II.pdf
9.b-CMPS 403-F20-Session 9-Intro to ML II.pdf
 
An introduction to deep learning concepts
An introduction to deep learning conceptsAn introduction to deep learning concepts
An introduction to deep learning concepts
 
Data Science - Part XIV - Genetic Algorithms
Data Science - Part XIV - Genetic AlgorithmsData Science - Part XIV - Genetic Algorithms
Data Science - Part XIV - Genetic Algorithms
 
Computational Biology, Part 4 Protein Coding Regions
Computational Biology, Part 4 Protein Coding RegionsComputational Biology, Part 4 Protein Coding Regions
Computational Biology, Part 4 Protein Coding Regions
 
Getting Started with Keras and TensorFlow - StampedeCon AI Summit 2017
Getting Started with Keras and TensorFlow - StampedeCon AI Summit 2017Getting Started with Keras and TensorFlow - StampedeCon AI Summit 2017
Getting Started with Keras and TensorFlow - StampedeCon AI Summit 2017
 
Introduction to Machine Learning
Introduction to Machine LearningIntroduction to Machine Learning
Introduction to Machine Learning
 
Get connected with python
Get connected with pythonGet connected with python
Get connected with python
 
10 tips I wish I had known before I started a Data Journey
10 tips I wish I had known before I started a Data Journey10 tips I wish I had known before I started a Data Journey
10 tips I wish I had known before I started a Data Journey
 
Google Big Data Expo
Google Big Data ExpoGoogle Big Data Expo
Google Big Data Expo
 
Diagnosing cancer with Computational Intelligence
Diagnosing cancer with Computational IntelligenceDiagnosing cancer with Computational Intelligence
Diagnosing cancer with Computational Intelligence
 
An Introduction to Deep Learning I AWS Dev Day 2018
An Introduction to Deep Learning I AWS Dev Day 2018An Introduction to Deep Learning I AWS Dev Day 2018
An Introduction to Deep Learning I AWS Dev Day 2018
 
An Introduction to Deep Learning (April 2018)
An Introduction to Deep Learning (April 2018)An Introduction to Deep Learning (April 2018)
An Introduction to Deep Learning (April 2018)
 

10-15 511 genetic algorithms and machine learning (alan nochenson)

  • 2. Branch of AI  Geared towards taking input and yielding patterns or predictions  Use data to capture uncertainty in underlying probability distributions
  • 3. 1959 – Arthur Samuel: "Field of study that gives computers the ability to learn without being explicitly programmed".  Machine learning != data mining
  • 4. Decision trees  Association rule learning  Artificial neural networks  Genetic programming  Inductive logic programming  Support vector machines  Clustering  Bayesian networks  Reinforcement learning  Representation learning  Sparse dictionary learning
  • 5. Machine learning technique  Used to optimize a program’s ability to perform some kind of task  Inspired by biological evolution (i.e. Darwinian evolution)
  • 6. Explicit + implicit parallelism  Gracefulness  Knowledge about evolutionary processes (brain processes are harder)
  • 7. Natural evolution is too slow  Silly argument – generations are much quicker in computers than biology and so many generations have given great process  Waddington (1967) says GP algorithms are too simple to get to the same type of complexity as real evolution  Answer: GP works for efficiency in a wide range of problems
  • 8. E.g.
  • 9. Initialization  Selection  Crossover (breeding)  Mutation  Termination
  • 10. Let us try to find an algorithm, where the operators are + and – to get to a target number, which we call x. We will restrict ourselves to 5 “spots” and single digit numbers  E.g. Let x=10  Solutions would be: ▪ 0+2+8, 1+9-0 , 8+3-1, …
  • 11. Create a population of individuals  1+3-4  ++23-  0+4+1  983-2  …
  • 12. How far off of our target are we?  1+3-4 (fitness=10-0=0)  ++23- (fitness=-100 since invalid)  0+4+1 (fitness = 10-5=5)  983-2 = 3-2 (fitness = 1)  …
  • 13. Select the most fit individuals to breed (or some other algorithm)  1+3-4 (fitness=0)  ++23- (fitness=-100 since invalid)  0+4+1 (fitness = 5)  983-2 = 3-2 = 0+3-2 (fitness = 1)  …
  • 14. Crossover (take part from each)  0+4+1  0+3-2  => 0+3+1 = 4 (fitness = 4)  Mutate with some probability (change one number of operator  Put new individual into population  Remove least fit individual (the invalid one)
  • 15.  1+3-4 = 0  ++23- = -100 (gets removed)  0+4+1 = 5  0+3-2 = 1  0+3+1 = 4
  • 16. Keep going until you have a perfectly fit individual  Sometimes the trait you need isn’t in the population  That’s why mutation exists  Applications are much wider than this, and can generate real programming language code
  • 17.
  • 18. http://en.wikipedia.org/wiki/Machine_learnin g  http://en.wikipedia.org/wiki/Genetic_progra mming  D. E. Goldberg and J. H. Holland, “Genetic Algorithms and Machine Learning,” Machine Learning, vol. 3, no. 2, pp. 95–99, 1988.