蒙特卡洛梯度估计方法(MCGE)简述
動機
機器學(xué)習(xí)中最常見的優(yōu)化算法是基于梯度的優(yōu)化方法,當(dāng)目標(biāo)函數(shù)是一個類似如下結(jié)構(gòu)的隨機函數(shù) F(θ) 時:優(yōu)化該類目標(biāo)函數(shù),最核心的計算問題是對隨機函數(shù) F(θ) 的梯度進行估計,即:隨機函數(shù)梯度估計在機器學(xué)習(xí)以及諸多領(lǐng)域都是核心計算問題,比如:變分推斷,一種常見的近似貝葉斯推斷方法;強化學(xué)習(xí)中的策略梯度算法;實驗設(shè)計中的貝葉斯優(yōu)化和主動學(xué)習(xí)方法等。其中,對于函數(shù)期望類目標(biāo)問題,最常見的是基于蒙特卡洛采樣的方法。本文將總結(jié)以下內(nèi)容:
隨機梯度估計方法的相關(guān)背景知識,包括:蒙特卡洛采樣和隨機優(yōu)化
幾種經(jīng)典應(yīng)用,包括:變分推斷、強化學(xué)習(xí)、實驗設(shè)計
兩類經(jīng)典的梯度估計算法
背景知識
要了解基于蒙特卡洛采樣的梯度估計方法,首先先了解蒙特卡洛采樣方法和隨機優(yōu)化方法。蒙特卡洛采樣(MCS)MCS 是一種經(jīng)典的求解積分方法,公式(1)中的問題通常可以用 MCS 近似求解如下:其中,采樣自分布 p(x;θ),由于采樣的不確定性和有限性,這里??是一個隨機變量,公式(3)是公式(1)的蒙特卡洛估計器(MCE)。這類方法非常適用于求解形式如公式(1)的積分問題,尤其是當(dāng)分布 p(x;θ) 非常容易進行采樣的時候。在使用 MCE 時,往往關(guān)注其以下四個性質(zhì):
1. 一致性,根據(jù)大數(shù)定理,當(dāng)所采樣的樣本數(shù)量非常多時,MCE 的估計值將會收斂到積分的真值處。
2. 無偏性,MCE 是對所求積分的一個無偏估計,簡單推導(dǎo)如下:
MCE 的無偏性是隨機優(yōu)化算法收斂的重要保證。
3. 小方差,當(dāng)幾個估計方法都是無偏估計時,我們通常會選擇方差較小的 MCE,因為更小方差的 MCE 會估計地更準(zhǔn),從而使得優(yōu)化地效率更高、準(zhǔn)確性更好。4. 可計算性,很多機器學(xué)習(xí)問題都是高維問題,如何提高 MCE 的可計算性,比如:減少采樣、提高并行能力等變得十分重要。
隨機優(yōu)化(SO)
▲?圖1. 隨機優(yōu)化
如圖 1 所示,隨機優(yōu)化問題通常包含兩個過程,一是仿真過程,輸入優(yōu)化變量,獲得響應(yīng)值 F(θ),然后計算出,其中是個隨機變量 ;二是優(yōu)化過程,基于梯度,迭代更新優(yōu)化變量。
不同于確定性優(yōu)化,隨機優(yōu)化算法包含兩個部分的隨機性:
仿真過程中,由于系統(tǒng)響應(yīng) F(θ) 是隨機變量,因此其梯度以及 Hessian 矩陣等都是隨機的,需要近似估計;
優(yōu)化過程中,由于采用一些近似處理手段,比如用 mini batch 來估計梯度會產(chǎn)生隨機性。
應(yīng)用
基于蒙特卡洛采樣的梯度估計方法(MCGE)在很多研究領(lǐng)域都起到了核心作用,本節(jié)總結(jié)一下其在機器學(xué)習(xí)領(lǐng)域中的典型應(yīng)用。變分推斷(Variational Inference, VI)
▲?圖2. VI和MCMCVI 是貝葉斯推斷中的一大類方法,在統(tǒng)計機器學(xué)習(xí)(貝葉斯視角)中具有廣泛的應(yīng)用。從上圖中可以看出,變分推斷 (VI) 的思想非常簡單。假設(shè)一個變分分布簇,在概率空間中找到一個離真實分布最近的分布。VI 巧妙地將一個推斷問題轉(zhuǎn)化為了優(yōu)化問題,優(yōu)化目標(biāo)是 KL(Q||P),即待求分布 Q 和真實后驗分布 P 的距離,優(yōu)化的變量是分布 Q 的描述參數(shù)。VI 方法綜述將在另外一篇文章中詳細介紹,本文只簡單說明其目標(biāo)函數(shù)是一個形如公式(1)的問題。考慮一個生成模型問題 p(z)p(x|z),其中 z 是隱變量,x 是觀測變量,p(z) 是先驗分布,p(x|z) 是似然函數(shù)。根據(jù)貝葉斯公式:其中 p(x)=?p(z)p(z|x),稱為 evidence,通常 p(x) 是一個不可積的多重積分,導(dǎo)致后驗分布 p(z|x) 無法獲得解析解。如上述思路所述,假設(shè)后驗分布用一個變分分布 q(z|x;θ) 來近似,通過構(gòu)造如下優(yōu)化問題:來求解使得兩個分布距離最小的變分分布參數(shù) θ,從而得到近似后驗分布。因為真實后驗分布是未知的,直接優(yōu)化公式(6)是一件比較有挑戰(zhàn)的事情,VI 巧妙地將其轉(zhuǎn)化為優(yōu)化 ELBO 的問題。簡單的推導(dǎo)過程如下:等號兩邊移動一下可得:
由 KL 散度的定義可知,KL(q(z|x;ф)||p(z|x;θ))≥0,同時 logp(x;θ) 是個常數(shù),所以求優(yōu)化問題(6)等價于求如下優(yōu)化問題:相當(dāng)于求解 log evidence lower bound,即 eblo。繼續(xù)推導(dǎo)如下:公式(10)的形式如公式(1),可以用 MCGE 進行梯度估計,從而優(yōu)化求解。變分推斷方法是一個熱門研究領(lǐng)域,而核心問題是如何高效求解 elbo 優(yōu)化問題,在統(tǒng)計物理、信息論、貝葉斯推斷、機器學(xué)習(xí)等諸多領(lǐng)域由廣泛的應(yīng)用。強化學(xué)習(xí)強化學(xué)習(xí)是機器學(xué)習(xí)中一大類熱門研究領(lǐng)域,尤其是 AlphaGo 的橫空出世,為強化學(xué)習(xí)帶來了更多的關(guān)注和更多的研究人員。本文將不對強化學(xué)習(xí)的任務(wù)和各種概念進行贅述,強化學(xué)習(xí)中的一大類問題是無模型的策略搜索問題,即通過優(yōu)化累計回報的均值學(xué)習(xí)到最優(yōu)策略。所謂累計回報的均值形式如下:公式(11)形式亦如公式(1),可以用 MCGE 進行梯度估計,從而優(yōu)化求解。
實驗設(shè)計
實驗設(shè)計是個非常廣泛的領(lǐng)域,主要是研究如何為實驗設(shè)置合適的配置,比如:自動機器學(xué)習(xí)中的超參數(shù)調(diào)優(yōu)(HPO)、神經(jīng)架構(gòu)搜索(NAS),通過主動學(xué)習(xí)(Active Learning)選擇更加合適的樣本進行標(biāo)注,老虎機問題的求解(Bandit)等等。這類任務(wù)中經(jīng)常會遇到一個問題,如何選擇下一個更好的配置,使得選擇之后比選擇之前性能的概率會有所提升。因此需要優(yōu)化如下問題:公式(12)形式亦如公式(1),可以用 MCGE 進行梯度估計,從而優(yōu)化求解。簡單總結(jié)一下,優(yōu)化是機器學(xué)習(xí)訓(xùn)練中最重要的部分,而其中很多優(yōu)化問題都是形如公式(1)的問題,而 MCGE 是解決這類問題的有效手段,接下來介紹兩種經(jīng)典的 MCGE 方法。
方法綜述
公式(1)中的積分內(nèi)是一個分布和代價函數(shù)的乘積,在對其梯度進行近似估計時,可以從兩個方面進行求導(dǎo)。由此,可以將梯度估計方法大致分為兩類:
求解分布測度的導(dǎo)數(shù),包括本文介紹的 score function gradient estimator
求解代價函數(shù)的導(dǎo)數(shù),包括本文介紹的 pathwise gradient estimator
這樣會帶來非常多的便利,比如:一種降低估計方差的思路,將代價函數(shù) f(x) 改造為 f(x)-b,其中 b 是所謂的 baseline。因為 score function 的期望為 0,所以:2. score function 的方差是 Fisher 信息量。SFGE的推導(dǎo)過程推導(dǎo)中,用到了一個復(fù)合函數(shù)求導(dǎo)的公式,如下:利用 MC 采樣可以估計出梯度,如下:其中,。從上述推導(dǎo)中可以看到,通過引入 score function,可以成功地將期望的梯度變換為梯度的期望,從而實現(xiàn)梯度的近似估計。這中間有一個過程是將積分和微分操作的位置進行了對換,此操作并非可以隨意進行,需要滿足一定的條件,但一般的機器學(xué)習(xí)問題都會滿足。SFGE的性質(zhì)
代價函數(shù)?f(x)?可以是任意函數(shù)。比如可微的,不可微的;離散的,連續(xù)的;白箱的,黑箱的等。這個性質(zhì)是其最大的優(yōu)點,使得很多不可微的甚至沒有具體函數(shù)的黑箱優(yōu)化問題都可以利用梯度優(yōu)化求解。
分布函數(shù)?p(x;θ)?必須對?θ?是可微的,從公式中也看得出來。
分布函數(shù)必須是便于采樣的,因為梯度估計都是基于 MC 的,所以希望分布函數(shù)便于采樣。
SFGE 的方差受很多因素影響,包括輸入的維度和代價函數(shù)。
策略梯度優(yōu)化算法 REINFORCE 及其變種
基于 GAN 的自然語言生成
基于自動微分的黑盒變分推斷
分布變換是統(tǒng)計學(xué)中一個基本的操作,在計算機中實際產(chǎn)生各種常見分布的隨機數(shù)時,都是基于均勻分布的變換來完成的。有一些常見的分布變換可參見下表:
▲圖3.?常見分布變換
PGE的性質(zhì)
代價函數(shù)要求是可微的,比 SFGE 更嚴(yán)格
在使用 PGE 時,并不需要顯式知道分布的形式,只需要知道一個基礎(chǔ)分布和從該基礎(chǔ)分布到原分布的一個映射關(guān)系即可,這意味著,不管原來分布多么復(fù)雜,只要能獲取到以上兩點信息,都可以進行梯度估計;而 SFGE 則需要盡量選擇一個易采樣的分布
PGE 的方差受代價函數(shù)的光滑性影響
深度生成模型 VAE 和 GAN 的訓(xùn)練
基于 Normalising Flow 的變分推斷
用于連續(xù)控制問題的強化學(xué)習(xí)
總結(jié)
蒙特卡洛采樣(MCS)是求解函數(shù)期望的常用近似方法,優(yōu)點是簡單易用,通過一定的變換,可以對期望的梯度進行估計,從而完成對代價函數(shù)的優(yōu)化,實現(xiàn)很多任務(wù)。
但 MCS 的缺點也非常明顯,為了保證一定的估計效果,往往需要很大量的采樣規(guī)模,對于大數(shù)據(jù)、高維度等實際問題來說,過多的采樣會導(dǎo)致算法效率極低,從而降低了算法的實用性。從這個角度來說,如何研究一些新方法,來提高期望或者期望梯度的近似估計效率是一個非常重要的問題。最后,推薦兩篇 2019 年的工作 [4] [5],旨在嘗試解決這個問題。?
上述研究雖然有一定的局限性,但嘗試了新的思路來解決這一問題。其中第 [5] 篇,嘗試用一些 Uncertainty Qualification (UQ) 的方法,比如用一些不確定性傳播的估計方法,對期望進行確定性估 計,而非隨機采樣估計,在一定的假設(shè)下,確實有非常顯著的效果。
參考文獻
[1] Mohamed, S., Rosca, M., Figurnov, M., & Mnih, A. (2019). Monte Carlo Gradient Estimation in Machine Learning. ArXiv Preprint ArXiv:1906.10652.?
[2] Fu, M. C. (2005). Stochastic Gradient Estimation, 105–147.?
[3] Shakir's Machine Learning Blog http://blog.shakirm.com?
[4] Postels, J., Ferroni, F., Coskun, H., Navab, N., & Tombari, F. (2019). Sampling-free Epistemic Uncertainty Estimation Using Approximated Variance Propagation. ArXiv Preprint ArXiv:1908.00598.?
[5] Wu, A., Nowozin, S., Meeds, T., Turner, R. E., Lobato, J. M. H., & Gaunt, A. (2019). Deterministic Variational Inference for Robust Bayesian Neural Networks. In ICLR 2019 : 7th International Conference on Learning Representations.
點擊以下標(biāo)題查看更多往期內(nèi)容:?
全新視角:用變分推斷統(tǒng)一理解生成模型
變分自編碼器VAE:一步到位的聚類方案
漫談概率 PCA 和變分自編碼器
再談變分自編碼器VAE:從貝葉斯觀點出發(fā)
從傅里葉分析角度解讀深度學(xué)習(xí)的泛化能力
NAACL 2019最佳論文:量子概率驅(qū)動的神經(jīng)網(wǎng)絡(luò)
#投 稿 通 道#
?讓你的論文被更多人看到?
如何才能讓更多的優(yōu)質(zhì)內(nèi)容以更短路徑到達讀者群體,縮短讀者尋找優(yōu)質(zhì)內(nèi)容的成本呢?答案就是:你不認識的人。
總有一些你不認識的人,知道你想知道的東西。PaperWeekly 或許可以成為一座橋梁,促使不同背景、不同方向的學(xué)者和學(xué)術(shù)靈感相互碰撞,迸發(fā)出更多的可能性。?
PaperWeekly 鼓勵高校實驗室或個人,在我們的平臺上分享各類優(yōu)質(zhì)內(nèi)容,可以是最新論文解讀,也可以是學(xué)習(xí)心得或技術(shù)干貨。我們的目的只有一個,讓知識真正流動起來。
??來稿標(biāo)準(zhǔn):
? 稿件確系個人原創(chuàng)作品,來稿需注明作者個人信息(姓名+學(xué)校/工作單位+學(xué)歷/職位+研究方向)?
? 如果文章并非首發(fā),請在投稿時提醒并附上所有已發(fā)布鏈接?
? PaperWeekly 默認每篇文章都是首發(fā),均會添加“原創(chuàng)”標(biāo)志
? 投稿郵箱:
? 投稿郵箱:hr@paperweekly.site?
? 所有文章配圖,請單獨在附件中發(fā)送?
? 請留下即時聯(lián)系方式(微信或手機),以便我們在編輯發(fā)布時和作者溝通
?
現(xiàn)在,在「知乎」也能找到我們了
進入知乎首頁搜索「PaperWeekly」
點擊「關(guān)注」訂閱我們的專欄吧
關(guān)于PaperWeekly
PaperWeekly 是一個推薦、解讀、討論、報道人工智能前沿論文成果的學(xué)術(shù)平臺。如果你研究或從事 AI 領(lǐng)域,歡迎在公眾號后臺點擊「交流群」,小助手將把你帶入 PaperWeekly 的交流群里。
▽ 點擊 |?閱讀原文?| 獲取最新論文推薦
與50位技術(shù)專家面對面20年技術(shù)見證,附贈技術(shù)全景圖總結(jié)
以上是生活随笔為你收集整理的蒙特卡洛梯度估计方法(MCGE)简述的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: ICCV 2019 | 基于关联语义注意
- 下一篇: 无监督构建词库:更快更好的新词发现算法