Оценка параметров смеси моделей
Материал из MachineLearning.
(→Смотри также) |
|||
(17 промежуточных версий не показаны.) | |||
Строка 1: | Строка 1: | ||
{{TOCright}} | {{TOCright}} | ||
+ | [[Медиа:pavlov2011linearmodels.pdf | Эта статья в формате PDF]] | ||
==Введение== | ==Введение== | ||
В случае, когда одной модели для описания данных не хватает, используют смеси моделей. Предполагается, что исходная зависимость выражается формулой: | В случае, когда одной модели для описания данных не хватает, используют смеси моделей. Предполагается, что исходная зависимость выражается формулой: | ||
Строка 66: | Строка 67: | ||
</tex> | </tex> | ||
- | В общем случае задача оптимизации <tex>Q(\vec{w}^1, \dots, \vec{w}^l, \vec{\pi}) \rightarrow max</tex> трудна, для её решения используют EM | + | В общем случае задача оптимизации <tex>Q(\vec{w}^1, \dots, \vec{w}^l, \vec{\pi}) \rightarrow max</tex> трудна, для её решения используют [[EM алгоритм (пример)|EM алгоритм]], заключающийся в итеративном повторении двух шагов. На <tex>E</tex>-шаге вычисляются ожидаемые значения вектора скрытых переменных <tex>\gamma_{ik}</tex> по текущему приближения параметров моделей <tex>(\vec{w}_1, \dots, \vec{w}_l)</tex>. На <tex>M</tex>-шаге решается задача максимизации правдоподобия <tex>Q</tex> при начальном приближении параметров моделей и значений <tex>\gamma_{ik}</tex>. |
<tex>E</tex>-шагу соответствует выражение | <tex>E</tex>-шагу соответствует выражение | ||
Строка 94: | Строка 95: | ||
</tex> | </tex> | ||
- | ==Оценка параметров линейных моделей== | + | ==Оценка параметров смеси линейных моделей== |
+ | Линейная модель имеет вид: | ||
- | ==Оценка параметров обобщенно-линейных моделей== | + | <tex> |
+ | \vec{y} = X\vec{w} + \vec{\eps}, | ||
+ | </tex> | ||
+ | |||
+ | где <tex>\vec{\eps} \sim \mathcal{N}(\vec{0}, B)</tex> --- вектор нормально распределенных ошибок. В данной постановке вектор <tex>\vec{y}</tex> является нормальным с математическим ожиданием | ||
+ | |||
+ | <tex>\mathsf{E}(y | \vec{x}) = \mu = \vec{x}^{T}\vec{w}</tex>, и корреляционной матрицей <tex>B</tex>. | ||
+ | |||
+ | <tex> | ||
+ | p(\vec{y} | X, \vec{w}) = \frac{1}{(2\pi)^{\frac{n}{2}} \sqrt{|\textrm{det}B|}} | ||
+ | \exp\left(-\frac{1}{2} (\vec{y} - X\vec{w})^{T} B (\vec{y} - X\vec{w}) \right). | ||
+ | </tex> | ||
+ | |||
+ | Шаг <tex>M</tex> алгоритма примет следующий вид: | ||
+ | |||
+ | <tex> | ||
+ | G_k \ln\left[ \frac{1}{(2\pi)^{\frac{n}{2}} \sqrt{|\textrm{det}B|}}\right] | ||
+ | -\frac{1}{2} \left(G_k (\vec{y} - X\vec{w})^{T} B (\vec{y} - X\vec{w}) \right) \rightarrow \max_{\vec{w}} | ||
+ | </tex> | ||
+ | |||
+ | Первое слагаемое не зависит от <tex>\vec{w}_k</tex>, его можно не учитывать. Преобразование второго слагаемого дает | ||
+ | |||
+ | <tex> | ||
+ | \frac{1}{2} \vec{w}^{T} X^{T} G_k B X \vec{w} - \vec{w}^{T} X^{T} G_k B \vec{y} \rightarrow \min_{\vec{w}} | ||
+ | </tex> | ||
+ | |||
+ | Задача квадратична по <tex>\vec{w}</tex>, решение находится аналитически | ||
+ | |||
+ | <tex> | ||
+ | \vec{w}^* = \left( X^{T} G_k B X \right)^{-1} G_k B X \vec{y}. | ||
+ | </tex> | ||
+ | |||
+ | ====Пример смеси линейных моделей==== | ||
+ | |||
+ | [[Изображение:linear_convergence.png]] | ||
+ | |||
+ | ==Оценка параметров смеси обобщенно-линейных моделей== | ||
+ | В случае обобщенных линейный моделей функция плотности распределения имеет вид | ||
+ | |||
+ | <tex> | ||
+ | p(\vec{y} | \vec{\theta}) = \exp \left( \vec{T}(\vec{y})^{T} \vec{\eta}(\vec{\theta}) - b(\vec{\theta}) + c(\vec{y}) \right). | ||
+ | </tex> | ||
+ | |||
+ | <tex>M</tex>-шаг алгоритма сводится к максимизации | ||
+ | |||
+ | <tex> | ||
+ | G_k \vec{T}(\vec{y})^{T} \vec{\eta}(\vec{\theta}) - G_k b(\vec{\theta}) + G_k c(\vec{y}) \rightarrow \max_{\vec{\theta}}. | ||
+ | </tex> | ||
+ | |||
+ | Последнее слагаемое не зависит от параметров модели <tex>\theta</tex>, что позволяет упростить функционал | ||
+ | |||
+ | <tex> | ||
+ | G_k \vec{T}(\vec{y})^{T} \vec{\eta}(\vec{\theta}) - G_k b(\vec{\theta}) \rightarrow \max_{\vec{\theta}}. | ||
+ | </tex> | ||
+ | |||
+ | Дальнейшая минимизация зависит от конкретного семейства из обобщенного класса, вида функции <tex>b(\theta)</tex>. | ||
+ | |||
+ | |||
+ | ====Пример смеси логистических моделей==== | ||
+ | [[Изображение:logit_convergence.png]] | ||
+ | |||
+ | На изображениях классификация одной и двумя моделями. Розовым показына плотность распределения зависимой переменной. | ||
==Оценка параметров смеси экспертов== | ==Оценка параметров смеси экспертов== | ||
+ | Понятие смеси экспертов было введено Якобсом (Jacobs) в 1991г. Предполагается, что параметры смеси <tex> \pi</tex> являются функциями от объекта, т.е. | ||
+ | |||
+ | <tex> | ||
+ | p(\vec{y} | \vec{x}) = | ||
+ | \sum_{k=1}^l \pi_k(\vec{x}) p(y | \vec{x}, \vec{w}_k). | ||
+ | </tex> | ||
+ | |||
+ | Компоненты <tex> \pi_k(\vec{x})</tex> называются функциями селективности, а <tex> p(y | \vec{x}, \vec{w}_k)</tex> экспертами. Функция селективности отвечает за компетентность эксперта в определенной области. | ||
+ | |||
+ | Оказывается (Jordan and Jacobs, 1994), что наличие функции компетенции допускает решение задачи с помощью <tex>EM</tex>-алгоритма, причем, <tex>E</tex>-шаг остается прежним: | ||
+ | |||
+ | <tex> | ||
+ | \gamma_{ik} = \frac{\pi_k(\vec{x}^i) p(y^i | \vec{x}^i, \vec{w}_k)}{\sum_{s=1}^{l} \pi_s(\vec{x}^i) p(y^i | \vec{x}^i, \vec{w}_s)}. | ||
+ | </tex> | ||
+ | |||
+ | <tex>M</tex>-шаг принимает вид: | ||
+ | |||
+ | <tex> | ||
+ | \pi_k = \frac{1}{m} \sum_{i=1}^{m} g_{ik}. | ||
+ | </tex> | ||
+ | |||
+ | <tex> | ||
+ | \sum_{i=1}^{m} \gamma_{ik}(\vec{x}^i) \ln p(y^i | \vec{x}^i, \vec{w}^k) \rightarrow \max_{\vec{w}^k}. | ||
+ | </tex> | ||
+ | |||
+ | Последенее уравнение можно решить с помощью метода итеративно перевзвешенных наименьших квадратов ([[Метод_наименьших_квадратов_с_итеративным_пересчётом_весов | IRLS]]). | ||
== Литература == | == Литература == | ||
Строка 105: | Строка 194: | ||
* [http://www.machinelearning.ru/wiki/images/6/6d/Voron-ML-1.pdf Воронцов~К.~В. "Курс лекций по машинному обучению".] стр. 32 - 37 | * [http://www.machinelearning.ru/wiki/images/6/6d/Voron-ML-1.pdf Воронцов~К.~В. "Курс лекций по машинному обучению".] стр. 32 - 37 | ||
- | {{ | + | == Смотри также == |
+ | * [[EM алгоритм (пример)|EM алгоритм]] | ||
+ | * [[ЕМ-алгоритм, его модификации и обобщения]] | ||
+ | |||
+ | {{ЗаданиеВыполнено|Кирилл Павлов|В.В. Стрижов|26 сентября 2011|pavlov99|Strijov}} | ||
[[Категория:Практика и вычислительные эксперименты]] | [[Категория:Практика и вычислительные эксперименты]] |
Текущая версия
|
Введение
В случае, когда одной модели для описания данных не хватает, используют смеси моделей. Предполагается, что исходная зависимость выражается формулой:
где --- вероятность принадлежности модели .
Далее предполагается, что объекты в выборке независимы и плотность совместного распределения преобразуется в произведение плотностей распределения каждого объекта.
Введем функцию правдоподобия как логарифм плотности вероятности данных.
Обозначим через вероятность того, что объект был порожден компонентой , --- вероятность того, что -объект порожден -компонентой. Каждый объект был порожден какой-либо моделью, по формуле полной вероятности
Для произвольного объекта вероятность его получения моделью по формуле условной вероятности равна:
Подставим это равенство в формулу Байеса для
Для определения параметров смеси необходимо решить задачу максимизации правдоподобия , для этого выпишем функцию Лагранжа:
Приравняем производные по и функции Лагранжа к нулю получим, что:
и оптимизационная задача для нахождения параметров модели имеет вид:
В общем случае задача оптимизации трудна, для её решения используют EM алгоритм, заключающийся в итеративном повторении двух шагов. На -шаге вычисляются ожидаемые значения вектора скрытых переменных по текущему приближения параметров моделей . На -шаге решается задача максимизации правдоподобия при начальном приближении параметров моделей и значений .
-шагу соответствует выражение
-шаг заключается в оптимизации параметров распределений.
Формула на -шаге может упроститься для случая конкретного распределения. Для упрощения дальнейших рассуждений введем обозначения
Оценка параметров смеси линейных моделей
Линейная модель имеет вид:
где --- вектор нормально распределенных ошибок. В данной постановке вектор является нормальным с математическим ожиданием
, и корреляционной матрицей .
Шаг алгоритма примет следующий вид:
Первое слагаемое не зависит от , его можно не учитывать. Преобразование второго слагаемого дает
Задача квадратична по , решение находится аналитически
Пример смеси линейных моделей
Оценка параметров смеси обобщенно-линейных моделей
В случае обобщенных линейный моделей функция плотности распределения имеет вид
-шаг алгоритма сводится к максимизации
Последнее слагаемое не зависит от параметров модели , что позволяет упростить функционал
Дальнейшая минимизация зависит от конкретного семейства из обобщенного класса, вида функции .
Пример смеси логистических моделей
На изображениях классификация одной и двумя моделями. Розовым показына плотность распределения зависимой переменной.
Оценка параметров смеси экспертов
Понятие смеси экспертов было введено Якобсом (Jacobs) в 1991г. Предполагается, что параметры смеси являются функциями от объекта, т.е.
Компоненты называются функциями селективности, а экспертами. Функция селективности отвечает за компетентность эксперта в определенной области.
Оказывается (Jordan and Jacobs, 1994), что наличие функции компетенции допускает решение задачи с помощью -алгоритма, причем, -шаг остается прежним:
-шаг принимает вид:
Последенее уравнение можно решить с помощью метода итеративно перевзвешенных наименьших квадратов ( IRLS).
Литература
- Bishop, C. Pattern Recognition And Machine Learning. Springer. 2006., p 654 - 676
- Nelder, John; Wedderburn, Robert (1972). "Generalized Linear Models". Journal of the Royal Statistical Society. Series A (General) (Blackwell Publishing)
- Воронцов~К.~В. "Курс лекций по машинному обучению". стр. 32 - 37
Смотри также
Данная статья была создана в рамках учебного задания.
См. также методические указания по использованию Ресурса MachineLearning.ru в учебном процессе. |