Изменения

Перейти к: навигация, поиск

Порождающие модели

1650 байт добавлено, 22:48, 17 февраля 2020
Потеря порядка
<math>\theta^* = \underset{\theta}{\operatorname{argmax}} \log \displaystyle \prod_i p_{model}(x_i;\theta) = \underset{\theta}{\operatorname{argmax}} \displaystyle \sum_i \log p_{model}(x_i;\theta) </math>
Важен и другой взгляд на то же самое: максимизация правдоподобия эквивалентна минимизации расстояния Кульбака-Лейблера<ref>[https://ru.wikipedia.org/wiki Расстояние_Кульбака_—_Лейблера Расстояние Кульбака-Лейблера]</ref> между распределением <tex>р</tex>, которое получается из нашей модели, и распределением <tex>\hat{p}_{data}</tex> — эмпирическим распределе­нием данных. Это эмпирическое распределение попросту полностью сосредоточе­но в точках из набора данных и равномерно распределено по ним, так что:
<tex>KL(\hat{p}_{data}(x), p(x; \theta)) = \int \hat{p}_{data}(x) \log p(x; \theta) = \displaystyle \sum_i \hat{p}_{data}(x_i) \log p(x_i; \theta)</tex>
 
и минимизация этого выражения эквивалентна максимизации того, что выше.
 
===Таксономия порождающих моделей===
Генеративные модели различаются как раз тем, как именно они строят рас­пределение <tex>p(x; \theta)</tex>. Можно строить это распределение ''явно'', делая вероятностные предположения, которые обычно сводятся к тому, что общее распределение <tex>p(x; \theta)</tex> выражается в виде произведения тех или иных «маленьких» распределений.
Два основных подхода:
* Явный: определить распределение <tex>p_{model}</tex>, описывающее объекты и генерировать данные из него
* Неявный: получить некоторое распределение, оценить его близость с <tex>p_{model}</tex> через дивергенцию Кульбака-Лейблера<ref>[https://ru.wikipedia.org/wiki/Расстояние_Кульбака_—_Лейблера Расстояние Кульбака—Лейблера]</ref>
== Глубокие порождающие модели на основе нейронных сетей ==
76
правок

Навигация