Chapter 1. Probabilistic programming in a nutshell
Figure 1.1. Last year everyone loved my product, but what will happen next year?
Figure 1.2. How a probabilistic reasoning system predicts the outcome of a corner kick
Figure 1.3. The basic components of a probabilistic reasoning system
Figure 1.4. By altering the query and evidence, the system can now infer why a goal was scored.
Figure 1.5. By taking into account evidence from the outcome of the last corner kick, the probabilistic reasoning system can produce a better prediction of the next corner kick.
Figure 1.6. You can use a learning algorithm to learn a new model based on a set of experiences. This new model can then be used for future inferences.
Figure 1.7. A probabilistic programming system is a probabilistic reasoning system that uses a programming language to represent probabilistic models.
Figure 1.8. A probabilistic program defines a process of randomly generating outputs, given inputs.
Figure 1.9. How Figaro uses Scala to provide a probabilistic programming system
Chapter 2. A quick Figaro tutorial
Figure 2.1. Review of probabilistic reasoning essentials
Figure 2.2. The key concepts of Figaro and how they fit together
Figure 2.3. The relationship between Scala variables and values, and Figaro elements and possible values
Figure 2.4. Structure of the Hello World model as a graph. Each node in the graph is an element. Edges in the graph show when one element is used by another element.