| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 数据结构与算法 -> 离线强化学习(Offline RL)系列3: (算法篇)策略约束 - BRAC算法原理详解与实现(经验篇) -> 正文阅读 |
|
[数据结构与算法]离线强化学习(Offline RL)系列3: (算法篇)策略约束 - BRAC算法原理详解与实现(经验篇) |
论文原文:【Yifan Wu, George Tucker, Ofir Nachum: “Behavior Regularized Offline Reinforcement Learning”, 2019; arXiv:1911.11361】 本文是CMU和Google Research一起合作于2019年提出并发表在ICLR会议上,是一篇广泛的研究了BCQ和BEAR两个算法的优劣之后总结性工作,算法全称: Behavior Regularized ActorCritic (BRAC)(有点综述实验的味道,和之前的Deep reinforcement learning that matters很像)
2. BRAC方法作者首先回顾了BCQ和BEAR两种算法,其中BEAR算法使用了软更新的方式防止过估计(overestimate)问题(这里的 ψ j ′ \psi_{j}^{\prime} ψj′? 表示目标Q函数的软更新集合, k = 4 k=4 k=4) Q ˉ ( s ′ , a ′ ) : = 0.75 ? min ? j = 1 , … , k Q ψ j ′ ( s ′ , a ′ ) + 0.25 ? max ? j = 1 , … , k Q ψ j ′ ( s ′ , a ′ ) \bar{Q}\left(s^{\prime}, a^{\prime}\right):=0.75 \cdot \min _{j=1, \ldots, k} Q_{\psi_{j}^{\prime}}\left(s^{\prime}, a^{\prime}\right)+0.25 \cdot \max _{j=1, \ldots, k} Q_{\psi_{j}^{\prime}}\left(s^{\prime}, a^{\prime}\right) Qˉ?(s′,a′):=0.75?j=1,…,kmin?Qψj′??(s′,a′)+0.25?j=1,…,kmax?Qψj′??(s′,a′) 另外分析了BCQ更新学习策略的过程如下: π θ ( a ∣ s ) : = argmax ? a i + ξ θ ( s , a i ) Q ψ ( s , a i + ξ θ ( s , a i ) ) ?for? a i ~ π b ( a ∣ s ) , i = 1 , … , N \pi_{\theta}(a \mid s):=\underset{a_{i}+\xi_{\theta}\left(s, a_{i}\right)}{\operatorname{argmax}} Q_{\psi}\left(s, a_{i}+\xi_{\theta}\left(s, a_{i}\right)\right) \quad \text { for } a_{i} \sim \pi_{b}(a \mid s), i=1, \ldots, N πθ?(a∣s):=ai?+ξθ?(s,ai?)argmax?Qψ?(s,ai?+ξθ?(s,ai?))?for?ai?~πb?(a∣s),i=1,…,N 2.1 两种方法2.1.1 value penalty (VP)作者提出了一个对值函数添加惩罚(penalty)项 α D ( π ( ? ∣ s t ) , π b ( ? ∣ s t ) ) \alpha D(\pi(\cdot|s_{t}), \pi_{b}(\cdot|s_{t})) αD(π(?∣st?),πb?(?∣st?)) 作为对策略的penalty,计算过程如下:
V
D
π
(
s
)
=
∑
t
=
0
∞
γ
t
E
s
t
~
P
t
π
(
s
)
[
R
π
(
s
t
)
?
α
D
(
π
(
?
∣
s
t
)
,
π
b
(
?
∣
s
t
)
)
]
V_{D}^{\pi}(s)=\sum_{t=0}^{\infty} \gamma^{t} \mathbb{E}_{s_{t} \sim P_{t}^{\pi}(s)}\left[R^{\pi}\left(s_{t}\right)-\alpha D\left(\pi\left(\cdot \mid s_{t}\right), \pi_{b}\left(\cdot \mid s_{t}\right)\right)\right]
VDπ?(s)=t=0∑∞?γtEst?~Ptπ?(s)?[Rπ(st?)?αD(π(?∣st?),πb?(?∣st?))] 可以清楚看到,和普通的算法的区别就在这个惩罚项上,有那么点baseline的感觉,作者也在这里强调了当使用single-sample estimate的时候等价于SAC算法。 2.1.2 policy regularization(PR)这部分和VP的计算方式一样,不同点在于公式中的 α \alpha α:
2.2 四种度量方法下面四种度量方式都是去计算两个分布之间的距离或者说衡量两个分布是否一致的方法,其中Kernel MMD在BEAR算法中使用过,KL在TRPO、PPO、BCQ等很多算法中使用过,Wasserstein在分布强化学习(A Distributional perspective of Reinforcement Learning)中使用过,此处不在一一详解。 2.2.1 Kernel MMDMMD ? 2 ( { x 1 , ? ? , x n } , { y 1 , ? ? , y m } ) = 1 n 2 ∑ i , i ′ k ( x i , x i ′ ) ? 2 n m ∑ i , j k ( x i , y j ) + 1 m 2 ∑ j , j ′ k ( y j , y j ′ ) \operatorname{MMD}^{2}\left(\left\{x_{1}, \cdots, x_{n}\right\},\left\{y_{1}, \cdots, y_{m}\right\}\right)=\frac{1}{n^{2}} \sum_{i, i^{\prime}} k\left(x_{i}, x_{i^{\prime}}\right)-\frac{2}{n m} \sum_{i, j} k\left(x_{i}, y_{j}\right)+\frac{1}{m^{2}} \sum_{j, j^{\prime}} k\left(y_{j}, y_{j^{\prime}}\right) MMD2({x1?,?,xn?},{y1?,?,ym?})=n21?i,i′∑?k(xi?,xi′?)?nm2?i,j∑?k(xi?,yj?)+m21?j,j′∑?k(yj?,yj′?) 2.2.2 KL-DivergenceD K L ( π θ ( ? ∣ s ) , π b ( ? ∣ s ) ) = E a ~ π θ ( ? ∣ s ) [ log ? π θ ( a ∣ s ) ? log ? π b ( a ∣ s ) ] D_{\mathrm{KL}}\left(\pi_{\theta}(\cdot \mid s), \pi_{b}(\cdot \mid s)\right)=\mathbb{E}_{a \sim \pi_{\theta}(\cdot \mid s)}\left[\log \pi_{\theta}(a \mid s)-\log \pi_{b}(a \mid s)\right] DKL?(πθ?(?∣s),πb?(?∣s))=Ea~πθ?(?∣s)?[logπθ?(a∣s)?logπb?(a∣s)] 2.2.3 f-divergenceD f ( p , q ) = E x ~ p [ f ( q ( x ) / p ( x ) ) ] = max ? g : X ? dom ? ( f ? ) E x ~ q [ g ( x ) ] ? E x ~ p [ f ? ( g ( x ) ) ] D_{f}(p, q)=\mathbb{E}_{x \sim p}[f(q(x) / p(x))]=\max _{g: \mathcal{X} \mapsto \operatorname{dom}\left(f^{*}\right)} \mathbb{E}_{x \sim q}[g(x)]-\mathbb{E}_{x \sim p}\left[f^{*}(g(x))\right] Df?(p,q)=Ex~p?[f(q(x)/p(x))]=g:X?dom(f?)max?Ex~q?[g(x)]?Ex~p?[f?(g(x))] 2.2.4 Wasserstein Distance(WD)W ( p , q ) = sup ? g : ∥ g ∥ L ≤ 1 E x ~ p [ g ( x ) ] ? E x ~ q [ g ( x ) ] W(p, q)=\sup _{g:\|g\|_{L} \leq 1} \mathbb{E}_{x \sim p}[g(x)]-\mathbb{E}_{x \sim q}[g(x)] W(p,q)=g:∥g∥L?≤1sup?Ex~p?[g(x)]?Ex~q?[g(x)] 3. 实验过程及分析(很关键的内容)实验之前,我们先说一下实验进行的dataset问题,作者通过添加不同的noise生成5类数据集,分别如下: 3.1 固定&自适应regularization weights
3.2 Ensemble for target Q-values
3.3 值函数惩罚或策略正则化实验基础
3.4 正则化之间的差异
3.5 超参数敏感性(Hyperparameter Sensitivity)这一块是整个实验的重点部分,首先放出实验的关键参数,比如BCQ中
Φ
\Phi
Φ , BEAR 中的
ε
\varepsilon
ε , 以及MMD中的
α
\alpha
α 等参数。
3.6 BCQ和其他Baseline的比较
3.7 模型训练超参数汇总4. 代码【Code】Behavior Regularized Actor Critic 5. 拓展阅读[1]. Haoran Xu, Xianyuan Zhan, Jianxiong Li, Honglei Yin: “Offline Reinforcement Learning with Soft Behavior Regularization”, 2021; arXiv:2110.07395. 参考文献[1]. Yifan Wu, George Tucker, Ofir Nachum: “Behavior Regularized Offline Reinforcement Learning”, 2019; arXiv:1911.11361 OfflineRL推荐阅读离线强化学习(Offline RL)系列3: (算法篇)策略约束 - BEAR算法原理详解与实现 |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/26 9:32:48- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |