帶你從不同角度了解強化學習算法的分類

2020-12-12 讀芯術

全文共1804字,預計學習時長5分鐘

圖源:unsplash

本文將介紹強化學習算法的分類法,從多種不同角度學習幾種分類法。話不多說,大家深呼吸,一起來學習RL算法的分類吧!

無模型(Model-Free)VS基於模型(Model-Based)

無模型VS模型分類法 [圖源:作者,OpenAISpinning Up再創作]

RL算法的一種分類方法是詢問代理是否能訪問環境模型。換言之,詢問環境會否響應代理的行為。基於這個觀點有兩個RL算法的分支:無模型和基於模型。

· 模型RL算法根據環境的學習模型來選擇最佳策略。

· 無模型RL算法通過代理反覆測試選擇最佳策略。

兩種算法都各有優缺點,如下表所示:

基於價值VS 基於政策

RL算法的另一種分類方法是考慮算法優化了價值函數還是策略。在深入了解之前,我們先了解策略和價值功能。

策略

策略π是從狀態s到動作a的映射,其中π(a | s)是在狀態s時採取動作a的概率。策略可以是確定的,也可以是隨機的。

假設我們在玩剪刀石頭布這個非常簡單的遊戲,兩個人通過同時執行三個動作(石頭/剪刀/布)中的一個來比輸贏。規則很簡單:

· 剪刀克布

· 石頭克剪刀

· 布克石頭

把策略看作是迭代的剪刀石頭布

· 確定性策略容易被利用-如果我意識到你出「石頭」較多,那麼我可以利用這一點,獲得更大贏面。

· 統一的隨機策略(uniform random policy)最佳—如果你的選擇完全隨機,那我就不知道該採取什麼行動才能取勝。

價值函數

價值函數是根據對未來回報(返回值)的預測來衡量狀態良好程度的函數。返回值(Gt)基本等於「折扣」回報的總和(自t時起)。

γ ∈ [0,1]是折扣因數。折扣因數旨在抵扣未來的回報,有以下幾個原因:

· 方便數學計算

· 打破狀態變化圖中的無限循環

· 未來回報的高度不確定性(比如股價變化)

· 未來回報不能立時受益(比如人們更願意當下享樂而非十年後)

了解了返回值的概念後,接下來定義價值函數的數學形式吧!

價值函數的數學形式有二:

· 狀態-動作價值函數(Q值)是t時狀態動作組合下的期望返回值:

Q值和價值函數之間的區別是動作優勢函數(通常稱為A值):

現在知道了什麼是價值函數和動作-狀態價值函數。接下來學習有關RL算法另一個分支的更多信息,該分支主要關注算法優化的組件。

價值算法與策略算法[圖源:作者,David Silver RL課程再創作]

· 價值RL旨在學習價值/行動-價值函數,以生成最佳策略(即,隱式生成最佳策略);

· 策略RL旨在使用參數化函數直接學習策略。

· Actor-Critic RL旨在學習價值函數和策略。

下表列出了價值和策略算法的優缺點。

· 價值算法必須選擇使動作-狀態價值函數最大的動作,如果動作空間非常高維或連續,成本就會很高,而策略算法是通過直接調整策略的參數來運行的,不需要進行最大化計算。

· 如果操作不當 (收斂性質差/不穩定),價值算法會出現一系列問題,而策略算法更穩定,收斂性質更好,因為它們只對策略梯度進行很少的增量更改。

· 策略算法既可以學習確定性策略,也可以學習隨機策略,而價值算法只能學習確定性策略。

· 與價值算法相比,原本的策略算法速度更慢,方差更大。價值算法試圖選擇使動作-狀態價值函數最大化的動作,這將優化策略 (運算更快、方差更小),策略算法只需幾步,並且更新順暢、穩定,但同時效率較低,有時會導致方差變大。

· 策略算法通常收斂於局部最優而不是全局最優。

策略和非策略算法

還有一種RL算法分類方法是基於策略來源分類。

可以說策略算法是「邊做邊學」。也就是說該算法試著從π採樣的經驗中了解策略π。而非策略算法是通過「監視」的方式來工作。換句話說,該算法試圖從μ採樣的經驗中了解策略π。例如,機器人通過觀察人類的行為來學習如何操作。

留言點讚關注

我們一起分享AI學習與發展的乾貨

如轉載,請後臺留言,遵守轉載規範

相關焦點

  • 博銳尚格 AI天天見六:強化學習算法應用探索
    智能體將在環境的當前狀態下,根據獎勵信號做出動作,從而達到環境中的不同狀態並得到獎勵。強化學習的過程就像是一個老師,他不會直接的告訴你一個東西的定義,不會直接的說「什麼是什麼」(區分於監督學習),也不會讓你自學歸納(區分於無監督學習),而是一步步的引導,在你做出正確的邏輯判斷時給予獎勵,當你犯錯時給予懲罰,直到最終推出最優的答案。
  • 想了解機器學習?你需要知道的十個基礎算法
    一些有關機器學習常見的例子有:Netflix基於你以前看過的電影再給你做出影片的推薦,或者亞馬遜根據你以前買過的書籍再給你進行圖書推薦。如果想了解更多有關機器學習的知識,要從哪裡開始呢?作者第一次入門是在哥本哈根海外交流時選了一門有關人工智慧的課程。
  • 優必選雪梨 AI 研究院何詩怡:基於課程學習的強化多標籤圖像分類...
    分享題目:基於課程學習的強化多標籤圖像分類算法分享提綱基於課程學習的機制,我們提出了一種強化多標籤分類的方法來模擬人類從易到難預測標籤的過程。這種方法讓一個強化學習的智能體根據圖像的特徵和已預測的標籤有順序地進行標籤預測。進而,它通過尋求一種使累計獎賞達到最大的方法來獲得最優策略,從而使得多標籤圖像分類的準確性最高。
  • IEEE預發:DeepMind主攻的深度強化學習3大核心算法及7大挑戰
    與主導棋牌系統的手工定製的規則不同,AlphaGo由使用監督學習和強化學習訓練的神經網絡,結合傳統的啟發式搜索算法而成。  DRL算法已被應用於各種各樣的問題,例如機器人技術,創建能夠進行元學習(「學會學習」learning to learn)的智能體,這種智能體能泛化處理以前從未見過的複雜視覺環境。在圖1中,我們展示了應用DRL的一些領域,從玩視頻遊戲到室內導航。
  • 今日Paper|強化學習;可重構GANs;BachGAN;時間序列分類等
    目錄通過強化學習對抽取的摘要進行排序用於抽象文本摘要的基於深度遞歸生成解碼器用於可控圖像合成的學習布局和風格的可重構GANsBachGAN:基於顯著物體布局的高解析度圖像合成時間序列分類:近鄰vs深度學習模型通過強化學習對抽取的摘要進行排序論文名稱:Ranking Sentences for Extractive Summarization with Reinforcement Learning作者:Shashi Narayan
  • 你的《超級馬裡奧兄弟》通關了沒?基於PPO強化學習算法的AI成功拿...
    不過,遺憾的是第4、7、8場景中的第4關卡未通過。Viet Nguyen使用的強化學習算法正是OpenAI研發的近端策略優化算法(Proximal Policy Optimization,簡稱PPO),他介紹,此前使用A3C代碼訓練馬裡奧闖關,效果遠不及此,這次能夠達到29關也是超出了原本的預期。
  • 常見的機器學習算法,你知道幾個?
    事實上,機器學習是一門多領域交叉學科,涉及概率論、統計學、算法複雜度理論等多門學科。專門研究計算機如何模擬或實現人類的學習行為,利用數據或以往的經驗,以此優化電腦程式的性能標準。  根據學習任務的不同,我們可以將機器學習分為監督學習、非監督學習、強化學習三種類型,而每種類型又對應著一些算法。
  • 最強通用棋類AI,AlphaZero強化學習算法解讀
    譯者:AI研習社(Champagne Jin)雙語原文連結:AlphaZero, a novel Reinforcement Learning Algorithm, in JavaScript在本篇博文中,你將會了解並實現AlphaZero。
  • 「強化學習鍊金術」李飛飛高徒帶你一文讀懂RL來龍去脈
    【新智元導讀】史丹福大學博士生、師從李飛飛教授的Jim Fan(範麟熙)帶你一文讀懂強化學習的來龍去脈。本文以輕鬆有趣的方式介紹了強化學習的概念和目的,早期功不可沒的宗師泰鬥,理解算法所需要的預備知識,還從仿生學和心理學的角度介紹了強化學習的歷史背景。強化學習鍊金術 · 背景介紹(上)歡迎來到《強化學習鍊金術》第一講。
  • 中文文本分類:你需要了解的10項關鍵內容
    分詞產生的特徵丟失了原文本中詞與詞之間的的位置和順序信息,以至於對於「我愛你」、「你愛我」這樣的短語,分詞得到的特徵完全相同。同樣的例子,若採用二元的Bi-gram模型則能提取出「我愛」、「愛你」以及「你愛」、「愛我」兩組完全不同的特徵,更清晰得表達的原文的原意。在在中文文本分類中,另一個N-gram模型相對分詞的優勢在於:N-gram模型不受分詞準確率的影響。
  • 五分鐘了解機器學習十大算法
    今天,我們將簡要介紹 10 種最流行的機器學習算法,這樣你就可以適應這個激動人心的機器學習世界了!讓我們言歸正傳!1. 線性回歸線性回歸(Linear Regression)可能是最流行的機器學習算法。線性回歸就是要找一條直線,並且讓這條直線儘可能地擬合散點圖中的數據點。
  • 數據科學新手最適合使用的5大算法
    當你開始數據科學之旅時,遇到的第一個子領域可能就是機器學習。機器學習是用於描述計算機算法集合的名稱,這些算法在運行過程中通過收集信息不斷進行學習和改進。機器學習算法都是基於某些數據的。最初,該算法通過一些「訓練數據」來建立解決特定問題的直覺。一旦算法通過了學習階段,就可以通過已獲得知識解決基於不同數據集的相似問題。
  • 技術乾貨|集成學習算法(Ensemble Method)淺析
    重排序 將融合過濾後的item集合用一定的算法重新排序,將排序後的結果輸出到用戶,這邊主要常用到機器學習相關模型和算法,如LR和GBDT。本文將著重淺析一下重排序用到的集成學習算法(Ensemble Method)NO.1 集成學習概述集成學習算法本身不算一種單獨的機器學習算法,而是通過構建並結合多個機器學習器來完成學習任務。
  • MADDPG:基於DDPG的多智能體深度強化學習算法
    DDPG:深度確定性策略梯度算法的多智能體強化學習框架。算法架構模型由多個DDPG網絡組成,每個網絡學習policy π (Actor) 和 action value Q (Critic);同時具有target network,用於Q-learning的off-policy
  • 資料| Python強化學習實戰:應用OpenAI Gym和TensorFlow精通強化...
    內容簡介 · · · · · ·強化學習是一種重要的機器學習方法,在智能體及分析預測等領域有許多應用。《Python強化學習實戰:應用OpenAI Gym和TensorFlow精通強化學習和深度強化學習》共13章,主要包括強化學習的各種要素,即智能體、環境、策略和模型以及相應平臺和庫;Anaconda、Docker、OpenAIGym、Universe和TensorFlow等安裝配置;馬爾可夫鏈和馬爾可夫過程及其與強化學習問題建模之間的關係,動態規劃的基本概念;蒙特卡羅方法以及不同類型的蒙特卡羅預測和控制方法
  • 如何解決稀疏獎勵下的強化學習?
    改進模型的方法主要是執行分層強化學習(Hierarchical Reinforcement Learning),使用多層次的結構分別學習不同層次的策略來提高模型解決複雜問題的能力,以及元學習(Meta-Learning)的方法。本文針對每一類方法選擇了一篇近兩年的文章進行示例性介紹,以了解稀疏獎勵下的強化學習的最新研究進展。
  • 詳解凸優化、圖神經網絡、強化學習、貝葉斯方法等四大主題
    在本期訓練營(第四期)中我們對內容做了大幅度的更新,一方面新增了對前沿主題的講解如圖神經網絡(GCN,GAT等),另外一方面對核心部分(如凸優化、強化學習)加大了對理論層面上的深度。對於這些應用來講,核心算法應用就是乘客和車輛的匹配。  涉及到的知識點:
  • 強化學習/機器學習/深度學習三者有何區別?
    打開APP 強化學習/機器學習/深度學習三者有何區別? 2013年,DeepMind發明了DQN算法,成功將深度學習和強化學習結合起來,開啟了深度強化學習的新紀元。此後數年,強化學習的成果日新月異,很多非常困難的問題都被深度強化學習算法解決。 2016年,谷歌阿爾法圍棋以4:1戰勝圍棋世界冠軍、職業九段棋手李世石,不僅讓深度學習為人們所知,而且掀起了人工智慧的「大眾熱」,大家由此更加關注強化學習這一技術要點。
  • 解讀實踐中最廣泛應用的分類模型:樸素貝葉斯算法
    貝葉斯模型在機器學習以及人工智慧中都有出現,cherry 分類器使用了樸素貝葉斯模型算法,經過簡單的優化,使用 1000 個訓練數據就能得到 97.5% 的準確率。雖然現在主流的框架都帶有樸素貝葉斯模型算法,大多數開發者只需要直接調用 api 就能使用。
  • ACL2020|使用強化學習為機器翻譯生成對抗樣本
    對於MDP的無監督學習問題,我們可以使用強化學習(reinforcement learning, RL)建模學習值函數估計,通過對受害系統的不斷交互反饋得到對抗樣本的生成策略。不同於一般的梯度優化,強化學習並不受限於優化離散建模,因此適合建模本問題的優化。