Jak optymalnie rozłożyć losowania przy obliczaniu wielu oczekiwań


9

Załóżmy, że chcemy obliczyć pewne oczekiwania:

EYEX|Y[f(X,Y)]

Załóżmy, że chcemy to przybliżyć za pomocą symulacji Monte Carlo.

EYEX|Y[f(X,Y)]≈1RS∑r=1R∑s=1Sf(xr,s,yr)

ALE załóżmy, że pobieranie próbek z obu rozkładów jest kosztowne, dlatego możemy sobie pozwolić tylko na narysowanie stałej liczby K.

Jak powinniśmy przydzielić K? Przykłady obejmująK/2 losuje do każdego rozkładu, lub skrajnie, jedno losowanie na zewnętrznym i K−1 wciąga wnętrze, odwrotnie itd ...

Moja intuicja mówi mi, że będzie to miało związek z wariancją / entropią rozkładów względem siebie. Załóżmy, że zewnętrzny to punkt masy, a następnie podziałK , który minimalizuje błąd MC byłby losowanie 1 z Y i narysuj K−1 z X|Y.

Mam nadzieję, że było to jasne.


Naprawiono to dla ciebie
— wolfsatthedoor

1
„Vice versa” i twój komentarz do odpowiedzi @ Xi'ans wydają się wskazywać, że uważasz, że można narysować zmienną zewnętrzną więcej razy niż zmienną wewnętrzną, ale jak to może mieć sens - nie wszystkie są zewnętrzne 0rysunki wewnętrzne są zmarnowane?
— Juho Kokkala

W porządku, chyba jedno losowanie na zewnętrznym, tak myślę. Albo możesz pomyśleć o zaprogramowaniu go, aby uratować losowanie, jak sądzę
— wilcze piętro

1
@robertevansanders Potwierdź, czy interpretacja twojego pytania w pierwszych dwóch zdaniach odpowiedzi Xi'ans jest poprawna
— Juho Kokkala

Tak jak powiedziałeś, tak, ale zmień y i x
— wolfsatthedoor

Odpowiedzi:


4

To bardzo interesujące pytanie, z niewielką dokumentacją w literaturze Monte Carlo, z wyjątkiem powiązania ze stratyfikacją i Rao-Blackwellisation . Jest to prawdopodobnie spowodowane faktem, że obliczenia oczekiwanej wariancji warunkowej i wariancji oczekiwanej warunku są rzadko wykonalne.

Po pierwsze, załóżmy, że biegniesz R symulacje z πX, x1,…,xR i dla każdego symulowanego xrbiegniesz S. symulacje z πY|X=xr, y1r,…,ysr. Twoje szacunki Monte Carlo są wtedy

δ(R,S.)=1RS.∑r=1R∑s=1S.fa(xr,yrs)
Wariancja tego oszacowania jest rozkładana w następujący sposób
var{δ(R,S.)}=1R2)S.2)Rvar{∑s=1S.fa(xr,yrs)}=1RS.2)varXmiY|X{∑s=1S.fa(xr,yrs)|xr}+1RS.2)miXvarY|X{∑s=1S.fa(xr,yrs)|xr}=1RS.2)varX{S.miY|X[fa(xr,Y)|xr]}+1RS.2)miX[S.varY|X{fa(xr,Y)|xr}]=1RvarX{miY|X[fa(xr,Y)|xr]}+1RS.miX[varY|X{fa(xr,Y)|xr}]=K.=RS.1RvarX{miY|X[fa(xr,Y)|xr]}+1K.miX[varY|X{fa(xr,Y)|xr}]
Dlatego jeśli chcemy zminimalizować tę wariancję, optymalnym wyborem jest R=K.. Implikując toS.=1. Z wyjątkiem sytuacji, gdy pierwszy warunek wariancji jest zerowy, w którym to przypadku nie ma to znaczenia. Jednak, jak omówiono w komentarzach, założenieK.=RS. jest nierealne, ponieważ nie uwzględnia produkcji jednego xr [lub zakłada, że ​​jest to bezpłatne].

Przyjmijmy teraz różne koszty symulacji i ograniczenie budżetowe R+aRS=b, co oznacza, że yrskoszt a razy więcej do symulacji niż xr„s. Tak więc powyższy rozkład wariancji

1RvarX{EY|X[f(xr,Y)|xr]}+1R(b−R)/aREX[varY|X{f(xr,Y)|xr}]
które można zminimalizować w R tak jak
R∗=b/1+{aEX[varY|X{f(xr,Y)|xr}/varX{EY|X[f(xr,Y)|xr]}}1/2
[najbliższa liczba całkowita pod ograniczeniami R≥1 i S≥1], z wyjątkiem sytuacji, gdy pierwsza wariancja jest równa zero, w którym to przypadku R=1. KiedyEX[varY|X{f(xr,Y)|xr}]=0, minimalna wariancja odpowiada maksimum R, który prowadzi do S=1 w obecnym formalizmie.

Należy również zauważyć, że to rozwiązanie należy porównać z rozwiązaniem symetrycznym, gdy jest wbudowana całka wewnętrzna X dany Y a całka zewnętrzna jest przeciwna do marginesu w Y (zakładając, że symulacje są również wykonalne w tej kolejności).

Ciekawym rozszerzeniem tego pytania byłoby rozważenie innej liczby symulacji S(xr) dla każdego symulowanego xr, w zależności od wartości varY|X{f(xr,Y)|xr}.


2
Ostatecznie wydaje się, że zakładasz K=RS ale w kontekście pytania K=RS+Rponieważ należy również liczyć losowania zmiennej zewnętrznej. Wynik tutaj mówi, że jeśli próbkowanie zewnętrznej zmiennej było dowolne, oczywiście należy próbkować nową zewnętrzną dla każdego wewnętrznego. (Również rolax i ysą tu zamieniane w porównaniu do pytania, ale to oczywiście nie ma znaczenia).
— Juho Kokkala,

2
Tak, ale możemy zdecydować o wartości R... Rozważ zdegenerowane ustawienie, w którym zmienna zewnętrzna Xjest tak samo stały. Lepiej próbkować stałą raz iY K−1 razy zamiast stałej K/2 czasy i Y K/2 razy (co jest co S=1to oznaczałoby)? Czy też całkowicie nie rozumiem pytania? (Dopiero teraz czytam drugie zdanie twojego komentarza - czy w pytaniu nie podano założenia, że ​​mają one taki sam koszt)
— Juho Kokkala

@ Xi'an tak Kalkuta jest poprawna, twoje rozwiązanie ogólnie nie może się utrzymać. Załóżmy teraz, że zmienna wewnętrzna ma rozkład zdegenerowany, a zewnętrzna ma znaczącą wariancję, a następnie chcesz
— wypróbować

Myślę, że twoja odpowiedź nie może być poprawna. Załóżmy, że wewnętrzny rozkład jest zdegenerowany, a na zewnątrz duża wariancja, jak S może być 1
— wolfsatthedoor

@robertevansanders: jeśli rozkład wewnętrzny jest zdegenerowany, varY|X{f(xr,Y)|xr}=0, W związku z tym R∗=b i wybieramy najbliższą liczbę całkowitą R pod ograniczeniami S≥1 i R(1+aS)≤b, co oznacza branie S=1 robić R tak blisko, jak to możliwe b.
— Xi'an
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.