First contact reinforcement learning 「3」

強化學習的分類

根據強化學習的任務和環境,可以將強化學習任務劃分為一下幾個類.

任務分類
  • 回合制任務(Episodic Task) 和 連續性任務(Sequential Task): 對於回合制任務,可以有明確的開始結束狀態,例如一場棋局就是一個回合,當下一個回合開始的時候一切重新開始, 也有一些問題沒有明確的開始結束狀態, 例如機房資源的調度,機房從啟用的時候就要開始不斷的去處理各種資訊, 不可能說什麼時候結束一下重新開始.
  • 離散時間環境(Discete time environment) 和連續時間環境(Continuous time environment) ,如果智慧體和環境的交互是在連續的時間進行的,那麼就是連續時間環境.
  • 離散動作空間(Discrete action space) 和連續動作空間(Continuous action space) 這個是根據決策者可以作出的動作數量來劃分的, 如果決策者得到的動作數目是有限的則為離散動作空間,否則為連續動作空間.
  • 確定性環境任務(Deterministic environment)和非確定性環境(Stochastic environment):按照環境是否具有隨機性,可以將強化學習的環境分為確定性環境和非確定性環境。例如,對於機器人走固定的某個迷宮的問題,只要機器人確定了移動方案,那麼結果就總是一成不變的。這樣的環境就是確定性的。但是,如果迷宮會時刻隨機變化,那麼機器人面對的環境就是非確定性的.
  • 完全可觀測環境(Fully observable environment)和非完全可觀測環境(Partially observable environment):如果智慧體可以觀測到環境的全部知識,則環境是完全可觀測的;如果智慧體只能觀測到環境的部分知識,則環境不是完全可觀測。例如,圍棋就可以看作是一個完全可觀測的問題,因為我們可以看到棋盤的所有內容,並且假設對手總是用最優方法執行;撲克則不是完全可觀測的,因為我們不知道對手手裡有哪些牌.
  • 單智慧體任務(single agent task)和多智慧體任務(multi-agent task):顧名思義,根據系統中的智慧體數量,可以將任務劃分為單智慧體任務和多智慧體任務。單智慧體任務中只有一個決策者,它能得到所有可以觀察到的觀測,並能感知全局的獎勵值;多智慧體任務中有多個決策者,它們只能知道自己的觀測,感受到環境給它的獎勵。當然,在有需要的情況下,多個智慧體間可以交換資訊。在多智慧體任務中,不同智慧體獎勵函數的不同會導致它們有不同的學習目標(甚至是互相對抗的).

演算法分類 ·
  • 同策學習(on policy)和異策學習(off policy):同策學習是邊決策邊學習,學習者同時也是決策者。異策學習則是通過之前的歷史(可以是自己的歷史也可以是別人的歷史)進行學習,學習者和決策者不需要相同.在異策學習的過程中,學習者並不一定要知道當時的決策.例如,圍棋AI可以邊對弈邊學習,這就算同策學習;圍棋AI也可以通過閱讀人類的對弈歷史來學習,這就算異策學習.
  • 有模型學習(model-based)和無模型學習(model free):有模型學習需要對環境進行建模,在實際環境之外再搭建一套假的環境來模擬真實環境,再利用假的環境進行學習.例如,對於某個圍棋AI,它在下棋的時候可以虛擬出另外一個棋盤並在虛擬棋盤上試下,並通過試下來學習.這就是有模型學習.與之相對,無模型學習不需要關於環境的資訊,不需要搭建假的環境模型,所有經驗都是通過與真實環境交互得到.
  • 回合更新(Monte Carlo update)和時序差分更新(temporal difference update):回合制更新是在回合結束後利用整個回合的資訊進行更新學習;而時序差分更新不需要等回合結束,可以綜合利用現有的資訊和現有的估計進行更新學習.
  • 基於價值(value based)和基於策略(policy based):基於價值的強化學習定義了狀態或動作的價值函數,來表示到達某種狀態或執行某種動作後可以達到的回報.基於價值的強化學習傾向於選擇價值最大的狀態或動作;基於策略的強化學習演算法不需要定義價值函數,它可以為動作分配概率分布,按照概率分布來執行動作.
  • 深度強化學習(deep reinforcement learning,DRL)演算法和非深度強化學習演算法.如果強化學習演算法用到了深度學習,則這種強化學習可以稱為深度強化學習演算法.

WechatIMG76.jpeg


「First contact reinforcement learning 完結···」
「續 · 第二節」