PbRL Preference Transformer

来源:https://www.cnblogs.com/viporz/p/18057008
-Advertisement-
Play Games

論文題目:Preference Transformer: Modeling Human Preferences using Transformers for RL,ICLR 2023,5 6 6 8,poster。 pdf:https://arxiv.org/pdf/2303.00957.pdf h ...


  • 論文題目:Preference Transformer: Modeling Human Preferences using Transformers for RL,ICLR 2023,5 6 6 8,poster。
  • pdf:https://arxiv.org/pdf/2303.00957.pdf
  • html:https://ar5iv.labs.arxiv.org/html/2303.00957
  • open review:https://openreview.net/forum?id=Peot1SFDX0
  • 項目網站:https://sites.google.com/view/preference-transformer
  • GitHub:https://github.com/csmile-1006/PreferenceTransformer

 

論文題目:Preference Transformer: Modeling Human Preferences using Transformers for RL,ICLR 2023,5 6 6 8,poster。

pdf:https://arxiv.org/pdf/2303.00957.pdf

html:https://ar5iv.labs.arxiv.org/html/2303.00957

open review:https://openreview.net/forum?id=Peot1SFDX0

項目網站:https://sites.google.com/view/preference-transformer

GitHub:https://github.com/csmile-1006/PreferenceTransformer

道符網:https://www.sehmu.com


內容總結
(為什麼感覺挺 A+B 的,有點想不明白為何會中…… 不過 writing 貌似很好)
提出了新的 preference model,σ0>σ1 的概率仍然是 exp / (exp + exp) 的形式,但 exp[] 裡面的內容從 reward 求和(discounted reward 求和)變成 Σ r · w,其中 w 是一個 importance weight。
這裡的 motivation:
① human preference 可能基於 non-Markovian reward,因此用 transformer 建模 trajectory,作為 reward model 的一部分;
② human 可能會關註關鍵幀,因此需要一個 importance weight,為先前提到的 non-Markovian reward 加權。
然後,利用 attention layer 的 key query value 形式,將 value 作為 reward,softmax(key · query) 作為 importance weight。(正好跟 attention 的形式 match 上)
0 abstract
Preference-based reinforcement learning (RL) provides a framework to train agents using human preferences between two behaviors. However, preference-based RL has been challenging to scale since it requires a large amount of human feedback to learn a reward function aligned with human intent. In this paper, we present Preference Transformer, a neural architecture that models human preferences using transformers. Unlike prior approaches assuming human judgment is based on the Markovian rewards which contribute to the decision equally, we introduce a new preference model based on the weighted sum of non-Markovian rewards. We then design the proposed preference model using a transformer architecture that stacks causal and bidirectional self-attention layers. We demonstrate that Preference Transformer can solve a variety of control tasks using real human preferences, while prior approaches fail to work. We also show that Preference Transformer can induce a well-specified reward and attend to critical events in the trajectory by automatically capturing the temporal dependencies in human decision-making.

background:
PbRL 框架用於在兩種行為之間使用 human preference 來訓練 agent。然而,需要大量 human feedback,來學習與人類意圖一致的 reward model。
method:
在本文中,我們介紹了 preference transformer,使用 transformer 架構模擬 human preference。
以前方法假設,人類判斷基於 Markovian reward,而 Markovian reward 對決策的貢獻相同。與先前工作不同,我們引入了一種 preference model,該模型基於 non-Markovian reward 的加權和。
然後,我們在 preference model 的 transformer 設計里,堆疊 causal self-attention layers 和 bidrectional self-attention layers。
results:
Preference Transformer 可以使用真實 human feedback 來解決各種控制任務,而以前的方法無法奏效。
Preference Transformer 可以通過自動捕獲人類決策中的時間依賴性(temporal dependencies),來得到一個 well-specified reward 並關註軌跡中的關鍵事件。
open review 與項目網站
open review:
主要貢獻:① 提出了一個基於 non-Markovian reward 加權和的新 preference model,② 引入 PT 來模擬所提出的 preference model。
如果獎勵實際上是 non-Markovian 的,那麼 Transformer 的想法是有動機的(well motivated)。
The paper is well written. 論文寫得很好。
scripted evaluation(大概是 scripted teacher)使用 Markovian reward,但 NMR(non-Markovian reward)和 PT 仍能在多個領域優於 MR(Markovian reward)變體。這需要得到更好的解釋和評估。事實上,應該使用 non-Markovian reward 進行評估。
項目網站:
Preference Transformer 將 trajectory segment 作為輸入,從而提取與任務相關的歷史信息。
通過堆疊 bidirectional 和 causal self-attention layers,Preference Transformer 生成 non-Markovian reward 和重要性權重(importance weights)作為輸出。(貌似 importance weight 越高,某幀在整個 trajectory 里越重要)
我們利用它們來定義 preference model,併發現 PT 可以得到 better-shaped reward,並從 human preference 中關註關鍵事件。
實驗證明,PT 可用於學習複雜的新行為(Hopper 多次後空翻),這很難設計合適的獎勵函數。與單個後空翻相比,這項任務更具挑戰性,因為獎勵函數必須捕獲 non-Markovian 上下文,包括旋轉次數(有必要嘛?)。觀察到,PT agent 在穩定著陸的情況下執行多個後空翻,而基於 MLP 的 Markovian reward 的 agent 很難著陸。
1 基於 non-Markovian reward 的 preference model
motivation:
首先,在許多情況下,很難使用 Markovian reward 來給出任務的描述。
此外,由於人類對於非凡的時刻很敏感,因此可能需要在軌跡內分配 credit(大概是權重的意思)。
non-Markovian reward function:
reward function 的輸入:先前的完整的 sub-trajectory。
同時再整一個權重函數 w = w({s, a, s, ...}),其輸入也是 t 時刻之前的完整 sub-trajectory。
用 r(τ) · w(τ) 來改寫

(

1


0
)
=
[
exp

(



(


)


(


)
)
]
/
[
exp

(




)

0
+
exp

(




)

1
]
的公式。
2 PT 的架構
感覺 causal transformer 相對好理解,以及 GPT 具有 causally masked self-attention。
preference attention layer:
causal transformer 生成的 {x, x, ...} sequence,過一個線性層,會得到它們的 key query value。
認為得到的這個 value 就是 reward,而 key 與 query 相乘再 softmax(保證>0)則是權重。
好像這隻是一個 reward model,而非 RL policy(?)
學到 reward model 後,還需要使用 IQL 學 policy…

3 PT 的訓練與 inference
training:最小化 cross-entropy loss

=


[
(
1


)
log


[

0


1
]
+

log


[

1


0
]
]
,其中 y 是 label,P 是我們訓練的概率。
inference:如何得出 agent 的 reward。
好像是直接拿 reward(而非 reward · importance weight)來做。
大致流程:拿 st, at, s, ... 送進 causal transformer,然後得到 xt, ...,送進 preference attention layer,得到 r hat,單獨取出 r hat。
4 experiments
關註的問題:

Preference Transformer 能否使用真實的人類偏好解決複雜的控制任務?
PT 能否 induce 一致(consistent)的 reward 並關註關鍵事件?
PT 在合成偏好(synthetic preferences,即 scripted teacher setting)中的表現如何?
baseline:

技術路線:preference → reward model → IQL。
1 MLP 的 Markovian reward。
2 基於 LSTM 的 non-Markovian reward。
results:

PT 在幾乎所有任務中,都始終優於所有 baselines。特別的,只有 PT 幾乎將 IQL 的性能與使用 ground-truth reward 相匹配,而 baselines 在困難的任務中基本不 work。
讓 PT 和 Markovian 或 LSTM agent 分別生成 trajectory,讓 human 評價哪個更好,human 評價 PT 更好。
在所謂的“PT 是否可以誘導(induce)一個明確(well-specified)的獎勵”這一段,好像也只是感性分析了一下…
在比較 scripted teacher 和 human 時,因為 scripted teacher 不能理解 contex,所以 human preference 反而在簡單任務上表現更好;並且,它們的 preference 會在簡單的 grid-world 中發生分歧。
學習複雜的新行為:很炫酷的 hopper 空中多個後空翻的 demo。
5 好像很有道理的 future work
在 RL 或 PbRL 中利用重要性權重,或許可以用於對信息量更大的 query / samples 進行採樣,這可以提高 sample-efficiency。
使用重要性權重,通過加權更新,來穩定 Q 學習。
與其他偏好模型結合:例如 Knox et al.(2022)的基於 regret 的 preference model(title: Models of human preference for learning reward functions),儘管他們提出的方法基於幾個假設(例如,生成後續特征(Dayan,1993;Barreto et al., 2017)),與基於遺憾的模型相結合會很有趣。

內容總結

  • (為什麼感覺挺 A+B 的,有點想不明白為何會中…… 不過 writing 貌似很好)
  • 提出了新的 preference model,σ0>σ1 的概率仍然是 exp / (exp + exp) 的形式,但 exp[] 裡面的內容從 reward 求和(discounted reward 求和)變成 Σ r · w,其中 w 是一個 importance weight。
  • 這裡的 motivation:
    • ① human preference 可能基於 non-Markovian reward,因此用 transformer 建模 trajectory,作為 reward model 的一部分;
    • ② human 可能會關註關鍵幀,因此需要一個 importance weight,為先前提到的 non-Markovian reward 加權。
  • 然後,利用 attention layer 的 key query value 形式,將 value 作為 reward,softmax(key · query) 作為 importance weight。(正好跟 attention 的形式 match 上)

0 abstract

Preference-based reinforcement learning (RL) provides a framework to train agents using human preferences between two behaviors. However, preference-based RL has been challenging to scale since it requires a large amount of human feedback to learn a reward function aligned with human intent. In this paper, we present Preference Transformer, a neural architecture that models human preferences using transformers. Unlike prior approaches assuming human judgment is based on the Markovian rewards which contribute to the decision equally, we introduce a new preference model based on the weighted sum of non-Markovian rewards. We then design the proposed preference model using a transformer architecture that stacks causal and bidirectional self-attention layers. We demonstrate that Preference Transformer can solve a variety of control tasks using real human preferences, while prior approaches fail to work. We also show that Preference Transformer can induce a well-specified reward and attend to critical events in the trajectory by automatically capturing the temporal dependencies in human decision-making.

  • background:
    • PbRL 框架用於在兩種行為之間使用 human preference 來訓練 agent。然而,需要大量 human feedback,來學習與人類意圖一致的 reward model。
  • method:
    • 在本文中,我們介紹了 preference transformer,使用 transformer 架構模擬 human preference。
    • 以前方法假設,人類判斷基於 Markovian reward,而 Markovian reward 對決策的貢獻相同。與先前工作不同,我們引入了一種 preference model,該模型基於 non-Markovian reward 的加權和。
    • 然後,我們在 preference model 的 transformer 設計里,堆疊 causal self-attention layers 和 bidrectional self-attention layers。
  • results:
    • Preference Transformer 可以使用真實 human feedback 來解決各種控制任務,而以前的方法無法奏效。
    • Preference Transformer 可以通過自動捕獲人類決策中的時間依賴性(temporal dependencies),來得到一個 well-specified reward 並關註軌跡中的關鍵事件。

open review 與項目網站

  • open review:
    • 主要貢獻:① 提出了一個基於 non-Markovian reward 加權和的新 preference model,② 引入 PT 來模擬所提出的 preference model。
    • 如果獎勵實際上是 non-Markovian 的,那麼 Transformer 的想法是有動機的(well motivated)。
    • The paper is well written. 論文寫得很好。
    • scripted evaluation(大概是 scripted teacher)使用 Markovian reward,但 NMR(non-Markovian reward)和 PT 仍能在多個領域優於 MR(Markovian reward)變體。這需要得到更好的解釋和評估。事實上,應該使用 non-Markovian reward 進行評估。
  • 項目網站:
    • Preference Transformer 將 trajectory segment 作為輸入,從而提取與任務相關的歷史信息。
    • 通過堆疊 bidirectional 和 causal self-attention layers,Preference Transformer 生成 non-Markovian reward 和重要性權重(importance weights)作為輸出。(貌似 importance weight 越高,某幀在整個 trajectory 里越重要)
    • 我們利用它們來定義 preference model,併發現 PT 可以得到 better-shaped reward,並從 human preference 中關註關鍵事件。
    • 實驗證明,PT 可用於學習複雜的新行為(Hopper 多次後空翻),這很難設計合適的獎勵函數。與單個後空翻相比,這項任務更具挑戰性,因為獎勵函數必須捕獲 non-Markovian 上下文,包括旋轉次數(有必要嘛?)。觀察到,PT agent 在穩定著陸的情況下執行多個後空翻,而基於 MLP 的 Markovian reward 的 agent 很難著陸。

1 基於 non-Markovian reward 的 preference model

  • motivation:
    • 首先,在許多情況下,很難使用 Markovian reward 來給出任務的描述。
    • 此外,由於人類對於非凡的時刻很敏感,因此可能需要在軌跡內分配 credit(大概是權重的意思)。
  • non-Markovian reward function:
    • reward function 的輸入:先前的完整的 sub-trajectory。
    • 同時再整一個權重函數 w = w({s, a, s, ...}),其輸入也是 t 時刻之前的完整 sub-trajectory。
    • 用 r(τ) · w(τ) 來改寫 �(�1≻�0)=[exp⁡(∑��(��)⋅�(��))]/[exp⁡(∑�⋅�)�0+exp⁡(∑�⋅�)�1] 的公式。

2 PT 的架構

  • 感覺 causal transformer 相對好理解,以及 GPT 具有 causally masked self-attention。
  • preference attention layer:
    • causal transformer 生成的 {x, x, ...} sequence,過一個線性層,會得到它們的 key query value。
    • 認為得到的這個 value 就是 reward,而 key 與 query 相乘再 softmax(保證>0)則是權重。
  • 好像這隻是一個 reward model,而非 RL policy(?)
    • 學到 reward model 後,還需要使用 IQL 學 policy…
Refer to caption

3 PT 的訓練與 inference

  • training:最小化 cross-entropy loss �=−�[(1−�)log⁡�[�0≻�1]+�log⁡�[�1≻�0]] ,其中 y 是 label,P 是我們訓練的概率。
  • inference:如何得出 agent 的 reward。
    • 好像是直接拿 reward(而非 reward · importance weight)來做。
    • 大致流程:拿 st, at, s, ... 送進 causal transformer,然後得到 xt, ...,送進 preference attention layer,得到 r hat,單獨取出 r hat。

4 experiments

關註的問題:

  • Preference Transformer 能否使用真實的人類偏好解決複雜的控制任務?
  • PT 能否 induce 一致(consistent)的 reward 並關註關鍵事件?
  • PT 在合成偏好(synthetic preferences,即 scripted teacher setting)中的表現如何?

baseline:

  • 技術路線:preference → reward model → IQL。
  • 1 MLP 的 Markovian reward。
  • 2 基於 LSTM 的 non-Markovian reward。

results:

  • PT 在幾乎所有任務中,都始終優於所有 baselines。特別的,只有 PT 幾乎將 IQL 的性能與使用 ground-truth reward 相匹配,而 baselines 在困難的任務中基本不 work。
  • 讓 PT 和 Markovian 或 LSTM agent 分別生成 trajectory,讓 human 評價哪個更好,human 評價 PT 更好。
  • 在所謂的“PT 是否可以誘導(induce)一個明確(well-specified)的獎勵”這一段,好像也只是感性分析了一下…
  • 在比較 scripted teacher 和 human 時,因為 scripted teacher 不能理解 contex,所以 human preference 反而在簡單任務上表現更好;並且,它們的 preference 會在簡單的 grid-world 中發生分歧。
  • 學習複雜的新行為:很炫酷的 hopper 空中多個後空翻的 demo。

5 好像很有道理的 future work

  • 在 RL 或 PbRL 中利用重要性權重,或許可以用於對信息量更大的 query / samples 進行採樣,這可以提高 sample-efficiency。
  • 使用重要性權重,通過加權更新,來穩定 Q 學習。
  • 與其他偏好模型結合:例如 Knox et al.(2022)的基於 regret 的 preference model(title: Models of human preference for learning reward functions),儘管他們提出的方法基於幾個假設(例如,生成後續特征(Dayan,1993;Barreto et al., 2017)),與基於遺憾的模型相結合會很有趣。

您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • Spring Boot允許外部化項目配置,以便您可以在不同的環境中使用相同的應用程式代碼。您可以使用各種外部配置源,包括Java屬性文件、YAML文件、環境變數和命令行參數。 屬性值可以通過使用@Value註釋直接註入到bean中,通過Spring的環境抽象進行訪問,或者通過@Configurati ...
  • druid-spring-boot-3-starter目前最新版本是1.2.20,雖然適配了SpringBoot3,但缺少自動裝配的配置文件,會導致載入時報載入驅動異常。 <dependency> <groupId>com.alibaba</groupId> <artifactId>druid-sp ...
  • 獨立樣本T檢驗適用於比較兩組獨立樣本的均值差異,而配對T檢驗則適用於比較同一組樣本在不同條件下的均值差異。在Python中,我們可以利用scipy庫進行T檢驗的實現和結果判斷。通過比較P值與顯著性水平,我們可以判斷兩組樣本均值是否存在顯著差異。T值的大小也對判斷兩組樣本均值差異的統計學意義起著重要作... ...
  • STL STL提供了六大組件,彼此之間可以組合套用,這六大組件分別是:容器、演算法、迭代器、仿函數、適配器、空間配置器。 數據結構和容器管理:STL 提供了多種數據結構和容器,如向量(vector)、鏈表(list)、集合(set)、映射(map)等。這些容器可以幫助程式員方便地存儲和管理數據,根據需 ...
  • import java.awt.Color; import java.awt.Font; import java.io.IOException; import java.io.OutputStream; import java.util.ArrayList; import java.util.Lis ...
  • 介面 在 Java 中,實現抽象的另一種方式是使用介面。 介面定義 介面是一個完全抽象的類,用於將具有空方法體的相關方法分組: // 介面 interface Animal { public void animalSound(); // 介面方法(沒有具體實現體) public void run() ...
  • 既然Python是一門全球流行的語言,那麼對於網路通信的HTTP的支持肯定也是非常的優秀的。Python中原生的urllib模塊也有對HTTP的支持,雖然也可以用來發送 HTTP 請求,但使用起來相對繁瑣,並且 API 設計不夠直觀。 requests 庫的出現填補了 Python 在 HTTP 請 ...
  • - 什麼是狀態?狀態有什麼作用? - 如果你來設計,對於一個流式服務,如何根據不斷輸入的數據計算呢? - 又如何做故障恢復呢? ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...