Обучение алгоритму ЭМ (3)

искусственный интеллект алгоритм MATLAB

В первых двух статьях мы примерно описали некоторые основные теории и некоторые основные свойства ЭМ-алгоритма, а также новый ЭМ-алгоритм, оптимизированный и улучшенный для устранения недостатков ЭМ-алгоритма.После исследования мы можем в целом иметь предварительный понимание , Теперь в этой последней статье я хотел бы дать некоторые описания применения алгоритма 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 будет продвигаться и улучшаться, и эти проблемы будут постепенно решаться.

Я также надеюсь, что некоторые соответствующие люди в этой области могут дать мне несколько советов, я был бы очень благодарен.