廣東全網(wǎng)推廣手機(jī)流暢優(yōu)化軟件
重要性采樣
前言
離散型隨機(jī)變量 X X X,我們可以通過以下方法求取其期望:
-
直接計(jì)算法,需要知道概率分布:
E ( X ) = ∑ x ∈ X [ p ( x ) ? x ] \mathbb{E}(X)=\sum_{x\in X}\left[p(x)\cdot x\right] E(X)=x∈X∑?[p(x)?x] -
采樣計(jì)算,這時即使 X X X概率分布未知,依據(jù)大數(shù)定律,當(dāng)采樣次數(shù)夠大時,仍然可以求取期望
E ( X ) = 1 n lim ? n → + ∞ ∑ i = 0 n ? 1 x i \mathbb{E}(X)=\frac{1}{n}\lim_{n\to +\infty}\sum_{i=0}^{n-1} x_i E(X)=n1?n→+∞lim?i=0∑n?1?xi?
連續(xù)型隨機(jī)變量 X X X
- 直接計(jì)算,需要 f f f表達(dá)式
E ( X ) = ∫ x x ? f ( x ) d x \mathbb{E}(X)=\int_x x\cdot f(x)dx E(X)=∫x?x?f(x)dx
- 抽樣(蒙特卡洛積分估計(jì)),這里不多做介紹
重要性采樣
思想:如果已知隨機(jī)變量 X ~ p 0 X\sim p_0 X~p0?,在 p 0 p_0 p0?下隨機(jī)采樣了一批數(shù)據(jù) { x i } ~ p 0 \{x_i\}\sim p_0 {xi?}~p0?,現(xiàn)在要求隨機(jī)變量 X ~ p 1 X\sim p_1 X~p1?下的期望,則:
E X ~ p 1 [ X ] = ∑ x p 1 ( x ) ? x = ∑ x p 0 ( x ) p 1 ( x ) p 0 ( x ) ? x = E X ~ p 0 [ f ( X ) ] \mathbb{E}_{X\sim p_1}[X]=\sum_x p_1(x)\cdot x=\sum_x p_0(x) \frac{p_1(x)}{p_0(x)}\cdot x=\mathbb{E}_{X\sim p_0}[f(X)] EX~p1??[X]=x∑?p1?(x)?x=x∑?p0?(x)p0?(x)p1?(x)??x=EX~p0??[f(X)]
那么就有如下幾個問題:
-
對于離散型隨機(jī)變量,為什么 p 1 ( x ) p_1(x) p1?(x)已知,不直接計(jì)算期望呢?
- 因?yàn)橛袝r候我們已經(jīng)根據(jù) p 0 p_0 p0?采樣了一些數(shù)據(jù),再用 p 1 p_1 p1?重新采樣計(jì)算一遍,會增加很多計(jì)算量。
- 因?yàn)橛行r候不方便對 p 1 p_1 p1?采樣
- 在強(qiáng)化學(xué)習(xí)中,我們根據(jù)一個策略采樣,通過重要性采樣可以求出另一個策略的期望,是一種On Policy向Off Policy轉(zhuǎn)換的思想。
-
對于連續(xù)型隨機(jī)變量,為什么 p 1 ( x ) p_1(x) p1?(x)已知,不直接計(jì)算期望呢?
理論上不可能完全求出概率密度函數(shù),所以無法從理論上計(jì)算期望,只能估計(jì)。
例如,如果我們通過神經(jīng)網(wǎng)絡(luò)來表示 f f f,那么對任意的輸入 x x x,我們都可以求出 f ( x ) f(x) f(x),但是這并不代表我們求出 f f f的函數(shù)表達(dá)式,更無法進(jìn)一步求積分。我們只是能從數(shù)值上計(jì)算出 f ( x ) f(x) f(x),神經(jīng)網(wǎng)絡(luò)本身就是一個黑盒。
綜上所述,重要性采樣使得我們能夠從behavior policy采樣,然后去估計(jì)target policy的期望,從而使得On Policy的算法轉(zhuǎn)換為Off Policy