Я хочу оценить KL-расхождение между двумя непрерывными распределениями f и g. Однако я не могу записать плотность ни для f, ни для g. Я могу сделать выборку как из f, так и из g с помощью какого-либо метода (например, цепочки Маркова Монте Карло).
Расхождение KL от f до g определяется следующим образом
Это ожидание относительно f, чтобы вы могли представить некоторую оценку Монте-Карло
Где я индексирует N выборок, которые взяты из f (то есть для i = 1, ..., N)
Однако, поскольку я не знаю f () и g (), я даже не могу использовать эту оценку Монте-Карло. Каков стандартный способ оценки KL в этой ситуации?
РЕДАКТИРОВАТЬ: Я НЕ знаю ненормализованной плотности для f () или g ()
kullback-leibler
frelk
источник
источник
Ответы:
Я предполагаю, что вы можете оценить и g с точностью до нормализующей константы. Обозначим f ( x ) = f u ( x ) / c f и g ( x ) = g u ( x ) / c g .f g f(x)=fu(x)/cf g(x)=gu(x)/cg
Последовательная оценка, которая может использоваться, является где г = 1 / п
Итак, пусть , { y i } ∼ π g и { z i } ∼ π r . Числитель (1) сходится к c f . Знаменатель сходится к c g . Соотношение согласуется по теореме о непрерывном отображении. Лог отношения является постоянным путем непрерывного отображения снова.{xi}∼πf {yi}∼πg {zi}∼πr cf cg
Что касается другой части оценки, по закону больших чисел.
Моя мотивация заключается в следующем:
Так что я просто разбил его на куски.
Для получения дополнительных идей о том, как смоделировать отношение правдоподобия, я нашел несколько документов: https://projecteuclid.org/download/pdf_1/euclid.aos/1031594732
источник
Здесь я предполагаю, что вы можете выбирать только из моделей; Ненормализованная функция плотности недоступна.
Ты пишешь что
где я определил отношение вероятностей к . Алекс Смола пишет, хотя в другом контексте вы можете легко оценить эти коэффициенты, просто обучив классификатор. Предположим, вы получили классификатор p ( f | x ) , который может сообщить вам вероятность того, что наблюдение x было сгенерировано f . Отметим, что p ( g | x ) = 1 - p ( f | x ) . Затем:r p(f|x) x f p(g|x)=1−p(f|x)
Получить такой классификатор может быть довольно легко по двум причинам.
источник
Помимо метода вероятностного классификатора, упомянутого @bayerj, вы также можете использовать нижнюю границу расхождения KL, полученную в [1-2]:
Ссылки:
[1] Нгуен Х., Уэйнрайт М.Дж. и Джордан М.И., 2010 г. Оценка функционалов расходимости и отношения правдоподобия путем выпуклой минимизации риска. IEEE Труды по теории информации, 56 (11), с.5847-5861.
[2] Новозин С., Чеке Б. и Томиока Р., 2016 г. f-gan: Обучение генеративных нейронных пробоотборников с использованием минимизации вариационной дивергенции. В Достижения в нейронных системах обработки информации (стр. 271-279).
источник