GA3C:基於GPU的異步並行強化學習算法

目錄

 

背景介紹

模型架構及學習過程

注意點


背景介紹

GPU-based Asynchronous Advantage Actor-Critic是A3C的GPU實現。
A3C的每一個Worker都需要採樣、訓練,需要充足的CPU資源。
GPU有很強的並行計算優勢;直覺上,將學習計算部分挪到GPU,收集數據環境交互部分放到CPU,會使系統更緊湊高效,同時也能匹配其他深度學習任務的硬件架構。

模型架構及學習過程

學習過程是這樣的:

1,整體採用的是批處理策略,即緩存到達batch size後統一處理;
2,每個Agent(Worker)負責收集數據(s, a, r, s'),註冊到隊列Training Queue,由Trainer管理供以後訓練使用;
3,但Agent不負責採樣本身π(a|s),而是將需求註冊到隊列Prediction Queue,由Predictor管理;
3,Predictor是個While True Thread,當緩存到達其batch size後,調用GPU上的策略預測網絡π(a|s)進行採樣
4,類似地,Trainer也是個While True Thread,滿足batch size後調用GPU進行訓練

GA3C: GPU-based A3C for Deep Reinforcement Learning

注意點

1,模型網絡只有一套,存儲在GPU上;
2,就是說,每一次採樣,都使用即時的網絡參數
3,模型訓練期間,也同時再採樣,難免會出現採樣時的policy網絡參數與最後學習時的參數不一致,所以GA3C部分數據有一定的延遲,不是嚴格的on-policy;
4,具體得看訓練的batch size及當時GPU狀態,GPU算力資源充足、batch size合理的情況下,受影響的數據應該是很少的。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章