costo di campionamento di


9

Mi sono imbattuto nel seguente problema di simulazione: dato un set di numeri reali noti, una distribuzione su è definita da dove indica la parte positiva di . Mentre riesco a pensare a un campionatore Metropolis-Hastings che prende di mira questa distribuzione, mi chiedo se esiste un campionatore diretto efficiente, sfruttando il gran numero di probabilità zero per ridurre l'ordine dell'algoritmo da a .{ - 1 , 1 } d P ( X = ( x 1 , , x d ) ) ( x 1 ω 1 + + x d ω d ) + ( z ) + z O ( 2 d ) O ( d ){ω1,,ωd}{1,1}d

P(X=(x1,,xd))(x1ω1++xdωd)+
(z)+zO(2d)O(d)

Risposte:


4

Ecco un campionatore ricorsivo abbastanza ovvio che è O(d) nel migliore dei casi (in termini di pesi ωi ), ma esponenziale nel peggiore dei casi.

Supponiamo di aver già selezionato e desideriamo scegliere x i . Dobbiamo calcolare w ( x 1 , , x i - 1 , x i ) = x i + 1{ - 1 , 1 }x d{ - 1 , 1 } ( d x1,,xi1xi e sceglixi=1con probabilitàw(x1,,x i - 1 ,1)

w(x1,,xi1,xi)=xi+1{1,1}xd{1,1}(j=1dωjxj)+
xi=1 Il denominatore sarà diverso da zero per qualsiasi scelta valida di campionix1,...,xi-1.
w(x1,,xi1,1)w(x1,,xi1,1)+w(x1,,xi1,1).
X1,...,Xio-1

Ora, ovviamente, la domanda è come calcolare .w(X1,...,Xio)

C: =Σj=1ioωjXjΣj=io+1d|ωj|ωX0XX1:iow

ΣXio+1ΣXdωX=ω(ΣXio+1ΣXdX)=Σj=1ioωj(ΣXio+1ΣXdXj)2d-ioXj+Σj=io+1dωj(ΣXio+1ΣXdXj)0=2d-ioC.

C-Σj=io+1d|ωj|ωX0w(X1,...,Xio)=0

w(X1,...,Xio)=w(X1,...,Xio,1)+w(X1,...,Xio,-1)

w(1)w(-1)X1wO(d)


ωioω1ω2ωd

|ω1|>Σj=2d|ωj|w(1)w(-1)wO(d)

ω1=ω2==ωd

(1,1,...,1)(-1,-1,...,-1)d/2O(2d/2)2d/2

ωioωiod


Cio-Σj=io+1d|ωj|
CioΣj=io+1d|ωj|

1
No, non il complemento: quando è molto grande sai che il troncamento non viene applicato, quando è molto piccolo viene sempre applicato e nel frattempo devi ricorrere per capire quando è o non è applicato.
Dougal,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.