В первых двух статьях мы примерно описали некоторые основные теории и некоторые основные свойства ЭМ-алгоритма, а также новый ЭМ-алгоритм, оптимизированный и улучшенный для устранения недостатков ЭМ-алгоритма.После исследования мы можем в целом иметь предварительный понимание , Теперь в этой последней статье я хотел бы дать некоторые описания применения алгоритма EM:
Алгоритм EM обычно широко используется в данных с отсутствующим многомерным нормальным распределением, поэтому в таком типичном сценарии применения я буду в основном изучать применение алгоритма EM в двумерном нормальном распределении.
1: Введение в двумерное нормальное распределение:
Пусть плотность вероятности двумерной случайной величины (X, Y) равна:
Где u1, u2, p, &1, &2 — константы, а &1>0, %2>0,-1
Так как следующий вывод требует нескольких свойств, некоторые важные свойства приведены сейчас:
Свойство 1: предельное распределение двумерного нормального распределения.
сертификат:
так как
Итак, получите:
Установите параметр t здесь:
То есть вы можете получить:
Так же:
Что ж, доказательство доказано
Свойство 2: условное распределение нормального распределения по-прежнему является нормальным распределением.
Двумерное нормальное распределение (X,Y) ~N(u,M), где:
Проверять:
Процесс доказательства выглядит следующим образом:
2: Для оценки MCEM среднего значения двумерного нормального распределения:
Пусть общее Z=(X,Y)~N(u,M), где:
Теперь у нас есть следующие наблюдения:
Очевидно, что эти данные отсутствуют.Если данные полные, то этот параметр очень просто оценить, и можно использовать оценку максимального правдоподобия.Однако в случае неполных данных очень сложно использовать оценку максимального правдоподобия чтобы найти параметры.Да, теперь мы знаем, что алгоритм EM очень полезен для отсутствующих данных, и теперь мы используем алгоритм EM, чтобы найти:
Гипотетическая ковариационная матрица
Оцените неизвестные параметры:
Во-первых, возьмите u=[2,4] в качестве примера для генерации случайных чисел двумерного нормального распределения, вычтите часть данных из сгенерированных случайных чисел и обработайте вычтенную часть данных как неизвестные отсутствующие данные M=[M1, M2] , остальные данные берутся как данные наблюдения Z=[X,Y]
Предполагая, что существует оценочное значение u на K+1-й итерации u(k)=[u1(k), u2(k)] в указанных выше свойствах, его можно применить для получения:
Затем сгенерируйте n случайных чисел в соответствии с приведенным выше условным распределением:
M1=(m1(1),m1(2),……..m1(n))
M2=(m2(1),m2(2).......m2(n))
Вычислите шаг E и получите функцию Q:
Таким образом, M1 и наблюдаемые данные составляют полные данные (M1(K), X).На шаге M выполняется оценка максимального правдоподобия для вывода неизвестного параметра u1 функции Q, который предполагается полюс u1 по полным данным.Оценка большого правдоподобия, то есть:
Здесь M1 представляет собой среднее значение по полным данным, и метод оценки u2 аналогичен.
Заинтересованные студенты могут использовать такой инструмент, как MATLAB, чтобы попробовать его.После теста маленькие партнеры в лаборатории указали, что начальные значения u1 и u2 равны 1. После 20 итераций они в конечном итоге сойдутся, u1= 2,0016, и2=3, 9580
3: определение гауссовского распределения смеси;
Смешанная модель означает, что функция плотности вероятности случайной величины X имеет следующий вид:
Эта формула показывает, что смешанная модель состоит из M ветвей, и вес каждой ветви равен ak.Когда распределение каждой ветви является гауссовым распределением, смешанное распределение называется гауссовым смешанным распределением с M ветвями (GMM).
Теперь сделайте предположения:
Предполагая, что значение выборочного наблюдения равно X={x1,x2,xN} из приведенной выше формулы, логарифмическая функция правдоподобия распределения смеси распределения Гаусса может быть записана как:
Теперь упростим:
Удалите накопление и суммирование в приведенной выше формуле, и невозможно напрямую вывести функцию логарифмического правдоподобия, чтобы найти экстремальное значение. Но если мы знаем, из какой ветви M ветвей исходит каждое наблюдение, сложность задачи значительно снизится. Поэтому, исходя из этой идеи, введем скрытую переменную y, которая определяется следующим образом: пусть Y={y1,y2,yN} и y(i)∈{1,2,…,M},i = 1, 2, ..., Н. Тогда, когда y(i)=k, это означает, что i-е выборочное наблюдение x(i) генерируется k-й ветвью гауссовского распределения смеси. Следовательно, после введения переменной y логарифмическая функция правдоподобия может быть переписана как:
После перезаписи функции правдоподобия мы можем рассмотреть возможность использования алгоритма EM для оценки параметров модели.
На этапе E алгоритма необходимо рассчитать математическое ожидание функции логарифмического правдоподобия полных данных. Предположим, что в t-й
1В начале следующей итерацииXизвестно, иYпеременная, даYочки есть:
Учитывая, что вероятность i-го наблюдения x(i) из K-й ветви равна p, следующая формула может быть записана как:
Из формулы Байеса мы знаем, что
В следующих M шагах мы запрашиваем максимизированную функцию:
Во-первых, чтобы найти u(k), мы можем взять частную производную Q по u(k) и сделать ее равной нулю, то есть:
Доступный:
Аналогичным образом найдите &k квадрат:
Наконец, чтобы найти ak, введем множители Лагранжа:
Следовательно:
Суммируя эту формулу, получаем:
Наконец, подставив =-N в приведенную выше формулу, мы получим:
На данный момент мы получили формулы обновления всех параметров, и оценка параметров может быть достигнута итеративно с помощью программирования.
4: Что касается алгоритма скрытой марковской модели HMM, то я тоже учусь, и о нем я расскажу позже в специальной статье
Резюме: При написании этой серии статей я обнаружил некоторые текущие проблемы с алгоритмом EM, но мои собственные способности действительно не очень хороши.Например, хотя алгоритмы NR и aitken упоминаются для ускорения, расчет все еще слишком сложен.Что более интересно, как Тонко расширить пространство параметров для ускорения сходимости.При изучении смешанной модели Гаусса в этой статье оценивается количество ветвей ОММ, потому что оно известно заранее, но если задана куча беспорядочных данных, необходимо решить проблему, как определить ветвь , чтобы лучше соответствовать выборке, это проблема, которую следует рассмотреть.Наконец, есть применение алгоритма EM в других моделях, в других направлениях, таких как не только может использоваться для оценки параметров, но также
Можно проводить проверку гипотез и т. д.
Благодаря недавнему исследованию алгоритма EM видно, что алгоритм EM имеет очевидные преимущества при решении проблемы отсутствующих данных.Алгоритм и принцип просты, сходимость стабильна, а применимость широка.Конечно, у него также есть много недостатков (например, медленная сходимость; однако считается, что по мере того, как все больше ученых будут проводить углубленные исследования алгоритма EM, алгоритм EM будет продвигаться и улучшаться, и эти проблемы будут постепенно решаться.
Я также надеюсь, что некоторые соответствующие люди в этой области могут дать мне несколько советов, я был бы очень благодарен.