Классическое машинное обучение

GMM

Смесь гауссиан

актуальноТекущий рабочий стандарт

Направления: Машинное обучение · Обучение без учителя, Продвинутый ML · Вероятностный ML

Вероятностная модель: данные порождаются смесью нормальных распределений, параметры оцениваются EM-алгоритмом.

Ключевые тезисы

  • Даёт мягкое отнесение: вероятность принадлежности объекта каждому кластеру.
  • Ковариационные позволяют кластерам быть вытянутыми и повёрнутыми.
  • Число компонент выбирают по BIC/AIC; — частный вырожденный случай GMM.

Какую задачу решает

GMM описывает данные как смесь нескольких нормальных распределений: каждый кластер — своя гауссиана со своим центром, формой и весом. В отличие от , приписывающего объект одному кластеру жёстко, GMM выдаёт вероятности принадлежности каждому.

Практически это даёт две вещи. Во-первых, кластеры могут быть вытянутыми и повёрнутыми — полная ковариационная описывает эллипс любой ориентации, тогда как умеет только шары. Во-вторых, появляется вероятностная модель данных: можно оценить нового объекта, сравнить модели по BIC и осмысленно выбрать число компонент.

Где GMM выигрывает у k-means

Два вытянутых вдоль диагонали облака, лежащих параллельно и близко друг к другу. разрежет их поперёк, потому что умеет строить только границы, равноудалённые от центров, и его кластеры выпуклы и изотропны. GMM с полной подгонит два узких повёрнутых эллипса и разделит облака вдоль, как и следовало. Разницу видно сразу на графике — и это главный практический того, что пора переходить от k-means к GMM: кластеры визуально вытянуты.

Подробный разбор

2 подтемы — объяснения, формулы, примеры и интерактивные графики.

Обозначения
  • нормальное распределение со средним μ и дисперсией σ²
  • среднее значение
  • объект: вектор признаков
  • число объектов в выборке
  • вероятность (или плотность распределения)
  • номер или количество: индекс шага, число соседей, кластеров или позиций
  • суммирование по всем перечисленным элементам

Каждый объект принадлежит всем кластерам с некоторыми вероятностями. Ковариационные позволяют кластерам быть вытянутыми и повёрнутыми — этого не умеет, потому что неявно предполагает .

  1. E-шаг: при текущих параметрах считаем ответственности — вероятность, что объект порождён компонентой .
  2. M-шаг: при фиксированных ответственностях пересчитываем , , как взвешенные оценки.
Обозначения
  • нормальное распределение со средним μ и дисперсией σ²
  • среднее значение
  • параметр ядра RBF: радиус влияния объекта
  • объект: вектор признаков
  • число объектов в выборке
  • номер или количество: индекс шага, число соседей, кластеров или позиций
  • суммирование по всем перечисленным элементам
E-шаг: мягкое распределение объекта по компонентам
На практике

не убывает на каждой итерации, но сходимость возможна в локальный максимум — поэтому запускают несколько раз с разной инициализацией. Число компонент выбирают по BIC/AIC.

Где применяется

  • с неопределённостьюКогда важно знать, что объект на границе двух групп, а не приписывать его одной.
  • Оценка плотностиПолноценная генеративная модель распределения: можно считать и сэмплировать.
  • Низкое под смесью — обоснованный скор аномальности.
  • Разделение перекрывающихся группКлассический пример — разделение смеси распределений в физике и биометрии.
  • Мягкая Клиент на 70% относится к сегменту A и на 30% к B — это часто ближе к реальности.

Плюсы, минусы и альтернативы

Плюсы

  • Кластеры произвольной эллиптической формы и ориентации.
  • Вероятности принадлежности вместо жёстких меток.
  • Полноценная вероятностная модель: , сэмплирование, BIC.
  • Обоснованный выбор числа компонент через информационные критерии.
  • — частный случай GMM со сферическими .

Минусы

  • Предполагает, что кластеры гауссовы, — а это далеко не всегда так.
  • EM сходится к локальному оптимуму, результат зависит от инициализации.
  • Полная требует много данных: параметров на компоненту.
  • Медленнее и хуже масштабируется.
  • Может вырождаться: компонента схлопывается на одной точке с нулевой .

Брать, если

  • Кластеры вытянутые или перекрывающиеся.
  • Нужны вероятности принадлежности, а не жёсткие метки.
  • Нужна вероятностная модель данных для или генерации.

Не брать, если

  • Кластеры заведомо не гауссовы (кольца, серпы) — берите .
  • Размерность высока, а данных мало: полная не оценится.
  • Нужна максимальная скорость на миллионах объектов.

Чем заменяют

Видеолекции

Записи университетских курсов, где эта тема звучит. Ссылка открывает запись с той секунды, где о ней говорят, — искать по трёхчасовой лекции не нужно.

Связанные темы

Кластеризация и её оценка

k-Means75%

k-средних · Классическое машинное обучение

Разбивает объекты на k кластеров, минимизируя суммарное расстояние до центроидов.

DBSCAN75%

DBSCAN · Классическое машинное обучение

Плотностная кластеризация: кластеры — это связные области высокой плотности, остальное объявляется шумом.

Clustering75%

Кластеризация · Обучение без учителя

Разбиение объектов на группы похожих без заранее известных меток.

Density Estimation75%

Оценка плотности · Обучение без учителя

Восстановление распределения данных: где объекты встречаются часто, а где почти никогда.

Association Rules75%

Ассоциативные правила · Обучение без учителя

Поиск закономерностей вида «если A, то B» в транзакционных данных.

Silhouette Score75%

Силуэт · Метрики

Сравнивает среднее расстояние объекта до своего кластера и до ближайшего чужого.

Davies–Bouldin75%

Индекс Дэвиса — Болдина · Метрики

Отношение внутрикластерного разброса к расстоянию между кластерами; чем меньше, тем лучше.

Calinski–Harabasz75%

Индекс Калинского — Харабаша · Метрики

Отношение межкластерной дисперсии к внутрикластерной; чем больше, тем лучше разделение.

Mapper75%

Алгоритм Mapper · Топологический анализ данных

Строит граф-скелет данных: проекция фильтрующей функцией, покрытие интервалами, локальная кластеризация и склейка.

Следующий шагДальше по связи: k-MeansРазбивает объекты на k кластеров, минимизируя суммарное расстояние до центроидов.Перейти →

Глава «Классическое машинное обучение» последний раз правилась . Нашли ошибку — напишите.