<

Expectation-Maximization Algorithm

The Expectation-Maximization Algorithm (EM) estimates the m/u probabilities for each field used in record linkage. It alternates between estimating the probability each pair is a match (E-step) and recomputing parameters (M-step) until convergence.


Step 1 - Initialize

Provide initial guesses for each field:

These values do not need to be perfect. EM will refine them.


Step 2 - Expectation (E-step)

For each pair, compute the likelihood of observing its agreement pattern under both match (M) and non-match (U) assumptions.

field agreement m_prob u_prob
NAME 1 0.90 0.01
ZIP 0 0.55 0.005
GENDER 0 0.99 0.5

We assume fields are conditionally independent. The likelihoods are:

Example calculation:

Now compute the posterior probability that the pair is a match:

This means there is about an 8.29% chance that this pair is a true match.


Step 3 - Maximization (M-step)

Now we recompute the m and u probabilities using all pairs. Each pair contributes:

Updated formulas for each field:

Important notes:

Intuition:


Step 4 - Repeat

Repeat the E-step and M-step until convergence, when the parameters stop changing significantly.

At that point, the model has learned the m/u probabilities that best explain the data.