程序合成構建可驗證可解釋的強化學習

程序合成構建可驗證可解釋的強化學習

摘要

本文主要研究如何為強化學習(RL,Reinforcement Learning)生成可解釋、可驗證的策略。與當前流行的深度強化學習(DRL,Deep Reinforcement Learning)範式的相關研究不同,本文的主要目的是探究一些可以用高級編程語言表示的策略。這樣的程序化策略具有許多好處:它比神經網絡更容易解釋,並且易於通過可擴展的符號方法進行驗證。程序策略的生成方法還提供了一種系統地使用領域知識來指導策略搜索的機制。這些策略的可解釋性和可驗證性提供了在安全攸關環境中部署基於強化學習的解決方案的機會。本文借鑑並擴展了機器學習社區和形式方法社區的工作。

關鍵詞

程序合成;強化學習;深度強化學習;

1 引言

目前,許多強化學習領域的最新研究進展都是藉助深度神經網絡(DNN,Deep Neural Network)模型實現的。但是,由於 DNN 模型的基本屬性,檢查 DNN 模型與所需屬性是否一致是非常困難的,也因此 DNN 模型被普遍認為是一種黑盒模型。隨著人工智能領域研究的不斷深入,眾多的科研人員逐漸達成一個共識:將 DNN 方法與其他技術相結合,構建全新的模型,是人工智能研究進一步發展的必要前提。本文主要探索如何有效利用自動程序生成和深度強化學習之間的聯繫,並同時貢獻了相應的關聯方法。

本文中,作者主要提出了一個具有可解釋性的程序化強化學習(PIRL,Programmatically Interpretable Reinforcement Learning)框架。該框架基於一種用領域特定語言(DSL,Domain Specific Language)表示的學習法則。該方法的一種應用場景是探究如何通過控制汽車的油門和方向盤,合成一個可以驅動汽車繞軌道行駛的程序。下面這個示例展示了由作者提出的的方法合成的加速程序:

程序合成構建可驗證可解釋的強化學習

可以看到,如上所示的合成結果非常清晰易讀。然而代表類似策略的 DNN 方法則正好相反:DNN 方法產生的該類程序通常會具有三個隱藏層,每層大約包含 600 個節點。

本文的工作靈感來源於由 DSL 語言表示的結構化程序具有的三個關鍵優勢:首先,DSL 語言採用面向人類的設計,使其較 DNN 更具可解釋性;第二,DSL 語言可用於學習裝置歸納偏置的隱式編碼,且有利於主體概括;最後,DSL 語言允許用戶使用符號程序驗證技術來規範化地推理學習到的策略,並同時檢查與正確屬性一致性。

目前,深度學習領域已經有許多相關工作。一些工作主要研究如何使 DNN 方法更具可解釋性(Montavon,Samek 和 Muller,2017);另一些工作則通過直接規範化的方式驗證 DNN 方法(Katz 等,2017)的可解釋性。本文展示的技術與這些方法有所不同,其主要差異在於作者提出的框架輸出高級程序源代碼,而這些源代碼可用於替換一些由 DNN 方法表示的策略。還有一些研究(Murali 等,2018)使用神經網絡,在程序合成和領域增長的環境下進行程序學習。這些方法的共同點在於它們都訓練 DNN 模型指導程序搜索,而作者提出的方法則直接使用在強化學習環境下訓練過的 DNN(模型),這是最明顯的不同之處。

2 方法

程序合成構建可驗證可解釋的強化學習

編程語言社區的一些工作啟發作者使用 DSL 語言來提供語法約束。這種約束方法其實早已在一個名為“語法制導合成”的框架中實現了規範化。除此之外,DSL 語言還提供了一種原則性機制:它可以將域知識系統地包裝到策略搜索中,從而改變學習裝置的歸納偏置。此外,在研究過程中作者發現:儘管 DRL 算法在端到端的學習中表現的很出色,這種算法目前似乎缺少為學習裝置指定歸納偏置的手段。

PIRL 在處理策略空間時面臨著一項重大的技術挑戰,出現這個挑戰的原因在於:儘管通過語法進行了限制,策略空間的範圍依舊是非常龐大且極不平滑的,這使得直接搜索變得異常困難。為了解決這一技術難題,作者提出了一種全新的算法,並將其命名為神經指導程序合成(NDPS,Neurally Directed Program Synthesis)。NDPS 算法首先利用 DRL 技術計算具有高性能的神經策略,之後再將該網絡應用於指導對程序策略的本地搜索。這種搜索思路受到了模仿學習(Ross,Gordon 和 Bagnell,2011)的啟發。通過這種思路,算法可以在高度不平滑的搜索空間中進行直接搜索。但是 NDPS 算法與模仿學習配置有所不同:NDPS 僅利用專家軌線對本地程序搜索進行引導,而模仿學習配置的目的則是要完美匹配專家演示。

作者利用開發式賽車模擬器(TORCS,The Open Racing Car Simulator)環境中的汽車駕駛學習仿真任務對它們的方法進行了評估。實驗證明:NDPS 算法可以從策略空間中找到一些能夠通過重要指標的、具有可解釋性的策略。

3 進行中的研究及未來工作

關於強化學習的程序化策略有許多有趣的方向可供科研人員進一步探索。在本項研究中,作者指出了兩項值得關注的研究:

策略的合成與驗證:作者提出的策略合成方法具有其獨有的優勢。該策略合成方法可以從 DRL 技術以及程序合成技術的提升中受益,其原因在於 NDPS 算法可以充分利用這兩個領域中任意一個的最新成果。此外,作者還在研發一種全新的算法。該算法將可以通過在 DRL 策略中插入程序策略合成技術來提升神經策略和程序策略。此外,作者還在探索如何利用更強大的驗證系統來對更加複雜和有用的屬性進行驗證。針對這項研究,作者正在開發一些方法。這些方法將在程序策略的合成過程中利用驗證規範對搜索空間進行修剪。

策略的複雜應用:作者希望繼續探索研究一些具有現實應用價值的複雜應用,並將研究結果在之後的論文中展示。例如目前應用 DRL 技術發現的、一些可用於治療某些疾病的全新適應性藥物療法,這些全新療法雖然具有一定的應用價值,但由於 DNN 技術的黑盒性質其他人很難相信這些藥物是可用的,因此在申請監管部門批准時存在著一定的困難。目前,作者正與一些相關人士合作,嘗試通過 PIRL 框架為這些藥物產品中的神經策略生成解釋性說明。這個例子反映了:生成策略的可解釋性,對於基於 RL 的應用技術來說,是非常重要的。因為只有能得到人們認可的產品才具有相應的使用價值。於此同時,作者所在實驗室的一些成員也正在嘗試將 PIRL 框架應用於四軸飛行器的路徑和任務規劃問題。這些規劃問題術語安全攸關領域的範疇,因為任何故障帶來的損失都是災難性的。

4 貢獻與影響

DRL 模型對許多領域而言,都是查找 RL 策略不可或缺的前沿技術。因此,解決 DRL 模型中存在的一些缺陷會對這些研究的現狀產生重大的影響。本文旨在解決 DRL 模型存在的兩個基本問題,即如何展示 DRL 模型的可解釋性和可驗證性。通過對 Verma 等人於 2018 年發表的工作的學習,作者規範化地確立了一種全新的學習範式。這種全新的學習範式在解決 DRL 模型的兩個弊端時展現出較好的可用性,其應用前景值得期待。

作者在正在進行的工作中提出了一種全新的算法。該算法將神經與程序的主題訓練相結合,能夠顯著優化目前最尖端的 RL 策略查找方法,同時提升其普遍適用性。未來作者將進一步探索如何在更強的驗證前提下進行策略查找,並研究如何將 PIRL 框架應用於安全攸關的物理網絡系統。

本次研究的成果也許能夠為探究機器學習和形式方法文獻之間聯繫開闢全新的道路。此外,由於本研究為當前 RL 方法的主要弊端提出了一些可行的解決方法,更多具有現實應用價值的、基於 RL 的問題解決方案也許會被進一步採納和認可。與此同時,這篇文章的研究成果也能夠應用於其他機器學習技術,例如當前正由深度神經網絡主導有監督式學習。

致謝

國家重點研發計劃課題:基於協同編程現場的智能實時質量提升方法與技術(2018YFB1003901)和國家自然科學基金項目:基於可理解信息融合的人機協同移動應用測試研究(61802171)

本文由南京大學軟件學院 2020 級碩士錢瑞祥轉述


分享到:


相關文章: