文章目錄
RL算法的分類
1. 分類標準一
從“是否能對環境建模”出發,RL可以被劃分爲 Model-Free
和Model-Based
.
二者之間的區別就是 agent能不能爲環境建模,也就是去學習一個函數可以預測狀態轉移和收益。
如果我們爲環境建模,那麼agent就可以提前預測各種選擇下的情況,並從這些預測過程中學到更多經驗,再應用到實際行爲中。最著名的就是AlphaZero
的例子,在 sample efficiency
上優勢顯著。在這個例子中雖然我們可以知道對手所有可能的環境,但並不知道對手真正會走到哪個位置。因此,可以把對手的策略想象成環境的狀態轉移概率。
樣本使用率
每一次策略發生變化,是否要丟棄前面產生的樣本。如果是agent和環境交互,耗時很長,所以每次丟棄大量樣本是不划算。
Model-Based
很明顯的缺點就是建模很困難。就是variance和bias之間的關係,而且學習成本也非常大。
Model-Free
就不用關注那麼多了,實現起來更容易,被應用的更廣泛。
2. 分類標準二
從“學習目標”出發,RL可以被劃分爲學習policy
,學習狀態值函數,學習值函數,學習環境。
2.1 基於model-free的分類標準二
Policy Optimization
即RL的目標是學到一種最優策略,記爲 . 學習方式有兩種,一種是直接通過梯度求得最優參數(對 求導),另一種是求得 的局部最大值。??
這兩種優化方法都要使用On-Policy
的方法進行,就是隻利用最新policy下的行爲作爲樣本。
具體的優化算法包括A2C / A3C,
, PPO
Q-Learning
即RL的目標是學到一種最優值函數,記爲 .之前說過,值函數可以通過遞歸的形式表示。假設值函數已經穩定,任意一個狀態的價值可以由其他狀態的價值得到,即可以用貝爾曼公式表示。這類函數的優化方式是基於off-policy
的,即每次更新時使用的樣本不受時間約束。Q-Learning在下一時刻選擇了使價值算法最大的行動。
具體的Q-learning算法包括:DQN、C51
On-policy 和 Off-policy
所謂的同策略(on-policy)和異策略(off-policy)是指:
- 同策略:是指產生數據的策略與評估和改善的策略是同一個策略。比如使用貪婪策略採樣,
- 異策略:是指產生數據的策略與評估和改善的策略不是同一個策略。
註釋
- 產生數據的策略評估是指採樣的方法;
- 評估策略是指如何計算動作值函數;
- 改善策略是指得到一個更好的策略
這兩種策略評估方式有各自對應的策略算法。前者對值函數的更新是完全依據交互序列進行的,我們在計算時認爲價值可以直接使用採樣的序列估計得到。後者在更新值函數時並不完全遵循交互序列,而是選擇來自其他策略的交互序列的子部分替換了原本的交互序列。Q-learning的思想更復雜,它結合了子部分的最優價值,更像是結合了價值迭代的更新算法,希望每一次都使用前面迭代積累的最優結果進行更新。