強化學習 關於隨機策略梯度法中的損失定義

2021-10-22 14:22:57 字數 665 閱讀 7284

還是採用神經網路用於狀態和行為概率的非線性擬合

1、隨機策略梯度演算法回顧

如上圖,迭代公式定義為新=舊+alpha*吃驚程度。所謂的吃驚程度是指,根據當前策略依概率選擇了乙個行為,雖然這個行為概率較小,但」-log"之後很大,這時候反饋回了乙個獎勵vt,表明這個小概率行為讓決策人很吃驚,接下來要大改引數。

2、如何定義神經網路損失

已知策略梯度法不是依賴損失來反饋修改引數,但神經網路迭代依賴的就是損失,那麼如何定義策略梯度的「損失」。

將問題轉換為分類問題:

已經獲得了一整條軌跡(s1,a1,r2,s2,a2,r3,s3,a3,r4,s4,…)

假設,對於s1,認定a1就是對的,也就是s1對應的真實標籤,onehot編碼後也就是(1,0,0,…,0);

此時,將s1輸入神經網路中,得出乙個行為概率分布,與真實標籤對應後,就會得出乙個分類交叉熵;

但事實卻不是這樣, 動作a1不一定是 「正確標籤」,於是加入vt(獎勵來修正損失方向),用 vt 來告訴這個 cross-entropy 算出來的梯度是不是乙個值得信任的梯度. 如果 vt 小, 或者是負的, 就說明這個梯度下降是乙個錯誤的方向, 我們應該向著另乙個方向更新引數, 如果這個 vt 是正的, 或很大, vt 就會稱讚 cross-entropy 出來的梯度, 並朝著這個方向梯度下降.

強化學習 十六 深度確定性策略梯度 DDPG

在強化學習 十五 a3c中,我們討論了使用多執行緒的方法來解決actor critic難收斂的問題,今天我們不使用多執行緒,而是使用和ddqn類似的方法 即經驗回放和雙網路的方法來改進actor critic難收斂的問題,這個演算法就是是深度確定性策略梯度 deep deterministic po...

RL(九)基於策略的強化學習

前面的演算法都是基於價值來算的,但是當處理連續動作的問題時,就顯得力不從心了,因為我們需要求的q錶太大,根本無法滿足我們的需要。前面我們在演算法分類的時候也講過,我們可以按基於價值和基於策略的方式來給rl分類,所以這篇部落格就是用基於策略演算法來求解強化學習問題。值函式近似法 在值函式近似法中,動作...

強化學習中的熵

主要有一下幾種方式 trpo,ppo方法 都是policy gradient方法和神經網路結合下的變體。使用on policy更新,所得到的梯度是對真實梯度的一階近似,因此需要控制步長在合理範圍,步長大了近似就不準確了。於是,在策略梯度後面增加了kl 散度 相對熵 正則項,目的是控制步長 學習率 1...