學習筆記:DDPG
學習內容:DDPG
關鍵詞:記憶庫,估計網路,現實網路,Policy Gradient,Value Based,Actor-Critic
簡述:
DDPG(Deep Deterministic Policy Gradient)可以概括為兩個部分Deep和Deterministic Policy Gradient,其中Deep和DQN類似擁有兩套結構相同但是更新頻率不同的神經網路,Deterministic Policy Gradient指的是確定性策略梯度.在連續動作上輸出一個動作值.
動作估計網路輸出實時動作,為actor在現實中實行,動作現實網路用於更新價值網路系統.狀態估計網路將actor的動作當做輸入,狀態現實網路將動作現實網路輸出動作與狀態值加以分析.
DDPG是基於actor-critic的無模型確定性策略梯度演算法,人工智慧就是解決無資料預處理,多維度,敏感輸入的多目標任務。DQN只能解決低維度的離散輸出動作的任務,不能直接解決連續動作任務,DQN及其衍生演算法直接扔掉了動作空間中一些可能有用的資訊。
DDPG吸收練DQN演算法的優點,使用異策略(離線學習)方法,在樣本儲存快取區(replay buffer)中取樣最小化樣本間的相關性,使用Q-network訓練,並定時返回引數。
Policy Gradient:
能夠在連續區間內挑選動作,並且不通過分析反向誤差,而是直接輸出行為.是基於整條回合資料的更新和基於策略梯度的更新
DDPG虛擬碼:
虛擬碼註釋:
隨機初始化critic網路和actor網路,並初始化各自引數
初始化上述兩個網路對應目標網路
初始化repaly buffer
在M個回合內:
隨機初始化分佈N用作動作探索
初始化初始狀態
在次數T內:
根據當前策略和噪聲選擇動作
執行動作和得到獎勵與下一個狀態
將當前狀態,當前動作,當前獎勵和下一個狀態儲存在R中
隨機取樣
根據critic的損失函式更新critic網路
根據actor的梯度更新actor網路
結束迴圈
結束迴圈
公式的前半部分表示根據梯度選擇獎賞值最大的動作,後半部分表示根據梯度選擇選該最大獎賞值動作的策略
Tensorboard 資料圖:
接下來展開C-train,C代表critic,在訓練價值系統時,需要當前狀態s,下一個狀態s_,環境獎勵R,和策略梯度,其中用到Actor的是eval網路即動作估計網路,來更新價值系統.
再展開TD_error,採用時序差分演算法計算現實網路和估計網路的差值,論文采用均方差求解,然後傳遞給C-train
展開target_q,Q現實現實更新與下一個狀態和動作獎勵有關
展開Policy Gradient,策略梯度演算法與當前狀態有關
相關文章
- numpy的學習筆記\pandas學習筆記筆記
- 學習筆記筆記
- 【學習筆記】數學筆記
- 《JAVA學習指南》學習筆記Java筆記
- 機器學習學習筆記機器學習筆記
- 學習筆記-粉筆980筆記
- 學習筆記(3.29)筆記
- 學習筆記(4.1)筆記
- 學習筆記(3.25)筆記
- 學習筆記(3.26)筆記
- JavaWeb 學習筆記JavaWeb筆記
- golang 學習筆記Golang筆記
- Nginx 學習筆記Nginx筆記
- spring學習筆記Spring筆記
- gPRC學習筆記筆記
- GDB學習筆記筆記
- 學習筆記(4.2)筆記
- 學習筆記(4.3)筆記
- 學習筆記(4.4)筆記
- Servlet學習筆記Servlet筆記
- 學習筆記(3.27)筆記
- jest 學習筆記筆記
- NodeJS學習筆記NodeJS筆記
- WebSocket 學習筆記Web筆記
- mount 學習筆記筆記
- mapGetters學習筆記筆記
- jQuery學習筆記jQuery筆記
- flex學習筆記Flex筆記
- react 學習筆記React筆記
- Promise學習筆記Promise筆記
- vim學習筆記筆記
- Ansible 學習筆記筆記
- Taro 學習筆記筆記
- MongoDB學習筆記MongoDB筆記
- hbase學習筆記筆記
- git學習筆記Git筆記
- ComfyUi學習筆記UI筆記
- 2024.3.6學習筆記筆記