# Posterior Regularization for Expectation Maximization

## Summary

The Expectation Maximization algorithm is a method for finding the maximum likelihood estimates for the parameters in a statistical model. During the E-step of this algorithm, posterior probabilities are calculated for the latent data by fixing the parameters.

In many fields, prior knowledge about the posterior probabilities can be applied to the model in order to improve the statistical model, yet the method to include such in the most efficient way in EM is not clear.

Posterior Regularization is a method used to impose such constraints on posteriors in the Expectation Maximization algorithm, allowing a finer-level control over these posteriors.

## Method Description

For a given set ${\displaystyle x\in X}$ of observed data, a set of latent data ${\displaystyle z\in Z}$ and a set of parameters ${\displaystyle \theta }$, the Expectation Maximization algorithm can be viewed as the alternation between two maximization steps of the function ${\displaystyle F(q,\theta )}$, by marginalizing different free variables.

The E-step is defined as:

${\displaystyle q^{t+1}=argmax_{q}F(q,\theta ^{t})=argmax_{q}[-D_{KL}(q||p_{\theta ^{t}}(z|x))]=p_{\theta ^{t}}(z|x)}$

where ${\displaystyle D_{KL}}$ is the Kullback-Leibler divergence given by ${\displaystyle D_{KL}(q||p)=E_{q}[log{\frac {q}{p}}]}$, q(z|x) is an arbitrary probability distribution over the latent variable z and ${\displaystyle p_{\theta ^{t}}(z|x)}$ is the posterior probability for z, for the fixed parameters ${\displaystyle \theta }$.

The new ${\displaystyle q}$ is then used in the M-step, which is defined as:

${\displaystyle \theta ^{t+1}=argmax_{\theta }F(q^{t+1},\theta )=argmax_{\theta }\ E_{X}[\sum _{s}q^{t+1}(z|x)\ log\ p_{\theta }(x,z)]}$

The goal of this method is to define a way to constrains over posteriors, so that prior information can be set over these posteriors by defining a constraint set ${\displaystyle Q_{x}}$ of allowed distribution over the latent variables ${\displaystyle z}$.

This method addresses this by setting the restriction on ${\displaystyle q(z|x)}$. Thus, ${\displaystyle Q_{x}}$ is defined as:

${\displaystyle Q_{x}=\{q(z|x):\exists _{\xi }\ E_{q}[f(x,z)]-b_{x}\leq \xi ;\left\|\xi \right\|_{2}^{2}<\epsilon ^{2}\}}$

where ${\displaystyle Q_{x}}$ defines a set of valid distributions where some feature expectations ${\displaystyle f(x,z)}$ are bounded by ${\displaystyle b_{x}}$ and a free variable ${\displaystyle \epsilon }$ that denotes the amount of violation allowed.

To apply the constraints, the E-step is redefined as:

${\displaystyle q^{t+1}=argmax_{q\in Q(x)}F(q,\theta ^{t})=argmax_{q\in Q(x)}[-D_{KL}(q||p_{\theta ^{t}}(z|x))]}$

The new distribution for ${\displaystyle q}$ is then used in the M-step, which remains unchanged.

We can see that the key advantage of this method is the fact that the base model remains unchanged, but during learning it is driven to obey the constrains by setting appropriate parameters.

## Applications

Posterior regularization has been used to improve Word Alignments in Graca et al, 2010, by defining bijectivity and symmetry constraints over alignment posteriors.

Improvements using Posterior regularization have been report Dependency Grammar Induction for low resource languages in the work by Ganchev et al, 2009

This method has also been used in other applications such as Document Classification, Information Extraction and POS Induction. An tutorial, describing the method and its applications can be found here.