深度強化學習課程文件
視覺化截斷替代目標函式
並獲得增強的文件體驗
開始使用
視覺化截斷替代目標函式
別擔心。如果現在這看起來很複雜,那也很正常。但我們將看到截斷替代目標函式的樣子,這將幫助你更好地視覺化正在發生的事情。
我們有六種不同的情況。首先請記住,我們取截斷和未截斷目標函式中的最小值。
情況 1 和 2:比率在範圍內
在情況 1 和 2 中,由於比率在範圍內,截斷不適用
在情況 1 中,我們有正向優勢:該動作比該狀態下所有動作的平均值更好。因此,我們應該鼓勵當前的策略增加在該狀態下采取該動作的機率。
由於比率在區間內,我們可以增加策略在該狀態下采取該動作的機率。
在情況 2 中,我們有負向優勢:該動作比該狀態下所有動作的平均值更差。因此,我們應該阻止當前的策略在該狀態下采取該動作。
由於比率在區間內,我們可以降低策略在該狀態下采取該動作的機率。
情況 3 和 4:比率低於範圍
如果機率比率低於,則在該狀態下采取該動作的機率遠低於使用舊策略時的機率。
如果像情況 3 那樣,優勢估計為正 (A>0),那麼你希望增加在該狀態下采取該動作的機率。
但是,如果像情況 4 那樣,優勢估計為負,我們不希望進一步降低在該狀態下采取該動作的機率。因此,梯度為 0(因為我們在一條平線上),所以我們不更新權重。
情況 5 和 6:比率高於範圍
如果機率比率高於,則當前策略在該狀態下采取該動作的機率遠高於舊策略。
如果像情況 5 那樣,優勢為正,我們不想變得過於貪婪。我們已經比舊策略有更高的機率在該狀態下采取該動作。因此,梯度為 0(因為我們在一條平線上),所以我們不更新權重。
如果像情況 6 那樣,優勢為負,我們希望降低在該狀態下采取該動作的機率。
所以概括來說,我們只使用未截斷的目標函式部分來更新策略。當最小值是截斷的目標函式部分時,我們不更新策略權重,因為梯度將等於 0。
因此,我們只在以下情況下更新策略:
- 我們的比率在範圍內
- 我們的比率在範圍之外,但優勢導致其更接近該範圍
- 比率低於範圍,但優勢 > 0
- 比率高於範圍,但優勢 < 0
你可能會想,為什麼當最小值是截斷比率時,梯度為 0。當比率被截斷時,在這種情況下,導數將不是的導數,而是或的導數,兩者都等於 0。
總而言之,由於這個截斷替代目標函式,我們限制了當前策略與舊策略之間的變化範圍。因為我們消除了機率比率超出區間的動機,因為截斷強制梯度為零。如果比率 >或 <,梯度將等於 0。
最終的 PPO Actor-Critic 風格的截斷替代目標損失函式如下所示,它是截斷替代目標函式、價值損失函式和熵獎勵的組合
這相當複雜。花時間透過查看錶格和圖表來理解這些情況。你必須理解為什麼這有意義。如果你想深入研究,最好的資源是 Daniel Bick 的文章“Towards Delivering a Coherent Self-Contained Explanation of Proximal Policy Optimization”,特別是第 3.4 部分。
< > 在 GitHub 上更新