Оцініть розбіжність Кулбека Лейблера (KL) з Монте Карло


10

Я хочу оцінити розбіжність KL між двома безперервними розподілами f і g. Однак я не можу записати щільність ні для f, ні для g. Я можу зробити вибірку з f та g за допомогою якогось методу (наприклад, markov chain monte carlo).

Розбіжність KL від f до g визначається так

DKL(f||g)=∫−∞∞f(x)log⁡(f(x)g(x))dx

Це очікування log⁡(f(x)g(x)) стосовно f, щоб ви могли уявити собі якусь оцінку monte carlo

1N∑iNlog⁡(f(xi)g(xi))

Де я індексує N зразків, які витягуються з f (тобто xi∼f() для i = 1, ..., N)

Однак, оскільки я не знаю f () і g (), я навіть не можу використовувати цю оцінку monte carlo. Який стандартний спосіб оцінки КЛ у цій ситуації?

EDIT: Я не знаю ненормалізованої щільності ні для f (), ні для g ()


Чи обдумали ви використовувати ecdfs?
— Тобі

це буде працювати, але це може бути довільно повільним для жорсткого вибору f і g (близькі або закриті хвости). Якщо ви вирішите ігнорувати зразки далеко від хвостів, то, можливо, вам буде більше удачі з верхнім обмеженням roc.
— Крістіан Чапман

Відповіді:


7

Я припускаю, що ви можете оцінити f і gаж до нормалізуючої константи. Позначимоf(x)=fu(x)/cf і g(x)=gu(x)/cg.

Послідовний оцінювач, який може бути використаний, є

DKL^(f||g)=[n−1∑jfu(xj)/πf(xj)]−11N∑iN[log⁡(fu(zi)gu(zi))fu(zi)πr(zi)]−log⁡(r^)
де
(1)r^=1/n1/n∑jfu(xj)/πf(xj)∑jgu(yj)/πg(yj).
є важливим оцінкою вибірки для співвідношення cf/cg. Тут ви використовуєтеπf і πg як інструментальна щільність для fu і gu відповідно, і πr для орієнтації на коефіцієнт журналу ненормалізованої щільності.

Тож нехай {xi}∼πf, {yi}∼πg, і {zi}∼πr. Чисельник (1) сходить доcf. Знаменник сходить доcg. Коефіцієнт відповідає теоремі безперервного відображення. Журнал коефіцієнта узгоджується безперервним відображенням знову.

Що стосується іншої частини оцінювача,

1N∑iN[log⁡(fu(zi)gu(zi))fu(zi)πr(zi)]→ascfE[log⁡(fu(zi)gu(zi))]
за законом великої кількості.

Моя мотивація полягає в наступному:

DKL(f||g)=∫−∞∞f(x)log⁡(f(x)g(x))dx=∫−∞∞f(x){log⁡[fu(x)gu(x)]+log⁡[cgcf]}dx=Ef[log⁡fu(x)gu(x)]+log⁡[cgcf]=cf−1Eπr[log⁡fu(x)gu(x)fu(x)πr(x)]+log⁡[cgcf].
Тож я просто розбиваю його на придатні шматки.

Для отримання додаткових ідей щодо моделювання коефіцієнта ймовірності я знайшов документ, який містить декілька: https://projecteuclid.org/download/pdf_1/euclid.aos/1031594732


(+1) Тут варто зазначити, що вибіркове значення може мати надзвичайно велику дисперсію (навіть нескінченну дисперсію), якщо цільовий розподіл має більш жирні хвости, ніж розподіл, з якого вибираєте вибірку та / або кількість розмірів взагалі велика.
— Девід Дж. Харріс

@ DavidJ.Harris дуже дуже правдивий
— Тейлор

6

Тут я припускаю, що ви можете робити вибірки лише з моделей; функція ненормалізованої щільності недоступна.

Ви це пишете

DKL(f||g)=∫−∞∞f(x)log⁡(f(x)g(x)⏟=:r)dx,

де я визначив співвідношення ймовірностей бути r. Алекс Смола пише, хоча в іншому контексті, що ви можете оцінити ці співвідношення "легко", просто навчаючи класифікатора. Припустимо, ви отримали класифікаторp(f|x), що може сказати вам ймовірність того, що спостереження x створено користувачем f. Зауважте, щоp(g|x)=1−p(f|x). Тоді:

r=p(x|f)p(x|g)=p(f|x)p(x)p(g)p(g|x)p(x)p(f)=p(f|x)p(g|x),

де перший крок належить Байєсу, а останній випливає з припущення, що p(g)=p(f).

Отримати такий класифікатор може бути досить просто з двох причин.

По-перше, ви можете робити стохастичні оновлення. Це означає, що якщо ви використовуєте оптимізатор на основі градієнта, як це характерно для логістичної регресії або нейронних мереж, ви можете просто взяти зразки з кожногоf і g і зробити оновлення.

По-друге, оскільки у вас практично необмежені дані - ви можете просто зробити вибірку f і g до смерті – вам не доведеться турбуватися про надрядний одяг тощо.


0

Крім імовірнісного методу класифікатора, згаданого @bayerj, ви також можете використовувати нижню межу розбіжності KL, похідну в [1-2]:

KL[f‖g]≥supT{Ex∼f[T(x)]−Ex∼g[exp⁡(T(x)−1)]},
де - довільна функція. За деяких м'яких умов межа обмежується: T:X→R
T(x)=1+ln⁡[f(x)g(x)]

Оцінити розбіжність KL між f і g, максимізуємо нижню межу wrt до функції T(x).

Список літератури:

[1] Nguyen, X., Wainwright, MJ та Jordan, MI, 2010. Оцінка дивергенційних функціоналів та коефіцієнта ймовірності шляхом опуклої мінімізації ризику. Операції IEEE з інформаційної теорії, 56 (11), стор.5847-5861.

[2] Nowozin, S., Cseke, B. and Tomioka, R., 2016. f-gan: Навчання генеративних нейронних пробовідбірників з використанням варіативної мінімізації дивергенції. У досягненні нейронних систем обробки інформації (с. 271-279).

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.