OpenAI 使用參數雜訊實現更好的探索

OpenAI 已證明,在強化學習 (RL) 演算法的參數中加入適應性雜訊,通常能提高性能並加速學習過程。這種技術提供了一種比傳統動作空間雜訊更一致的探索形式,使其成為各種 RL 問題的通用補充。

參數雜訊 vs. 動作空間雜訊

參數雜訊直接將隨機性注入代理人神經網路策略的參數中,確保代理人的決策仍然完全依賴於其當前的感官輸入。這與傳統 RL 探索方式的不同之處如下:

  • 動作空間雜訊: 傳統 RL 會改變動作在不同時刻之間的發生機率,導致不可預測的探索,且與代理人的特定參數不相關。
  • 參數空間雜訊: 透過改變參數本身,代理人的探索在不同時間步長之間保持一致,從而產生更優雅的行為和更高的分數。

這種方法作為演化策略(在展開過程中操縱策略參數而不影響動作)與 TRPO、DQN 和 DDPG 等深度 RL 方法(通常在動作空間中加入雜訊)之間的中間地帶。

連續控制中的性能增益

參數雜訊允許代理人比傳統方法更迅速地掌握任務。在 HalfCheetah Gym 環境中,使用參數雜訊訓練的策略在 20 個回合 (episodes) 後獲得了約 3,000 分,而使用傳統動作雜訊的策略僅達到約 1,500 分。

技術實作與挑戰

OpenAI 在將參數雜訊應用於深度神經網路時,確定了三個主要挑戰,並為每個挑戰實施了特定的技術解決方案:

1. 層敏感度

不同的網路層對擾動表現出不同的敏感度。OpenAI 利用了 layer normalization 以確保擾動層的輸出在成為下一層的輸入之前,仍保持在相似的分布中。

2. 權重敏感度與可預測性

策略權重的敏感度在訓練期間可能會發生變化,使得動作預測變得困難。OpenAI 引入了一種 adaptive scheme,透過測量參數空間擾動對動作空間的影響來調整參數空間擾動的大小。

3. 雜訊規模選擇

在參數空間中選擇正確的雜訊規模是直覺不足的。適應性方案解決了這個問題,透過將選擇雜訊規模的問題轉移到更易於研究人員理解的 action space,從而解決此問題。

演算法相容性與基準測試

OpenAI 已將參數雜訊的使用擴展到 on-policy 和 off-policy 演算法。包含此技術的基準代碼已針對以下演算法發佈:

  • DQN
  • Double DQN
  • Dueling DQN
  • Dueling Double DQN
  • DDPG

這些實作的基準測試包括 DDQN 在 Atari 遊戲子集上的性能,以及三種 DDPG 變體在 Mujoco 模擬器中各種連續控制任務中的表現。

DQN 實作的開發洞察

在早期開發期間,OpenAI 最初在 DQN 中加入了一個獨立的策略頭 (policy head),以防止極端的擾動導致演算法重複執行相同的動作。然而,隨後的實驗顯示,這個獨立的策略頭是不必要的。透過改進雜訊重新縮放的方式,團隊以更簡單、成本更低的實作方式達到了類似的結果。OpenAI 指出,這強調了強化學習中一個常見的問題,即演算法可能會「靜默且微妙地失敗」,進而可能導致開發者為一些可以更簡單解決的錯誤而設計複雜的解決方案。

Sources