Actor-Critic重要性采樣原理

目錄

AC的數據低效性:

根本原因:策略更新導致數據失效

應用場景:

1.?離策略值函數估計

2.?離策略策略優化

3.?經驗回放(Experience Replay)

4.?策略梯度方法

具體場景分析

場景1:連續策略更新

場景2:高維動作空間

為什么AC不能直接復用數據?

改進方案:向off-policy演化

原理:

重要性采樣的核心價值


在強化學習中,重要性采樣(Importance Sampling)?主要用于解決離策略(Off-policy)學習中的分布偏移問題。其核心應用場景是通過行為策略(Behavior Policy)?收集的樣本,來估計目標策略(Target Policy)?的期望值。

AC的數據低效性:

Actor-Critic(AC)算法作為典型的?on-policy 方法,其數據利用率低的核心原因在于策略更新與數據收集的強耦合性。以下是具體分析:


根本原因:策略更新導致數據失效

  1. 策略更新即數據淘汰

    • 每次策略 $\pi_{\theta}$ 更新后(參數$\theta$改變),新策略的動作分布 $\pi_{\theta_{\text{new}}}$ 與舊策略 \pi_{\theta_{\text{old}}}?不同

    • 舊策略收集的數據 $(s, a, r, s')$ 服從舊分布?$\pi_{\theta_{\text{old}}}(a|s)$,而更新后需要的是新分布?$\pi_{\theta_{\text{new}}}(a|s)$ 下的數據。

    • 結果:舊數據立即失效,必須重新采樣。

  2. 數學本質
    策略梯度更新依賴當前策略的期望:

    若用舊策略$\pi_{\theta_{\text{old}}}$ 的數據估計期望,需引入重要性權重:

    但原生AC算法,是一個on-policy算法,直接丟棄舊數據,不進行修正。

\bigtriangledown_{\theta} J(\theta_t)=\Xi _{S \sim \eta ,A\sim \pi}[*]

也就是: target policy == behaivor policy,那么當每次target policy發生變化時,都需要進行重新采樣,如何轉化為off-policy?從而提高數據利用率:可以通過imortance sampling來實現

應用場景:

1.?離策略值函數估計
  • 問題:目標策略 $\pi$的期望回報 $\mathbb{E}_{\pi}[G_t]$ 無法直接采樣(如目標策略是確定性策略,而采樣策略是探索性策略)。

  • 解決方案
    使用行為策略 $b$生成的軌跡樣本,通過重要性權重修正分布偏差:

    其中 $\rho_t$ 是從時刻 $t$ 到終止時刻 $T$ 的累積重要性權重。

2.?離策略策略優化
  • 算法示例

    • Off-policy Actor-Critic(如ACER)

    • Q-Learning的方差縮減(使用加權重要性采樣)

  • 原理
    通過重要性權重重用舊策略的樣本更新新策略,減少環境交互次數,提升樣本效率。

3.?經驗回放(Experience Replay)
  • 場景
    在DQN等算法中,回放池中的經驗由歷史策略生成,與當前策略分布不一致。

  • 解決方案
    對每個樣本 $(s,a,r,s')$ 計算重要性權重 $\frac{\pi(a|s)}{b(a|s)}$,修正Q值更新:

4.?策略梯度方法
  • 問題
    策略梯度$\nabla_\theta J(\theta) = \mathbb{E}{\pi\theta}[\nabla_\theta \log \pi_\theta(a|s) Q^{\pi}(s,a)]$依賴當前策略樣本。

  • 重要性采樣作用
    重用舊策略 $\pi_{\theta_{\text{old}}}$ 的樣本計算梯度:

    應用在PPOTRPO等算法中。

具體場景分析

場景1:連續策略更新
  • AC流程
    收集數據 → 更新Critic → 更新Actor → 丟棄數據 → 重新收集數據

  • 效率瓶頸
    90%的時間花在數據收集上,僅10%用于計算更新。

  • :訓練一個Atari游戲,AC需2000萬幀數據,而off-policy的DQN僅需1000萬幀。

場景2:高維動作空間
  • 問題
    高維空間(如機器人控制)需大量樣本覆蓋動作分布,但AC每次更新后舊樣本作廢。

  • 后果
    智能體陷入局部最優,需額外探索新區域,進一步降低效率。

為什么AC不能直接復用數據?

  1. 理論限制
    策略梯度定理要求期望基于當前策略分布($\mathbb{E}{a \sim \pi{\theta}}$)。

  2. 實踐風險
    若強行復用舊數據,梯度估計偏差隨策略差異增大而爆炸(見下圖)。

| 策略差異 (KL散度) | 梯度偏差 | 效果               |
|-------------------|----------|--------------------|
| 小 (<0.01)        | 低       | 可用               |
| 中 (0.01~0.1)     | 中       | Q值估計失真        |
| 大 (>0.1)         | 高       | 訓練崩潰           |

改進方案:向off-policy演化

為提升數據利用率,現代AC算法引入重要性采樣混合策略

算法核心改進數據利用率
PPO重要性采樣 + 權重裁剪 (Clip)中 (復用少量舊數據)
SAC最大熵框架 + 經驗回放高 (完全off-policy)
TD3雙Q網絡 + 延遲更新 + 經驗回放高 (完全off-policy)
A3C異步并行采樣 (數據并行)低 (但加速采樣過程)

:PPO雖復用數據,但其重要性權重 $\frac{\pi_{\text{new}}}{\pi_{\text{old}}}$ 的方差限制了復用次數(通常僅3-10次)。

原理:

根據p_0分布來生成樣本x_i

期望:\mathbf{E}[x_i] = \mathbf{E}[X],?var [x_i] = var[X]

n \rightarrow \infty, 平均值可以近似期望:\bar{x} = \frac{1}{n}\sum_{i=1}^{n}x_i \rightarrow \mathbf{E}[X]

\mathbf{E}[\bar{x}] = \mathbf{E}[X],var[\bar{x}]=\frac{1}{n}var[X]

如果樣本分布發生變化,變為分布p_1

p_1(X=+1)=0.8, p_1(X=-1)=0.2.

那么期望就變為:

\mathbf{E}_{X \sim p_1}[X] = (+1).0.8 + (-1).0.2 = 0.6

\bar{x} = \frac{1}{n}\sum_{i=1}^{n}x_i \rightarrow \mathbf{E}_{X \sim p_1}[X]=0.6 \neq \mathbf{E}_{X \sim p_0}[X]

問題:

在迭代過程中,策略的分布發生變化(p1 -> p0),如何還能夠利用之前生成的數據(p1)來進行繼續學習呢? 如果能夠基于behavior policy?\beta?產生的樣本來估計\mathbf{E}_{A \sim \pi}[*](其中\pi是目標policy)。

也就是基于{x_i} \sim p1來估計\mathbf{E}_{X \sim p_0}[X]?

我們就可以使用重要性采樣,對p_1分布數據進行采樣:

\mathbf{E}_{X \sim p_0}[X] = \sum_{x}^{}p_0(x)x = \sum_{x}^{}p_1(x)\frac{p_0(x)}{p_1(x)}x = \mathbf{E}_{X \sim p_1}[f(X)]

這樣我們可以通過\mathbf{E}_{X \sim p_1}[f(X)]來估計\mathbf{E}_{X \sim p_0}[f(X)]

如何估計\mathbf{E}_{X \sim p_1}[f(X)]

定義:\bar{f} = \frac{1}{n}\sum_{i=1}^{n}f(x_i ) \ where \ x_i \sim p_1

then:

\mathbf{E}_{X \sim p_1}[\bar{f}] = \mathbf{E}_{X \sim p_1}[f(X)]

var_{X \sim p_1}[\bar{f}] = \frac{1}{n}var_{X \sim p_1}[f(X)]

所以通過\bar{f}可以成功近似p_0分布:

\bar{f} = \frac{1}{n}\sum_{i=1}^{n}f(x_i ) =\frac{1}{n}\sum_{i=1}^{n}\frac{p_0(x_i)}{p_1(x_i)}x_i?

其中\frac{p_0(x_i)}{p_1(x_i)}?就是重要性權重。

- 如果兩者相等,那么重要性權重就是1,\bar{f} = \bar{x}

- 如果p_0(x_i) \geq p_1(x_i),那么就代表x_i更容易被p_0采樣到,而不是p_1,所以要加大權重,這樣的話就可以加強樣本的重要性。

為什么p_0(x)已知,為什么不直接期望?

這樣的話,通過重要性采樣,對p_1分布的數據進行采樣,就可以近似p_0(x)分布:

具體算法:

beta對應于p1

應用到梯度上升算法中:

相比AC失去探索性,由于分母beta不可變:

重要性采樣的核心價值

場景作用
離策略評估用行為策略樣本估計目標策略的值函數
策略優化重用歷史樣本更新策略,提升樣本效率
經驗回放修正回放池樣本的分布偏移
方差縮減結合加權重要性采樣穩定訓練

關鍵點:重要性采樣是強化學習中連接行為策略與目標策略的橋梁,其核心價值在于重復利用歷史數據,顯著提升采樣效率,但需謹慎處理方差問題。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/914283.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/914283.shtml
英文地址,請注明出處:http://en.pswp.cn/news/914283.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

【贈書福利,回饋公號讀者】《智慧城市與智能網聯汽車,融合創新發展之路》

「5G行業應用」公號作家團隊推出《智慧城市與智能網聯汽車&#xff0c;融合創新發展之路》。本書由機械工業出版社出版&#xff0c;探討如何通過車城融合和創新應用&#xff0c;促進汽車產業轉型升級與生態集群發展&#xff0c;提升智慧城市精準治理與出行服務效能。&#xff0…

5G NR PDCCH之處理流程

本節主要介紹PDCCH處理流程概述。PDCCH&#xff08;Physical Downlink Control Channel&#xff0c;物理下行控制信道&#xff09;主要用于傳輸DCI&#xff08;Downlink Control Information&#xff0c;下行控制信息&#xff09;&#xff0c;用于通知UE資源分配&#xff0c;調…

力扣網編程135題:分發糖果(貪心算法)

一. 簡介本文記錄力扣網上涉及數組方面的編程題&#xff1a;分發糖果。這里使用貪心算法的思路來解決&#xff08;求局部最優&#xff0c;最終求全局最優解&#xff09;&#xff1a;每個孩子只需要考慮與相鄰孩子的相對關系。二. 力扣網編程135題&#xff1a;分發糖果&#xff…

每日mysql

什么是Mysql索引最左匹配原則&#xff1f;最左匹配原則是指&#xff0c;在復合索引中&#xff0c;查詢條件需要從左到右和索引開始依次完全匹配的時候&#xff0c;復合索引才可以被有效使用。因為聯合索引在建立b樹的過程中是根據索引的順序從左到右進行排序的&#xff0c;所以…

樹莓派5-ollama-linux-arm64.tgz 下載

1.下載 由于官方下載速度太慢且容易失敗&#xff0c;我這里上傳了一份到云盤供大家下載&#xff1a; 通過網盤分享的文件&#xff1a;ollama-linux-arm64.tgz 鏈接: https://pan.baidu.com/s/1tx_OPpl-8O2HJfXlP4tXTg?pwdffwx 提取碼: ffwx --來自百度網盤超級會員v4的分享 …

2024年團體程序設計天梯賽

比賽鏈接 https://ac.nowcoder.com/acm/contest/80027 A&#xff1a; JMU-1 考察搜索的能力百度一下可知&#xff0c;2024 年天梯賽總決賽的比賽日為4 月 20日 參考代碼 //2024 年天梯賽總決賽的比賽日為4 月 20日 void solve(){//A20-7cout<<"H\n"; } B&…

基于CMMI的軟件質量管理體系深度解析

核心理念&#xff1a;CMMI&#xff08;Capability Maturity Model Integration&#xff09;是通過過程改進驅動質量提升的體系化框架&#xff0c;其本質是建立可量化、可重復、可優化的工程管理能力一、CMMI體系框架與演進 #mermaid-svg-MdDBl2P8fSHYDHMc {font-family:"t…

2025年滲透測試面試題總結-2025年HW(護網面試) 44(題目+回答)

安全領域各種資源&#xff0c;學習文檔&#xff0c;以及工具分享、前沿信息分享、POC、EXP分享。不定期分享各種好玩的項目及好用的工具&#xff0c;歡迎關注。 目錄 2025年HW(護網面試) 44 1. SQL注入常用函數 2. SQLMap爆當前庫名參數 3. Nmap探測系統參數 4. Nmap小寫 …

【操作系統-Day 5】通往內核的唯一橋梁:系統調用 (System Call)

Langchain系列文章目錄 01-玩轉LangChain&#xff1a;從模型調用到Prompt模板與輸出解析的完整指南 02-玩轉 LangChain Memory 模塊&#xff1a;四種記憶類型詳解及應用場景全覆蓋 03-全面掌握 LangChain&#xff1a;從核心鏈條構建到動態任務分配的實戰指南 04-玩轉 LangChai…

完整 Spring Boot + Vue 登錄系統

項目名稱&#xff1a;springboot-vue-login-template? 功能一覽模塊功能后端Spring Boot MyBatis Plus JWT Shiro數據庫MySQL 用戶表前端Vue3 Element Plus Axios登錄流程用戶名/密碼驗證 → 返回 Token → 存儲 LocalStorage權限控制攔截器校驗 Token Shiro 角色權限跨…

Redis 基礎詳細介紹(Redis簡單介紹,命令行客戶端,Redis 命令,Java客戶端)

1. Redis 簡介Redis&#xff08;Remote Dictionary Server&#xff09;是一個開源的內存數據庫&#xff0c;遵守 BSD 協議&#xff0c;它提供了一個高性能的鍵值&#xff08;key-value&#xff09;存儲系統&#xff0c;常用于緩存、消息隊列、會話存儲等應用場景。1.1 特征豐富…

C/C++數據結構之多維數組

概述多維數組&#xff0c;實際上就是“數組的數組”。最常見的是二維數組&#xff0c;就像一個表格&#xff0c;擁有行和列。而三維數組則可以想象為多個這樣的表格堆疊起來形成的一個立方體。依此類推&#xff0c;我們可以構建四維、五維甚至更高維度的數組。多維數組主要用于…

[Rust 基礎課程]選一個合適的 Rust 編輯器

市面上現在有很多編輯器都可以開發 Rust&#xff0c;很多都是以安裝 Rust 插件的形式來對 Rust 做支持&#xff0c;本課程使用 RustRover&#xff0c;如果你喜歡其他的編輯器&#xff0c;可以自己搗鼓下。 RustRover https://www.jetbrains.com/rust/ jetbrains 專門對于 Ru…

【零基礎學AI】第37講:提示詞工程(Prompt Engineering)

本節課你將學到 理解提示詞工程的核心原理 掌握5種實用的Prompt設計模式 學會優化提示詞的評估方法 實現一個智能問答系統優化案例 開始之前 環境要求 Python 3.8安裝包&#xff1a;pip install openai tiktokenOpenAI API密鑰&#xff08;免費注冊&#xff1a;https://plat…

莫蘭迪色系工作總結匯報PPT模版分享

莫蘭迪色工作總結PPT模版&#xff0c;莫蘭迪調色板PPT模版&#xff0c;莫蘭迪色系高級簡約PPT模版&#xff0c;莫蘭迪色系工作匯報&#xff0c;莫蘭迪總結匯報模版 莫蘭迪色系工作總結匯報PPT模版分享&#xff1a;https://pan.quark.cn/s/35bcaa03c837

uniapp的app項目,某個頁面長時間無操作,返回首頁

最開始想做成一個公共的&#xff0c;完全提取出來的一個組件&#xff0c;組件設置背景透明&#xff0c;到時候哪個頁面需要&#xff0c;直接引入組件就可以了&#xff0c;所以最開始做的是一個vue的組件&#xff0c;在組件中&#xff0c;監聽頁面的touchstart&#xff0c;但是這…

【實證分析】上市公司綠色戰略數據集(2000-2023年)

數據簡介&#xff1a;綠色戰略是指企業根據其所處的外部環境&#xff08;包括“綠色浪潮”等環保趨勢&#xff09;和企業自身的經營條件&#xff0c;為實現企業生存與發展質量的持續提升&#xff0c;而對企業生產經營活動進行綠色化改造的總體規劃。這包括制定企業綠色可持續發…

【SpringAI】7. 基于 milvus 的向量檢索

SpringAI 基于 milvus 的向量檢索 向量數據庫可以使用 milvus&#xff0c;redis,Elasticsearch 等&#xff0c;本文以 milvus 為例&#xff1a; 1. 啟動milvus 為了盡可能快速上手springai的vectordb功能&#xff0c;我們推薦使用云上的milvus&#xff0c;注冊就能創建免費的…

如何使用數字化動態水印對教育視頻進行加密?

文章目錄前言一、什么是數字化動態水印二、使用數字化動態水印對教育視頻加密的好處&#xff1f;三、數字化動態水印的實現原理四、如何實現數字化動態水印對教育視頻加密總結前言 教育資源數字化蓬勃發展的今天&#xff0c;優質視頻課程已成為機構的核心知識資產。然而&#…

解決bash終端的路徑名稱亂碼問題

解決bash終端的路徑名稱亂碼 默認打開了zsh&#xff0c;當我輸入bash后&#xff0c;就出現了亂碼 (context_rag) [23fanyaohead1]~/mycode-thesis% bash (context_rag) [%n%m]%~%#亂碼原因排查 我遇到了終端亂碼問題&#xff0c;需要檢查當前的終端環境和編碼設置&#xff0c;下…