重要性采样(Importance Sampling)详细学习笔记

本文详细介绍了重要性采样在强化学习中的应用,区分了on-policy和off-policy策略。on-policy指的是行动策略与评估策略相同,而off-policy则不同。重要性采样用于在off-policy中评估目标策略,通过加权来修正方差。文章讨论了加权重要性采样如何降低方差,并给出了具体算法的伪代码。此外,还探讨了在不同采样方法下的方差变化及其影响。

重要性采样(Importance Sampling)详细学习笔记

前言:

重要性采样,我在众多算法中都看到的一个操作,比如PER,比如PPO。
由于我数学基础实在是太差了,每次看都是迷糊过去,希望下次能看懂,半年前看《深入浅出强化学习》的时候,是理解了的,但是没做笔记,再看的时候就记不起来了…
最近忍不了了,还是记下来再说。

参考主体:

  1. 强化学习入门 第三讲 蒙特卡罗方法
  2. 李宏毅 强化学习ppo章节

on-policy 和 off-policy

行动策略评估及改善的策略是同一个策略,我们称之为on-policy,可翻译为同策略

行动策略评估及改善的策略是不同的策略,我们称之为off-policy, 可翻译为异策略

接下来我们重点理解这on-policy方法和off-policy方法。

On-policy:

同策略是指产生数据的策略与评估和要改善的策略是同一个策略模型。比如,要产生数据的策略和评估及要改进的策略都是 ϵ − s o f t \epsilon-soft ϵsoft策略。其伪代码如图3.5所示在这里插入图片描述
图3.5 同策略蒙特卡罗强化学习

如图3.5产生数据的策略以及进行评估和改进的策略都是 ϵ \epsilon ϵ- s o f t soft soft策略。

Off-policy:

异策略是指产生数据的策略与评估和改善的策略不是同一个策略。我们用 π \pi π表示用来评估和改进的策略,用 ϵ \epsilon ϵ- s o f t soft soft表示产生样本数据的策略。

异策略可以保证充分的探索性。例如用来评估和改进的策略 π \pi π是贪婪策略,用于产生数据的探索性策略 μ \mu μ为探索性策略,如 ϵ \epsilon ϵ- s o f t soft soft策略。

用于异策略的目标策略 π \pi π和行动策略 μ \mu μ并非任意选择的,而是必须满足一定的条件。这个条件是覆盖性条件即:行动策略 μ \mu μ产生的行为覆盖或包含目标策略 π \pi π产生的行为。利用式子表示即为:满足 π ( a ∣ s ) > 0 \pi(a|s)>0 π(as)>0 的任何 ( s , a ) (s,a) (s,a) 均满足 μ ( a ∣ s ) > 0 \mu(a|s)>0 μ(as)>0

这个覆盖性的公式没太明白。我直观上理解是,目标策略 π \pi π有的动作,动作策略都会产生,即概率大于0。

重要性采样

利用行为策略产生的数据评估目标策略需要利用重要性采样方法。下面,我们来介绍重要性采样。
在这里插入图片描述
图3.6 重要性采样

我们利用图3.6来描述重要性采样的原理。重要性采样来源于求期望:
在这里插入图片描述

这里先提几个基础概念,(哇,这个基础概念我都弄错了,还好被师弟及时纠正),p(z)被称为变量z的概率密度函数,由于不在f(z)中进行采样,所以f(z)算是z的一个权重函数?另外概率分布F(x)和概率密度f(x)的关系,一般是 F ( x ) = ∫ 1 ∗ f ( x ) d x F(x)=\int{1*f(x)dx} F(x)=1f(x)dx,是一个定积分,求面积的关系。

在李宏毅的课程中,有这样的描述:
在x服从p(x)分布时,f(x)的期望为负,此时我们从q(x)中来采样少数的x,那么我们采样到的x很有可能都分布在右半部分,此时f(x)大于0,我们很容易得到f(x)的期望为正的结论,这就会出现问题,因此需要进行大量的采样
这里的服从p(x)分布和分布函数是不一样的概念。一般变量会根据概率密度函数p(x)采样来的,所以也会称为,变量x服从p(x)分布。

如果是离散的话,就会有下面的式子:
E [ f ] = 1 N ∑ n N f ( z n ) E[f]=\frac{1}{N}\sum_n^N {f(z^n)} E[f]=N1nNf(zn) z n z^n zn~   q ( z ) ~{q(z)}  q(z)
这句话的意思是对于变量z,根据q(z)这个概率分布,采样N个数据,每个数据对应有值 f ( z n ) f(z^n) f(zn),对他们求平均,就近似整个概率分布的期望。

如图3.6, 当随机变量z的分布p(z)非常复杂时,无法利用解析的方法产生用于逼近期望的样本,这时,我们可以选用一个概率分布很简单,产生样本很容易的概率分布q(z),比如正态分布。

这里需要指出的一点是,原来的p(z)只是采样复杂,并不是未知!在网络做参数的模型中,一般来说针对输入的状态s,策略网络是可以算出一个具体的值。

原来的期望可变为:
E [ f ] = ∫ f ( z ) p ( z ) q ( z ) q ( z ) d z E[f]=\int{f(z)\frac{p(z)}{q(z)}q(z)}dz E[f]=f(z)q(z)p(z)

评论 14
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

hehedadaq

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值