The Expectation-Maximization and Alternating Minimization Algorithms

The Expectation-Maximization (EM) algorithm is a hill-climbing approach to finding a local maximum of a likelihood function [7, 8]. The EM algorithm alternates between finding a greatest lower bound to the likelihood function (the “E Step”), and then maximizing this bound (the “M Step”). The EM algorithm belongs to a broader class of alternating minimization algorithms [6], which includes the Arimoto-Blahut algorithm for calculating channel capacity and rate distortion functions [1, 3], and Cover’s portfolio algorithm to maximize expected log-investment [4].