Inside-outside algorithm
Parameter estimation method for probabilistic context-free grammars
For parsing algorithms in computer science, the inside-outside algorithm is a way of re-estimating production probabilities in a probabilistic context-free grammar. It was introduced by James K. Baker in 1979 as a generalization of the forward-backward algorithm for parameter estimation on hidden Markov models to stochastic context-free grammars. It is used to compute expectations, for example as part of the expectation-maximization algorithm (an unsupervised learning algorithm).
01Inside and outside probabilities
The inside probability is the total probability of generating words
, given the root nonterminal
and a grammar
:
The outside probability is the total probability of beginning with the start symbol
and generating the nonterminal
and all the words outside
, given a grammar
:
02Computing inside probabilities
Base Case:
General case:
Suppose there is a rule in the grammar, then the probability of generating
starting with a subtree rooted at
is:
The inside probability is just the sum over all such possible rules:
03Computing outside probabilities
Base Case:
Here the start symbol is .
General case:
Suppose there is a rule in the grammar that generates
.
Then the left contribution of that rule to the outside probability
is:
Now suppose there is a rule in the grammar. Then the right
contribution of that rule to the outside probability
is:
The outside probability is the sum of the left and right
contributions over all such rules:
Sources and credits
This article is adapted from the Wikipedia article “Inside-outside algorithm”, written by its contributors and licensed under CC BY-SA 4.0. Fathomly has changed the layout, removed citation markers, navigation and maintenance notices, and adjusted punctuation. This adapted version is shared under the same license. For references, see the original article.
Fathomly is not affiliated with or endorsed by the Wikimedia Foundation. Spotted a problem? Tell us.