EM-алгоритм: различия между версиями
[отпатрулированная версия] | [непроверенная версия] |
отмена правки 79926773 участника 84.237.43.9 (обс) |
|||
Строка 49: | Строка 49: | ||
Тогда шаги EM-алгоритма можно представить как: |
Тогда шаги EM-алгоритма можно представить как: |
||
: '''E(xpectation) шаг''': Выбираем ''q'', чтобы максимизировать ''F'': |
: '''E(xpectation) шаг''': Выбираем ''q'', чтобы максимизировать ''F'': |
||
:: <math> q^{(t)} = \operatorname*{arg\,max}_q \ F(q,\theta^{(t)}) </math> |
:: <math> q^{(t)} = \operatorname*{\arg\,\max}_q \ F(q,\theta^{(t)}) </math> |
||
: '''M(aximization) шаг''': Выбираем ''θ'', чтобы максимизировать ''F'': |
: '''M(aximization) шаг''': Выбираем ''θ'', чтобы максимизировать ''F'': |
||
:: <math> \theta^{(t+1)} = \operatorname*{\arg\,max}_{\theta} \ F(q^{(t)},\theta) </math> |
:: <math> \theta^{(t+1)} = \operatorname*{\arg\,\max}_{\theta} \ F(q^{(t)},\theta) </math> |
||
== Примеры использования == |
== Примеры использования == |
Версия от 14:10, 3 июля 2018
EM-алгоритм (англ. Expectation-maximization (EM) algorithm) — алгоритм, используемый в математической статистике для нахождения оценок максимального правдоподобия параметров вероятностных моделей, в случае, когда модель зависит от некоторых скрытых переменных. Каждая итерация алгоритма состоит из двух шагов. На E-шаге (expectation) вычисляется ожидаемое значение функции правдоподобия, при этом скрытые переменные рассматриваются как наблюдаемые. На M-шаге (maximization) вычисляется оценка максимального правдоподобия, таким образом увеличивается ожидаемое правдоподобие, вычисляемое на E-шаге. Затем это значение используется для E-шага на следующей итерации. Алгоритм выполняется до сходимости.
Часто EM-алгоритм используют для разделения смеси гауссиан.
Описание алгоритма
Пусть — некоторые из значений наблюдаемых переменных, а — скрытые переменные. Вместе и образуют полный набор данных. Вообще, может быть некоторой подсказкой, которая облегчает решение проблемы в случае, если она известна. Например, если имеется смесь распределений, функция правдоподобия легко выражается через параметры отдельных распределений смеси.
Положим — плотность вероятности (в непрерывном случае) или функция вероятности (в дискретном случае) полного набора данных с параметрами : Эту функцию можно понимать как правдоподобие всей модели, если рассматривать её как функцию параметров . Заметим, что условное распределение скрытой компоненты при некотором наблюдении и фиксированном наборе параметров может быть выражено так:
- ,
используя расширенную формулу Байеса и формулу полной вероятности. Таким образом, нам необходимо знать только распределение наблюдаемой компоненты при фиксированной скрытой и вероятности скрытых данных .
EM-алгоритм итеративно улучшает начальную оценку , вычисляя новые значения оценок и так далее. На каждом шаге переход к от выполняется следующим образом:
где — матожидание логарифма правдоподобия. Другими словами, мы не можем сразу вычислить точное правдоподобие, но по известным данным () мы можем найти апостериорную оценку вероятностей для различных значений скрытых переменных . Для каждого набора значений и параметров мы можем вычислить матожидание функции правдоподобия по данному набору . Оно зависит от предыдущего значения , потому что это значение влияет на вероятности скрытых переменных .
вычисляется следующим образом:
то есть это условное матожидание при условии .
Другими словами, — это значение, максимизирующее (M) условное матожидание (E) логарифма правдоподобия при данных значениях наблюдаемых переменных и предыдущем значении параметров. В непрерывном случае значение вычисляется так:
Альтернативное описание
При определенных обстоятельствах удобно рассматривать EM-алгоритм как два чередующихся шага максимизации.[1][2] Рассмотрим функцию:
где q — распределение вероятностей ненаблюдаемых переменных Z; pZ|X(· |x;θ) — условное распределение ненаблюдаемых переменных при фиксированных наблюдаемых x и параметрах θ; H — энтропия и DKL — расстояние Кульбака-Лейблера.
Тогда шаги EM-алгоритма можно представить как:
- E(xpectation) шаг: Выбираем q, чтобы максимизировать F:
- M(aximization) шаг: Выбираем θ, чтобы максимизировать F:
Примеры использования
- k-means — алгоритм кластеризации, построенный на идее EM-алгоритма
- Метод упругих карт для нелинейного сокращения размерности данных
- Алгоритм Баума-Велша — алгоритм для оценки параметров скрытых марковских моделей
Примечания
- ↑ Neal, Radford; Hinton, Geoffrey (1999). Michael I. Jordan (ed.). "A view of the EM algorithm that justifies incremental, sparse, and other variants" (PDF). Learning in Graphical Models. Cambridge, MA: MIT Press: 355—368. ISBN 0262600323. Дата обращения: 22 марта 2009.
- ↑ Hastie, Trevor. 8.5 The EM algorithm // The Elements of Statistical Learning / Trevor Hastie, Robert Tibshirani, Jerome Friedman. — New York : Springer, 2001. — P. 236–243. — ISBN 0-387-95284-5.