Chapter 13. Dynamic reasoning and parameter learning
This chapter covers
- How to monitor the state of a dynamic system
- How to learn the parameters of a probabilistic program
The preceding chapter described several alternative kinds of queries you could ask of a probabilistic model. This chapter continues the theme by presenting two more reasoning tasks, both of which are important and widely used. The first task, discussed in section 13.1, is monitoring the state of a dynamic system over time as you receive information from sensors. The second task, presented in section 13.2, is learning the parameters of a probabilistic model from data. Although the techniques used for these two kinds of reasoning are different, both fall in the category of advanced methods that are necessary in many applications. It’s well worth your while to understand these methods and how to use them. The chapter concludes with a brief section on taking what you’ve learned in this book and moving beyond it in your use of Figaro.
Section 13.1 on monitoring dynamic systems relies heavily on chapter 8, which covered dynamic probabilistic models. The particle-filtering algorithm described in that section is based on importance sampling, which was discussed in chapter 11. Section 13.2 on learning model parameters uses material from chapter 9. In particular, you should understand the different approaches to learning, such as the maximum a posteriori (MAP) and Bayesian approaches.