EM-алгоритм
Содержание
Определение
Алгоритм EM - алгоритм поиска максимума правдоподобия параметров для решения задач, где некоторые переменные не являются наблюдаемыми.
Алгоритм ищет параметры модели итеративно, каждая итерация состоит из двух шагов:
E(Expectation) шаг, в котором находится распределение скрытых переменных используя значение наблюдаемых переменных и текущего значения параметров.
M(Maximisation) шаг - пересчет параметров, находя максимум правдоподобия исходя из распределения скрытых переменных, полученных на E - шаге.
Задача разделения смеси распределений
Общий алгоритм —
Необходимо описать плотность распределения функции на X как сумму k функций, которые можно рассматривать как элементы параметрического семейства функций
где - априорная вероятность j компоненты распределения.
Задача разделения смеси заключается в том, чтобы, имея выборку случайных и независимых наблюдений из смеси , зная число и функцию , оценить вектор параметров
E-шаг:
Введем обозначение: это и будут скрытые параметры данной задачи - апостериорная вероятность того, что обучающий объект получен из -й компоненты
По формуле Байеса справедливо равенство:
Таким образом при зная значение параметров легко найти скрытые переменные.
Перейдем к M-шагу:
Посчитаем для аддитивности логарифм правдоподобия:
при условии имеет смысл рассматривать лагранжиан задачи:
Умножим на
Так как можно заменить порядок суммы и
Приравняв к нулю лагранжиан по
Таким образом на M-шаге необходимо взять среднее значение
и решить k независимых оптимизационных задач.
Разделение смеси гауссиан —
Важным на практике примером является случай, когда параметрическое семейство - нормальные распределения. Параметрами функций будут являться матожидание и дисперсия.
— вектор параметров,
k-means как EM алгоритм
Скрытыми переменными в данной задаче являются классы, к которым относятся объекты для кластеризации. Сами же параметры это центры масс классов. На шаге E - распределяются все объекты по классам исходя из расстояния от центра, на шаге M находится оптимальное месторасположение центра.
Аналогично рассматривается и алгоритм c-means. Скрытые переменные здесь будут вероятности принадлежности к классам, которые находятся на E-шаге по расстоянию от центра. Центр так же рассчитывается на M-шаге исходя из скрытых переменных.