0
雷鋒網(wǎng) AI 科技評論按:強化學(xué)習(xí)最常見的應(yīng)用是學(xué)習(xí)如何做出一系列決策,比如,如何一步步攀登上三千英尺高的巖壁。有機會用到強化學(xué)習(xí)并做出高水準(zhǔn)結(jié)果的領(lǐng)域包括機器人(以及無人機)控制、對話系統(tǒng)(個人助理、自動化呼叫中心)、游戲產(chǎn)業(yè)(智能 NPC、游戲 AI)、藥物研發(fā)(分子構(gòu)型測試、剪裁管理)、復(fù)雜系統(tǒng)控制(資源分配、過程優(yōu)化)等等。
強化學(xué)習(xí)的學(xué)術(shù)研究目前已經(jīng)取得了不少令人欣喜的研究成果,比如斯坦福大學(xué)的強化學(xué)習(xí)研究團隊就搞定了用強化學(xué)習(xí)控制一個簡化過的直升機模型(https://link.springer.com/chapter/10.1007/11552246_35),甚至還學(xué)會了新的雜耍動作;Orange Labs 部署了世界首個用強化學(xué)習(xí)優(yōu)化的商業(yè)化對話系統(tǒng)(https://aclweb.org/anthology/papers/W/W10/W10-4332/);DeepMind 開發(fā)出了深度強化學(xué)習(xí)算法 DQN(https://www.nature.com/articles/nature14236/),正是憑借著這個算法,他們訓(xùn)練出了只依靠視覺輸入就可以在 Atari 游戲中達到人類水平的智能體,以及創(chuàng)造了只靠自我對弈就可以在圍棋中達到超過人類頂尖水平的人工智能。
雖然強化學(xué)習(xí)領(lǐng)域已經(jīng)有了這么多成果,但是用強化學(xué)習(xí)解決真實世界中的問題仍然是困難重重的。原因有許多種,包括:深度強化學(xué)習(xí)的樣本效率很糟糕,訓(xùn)練算法需要用到上億級的樣本,但這種數(shù)量的樣本是難以在真實世界獲得的;算法的決策有可能是有危害的,所以只能在不會傷害生命、不會破壞設(shè)施的環(huán)境中訓(xùn)練,也無法在有較高安全性要求的環(huán)境中使用;強化學(xué)習(xí)算法的公平性無法保證;而且,算法的可靠性、可重復(fù)性也不理想。
這篇博客討論的就是強化學(xué)習(xí)中的可靠性問題。上面列出的強化學(xué)習(xí)的成果只能代表它在「穩(wěn)定、可靠」的時候的表現(xiàn),然而深度強化學(xué)習(xí)解決真實世界問題時經(jīng)常「不穩(wěn)定、不可靠」。甚至于,在訓(xùn)練算法時使用兩個不同的隨機種子都會因為訓(xùn)練過程中的隨機性而得到兩種截然不同的結(jié)果。微軟的研究人員們探究了兩種緩解這個問題的方法。雷鋒網(wǎng) AI 科技評論根據(jù)博客介紹如下。
第一種方法是微軟蒙特利爾研究院在 ICLR 2018 論文《Reinforcement Learning Algorithm Selection》中提出的。它的思路很簡單,如果某個算法不可靠,就訓(xùn)練多個算法,選取其中表現(xiàn)最好的那個。算法選擇過程如下圖所示。在每輪訓(xùn)練的開頭,算法選擇器會從算法庫中選擇一個算法,這個算法輸出的策略會在這輪訓(xùn)練的后續(xù)部分中用到。下面來到綠色部分,用標(biāo)準(zhǔn)的強化學(xué)習(xí)循環(huán)一直執(zhí)行到這輪訓(xùn)練結(jié)束。訓(xùn)練過程中生成的運動軌跡會被記錄下來,然后重新喂給算法們,在之后更多的訓(xùn)練中用到。不同算法的表現(xiàn)會提交給算法選擇器,它會在之后的更多訓(xùn)練中選擇最適合的算法。
微軟的研究人員們在談判對話博弈場景中進行了實驗。測試使用的算法選擇系統(tǒng) ESBAS 中含有兩個算法,每個算法單獨的表現(xiàn)如下圖,一個很穩(wěn)定(藍線),另一個最初很差,會逐漸學(xué)習(xí)并改善(紅線)。ESBAS 的表現(xiàn)是綠色的線,它在每一時刻的表現(xiàn)都更接近更好的那個算法。
另一個以 Atari 游戲為環(huán)境的測試中,算法選擇系統(tǒng)也結(jié)合了多個不同的 DQN 網(wǎng)絡(luò)的能力,最終表現(xiàn)比每個單獨的算法都要好。
最初微軟的研究人員們只是提出算法選擇系統(tǒng)可以提升強化學(xué)習(xí)算法的可靠性,但其實它的價值不止如此。首先,這個系統(tǒng)中存在交錯學(xué)習(xí),在每一時間步上都更傾向于選擇能產(chǎn)生最好的策略的算法;其次,一些難以直接表達為反饋的目標(biāo)函數(shù)也可以在這個系統(tǒng)中實現(xiàn)(比如它可以強制保證達到某些安全限制);而且,研究人員們觀察到不同算法策略的綜合體在環(huán)境中獲得了更加豐富多樣的經(jīng)驗(也就意味著獲得了更多的信息);最后,正如上面那個例子展示的,算法選擇系統(tǒng)可以在基準(zhǔn)策略和需要時間學(xué)習(xí)的策略之間平滑地轉(zhuǎn)換。
微軟的研究人員們還進行了另一個嘗試,這篇論文《Safe Policy Improvement with Baseline Bootstrapping》發(fā)表在了 ICML 2019 上。他們研究的是一個真實世界應(yīng)用中時常會遇到的具體場景:批量強化學(xué)習(xí)。相比于典型強化學(xué)習(xí)的在環(huán)境中一邊互動一邊學(xué)習(xí),批量強化學(xué)習(xí)中智能體并不與環(huán)境直接互動,只有一個固定的基準(zhǔn)線智能體采集數(shù)據(jù),然后用采集到的數(shù)據(jù)訓(xùn)練算法產(chǎn)生新的策略。這種批量學(xué)習(xí)的情境是真實世界場景中時長遇到的,對話系統(tǒng)、電子游戲之類的部署在個人設(shè)備上的系統(tǒng)很難頻繁更新,更沒法實時更新,所以需要先大規(guī)模采集數(shù)據(jù)再訓(xùn)練新的算法;藥物分子測試中也有類似的狀況,如果像傳統(tǒng)強化學(xué)習(xí)那樣并行運行許多個軌跡需要花很多年,所以更適合用批量強化學(xué)習(xí)的方法。
傳統(tǒng)強化學(xué)習(xí)在基準(zhǔn)算法基礎(chǔ)上的提升不是穩(wěn)定可靠的。那么在批量強化學(xué)習(xí)中,能夠可靠地改進策略就非常關(guān)鍵,因為如果得出了一個不好的策略,它的負面影響會遺留在許多軌跡中。微軟的研究人員們的目標(biāo)是,相比于基準(zhǔn)算法的表現(xiàn),可靠策略改進應(yīng)當(dāng)總是能夠保證有一定提升。
要保證總有提升,就要從表現(xiàn)最糟糕的狀況入手。研究人員們考慮了條件風(fēng)險價值(1%-CVaR),這其實是一個簡單的概念,是指最糟糕的運行結(jié)果的平均值;每次運行的過程如上圖所示,包含數(shù)據(jù)收集和策略訓(xùn)練。1%-CVaR 就是指所有運行結(jié)果中最糟糕的那 1% 的平均值。
這里值得先回顧一下為什么經(jīng)典的強化學(xué)習(xí)無法達到好的表現(xiàn)。由于它唯一的信息來源就是這個數(shù)據(jù)集,經(jīng)典強化學(xué)習(xí)在使用數(shù)據(jù)集的過程中就會隱式或者顯式地把數(shù)據(jù)集作為真實環(huán)境的體現(xiàn)。但是,畢竟真實環(huán)境具有一定的隨機性,或者模型的逼近能力也有限,當(dāng)模型獲得的數(shù)據(jù)受限于數(shù)據(jù)集的時候,對真實環(huán)境的重現(xiàn)程度也是不確定的。那么,只能接觸到數(shù)據(jù)集的學(xué)習(xí)算法也就會產(chǎn)生盲點,以及對數(shù)據(jù)集過于依賴。所以,經(jīng)典強化學(xué)習(xí)在這種情況下經(jīng)常會訓(xùn)練出在真實環(huán)境中表現(xiàn)非常糟糕的智能體。
實際上這還不是最糟糕的情況,強化學(xué)習(xí)會搜索并嘗試找到能優(yōu)化目標(biāo)函數(shù)的行為方式,在以往的研究中已經(jīng)多次觀察到強化學(xué)習(xí)會利用環(huán)境中的小問題走捷徑,這就不是我們希望看到的了。在批量強化學(xué)習(xí)中這個問題會更糟糕一些,因為有些「捷徑」在真實環(huán)境中可能不存在,僅僅是因為收集的數(shù)據(jù)集中存在盲點,所以顯得仿佛存在捷徑。這個任務(wù)越復(fù)雜,各種盲點就會越多。所以,確保模型能夠謹慎地處理盲點也很重要。
微軟為這個難題提出的解決方案是 Safe Policy Improvement with Baseline Bootstrapping,SPIBB,帶有基準(zhǔn) bootstrap 的安全策略改進。SPIBB 想辦法把這條常識性的規(guī)則作用在了策略更新過程中:如果你不知道你在做什么,那么就不要這么做。具體來說,只有在有足夠數(shù)據(jù)可以作證一個策略更新是有好處的時候,才會執(zhí)行這項更新;否則就只是重復(fù)基準(zhǔn)策略在數(shù)據(jù)收集過程中所做的。SPIBB 的思路也已經(jīng)用在了因子化的 MDP 中(比如 AAAI 2019 論文 http://www.st.ewi.tudelft.nl/mtjspaan/pub/Simao19aaai.pdf ) 。
微軟的研究人員們在一個隨機生成的網(wǎng)格世界環(huán)境中進行了測試,這個環(huán)境中僅包含 25 個狀態(tài)和 4 種動作。根據(jù)數(shù)據(jù)集大小不同,研究人員們把 SPIBB 和以往文獻中的數(shù)種算法進行了對比,平均表現(xiàn)如上圖??偟膩碚f,所有算法都得到了比基準(zhǔn)線算法更好的表現(xiàn),SPIBB 算法的兩個變體則獲得了最好的表現(xiàn);相比之下,經(jīng)典強化學(xué)習(xí)的表現(xiàn)甚至沒有隨著數(shù)據(jù)增加而一直變得更好。唯一一個表現(xiàn)和 SPIBB 近似的算法是 RaMDP(http://papers.nips.cc/paper/6294-safe-policy-improvement-by-minimizing-robust-baseline-regret),但它的問題在于需要非常仔細地調(diào)節(jié)一個超參數(shù),而且它不如 SPIBB 可靠。
這張圖是算法可靠性的測試結(jié)果,即 1%-CVaR 最糟糕的 1% 情況中的表現(xiàn)。可以看到,經(jīng)典強化學(xué)習(xí)是不可靠的,表現(xiàn)顯著低于基準(zhǔn)算法;SPIBB 的可靠性遙遙領(lǐng)先;RaMDP 在數(shù)據(jù)較少時穩(wěn)定性表現(xiàn)不佳。研究人員們在其它的隨機環(huán)境、隨機基準(zhǔn)算法條件下的實驗也得到了類似的結(jié)果。在論文中,作者們也對 SPIBB 在有限 MDP 中的可靠性進行了嚴(yán)格的證明。
兩篇論文地址:
《Reinforcement Learning Algorithm Selection》,ICLR 2018,https://arxiv.org/abs/1701.08810
《Safe Policy Improvement with Baseline Bootstrapping》,ICML 2019,https://arxiv.org/abs/1712.06924
via microsoft.com/en-us/research/blog/,雷鋒網(wǎng) AI 科技評論編譯
雷峰網(wǎng)版權(quán)文章,未經(jīng)授權(quán)禁止轉(zhuǎn)載。詳情見轉(zhuǎn)載須知。