Perché abbiamo bisogno del campionamento dell'importanza?
Stavo studiando il metodo di miglioramento delle politiche off-policy. Poi ho incontrato il campionamento dell'importanza . Ho completamente compreso la matematica alla base del calcolo, ma mi chiedo quale sia l'esempio pratico del campionamento dell'importanza.
Ad esempio, in un video , si dice che dobbiamo calcolare il valore atteso di un dado parziale, qui$g(x)$, in termini di valore atteso dei dadi equi, $f(x)$. Ecco uno screenshot del video.
Perché ne abbiamo bisogno, quando abbiamo la distribuzione di probabilità dei dadi distorti?
Risposte
Il campionamento dell'importanza viene tipicamente utilizzato quando la distribuzione di interesse è difficile da campionare - ad esempio potrebbe essere computazionalmente costoso estrarre campioni dalla distribuzione - o quando la distribuzione è nota solo fino a una costante moltiplicativa, come nelle statistiche bayesiane dove è intrattabile per calcolare la probabilità marginale; questo è
$$p(\theta|x) = \frac{p(x|\theta)p(\theta)}{p(x)} \propto p(x|\theta)p(\theta)$$
dove $p(x)$è la nostra probabilità marginale che possa essere intrattabile e quindi non possiamo calcolare l'intero posteriore e quindi devono essere utilizzati altri metodi per generare campioni da questa distribuzione. Quando dico intrattabile, notalo
$$p(x) = \int_{\Theta} p(x|\theta)p(\theta) d\theta$$
e così intrattabile qui significa che a) l'integrale non ha una soluzione analitica oppure b) un metodo numerico per calcolare questo integrale può essere troppo costoso da eseguire.
Nel caso del tuo esempio di dado, hai ragione sul fatto che potresti calcolare l'aspettativa teorica dei dadi bias in modo analitico e questo sarebbe probabilmente un calcolo relativamente semplice. Tuttavia, per motivare il motivo per cui il campionamento dell'importanza può essere utile in questo scenario, considerare di calcolare l'aspettativa utilizzando i metodi Monte Carlo. Sarebbe molto più semplice campionare in modo uniforme un numero intero casuale compreso tra 1 e 6 e calcolare il rapporto di campionamento dell'importanza$x \frac{g(x)}{f(x)}$ piuttosto che trarre campioni dai dadi di bias, anche perché la maggior parte dei linguaggi di programmazione ha metodi incorporati per campionare casualmente gli interi.
Poiché la tua domanda è contrassegnata come apprendimento per rinforzo, aggiungerò perché è utile nel dominio RL. Uno dei motivi è che potrebbe essere costoso prelevare campioni dalla nostra politica di interesse, quindi possiamo semplicemente generare azioni da qualche altra semplice politica mentre stiamo ancora imparando a conoscere la politica di interesse. In secondo luogo, potremmo essere interessati a una politica che è deterministica (avida) ma essere comunque in grado di esplorare, in modo da poter avere una distribuzione fuori politica che esplora molto più frequentemente.
NB: potrebbe non essere chiaro come utilizzare il campionamento dell'importanza se la distribuzione è nota solo fino a una costante, quindi vedere questa risposta per una spiegazione.