Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Teaching a slime mold to train a Bayesian Network

Teaching a slime mold to train a Bayesian Network

If you try to teach a computer system intelligent behaviour, there is often some blueprint to be found in nature. As the slime mold physarum polycepahlum, which is able to solve the NP hard shortest path problem very efficiently. Some people train dogs, some horses. I failed in training my cats, so I tried to start with a simpler creature, the slime molds.

MunichDataGeeks

July 22, 2015
Tweet

More Decks by MunichDataGeeks

Other Decks in Research

Transcript

  1. Teaching a slime mold to train a Bayesian Network Munich

    Datageeks Torsten Schön 22. July 2015
  2. I. The slime mold (pyhsarum polycephalum) II. Physarum Solver 1)

    Nakagaki 2) Tero III. Bayesian Networks IV. Score optimizing Physarum Learner 1) Algortihm 2) Evaluation V. Code? 26.07.2015 Contents 2
  3.  Belongs to Mycetozoa  single amoeboid like cell 

    Consists of sponge section connected by tubes 26.07.2015 3 Slime molds?
  4. Physarum Polycephalum Nakagaki et. al. Initial state: Maze is fully

    covered by plasmodium of slime mold 26.07.2015 4
  5. Physarum Polycephalum Nakagaki et. al. After 4 hours: 2 paths

    remain at the shortest connections Tubes are built 26.07.2015 4
  6. Physarum Polycephalum Nakagaki et. al. After 8 hours: Only the

    shortest path survived A single thick tube is formed 26.07.2015 4
  7. Physarum Solver (PS) Tero et. al. introduced a mathematical model

    • Flux • Change • Works in the same manner as the true slime mold 26.07.2015 5
  8. Physarum Solver (PS) Tero et. al. introduced a mathematical model

    • Flux • Change • Works in the same manner as the true slime mold • Applied to NP-hard shortest path finding problems 26.07.2015 5
  9. Physarum Solver (PS) Tero et. al. introduced a mathematical model

    • Flux • Change • Works in the same manner as the true slime mold • Applied to NP-hard shortest path finding problems Idea: Adopt to also NP-hard problem of structure learning 26.07.2015 5
  10.  Probabilistic graphical model  Represented by a directed acyclic

    graph (DAG)  Nodes represent random variables of the domain  Each node has a conditional probability table (CPT) 26.07.2015 6 Bayesian Networks Baye’s rule
  11.  Learning a Bayesian Network from a dataset is pretty

    hard:  Learning the structure  Constraint based  Score based  Learning the parameters CPTs  Maximum likelihood estimation  Bayesian parameter estimation  Learning structure from data is NP hard 26.07.2015 8 Bayesian Networks
  12. Score optimizing Physarum Learner (SO-PhyL) Idea:  Each dataset parameter

    becomes a node  Initialize fully connected maze  Include connections of high Dij into Bayesian Network  For each of these connections, calculate score of both nodes in either direction  Give feedback to Dij based on score 26.07.2015 9
  13. SO-PhyL: Iteration  In each iteration:  A source and

    sink node is selected  One time step of Physarum Solver is applied to update Dij values  Score feedback 26.07.2015 11
  14. SO-PhyL: Score feedback For each connection in the Bayesian Network:

    = − ∉ = − ∉ Direction with higher score benefit it selected 26.07.2015 13
  15. SO-PhyL: Score feedback  Add connection with the highest score

    increase first  Update other scores Greedy Hill Climbing 26.07.2015 14
  16. SO-PhyL: Score feedback  Update score based on the relation

    of score with extra parent to score without extra parent  Score increase  Dij is increased proportionally  Score decrease  Dij is decreased proportionally 26.07.2015 15
  17. SO-PhyL: Ensemble  Performance depends on initial state  Performance

    depends on random selection of source and sink nodes  An ensemble is learned and the highest scoring network is selected as final 26.07.2015 17
  18. SO-Phyl: Results  Compared to state of the art learning

    algorithms  Showed equal learning quality  Outperforms other algorithms for some datasets 26.07.2015 18
  19.  There is WEKA ready Java code available  Not

    published yet  Always wanted to do that  Code is in bad condition   Also: There is some further development based on this code at the University of Regensburg 26.07.2015 19 Code