RIME:用交叉熵 loss 大小分辨 preference 是否正確 + 內在獎勵預訓練 reward model

MoonOut發表於2024-07-25

  • 文章題目:RIME: Robust Preference-based Reinforcement Learning with Noisy Preferences,ICML 2024 Spotlight,3 6 8(?)
  • pdf:https://arxiv.org/pdf/2402.17257
  • html:https://arxiv.org/html/2402.17257v3https://ar5iv.labs.arxiv.org/html/2402.17257v3
  • GitHub:https://github.com/CJReinforce/RIME_ICML2024

0 abstract

Preference-based Reinforcement Learning (PbRL) circumvents the need for reward engineering by harnessing human preferences as the reward signal. However, current PbRL methods excessively depend on high-quality feedback from domain experts, which results in a lack of robustness. In this paper, we present RIME, a robust PbRL algorithm for effective reward learning from noisy preferences. Our method utilizes a sample selection-based discriminator to dynamically filter out noise and ensure robust training. To counteract the cumulative error stemming from incorrect selection, we suggest a warm start for the reward model, which additionally bridges the performance gap during the transition from pre-training to online training in PbRL. Our experiments on robotic manipulation and locomotion tasks demonstrate that RIME significantly enhances the robustness of the state-of-the-art PbRL method. Code is available at https://github.com/CJReinforce/RIME_ICML2024.

  • background 和 gap:基於偏好的強化學習 (PbRL) 透過利用人類偏好作為獎勵訊號,來規避獎勵工程的需求。然而,目前的 PbRL 方法過度依賴專家的高質量反饋,導致缺乏魯棒性。
  • method:在本文中,我們介紹了 RIME,這是一種魯棒的 PbRL 演算法,用於從嘈雜的偏好中有效地進行獎勵學習。
    • 1 利用一個基於樣本選擇的鑑別器(discriminator),動態過濾噪聲,確保魯棒訓練。
    • 2 為了抵消因錯誤選擇而產生的累積誤差(?),提出 reward model 的熱啟動(warm start),這進一步彌合了 PbRL 中的 pretrain → 正式訓練 的效能差距。
  • 實驗:在機器人操作(Meta-world)和運動任務(DMControl)上的實驗表明,RIME 顯著增強了最先進的 PbRL 方法(指 pebble)的穩健性。

1 intro

  • background:PbRL 省去 reward engineering,PbRL 好。
  • gap 1:PbRL 假設 preference 都是專家打的、沒有錯誤,但人類是容易犯錯的。
  • gap 2:從 noisy 的標籤中學習,也稱為魯棒訓練。
    • Song et al. ( 2022) 將魯棒訓練方法分為四個關鍵類別:魯棒架構 (Cheng et al., 2020)、魯棒正則化 (Xia et al., 2020)、魯棒損失設計 (Lyu & Tsang, 2019) 和樣本選擇 (Li et al., 2020;Song 等人,2021 年)。
    • 然而,把它們整合到 PbRL 中很難,貌似因為 1 需要大量樣本,而 PbRL 的 feedback 數量(我們常跑的幾個 benchmark)最多幾萬;2 RL 訓練期間有 distribution shift,破壞了 i.i.d(獨立同分布)輸入資料的假設,這是支援穩健訓練方法的核心原則。
  • 我們提出了 RIME(Robust preference-based reInforcement learning via warM-start dEnoising discriminator),據他們生成是第一個研究 PbRL noisy label 的工作(?)
  • 主要方法:
    • 1 使用一個 discriminator,用一個閾值找到認為正確的樣本 \(\mathcal D_t\),再用一個閾值找到 看起來很錯誤的樣本 \(\mathcal D_f\),將其翻轉,最後我們使用的樣本是 \(\mathcal D_t \cup\mathcal D_f\)
    • 具體的,這裡的閾值是交叉熵 loss,有一個理論,感覺很 intuitive,是好工作ww
    • 2 用預訓練的 intrinsic reward,初始化訓一下 reward model。
    • 具體的,要在預訓練時就歸一化 intrinsic reward 到 (-1,1),這是因為 reward model 一般採用 tanh 做啟用函式,而 tanh 的輸出是 (-1,1)。
  • PbRL。
  • learning from noisy labels:
    • 把 intro 的介紹又說了一遍。
    • 提到,在 PbRL 背景下,Xue 等人(2023 年)提出了一種編碼器-解碼器架構,來模擬不同的人類偏好,但是相比 RIME 的工作,大概需要 100 倍的 preference 數量。
  • Policy-to-Value Reincarnating RL(PVRL):
    • Reincarnate:vt,使投胎、轉世、賦予新形體。
    • PVRL,指將次優的 teacher policy 轉移到一個 value-based 的 student RL agent(Agarwal 等人,2022 年)。
    • 啟發:Uchendu et al. ( 2023) 發現,PVRL 中隨機初始化的 Q 網路,會導致 teacher policy 很快被遺忘。
    • gap:在廣泛採用的 PbRL pipeline 中,PVRL 挑戰也出現在從 pretrain 到 online training 的過渡過程中,但在以前的研究中被忽視了。在 noisy feedback 下,忘記預訓練策略的問題變得更加重要,詳見第 4.2 節。
    • (這裡的預訓練指的是 pebble 等工作的 比如說 最大熵預訓練策略。
    • 引出 reward model 的熱啟動。

3 preliminaries

  • PbRL。
  • Unsupervised Pre-training in PbRL:講了 pebble 的預訓練。
  • Noisy Preferences in PbRL:講了 BPref 的模仿人類 scripted teacher,使用 error teacher。

4 method: RIME

4.1 RIME 的 denoising discriminator

  • 省流:用各個 (σ0, σ1, p) 的 CELoss 大小,來判斷它是正確 / 錯誤樣本,並翻轉所有錯誤樣本的 p。
  • 為什麼用交叉熵 loss 來判斷 是 正確 / 錯誤樣本?
    • 現有研究表明,深度神經網路首先學習可泛化的模式,然後再過度擬合資料中的噪聲(Arpit et al., 2017; Li 等人, 2020 年)。
    • 因此,將與較小損失相關的 sample 優先為正確樣本,是提高穩健性的有充分依據的方法。(其實沒太理解)
  • 回顧 交叉熵與 KL 散度的關係
  • 如何確定交叉熵 loss 的閾值?
    • 定理 4.1,假設乾淨資料的 x 交叉熵 loss 以 ρ 為界,即 \(\mathcal L^\text{CE}(x)\le\rho\) ;則有,損壞樣本 x 的預測偏好 \(P_\psi(x)\) ,和 \(\tilde y(x)=1-y\) 之間的 KL 散度,下限為 \(D_{\mathrm{KL}}(\tilde{y}(x)\parallel P_{\psi}(x))\geq-\ln\rho+\frac{\rho}{2}+O(\rho^{2})\)
    • 然後,我們制定 KL 散度閾值的下限 \(\tau_\text{base}=\ln \rho+\alpha\rho\),以過濾掉不可信樣本。其中,\(\rho\) 表示上次更新期間觀察到的 可信樣本的最大交叉熵 loss,\(\alpha\in(0,0.5]\) 是可調的超引數。
    • 但是還要考慮 distribution shift 問題。為了在 distribution shift 的情況下,增加對乾淨樣本的 tolerance,我們引入一個輔助項 \(\tau_\text{unc}=\beta_t\cdot s_\mathrm{KL}\) ,來表徵過濾的不確定性,其中 \(\beta_t=\max(\beta_\min,\beta_\max-kt)\) 是隨時間變化的引數(β max = 3, β min = 1), \(s_\mathrm{KL}\) 是 KL 散度的標準差(看起來是 \(D_{\mathrm{KL}}(\tilde{y}(x)\parallel P_{\psi}(x))\) 的 KL 散度)。這裡的 intuition 是,訓到 OOD 資料可能導致 CELoss 的波動(其實也沒太聽懂)
  • 識別可信樣本的資料集: \(D_t=\{(\sigma^0,\sigma^1,\tilde{y}) | D_{\mathrm{KL}}(\tilde{y}\parallel P_\psi(\sigma^0,\sigma^1))<\tau_{\mathrm{lower}}\}\) ,其中 \(\tau_{\mathrm{lower}}=\tau_{\mathrm{base}}+\tau_{\mathrm{unc}}=-\ln\rho+\alpha\rho+\beta_{t}\cdot s_{\mathrm{KL}}\)
  • 識別不可信樣本的資料集: \(D_f=\{(\sigma^0,\sigma^1,\tilde{y}) | D_{\mathrm{KL}}(\tilde{y}\parallel P_\psi(\sigma^0,\sigma^1))>\tau_{\mathrm{upper}}\}\)\(\tau_{\mathrm{upper}}\) 貌似是預先定義的值,定義成 \(3\ln(10)\) 了。 然後翻轉 Df,將翻轉後的 Df 與 Dt 並起來,拿去訓 reward model。

4.2 reward model 的 warm start

  • 省流:用 intrinsic reward 訓一下 reward model。
  • 觀察:
    • 觀察到在從預訓練到線上訓練的過渡過程中,效能顯著下降(見圖 2)。在 noisy feedback的 setting 下,這種差距是可以明顯觀察到的,並且對魯棒性是致命的。
    • 在預訓練後,PEBBLE 會重置 Q 網路,僅保留預訓練的 policy。由於 Q 網路學的是最小化 noisy feedback 的 reward model 下的 TD-error,因此這種 biased Q 函式會導致 policy 學的不好,從而抹去預訓練期間的收益。
  • reward model 的 warm start:
    • 具體來說,我們在預訓練階段,先拿 intrinsic reward 訓一下 reward model。
    • 由於 reward model 的輸出層通常使用 tanh 啟用函式(Lee et al., 2021b),因此我們首先將內在獎勵歸一化到 (-1,1),使用當前已獲得的 intrinsic reward 的 mean \(\hat r\) 和 variance \(\sigma_r\) 來做: \(r_{\mathrm{norm}}^{\mathrm{int}}(\mathbf{s}_t)=\mathrm{clip}(\frac{r^{\mathrm{int}}(\mathbf{s}_t)-\hat r}{3\sigma_r},-1+\delta,1-\delta)\)
    • 預訓練 reward model 的資料,貌似就是 \((s_t,a_t,r_{\mathrm{norm}}^{\mathrm{int}},s_{t+1})\) ,而不是用 segment 的形式。(這裡提到一個最近鄰,我沒太看懂w)

4.3 整體演算法流程

在附錄 A 放了虛擬碼。在附錄 A 放虛擬碼,真是好文明。

關鍵點:

  • 預訓練與 reward model 的 warm start:
    • 第 5 行,收集的 intrinsic reward 是歸一化過的。
    • 第 10 行,訓 reward model 用的是 \(r_{\mathrm{norm}}^{\mathrm{int}}\)\(\hat r\) 的 MSE,而非 segment。
  • 鑑別錯誤 preference 的 denoising discriminator:
    • 第 13 行,初始化 ρ 為正無窮。
    • 第 19 行,算 辨別可信樣本的閾值 τ lower。
    • 第 24 行,用 可信樣本 ∪ 錯誤樣本翻轉 的資料集,來算新 ρ,其中 ρ 是 KL 散度的下界。

5 experiments

  • setting:跟 pebble 一樣,三個 DMControl + 三個 Meta-world。
  • baselines: pebblesurfrune、MRN(MRN 我還沒看)。
  • error rate(即隨機挑選 (σ0,σ1,p) 並翻轉 p 的機率)是 0.1 到 0.3。
  • 大量 ablation:
    • 在 Appendix D.3 嘗試了更多種 noisy teacher,放在正文的表比的是 各種 noisy teacher 的 average。
    • 與其他穩健的訓練方法的比較:自適應去噪訓練 (ADT)(Wang 等人,2021 年),即丟棄一定比例的 CELoss 大的樣本,貌似效果不錯;使用 MAE 和 t-CE 作為替代 CELoss(?)的損失函式;使用標籤平滑 (LS)來處理所有 preference label(?)。
    • 居然有真 human,見 Appendix D.4。總反饋量和每個會話的反饋量分別為 100 和 10。任務是 hopper 後空翻(真假的,這麼好學(?)難道 hopper 後空翻是一個 只要控制變數拉到極限 就能一直後空翻 的任務嘛)。但是怎麼截圖變成了 OpenAI gym 而非 DMControl。
    • 增加 feedback 總數,可以有效提升效能。
    • 各個模組是否有效?當反饋數量相當有限時(即,在Walker-walk上),熱啟動對於魯棒性至關重要,可以節省 query 數量。


相關文章