labview叠加白噪声_强化学习中Ornstein-Uhlenbeck噪声是鸡肋吗?

e515f246c382f1ce73d9e9b164d2dc68.png

欢迎转载,转载请注明出处——知乎专栏“机器学习与控制论”。

读过DDPG论文[1]的同学几乎都会有一个问题,论文中使用Ornstein-Uhlenbeck噪声用于探索,比较难理解,参数又多,真的会比简单的高斯噪声等更有效吗?

由于大部分回答都没有说清楚甚至完全相反地解释该部分,本文会尝试从噪声在强化学习中的应用背景、Ornstein-Uhlenbeck过程的定义、产生作用的原因、实验四部分阐述原因。

先放结论:相比于独立噪声,OU噪声适合于惯性系统,尤其是时间离散化粒度较小的情况,此外,它可以保护实际系统,如机械臂。之所以大家觉得OU噪声没用,是因为强化学习benchmark都是仿真任务,而且往往都不用考虑时间离散化的问题。另外,即使遇到时间离散粒度小的问题,一般直接增大离散化粒度之后独立噪声也可以起到很好的效果。

1.DDPG中的探索噪声

我们知道,DDPG是典型的off-policy的方法,可叠加噪声的执行策略会独立于评估/学习的策略。也就是说,DDPG学习的策略是确定性策略,即确定性的Actor网络,而探索部分可以自定义探索噪声。

先不考虑文中的OU噪声,一提到噪声,首先想到的是简单又易于实现的高斯噪声。并且,确定性策略加上高斯噪声后,形式上就和REINFORCE等Actor-Critic的随机策略一致了。

(1)高斯噪声

策略网络直接的输出,作为均值,叠加上高斯分布

即可。此时执行策略实际上就成了
。有需要的话,还可以进行截断。
action

显然,高斯噪声是时序上不相关的,前一步和后一步选取动作的时候噪声都是独立的。前后两动作之间也只是通过状态使其独立。

其实TD3算法[2]中正是采用这种探索噪声,他们声称:

Unlike the original implementation of DDPG, we used uncorrelated noise for exploration as we found noise drawn from the Ornstein-Uhlenbeck (Uhlenbeck & Ornstein, 1930) process offered no performance benefits.

真的是这样吗?

(2)Ornstein-Uhlenbeck噪声

DDPG中对引入OU噪声的说明如下图,即利用OU过程产生时序相关的探索,以提高在惯性系统中的控制任务的探索效率。这里的惯性系统是指的环境。

dc5b792c9f0096a0f24fb66fa23dc7a8.png

另外一处,同样提到OU噪声是为了在有momentum的环境中探索得更好。

8aee209be200f82b03acdda21c947878.png

先不谈控制理论,这个环境大概怎么理解呢?你可以想象为一个慢响应的环境,比如夏天在一个闷热的房间,

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值