| FazBrowse Wikipedia Viewer | Main Page | | |
| Viewing: https://en.wikipedia.org/wiki/Bayesian_programming |
| Contents |
|---|
| Question |
| Question |
| Decomposition |
| Bayesian program |
| Kalman filter |
| External links |
| Part of a series on |
| Bayesian statistics |
|---|
| Posterior = Likelihood × Prior ÷ Evidence |
| Background |
| Model building |
| Posterior approximation |
| Estimators |
| Evidence approximation |
| Model evaluation |
Bayesian programming is a formalism and a methodology for having a technique to specify probabilistic models and solve problems when less than the necessary information is available.
Edwin T. Jaynes proposed that probability could be considered as an alternative and an extension of logic for rational reasoning with incomplete and uncertain information. In his founding book Probability Theory: The Logic of Science he developed this theory and proposed what he called "the robot," which was not a physical device, but an inference engine to automate probabilistic reasoning—a kind of Prolog for probability instead of logic. Bayesian programming is a formal and concrete implementation of this "robot".
Bayesian programming may also be seen as an algebraic formalism to specify graphical models such as, for instance, Bayesian networks, dynamic Bayesian networks, Kalman filters or hidden Markov models. Indeed, Bayesian programming is more general than Bayesian networks and has a power of expression equivalent to probabilistic factor graphs.
π) as given by the programmer and an identification or learning process for the parameters not completely specified by the specification, using a data set (δ and some specification π, the programmer must undertake the following:We then obtain:
An important feature of Bayesian programming is this capacity to use questions to other Bayesian programs as components of the definition of a new Bayesian program. δ^. This is similar to calling a subroutine in classical programming and provides an easy way to build hierarchical models.
Given a description (i.e., Searched, P(Searched∣Known∧δ∧π)
made of many "instantiated questions" as the cardinal of P(X1∧X2∧⋯∧XN∣δ∧π), it is always possible to compute any possible question using the following general inference:
Replacing the joint distribution by its decomposition we get:
These P(W1∣Spam∧W0)=P(W1∣Spam)
to finally obtain:
The identification of these parameters could be done either by batch processing a series of classified e-mails or by an incremental updating of the parameters using the user's classifications of the e-mails as they arrive.
Both methods could be combined: the system could start with initial standard values of these parameters issued from a generic database, then some incremental learning customizes the classifier to each individual user.
The question asked to the program is: "what is the probability for a given text to be spam knowing which words appear and don't appear in this text?" It can be formalized by:
This computation is faster and easier because it requires only S0,…,ST are a time series of state variables considered to be on a time horizon ranging from O0,…,OT are a time series of observation variables on the same horizon.
The decomposition is based:
The most common case is Bayesian filtering where (k<0), to recover a past state from observations made either before or after that instant.
More complicated questions may also be asked as shown below in the HMM section.
Bayesian filters P(St−1∣O0∧⋯∧Ot−1) with the following formula:
The very well-known Kalman filters are a special case of Bayesian filters.
They are defined by the following Bayesian program:
With these hypotheses and by using the recursive formula, it is possible to solve the inference problem analytically to answer the usual P(St∣St−1∧π) and the observation model "Expression Graphs: Unifying Factor Graphs and Sum-Product Networks" (PDF). bcf.usc.edu. Archived from the original (PDF) on 2018-10-12. Retrieved 2018-10-11.
| View original on Wikipedia | Back | FazBrowse Home |