вартість вибірки


9

Я зіткнувся з такою проблемою моделювання: заданий набір {ω1,,ωг} відомих реальних чисел, розподіл на {-1,1}г визначається через

П(Х=(х1,,хг))(х1ω1++хгωг)+
де (z)+ позначає позитивну частину z. Хоча я можу подумати про пробірник Metropolis-Hastings, націлений на цей розподіл, мені цікаво, чи існує ефективний прямий пробовідбірник, скориставшись великою кількістю нульових ймовірностей для зменшення порядку алгоритму зО(2г) до О(г).

Відповіді:


4

Ось досить очевидний рекурсивний пробовідбірник О(г) в кращому випадку (з точки зору ваг ωi), але експоненціальна в гіршому випадку.

Припустимо, ми вже вибрали х1,,хi-1та бажати вибрати хi. Нам потрібно обчислити

ш(х1,,хi-1,хi)=хi+1{-1,1}хг{-1,1}(j=1гωjхj)+
і вибирайте хi=1 з вірогідністю
ш(х1,,хi-1,1)ш(х1,,хi-1,1)+ш(х1,,хi-1,-1).
Знаменник не буде нульовим для будь-якого дійсного вибору зразків х1,,хi-1.

Тепер, звичайно, питання в тому, як зробити обчислення ш(х1,,хi).

Якщо у нас це є С: =j=1iωjхjj=i+1г|ωj|, тоді ωх0 для будь-якого х з провідними записами х1:i, і так ш стає:

xi+1хгωх=ω(хi+1хгх)=j=1iωj(хi+1хгхj)2г-iхj+j=i+1гωj(хi+1хгхj)0=2г-iС.

У протилежному випадку С-j=i+1г|ωj|, у нас це є ωх0 і так ш(х1,,хi)=0.

В іншому випадку ми повинні повторити, використовуючи w(x1,,xi)=w(x1,,xi,1)+w(x1,,xi,1).

Припустимо, що пам'ять не є проблемою, і ми можемо кешувати всі підрахунки в w(1), w(1)на дереві - аж до того, що ми потрапили в один із «приємних» випадків, після якого будь-які дзвінки займають постійний час. (Нам все одно потрібно буде обчислити це все дерево, щоб вибратиx1.) Потім, колись це дерево о w обчислень побудовано, пробовідбірник візьме лише O(d)час. Питання в тому, скільки часу потрібно для побудови дерева, або рівнозначно, яке воно велике.


Ми, звичайно, швидше потрапимо в "приємні" випадки, якщо ωi сортуються, ω1ω2ωd.

У кращому випадку, |ω1|>j=2d|ωj|. Тоді ми негайно потрапляємо на "приємний" випадок для будь-якогоw(1) або w(1), тому w побудова дерева займає постійний час, і займає весь пробовідбірник O(d) час.

У гіршому (відсортованому) випадку, ω1=ω2==ωd. Тоді питання: наскільки велике загальне дерево?

Ну, і перші шляхи до припинення - це звичайно (1,1,,1) і (-1,-1,,-1) довжини г/2. Отже, дерево є повною до цієї глибини, і так містить щонайменшеО(2г/2)вузли. (У ньому є більше; ви, ймовірно, можете знайти це з таким аргументом, як ті, що використовуються в проблемах зі зруйнуванням азартних гравців, але я не міг знайти його за дві хвилини Гуглінга і мене це особливо не хвилює - 2г/2 досить погано ....)

Якщо у ваших налаштуваннях є лише кілька дуже великих ωiце, мабуть, досить практичний підхід. Якщоωi всі подібної величини, ймовірно, це все ще експоненціально і занадто дорого для великих г.


Дякуємо за цей тип усунення Вітербі. Коли ви пишете "У зворотному випадку",
Сi-j=i+1г|ωj|
Я вважаю, ви не маєте на увазі доповнення першої справи
Сij=i+1г|ωj|
Сіань

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