Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Introduction to Model-Based Machine Learning

13,575 views

Published on

The field of machine learning has seen the development of thousands of learning algorithms. Typically, scientists choose from these algorithms to solve specific problems. Their choices often being limited by their familiarity with these algorithms. In this classical/traditional framework of machine learning, scientists are constrained to making some assumptions so as to use an existing algorithm. This is in contrast to the model-based machine learning approach which seeks to create a bespoke solution tailored to each new problem.

Published in: Data & Analytics

Introduction to Model-Based Machine Learning

  1. 1. Introduction Case Study Probabilistic Programming Conclusion Introduction to Model-Based Machine Learning Daniel Emaasit1 1Ph.D. Student Department of Civil and Environmental Engineering University of Nevada Las Vegas Las Vegas, NV USA emaasit@unlv.nevada.edu July 20 2016 1 / 39
  2. 2. Introduction Case Study Probabilistic Programming Conclusion Introduction 2 / 39
  3. 3. Introduction Case Study Probabilistic Programming Conclusion 3 / 39
  4. 4. Introduction Case Study Probabilistic Programming Conclusion Current Challenges in Adopting Machine Learning Generally, current challenges in adopting ML: Overwhelming number of traditional ML methods to learn Deciding which algorithm to use or why Some custom problems may not fit with any existing algorithm 4 / 39
  5. 5. Introduction Case Study Probabilistic Programming Conclusion What is Model-Based Machine Learning? A different viewpoint for machine learning proposed by Bishop (2013)1, Winn et al. (2015)2 Goal: Provide a single development framework which supports the creation of a wide range of bespoke models The core idea: all assumptions about the problem domain are made explicit in the form of a model 1 Bishop, C. M. (2013). Model-Based Machine Learning. Philosophical Transactions of the Royal Society A, 371, pp 1–17 2 Winn, J., Bishop, C. M., Diethe, T. (2015). Model-Based Machine Learning. Microsoft Research Cambridge. http://www.mbmlbook.com. 5 / 39
  6. 6. Introduction Case Study Probabilistic Programming Conclusion What is a Model in MBML? A Model: is a set of assumptions, expressed in mathematical/graphical form expresses all parameters, variables as random variables shows the dependency between variables 6 / 39
  7. 7. Introduction Case Study Probabilistic Programming Conclusion Key Ideas of MBML? MBML is built upon 3 key ideas the use of Probabilistic Graphical Models (PGM) the adoption of Bayesian ML the application of fast, approximate inference algorithms 7 / 39
  8. 8. Introduction Case Study Probabilistic Programming Conclusion Key Idea 1: Probabilistic Graphical Models Combine probability theory with graphs (e.g Factor Graphs) 8 / 39
  9. 9. Introduction Case Study Probabilistic Programming Conclusion Key Idea 2: Bayesian Machine Learning Everything follows from two simple rules of probability theory 9 / 39
  10. 10. Introduction Case Study Probabilistic Programming Conclusion Key Idea 3: Inference Algorithms the application of fast, deterministic inference algorithms by local message passing Variational Bayes Expectation Propagation 10 / 39
  11. 11. Introduction Case Study Probabilistic Programming Conclusion Stages of MBML 3 stages of MBML Build the model: Joint probability distribution of all the relevant variables (e.g as a graph) Incorporate the observed data Perform inference to learn parameters of the latent variables 11 / 39
  12. 12. Introduction Case Study Probabilistic Programming Conclusion Special cases of MBML 12 / 39
  13. 13. Introduction Case Study Probabilistic Programming Conclusion Benefits of MBML Potential benefits of this approach Provides a systematic process of creating ML solutions Allows for incorporation of prior knowledge Allows for handling uncertainity in a principled manner Does not suffer from overfitting Custom solutions are built for specific problems Allows for quick building of several alternative models Easy to compare those alternatives It’s general purpose: No need to learn the 1000s of existing ML algorithms Separates model from inference/training code 13 / 39
  14. 14. Introduction Case Study Probabilistic Programming Conclusion Case Study 14 / 39
  15. 15. Introduction Case Study Probabilistic Programming Conclusion TrueSkillTM by Microsoft Objective: Determine the true skill of millions of players on Xbox Live Why: So that players of the same skill can be matched with each other 15 / 39
  16. 16. Introduction Case Study Probabilistic Programming Conclusion Stage 1: Build the Model 16 / 39
  17. 17. Introduction Case Study Probabilistic Programming Conclusion Stage 2: Incorporate Observed data 17 / 39
  18. 18. Introduction Case Study Probabilistic Programming Conclusion Stage 3: Learn the parameters 18 / 39
  19. 19. Introduction Case Study Probabilistic Programming Conclusion Convergence 19 / 39
  20. 20. Introduction Case Study Probabilistic Programming Conclusion Multiple players - Model 20 / 39
  21. 21. Introduction Case Study Probabilistic Programming Conclusion Team players - Model 21 / 39
  22. 22. Introduction Case Study Probabilistic Programming Conclusion Skill through time - Model 22 / 39
  23. 23. Introduction Case Study Probabilistic Programming Conclusion Probabilistic Programming 23 / 39
  24. 24. Introduction Case Study Probabilistic Programming Conclusion What is Probabilistic Programming? A software package that takes the model and then automatically generate inference routines (even source code!) to solve a wide variety of models Takes programming languages and adds support for: random variables constraints on variables inference Examples of PP software packages Infer.Net (C#, C++) Stan (R, python, C++) BUGS church PyMC (python) 24 / 39
  25. 25. Introduction Case Study Probabilistic Programming Conclusion How Probabilistic Programming works How infer.NET works 25 / 39
  26. 26. Introduction Case Study Probabilistic Programming Conclusion Conclusion 26 / 39
  27. 27. Introduction Case Study Probabilistic Programming Conclusion Closing Remarks Objective of webinar: Introduce the basics of model-based machine learning, Introduce probabilistic programming. Moving forward: Now you can look into specialized topics like: Fast Bayesian inference techniques, Model building, 27 / 39
  28. 28. Introduction Case Study Probabilistic Programming Conclusion References 1. J. Winn, C. Bishop, and T. Diethe, Model-Based Machine Learning,Microsoft Research,2015. 2. C. M. Bishop, “Model-based machine learning” Phil Trans R Soc, A 371: 20120222, Jan. 2013 3. T. Minka, J. Winn, J. Guiver, and D. Knowles, Infer.NET, Microsoft Research Cambridge,2010. 4. Stan Development Team, “Stan Modeling Language Users Guide and Reference Manual,” Version 2.9.0, 2016. 5. Stan Development Team, “RStan: the R interface to Stan,” Version 2.9.0”. 6. D. Emaasit, A. Paz, and J. Salzwedel (2016). “A Model-Based Machine Learning Approach for Capturing Activity-Based Mobility Patterns using Cellular Data”. IEEE ITSC 2016. Under Review. 28 / 39
  29. 29. Introduction Case Study Probabilistic Programming Conclusion Contact Me daniel.emaasit@gmail.com github.com/Emaasit www.danielemaasit.com [@Emaasit](https://twitter.com/Emaasit) 29 / 39
  30. 30. Introduction Case Study Probabilistic Programming Conclusion Two players - Model 30 / 39
  31. 31. Introduction Case Study Probabilistic Programming Conclusion Two players - Code 31 / 39
  32. 32. Introduction Case Study Probabilistic Programming Conclusion Multiple players - Model 32 / 39
  33. 33. Introduction Case Study Probabilistic Programming Conclusion Multiple players - Code 33 / 39
  34. 34. Introduction Case Study Probabilistic Programming Conclusion Team players - Model 34 / 39
  35. 35. Introduction Case Study Probabilistic Programming Conclusion Team players - Code 35 / 39
  36. 36. Introduction Case Study Probabilistic Programming Conclusion Skill through time - Model 36 / 39
  37. 37. Introduction Case Study Probabilistic Programming Conclusion Skill through time - Code 37 / 39
  38. 38. Introduction Case Study Probabilistic Programming Conclusion y w x τ N M y N dot w x µw αw µx αx τ ατ βτ N N G N M Figure 1: PCA model as a Bayesian network and a directed factor graph. 38 / 39
  39. 39. Introduction Case Study Probabilistic Programming Conclusion X T θ αθ Multi Multi Dir φ αφ Dir ∀1 ≤ i ≤ nd ∀t ∈ T 39 / 39

×