當前位置:
首頁 > 科技 > 全新強化學習演算法詳解,看貝葉斯神經網路如何進行策略搜索

全新強化學習演算法詳解,看貝葉斯神經網路如何進行策略搜索

GIF/1.7M

圖:pixabay

原文來源:medium

作者:José Miguel Hernández Lobato

「機器人圈」編譯:嗯~阿童木呀、多啦A亮

首先,在這裡,介紹一下我們最近在ICLR(International Conference on Learning Representations)上發表的論文《利用貝葉斯神經網路進行隨機動力系統中的學習與策略搜索》(ICLR 2017)。點擊此處查看論文代碼和視頻。它介紹了一種基於模型的強化學習的新方法。這項成果的主要作者是Stefan Depeweg,他是慕尼黑技術大學的博士生。

在這項成果中,關鍵的貢獻在於我們的模型:具有隨機輸入的貝葉斯神經網路,其輸入層包含輸入特徵,以及隨機變數,其通過網路向前傳播並在輸出層轉換為任意雜訊信號。

隨機輸入使我們的模型能夠自動捕獲複雜的雜訊模式,提高基於模型的模擬質量,並在實踐中制定出更好的策略。

問題描述

我們解決了隨機動力系統中策略搜索的問題。例如,我們要操作諸如燃氣輪機這樣的工業系統:

這些系統的抽象圖如下所示。系統的當前狀態被表示為s_t並且與每個狀態s_t相關聯,同時存在一個由函數c()給出的成本c(s_t)。在每個時間步中,我們應用一個操作,這將在下一個時間步s_t + 1時影響系統的狀態。

從s_t到s_t + 1的轉換不僅僅是由action a_t決定的,而且還由一些我們無法控制的雜訊信號決定。該雜訊信號可由圖中的骰子來表示。在渦輪機示例中,雜訊源自於我們觀察到的包括感測器測量的狀態,這是對系統真實狀態的不完整描述。

為了控制系統,我們可以使用策略函數a_t =π(s_t;)將當前狀態s_t映射到action a_t中。 例如,π(;)可以是一個具有權重的神經網路。

我們的目標是找到一個策略(具有值),它將在狀態軌跡序列上產生平均低成本函數值。例如,我們的目標是最小化預期:

需要注意的是,上述表達式是隨機的,因為它取決於初始狀態s_1的選擇和狀態轉換中的隨機雜訊。

批量強化學習

我們考慮批量強化學習場景,在學習過程中不會與系統交互。這種情況在現實世界的工業環境中是很常見的,例如渦輪機控制,其中探測受到限制,以避免產生可能的系統損失。

因此,為了找到一個最優策略,我們只需要從已經運行的系統中以狀態轉換的形式獲得一批數據D = {(s_t, a_t, s_t+1)},而且我們將無法收集任何額外的數據。

首先,我們需要從D,一個p(s_t + 1 | s_t,a_t)的模型中進行學習,也就是將下一個狀態s_t + 1的預測分布作為當前狀態s_t和應用的action a_t的函數。然後,我們將該模型與策略相結合,以便得到p(s_t + 1 | s_t,a_t =π(s_t;)),其描述了當使用策略π()進行控制時系統的演化。

以前的分布可以用於執行狀態軌跡的roll-out或模擬。我們從隨機採樣狀態s_1開始,然後從p(s_t + 1 | s_t,a_t =π(s_t;))中進行迭代採樣,以獲得狀態s_1,...,s_T的軌跡。

然後可以在採樣的s_1,...,s_T中對成本函數進行評估,以近似成本()。這種近似的梯度可以用於隨機優化和在各個方向上進行移動,從而產生平均較低值的成本()。

雜訊在最優控制中的作用

最優策略會受到狀態轉換中雜訊的顯著影響。關於這一點,Bert Kappen 在《最優控制理論的路徑積分與對稱破缺》中提出的醉酒蜘蛛故事可進行以很好的說明,在這裡,我們可以將其用作一個激勵示例來進行說明。

蜘蛛要回家的話,它有兩個可能的路徑:穿過湖上的橋或者繞著湖邊走回家。在沒有噪音的情況下,橋樑是比較好的選擇,因為它更短。然而,在大量飲酒後,蜘蛛的運動可能會隨機地左右隨搖晃。考慮到橋樑狹窄,且蜘蛛不喜歡游泳,所以現在較優的選擇是沿著湖邊走回家。

顯然,這個例子顯示了雜訊是如何顯著地影響最佳控制的。例如,最優策略可以根據雜訊水平的高低進行改變。因此,我們期望在基於模型的增強學習中獲得顯著的改進,通過捕獲狀態轉換數據中存在的任何雜訊模式。因此,我們期望通過高精度捕獲狀態轉換數據中存在的任何雜訊模式,從而獲得基於模型的強化學習的顯著改進。

具有隨機輸入的貝葉斯神經網路

實際上,狀態轉換數據中的大多數建模方法只是假設s_t + 1中的附加高斯雜訊(additive Gaussian noise),即,

其中f_W可以視作一個權重為W的神經網路。在這種情況下,以最大似然法來學習W是非常容易的。然而,在現實世界的設置中附加高斯雜訊的假設不太可能存在。

不過,可以通過在f_W中使用隨機輸入,從而在轉換動力學中獲得一個更為靈活的雜訊模型。實際上,我們可以假設:

在這個模型下,輸入雜訊變數z_t可以通過f_W以複雜的方式進行變換,以在s_t + 1中產生任意的隨機模式來作為s_t和a_t的函數。

然而,現在由於z_t是未知的,所以不能再以最大似然法來學習W。不過,我們可以採用一個相反思想的解決方案:貝葉斯方法,W和z_t進行後驗分布。這個分布捕捉我們在看到D中數據後可能會採用的值的不確定性。

如果想要計算準確的後驗分布其實是很棘手的,但我們可以學習高斯近似。這種近似的參數可以通過最小化對真後驗的發散來調整。變異貝葉斯(VB)是一種通用於此類問題的方法,可以通過最小化Kullback-Leibler散度來實現。

α發散最小化(α-divergence minimization)

其實,對於如何學習因式分解後的高斯近似,我們可以通過最小化α發散來實現,而不使用VB。關於α發散,在Minka, Thomas P所著的《散度度量和消息傳遞》和我與Li Y.等人所著的《黑箱α發散的最小化》中皆有所提及。通過改變這種發散中的α值,我們可以在真實的後驗分布p模式下進行平滑的插值,也可以在p中覆蓋多種模式,如下圖所示:

其實很有趣的一點是,VB是α發散最小化中α= 0的一種特殊情況。而另外一種眾所周知的用於近似貝葉斯推理的方法是期望傳播(expectation propagation),它可以由α= 1獲得。在我們的實驗中,我們使用α= 0.5,因為在實際情況下,這會產生更好的概率預測。關於這一點,《黑箱α發散的最小化》(ICML 2016)中有更為詳盡的闡述。

示例的結果演示

下圖顯示了在兩個示例中進行具有隨機輸入的貝葉斯神經網路的執行結果。每個示例的訓練數據顯示在最左邊的列中。頂行顯示的是雙模態預測分布的問題。底行顯示的是異方差雜訊的問題(雜訊幅度取決於輸入)。

中間列顯示的是從僅使用附加高斯雜訊的模型中所獲得的預測。該模型無法捕獲數據中的雙重模式或異方差。最右邊的列顯示了具有隨機輸入的貝葉斯神經網路的預測,其可以自動識別數據中存在的隨機模式的類型。

「落水雞」問題的測試結果

我們現在考慮一個強化學習基準,其中一個劃獨木舟在二維的河上划槳,如下圖最左邊的地圖所示。在一個漂流的河中,將劃獨木舟推向位於頂部的瀑布,漂移在右邊更強,左邊更弱。 如果獨木舟落下瀑布,他必須在河底重新開始。

河流中也有擾動,左側變強,右側較弱。獨木舟越接近瀑布獲得的獎勵越多。因此,他會想要靠近瀑布,但不要太近,以免翻船。這個問題叫做「落水雞」,因為它與鬥雞有相似之處。

湍流和瀑布將使落水雞成為一個高度隨機的基準:瀑布下降的可能性在狀態轉換中引發雙重態勢,而不同的湍流引入異方差。

圖中間的情節可以看出使用我們的貝葉斯神經網路隨機輸入的策略。這是一個幾乎最優的策略,其中獨木舟分子試圖停留在x3.5和y2.5的位置。

右圖顯示了使用剛剛假設加性高斯雜訊的高斯過程(GP)模型發現的策略。所產生的策略在實踐中表現非常差,因為GP無法捕獲數據中存在的複雜雜訊模式。

工業基準評估結果

我們還使用稱為「工業基準」的工業系統模擬器對實驗中隨機輸入的貝葉斯神經網路的性能進行評估。作者認為:「工業基準」的目標是在某種意義上是現實的,它包括我們發現在工業應用中至關重要的各個方面。

下圖顯示,對於固定的動作序列,使用與1)多層感知器相對應的模型產生的roll-out,該多層感知器假定加性高斯雜訊(MLP)和我們的貝葉斯神經網路訓練2)變異貝葉斯(VB)或3 )α分散最小化,α= 0.5。模擬的軌跡顯示為藍色,「工業基準」產生的地面實況顯示為紅色。

這個數字清楚地顯示了用隨機輸入和α發散最小化的貝葉斯神經網路產生的roll-out是如何更接近地面真實軌跡。

結論

我們已經看到,在學習最優策略時,重要的是要考慮到過渡動態中複雜的雜訊模式。我們具有隨機輸入的貝葉斯神經網路是用於捕獲這種複雜雜訊模式的最先進的模型。通過α=0.5α的發散最小化,我們能夠在這樣的貝葉斯神經網路中執行精確的近似推理。這使得我們可以生成可用於學習更好策略的逼真的基於模型的模擬。

進一步閱讀

在《隱變數貝葉斯神經網路的不確定性分解》(arXiv:1706.08495)中,我們研究了具有隨機輸入的貝葉斯神經網路預測中不確定性的分解。不確定性源於a)由於有限的數據(認識論不確定性)缺乏關於網路權重的知識,或b)對網路的隨機輸入(偶然的不確定性)。 在《具有潛在變數的貝葉斯神經網路中的不確定性分解》(arXiv:1706.08495)中,我們展示了如何將這兩種類型的不確定性與應用程序分開進行主動學習和安全強化學習。

我們推薦Alex Kendall的優秀的博客文章,此文介紹了上述兩種計算機視覺深層神經網路的不確定性。

喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 機器人圈 的精彩文章:

這家被賓士母公司青睞的中國無人車企業,優勢在哪?
深度學習中的卷積網路到底怎麼回事?看完這12張圖就懂了
NIPS 2017斯坦福賽題:模擬人類肌肉骨骼,「學會奔跑」
布里斯托與牛津提出機器人「倫理黑匣子」!詳解EBB框架及實現
孿生網路如何識別面部相似度?這有一篇PyTorch實例教程

TAG:機器人圈 |

您可能感興趣

阿瑞斯病毒攻略大全 各玩法技巧與遊戲特色詳解
機器學習十大演算法詳解
路亞拋投技巧詳解
刀塔自走棋進階攻略:詳解全靠同行襯托的巨魔術
凈土觀想法門詳解
手游《自走棋》萌新基礎操作詳解
風水、命理基礎:五行學術詳解 收藏必看
寫意樹木技法詳解及筆法演示
重彩牡丹《迎風》畫法步驟詳解
詳解傳統武術如何拜師?
爐石傳說攻略——砰砰計劃新版元素快攻薩詳解
馬思純新代言——瑰珀翠詳解
嘔心瀝血史上最全化妝步驟詳解,化妝新手必看
《古劍奇譚》網路版 妙法奶技能詳解
靜態拉伸·動作詳解
《奧義聯盟》魔王入侵遊戲玩法詳解
經營類遊戲也需技巧!全民小鎮教你快速升級攻略詳解
德甲賽事穩膽詳解
小白的大神進階之路 神都夜行錄挑戰本攻略詳解
《非人學園》新英雄八戒技能詳解與攻略