EM - алгоритм Expectation-maximization Васильев Максим Поступаленко Андрей Тверь 2012 EM-алгоритм — алгоритм, используемый в математической статистике для нахождения оценок максимального правдоподобия параметров вероятностных моделей, в случае, когда модель зависит от некоторых скрытых переменных. Каждая итерация алгоритма состоит из двух шагов. На E-шаге (expectation) вычисляется ожидаемое значение функции правдоподобия, при этом скрытые переменные рассматриваются как наблюдаемые. На M-шаге (maximization) вычисляется оценка максимального правдоподобия, таким образом увеличивается ожидаемое правдоподобие, вычисляемое на E-шаге. Затем это значение используется для E-шага на следующей итерации. Алгоритм выполняется до сходимости. Часто EM-алгоритм используют для разделения смеси гауссиан. Функции правдоподобия Максимальное правдоподобие Скрытые переменные Гауссиан Функции правдоподобия это совместное распределение выборки из параметрического распределения, рассматриваемое как функция параметра. При этом используется совместная функция плотности (в случае выборки из непрерывного распределения) либо совместная вероятность (в случае выборки из дискретного распределения), вычисленные для данных выборочных значений. Пример Понятия вероятности и правдоподобия тесно связаны. Какова вероятность выпадения 12 очков в каждом из ста бросков двух костей?" и "На сколько правдоподобно, что кости не шулерские, если из ста бросков в каждом выпало 12 очков?" Пример Т.е. в первом случае имеем функцию зависящую от события, а во втором от параметра, при фиксированном событии. Неформально, если вероятность позволяет нам предсказывать неизвестные результаты, основанные на известных параметрах, то правдоподобие позволяет нам оценивать неизвестные параметры, основанные на известных результатах. Максимальное правдоподобие это метод оценивания неизвестного параметра путём максимизации функции правдоподобия Для фиксированного набора данных и базовой вероятностной модели, используя метод максимального правдоподобия, мы получим значения параметров модели, которые делают данные «более близкими» к реальным. Скрытые переменные скрытые переменные (иногда называемые латентными переменными) которые не наблюдаются в данных, доступных для обучения. Например, истории болезни часто включают описания наблюдаемых симптомов, применяемого лечения и, возможно, результата лечения, но редко содержат сведения об непосредственном наблюдении за развитием самого заболевания! Гауссиан Нормальное распределение, также называемое гауссовым распределением или распределением Гаусса — распределение вероятностей, которое задается функцией плотности распределения: где параметр μ — среднее значение (математическое ожидание) случайной величины и указывает координату максимума кривой плотности распределения, а σ² — дисперсия. В основе идеи EM-алгоритма лежит предположение, что исследуемое множество данных может быть смоделировано с помощью линейной комбинации многомерных нормальных распределений, а целью является оценка параметров распределения, которые максимизируют логарифмическую функцию правдоподобия. Иными словами, предполагается, что данные в каждом кластере подчиняются определенному закону распределения, а именно, нормальному распределению . С учетом этого предположения можно определить параметры - математическое ожидание и дисперсию, которые соответствуют закону распределения элементов в кластере, наилучшим образом "подходящему" к наблюдаемым данным Таким образом, мы предполагаем, что любое наблюдение принадлежит ко всем кластерам, но с разной вероятностью. Тогда задача будет заключаться в "подгонке" распределений смеси к данным, а затем в определении вероятностей принадлежности наблюдения к каждому кластеру. Очевидно, что наблюдение должно быть отнесено к тому кластеру, для которого данная вероятность выше. Среди преимуществ EM-алгоритма можно выделить следующие: Мощная статистическая основа. Линейное увеличение сложности при росте объема данных. Устойчивость к шумам и пропускам в данных. Возможность построения желаемого числа кластеров. Быстрая сходимость при удачной инициализации. Однако алгоритм имеет и ряд недостатков. Во-первых, предположение о нормальности всех измерений данных не всегда выполняется. Во-вторых, при неудачной инициализации сходимость алгоритма может оказаться медленной. Кроме этого, алгоритм может остановиться в локальном минимуме и дать квазиоптимальное решение. Статистические основы алгоритма Плотность вероятности нормального распределения имеет вид: Где µ = E(X) - математическое ожидание Статистические основы алгоритма Многомерное нормальное распределение для - мерного пространства является обобщением предыдущего выражения. Многомерная нормальная плотность для q-мерного вектора X = (X1,X2,…,Xq) может быть записана в виде: Статистические основы алгоритма Где - ковариационная матрица размером q * q, которая, как известно, является обобщением дисперсии для многомерной случайной величины, µ представляет из себя q -мерный вектор математических ожиданий, определитель ковариационной матрицы, Т оператор транспонирования. Статистические основы алгоритма Существуют два подхода к решению задач кластеризации: основанный на расстоянии и основанный на плотности Первый подход заключается в определении областей пространства признаков, внутри которых точки данных расположены ближе друг к другу, чем к точкам других областей, относительно некоторой функции расстояния (например, евклидовой). Второй - обнаруживает области, которые являются более "заселенными", чем другие. В процессе работы алгоритма происходит итеративное улучшение решения, а остановка осуществляется в момент, когда достигается требуемый уровень точности модели. Мерой в данном случае является монотонно увеличивающаяся статистическая величина, называемая логарифмическим правдоподобием. Целью алгоритма является оценка средних значений C, ковариаций R и весов смеси W для функции распределения вероятности, описанной выше. Параметры, оцененные алгоритмом, сохраняются в таблице вида: Алгоритм начинает работу с инициализации, т.е. некоторого приближенного решения, которое может быть выбрано случайно или задано пользователем исходя из некоторых априорных сведений об исходных данных. Наиболее общим способом инициализации является присвоение элементам матрицы математических ожиданий случайных значений , начальная ковариационная матрица определяется как единичная , веса кластеров задаются одинаковыми . Псевдо код : Алгоритм содержит два шага: шаг ожидания (expectation) или Е-шаг и шаг максимизации (maximization) или M-шаг. Каждый из них повторяется до тех пор, пока изменение логарифмического правдоподобия не станет меньше, чем Эпсилон., или пока не будет достигнуто максимальное число итераций. Для иллюстрации работы алгоритма EM и его сравнения с k-means рассмотрим результаты численного эксперимента, для проведения которого была взята выборка, представленная на рисунке 2. СПАСИБО ЗА ВНИМАНИЕ!