參數噪聲帶來的更好探索
總覽
為強化學習算法的參數添加自適應噪聲經常能提升性能,實現簡單,且極少會降低性能,因此值得在任何問題上嘗試。
參數噪聲的工作原理
參數噪聲將隨機性直接注入到智能體神經網絡策略的參數中,改變其決策類型,同時保持決策完全依賴於當前觀察,與傳統的動作空間噪聲不同,後者會不可預測地改變動作的可能性。 此方法介於進化策略(在 rollout 期間不影響操作而操縱策略參數)與深度強化學習方法如 TRPO、DQN 和 DDPG(在動作空間添加噪聲但保持參數不變)之間。
實證結果
在 HalfCheetah Gym 環境中學習 20 個回合後,使用參數噪聲訓練的策略得分約為 3,000,而使用傳統動作噪聲訓練的策略僅達到約 1,500。 參數噪聲幫助智能體更有效地探索環境,從而獲得更高的分數和更優雅的行為,因為探索在時間步上變得一致。
應對挑戰
研究過程中出現了三個問題:不同網絡層對擾動的敏感度不同,策略權重的敏感度會隨時間變化,以及選擇合適的噪聲規模很困難。 使用了層標準化來使各層的敏感度保持一致,確保受擾的層保持在類似的分布內。 自適應方案通過測量其對動作空間的影響並與目標進行比較來調整擾動大小,將噪聲規模問題轉移到更易解釋的動作空間。
基線與基準測試
已發布包含參數噪聲的基線代碼,適用於 DQN、Double DQN、Dueling DQN、Dueling Double DQN 和 DDPG。 基準測試在一部分 Atari 遊戲上比較了帶有和不帶有參數噪聲的 DDQN,並在多個 Mujoco 連續控制任務上比較了 DDPG 的三個變體。
開發見解
早期在 DQN 的 Q 函數上加噪的實驗時,偶爾會導致智能體重複執行相同的動作;添加一個獨立的策略頭(如 DDPG)緩解了此問題。 後續實驗表明,在噪聲重新縮放改進後,獨立的策略頭變得不必要,從而得到一個更簡單、成本更低且性能相當的實現。 這凸顯了強化學習算法可能靜默失敗的方式,促使工程師為未被檢測到的錯誤構建規避方案。
作者
Matthias Plappert, Rein Houthooft, Prafulla Dhariwal, Szymon Sidor, Pieter Abbeel, Marcin Andrychowicz, Richard Chen, Xi Chen, Tasmin Asfour