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)]1RSr=1Rs=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 K1 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 K1 z X|Y.

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

wolfsatthedoor
źródło
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=1Rs=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(bR)/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 R1 i S1], 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}.

Xi'an
źródło
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 K1 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 S1 i R(1+aS)b, co oznacza branie S=1 robić R tak blisko, jak to możliwe b.
Xi'an