深度強化學習是什么:AI與深度學習的下一代發展方向
強化學習非常適合實現自主決策,相比之下監督學習與無監督學習技術則無法獨立完成此項工作。強化學習在人工智能領域長久以來一直扮演著小眾性角色。然而,過去幾年以來,強化學習正越來越多地在各類AI項目當中發揮令人矚目的作用。其最突出的應用平臺正是在計算代理的環境背景性決策場景當中,負責判斷最佳行動。
憑借著試錯法來最大程度提升算法報酬函數,強化學習得以在IT運營管理、能源、醫療衛生、同類型、金融、交通以及貿易等領域構建起大量自適應性控制與多代理自動化應用。其可負責對傳統重點領域(機器人、游戲以及模擬)的AI方案進行訓練,并有能力在邊緣分析、自然語言處理、機器翻譯、計算機視覺以及數字化助手方面帶來新一代AI解決方案。
強化學習亦成為物聯網自主邊緣應用發展的前提性基礎。在工業、交通運輸、醫療衛生以及消費者應用等方面,大部分邊緣應用的開發工作皆需要構建AI驅動型機器人,從而在動態環境之下根據不同情境信息以自主方式完成操作。
強化學習的工作原理
在這樣的應用領域當中,邊緣裝置當中的AI大腦必須依賴于強化學習技術; 更具體地講,其必須有能力在缺少預置“基于真實”的訓練數據集的前提下,最大程度積累報酬函數——例如根據規范當中包含的一組標準找到問題解決方法。這種作法與其它類型的人工智能學習方式——例如監督學習(立足真實數據最大程度降低算法丟失函數)以及無監督學習(立足各數據點最大程度降低距離函數)——正好相反。
然而,AI學習方法之間并不一定必須彼此孤立。AI發展趨勢當中最值得關注的一點在于,強化學習正在各類更為先進的應用當中與監督及無監督學習相融合。AI開發者們努力將這些方法整合至應用程序當中,旨在使其實現單一學習方法也不足以達到的新高度。
舉例來說,在不具備標記訓練數據的情況下,監督學習本身無法起效——這一點在自動駕駛應用當中體現得尤為顯著。由于每個瞬時環境情況基本上獨立存在且未經預先標記,學習方法必須自行找到解決辦法。同樣的,無監督學習(利用聚類分析來檢測傳感器源以及其它復雜未標記數據中的模式)也無法在現實世界當中的決策場景內,準確識別智能端點并采取最佳操作。
深度強化學習是什么
接下來是深度強化學習,這種領先技術當中的自主代理利用強化學習的試錯算法與累加報酬函數以加速神經網絡設計。這些設計能夠極大支持各類依賴于監督與/或無監督學習的AI應用程序。
深度強化學習已經成為AI開發以及訓練管道當中的核心關注區域。其利用強化學習驅動代理以快速探索各類架構、節點類型、連接、超參數設置以及深度學習、機器學習乃至其它AI模型,并對這些供設計人員使用的選項進行相關效能權衡。
舉例來說,研究人員可利用深度強化學習從無數深度學習卷積神經網絡(簡稱CNN)架構當中快速確定最適合當前特征工程、計算機視覺以及圖像分類任務的選項。由深度強化學習提供的結果可供AI工具用于自動生成最優CNN,并配合TensorFlow、MXNet或者PyTorch等深度學習開發工具完成具體任務。
在這方面,強化學習開發與訓練開放框架的持續涌現無疑令人振奮。若您希望深入了解強化學習,那么以下強化學習框架無疑值得關注——通過運用這些框架并對其加以擴展,您將能夠將其與TensorFlow以及其它得到廣泛應用的深度學習與機器學習建模工具進行對接:
強化學習框架
具體作用以及獲取方式
TensorFlow Agents:TensorFlow Agents 提供多種工具,可通過強化學習實現各類智能應用程序的構建與訓練。作為TensorFlow項目的擴展方案,這套框架能夠將OpoenAI Gym接口擴展至多個并行環境,并允許各代理立足TensorFlow之內實現以執行批量計算。其面向OpoenAI Gy環境的批量化接口可與TensorFlow實現全面集成,從而高效執行各類算法。該框架還結合有BatchPPO,一套經過優化的近端策略優化算法實現方案。其核心組件包括一個環境打包器,用于在外部過程中構建OpenAI Gym環境; 一套批量集成,用于實現TensorFlow圖步并以強化學習運算的方式重置函數; 外加用于將TensorFlow圖形批處理流程與強化學習算法納入訓練特內單一卻步的組件。
Ray RLLib:RLLib 提供一套基于任務的靈活編程模式,可用于構建基于代理且面向多種應用場景的強化學習應用程序。RLLib由伯克利大學開發,目前已經迎來版本2,其立足Ray實現運行。Ray是一套靈活且高性能的分布式執行框架。值得一提的是,RLLib開發者團隊中的一位成員曾經擔任Apache Spark的主要締造者職務。
RLLib 可立足TensorFlow與PyTorch框架之內起效,能夠實現不同算法間的模型共享,并可與Ray Tune超參數調整工具進行集成。該框架結合有一套可組合且可擴展的標準強化學習組件庫。各個RLLib組件能夠在分布式應用程序當中實現并行化、擴展、組合與復用。
RLLib當中包含三種強化學習算法——近端策略優化(簡稱PPO)、異步優勢Actor-Critic(簡稱A3C)以及Deep Q Networks(簡稱DQN),三者皆可運行在任意OpenAI Gym Markov決策流程當中。其還為各類新算法的開發工作提供可擴展原語,用于將RLLib應用于新問題的Python API、一套代理超參數設置庫以及多種可插拔分布式強化學習執行策略。其亦支持由用戶創建自定義強化學習算法。
Roboschool:Roboschool 提供開源軟件以通過強化學習構建并訓練機器人模擬。其有助于在同一環境當中對多個代理進行強化學習訓練。通過多方訓練機制,您可以訓練同一代理分別作為兩方玩家(因此能夠自我對抗)、使用相同算法訓練兩套代理,或者設置兩種算法進行彼此對抗。
Roboschool由OpenAI開發完成,這一非營利性組織的背后贊助者包括Elon Musk、Sam Altman、Reid Hoffman以及Peter Thiel。其與OpenAI Gym相集成,后者是一套用于開發及評估強化學習算法的開源工具集。OpenAI Gym與TensorFlow、Theano以及其它多種深度學習庫相兼容。OpenAI Gym當中包含用于數值計算、游戲以及物理引擎的相關代碼。
Roboschool基于Bullet物理引擎,這是一套開源許可物理庫,并被其它多種仿真軟件——例如Gazebo與Virtual Robot Experimentation Platform(簡稱V-REP)所廣泛使用。其中包含多種強化學習算法,具體以怨報德 異步深度強化學習方法、Actor-Critic with Experience Replay、Actor- Critic using Kronecker-Factored Trust Region、深度確定性策略梯度、近端策略優化以及信任域策略優化等等。
Machine Learning Agents:盡管尚處于beta測試階段,但Unity Technology的Machine Learning Agents已經能夠面向游戲、模擬、自動駕駛車輛以及機器人實現智能代理的開發與強化學習訓練。ML-Agents支持多種強化學習訓練場景,具體涉及各類代理、大腦以及報酬機制的配置與彼此交互。該框架的SDK支持單代理與多代理場景,亦支持離散與連續操作空間。其提供Python API以訪問強化學習、神經進化以及其它機器學習方法。
ML-Agents學習環境包括大量通過與自動化組件(即‘大腦’)交互以實現執行的代理。各個代理皆能夠擁有自己的一套獨特狀態與觀察集,在環境當中執行特定操作,并在環境之內接收與事件相關的獨特報酬。代理的操作由與之對接的大腦決定。每個大腦負責定義一項特定狀態與操作空間,并決定與之相連的各代理應采取哪項操作。
除此之外,每個ML-Agents環境還包含一個獨立“學院”,用于定義環境范圍——具體包括引擎配置(訓練與推理模式下游戲引擎的速度與渲染質量)、幀數(每個代理作出新決策的間隔當中跳過多少引擎步驟)以及全局事件長度(即事件將持續多長時間)。
在大腦能夠設定的各類模式當中,外部模式最值得一提——其中的操作決策利用TensorFlow或者其它選定的機器學習庫制定,且通過開放套接配合ML-Agents的Python API實現通信。同樣的,內部模式中的代理操作決策則利用一套通過嵌入TensorFlowSharp代理接入項目的預訓練模型負責制定。
Coach:英特爾公司的Nervana Coach是一套開源強化學習框架,負責對游戲、機器人以及其它基于代理的智能應用進行智能代理的建模、訓練與評估。
Coach 提供一套模塊化沙箱、可復用組件以及用于組合新強化學習算法并在多種應用領域內訓練新智能應用的Python API。該框架利用OpenAI Gym作為主工具,負責與不同強化學習環境進行交換。其還支持其它外部擴展,具體包括Roboschool、gym-extensions、PyBullet以及ViZDoom。Coach的環境打包器允許用戶向其中添加自定義強化學習環境,從而解決其它學習問題。
該框架能夠在桌面計算機上高效訓練強化學習代理,并利用多核CPU處理相關任務。其能夠為一部分強化學習算法提供單線程與多線程實現能力,包括異步優勢Actor-Critic、深度確定性策略梯度、近端策略優化、直接未來預測以及規范化優勢函數。所有算法皆利用面向英特爾系統作出優化的TensorFLow完成,其中部分算法亦適用于英特爾的Neon深度學習框架。
Coach 當中包含多種強化學習代理實現方案,具體包括從單線程實現到多線程實現的轉換。其能夠開發出支持單與多工作程序(同步或異步)強化學習實現方法的新代理。此外,其還支持連續與離散操作空間,以及視覺觀察空間或僅包含原始測量指標的觀察空間。
AI開發者需要掌握的強化學習技能
展望未來,AI開發者們需要盡可能掌握上述框架以及其中所使用的各類強化學習算法。此外,您還需要強化自身對于多代理強化學習架構的理解,因為其中多種框架都大量利用前沿博弈論研究成果。最后,您還需要熟悉深度強化學習知識,并借此發現計算機視覺應用程序當中所出現的“模糊(fuzzing)”攻擊及相關安全漏洞。
責任編輯:任我行
-
碳中和戰略|趙英民副部長致辭全文
2020-10-19碳中和,碳排放,趙英民 -
兩部門:推廣不停電作業技術 減少停電時間和停電次數
2020-09-28獲得電力,供電可靠性,供電企業 -
國家發改委、國家能源局:推廣不停電作業技術 減少停電時間和停電次數
2020-09-28獲得電力,供電可靠性,供電企業
-
碳中和戰略|趙英民副部長致辭全文
2020-10-19碳中和,碳排放,趙英民 -
深度報告 | 基于分類監管與當量協同的碳市場框架設計方案
2020-07-21碳市場,碳排放,碳交易 -
碳市場讓重慶能源轉型與經濟發展并進
2020-07-21碳市場,碳排放,重慶
-
兩部門:推廣不停電作業技術 減少停電時間和停電次數
2020-09-28獲得電力,供電可靠性,供電企業 -
國家發改委、國家能源局:推廣不停電作業技術 減少停電時間和停電次數
2020-09-28獲得電力,供電可靠性,供電企業 -
2020年二季度福建省統調燃煤電廠節能減排信息披露
2020-07-21火電環保,燃煤電廠,超低排放
-
四川“專線供電”身陷違法困境
2019-12-16專線供電 -
我國能源替代規范法律問題研究(上)
2019-10-31能源替代規范法律 -
區域鏈結構對于數據中心有什么影響?這個影響是好是壞呢!