В последнее время я самостоятельно изучал максимизацию ожиданий и собрал в процессе несколько простых примеров:
От сюда : Есть три монеты , и с , и соответствующей вероятностью для посадки на голове , когда кинули. Бросок . Если результат - голова, бросьте три раза, иначе бросьте три раза. Наблюдаемые данные, полученные с помощью и выглядят так: HHH, TTT, HHH, TTT, HHH. Скрытые данные - результат . Оценка , и .
И отсюда : есть две монеты и где и являются соответствующей вероятностью посадки на голову при подбрасывании. В каждом раунде выбирайте одну монету случайным образом и подбрасывайте ее десять раз; запишите результаты. Наблюдаемые данные представляют собой результаты броска, представленные этими двумя монетами. Однако мы не знаем, какая монета была выбрана для определенного раунда. Расчетный и .
Хотя я могу получить расчеты, я не могу связать способы их решения с оригинальной теорией ЭМ. В частности, во время M-Step обоих примеров я не вижу, как они максимизируют что-либо. Просто кажется, что они пересчитывают параметры и каким-то образом новые параметры лучше, чем старые. Более того, два E-шага даже не похожи друг на друга, не говоря уже об E-Step оригинальной теории.
Так как именно эти примеры работают?
источник
Ответы:
(Этот ответ использует вторую ссылку, которую вы дали.)
Мы хотим найти оценку максимального правдоподобия . Алгоритм Expectation-Maximization (EM) является одним из таких методов поиска (по крайней мере локального) . Он работает, находя условное ожидание, которое затем используется для максимизации . Идея состоит в том, что, непрерывно находя более вероятную (т.е. более вероятную) на каждой итерации, мы будем постоянно увеличивать что, в свою очередь, увеличивает функцию правдоподобия. Перед тем, как приступить к разработке алгоритма на основе ЭМ, необходимо сделать три вещи. ; & thetas ; & thetasthetasPr[X,Z| θ]θ^ θ^ θ θ Pr[X,Z|θ]
Построить модель
Прежде чем мы продолжим работу с EM, нам нужно выяснить, что именно мы вычисляем. На шаге E мы вычисляем точно ожидаемое значение для . Так что же это за ценность на самом деле? Заметьте, что Причина в том, что у нас есть 5 экспериментов, и мы не знаем, какая монета использовалась в каждом. Неравенство связано сlog Pr [ X , Z | θ ]logPr[X,Z|θ] журнал
Теперь, что такое ? Это вероятность того, что мы видим монету учетом эксперимента и . Используя условные вероятности, мы имеемC X i θ Pr [ Z i = C | X i , θ ] = Pr [ X i , Z i = C | θ ]Pr [ Zя= C| Икся, θ ] С Икся θ
Хотя мы добились определенного прогресса, мы еще не закончили с моделью. Какова вероятность того, что данная монета перевернула последовательность ? Пусть Теперь , очевидно , только вероятность при обеих возможностях или . Поскольку имеем h i = # головы в X i Pr [ X i , Z i = C | θ ] = 1Икся чася= # головы в Xя
Pr[Xi| θ]Zя=Zя=BPr[Zя=]=Pr[Zя=B]=1/2
E-Step
Ладно ... это было не так весело, но мы можем начать делать кое-какую работу сейчас. Алгоритм EM начинается с некоторого случайного предположения для . В этом примере мы имеем . Мы вычисляем Это значение совпадает с тем, что есть в статье. Теперь мы можем вычислить ожидаемое количество голов в из монеты , Делая то же самое для монеты мы получаем,θ θ0=(0.6,0.5)
М-Шаг
Теперь, когда у нас есть ожидаемые значения, наступает этап М, на котором мы хотим максимизировать учетом ожидаемых значений. Это делается простой нормализацией! Точно так же для . Этот процесс начинается снова с E-шага и и продолжается до тех пор, пока значения для сходятся (или до некоторого допустимого порога). В этом примере у нас есть 10 итераций и . На каждой итерации значение увеличивается из-за лучшей оценкиθ
Теперь в этом случае модель была довольно упрощенной. Все может стать намного сложнее довольно быстро, однако алгоритм EM всегда будет сходиться и всегда будет давать оценку максимального правдоподобия . Это может быть локальная оценка, но чтобы обойти это, мы можем просто перезапустить EM-процесс с другой инициализацией. Мы можем делать это постоянное количество раз и сохранять лучшие результаты (т. Е. Те, которые имеют наивысшую конечную вероятность).θ^
источник