深度强化学习系列之(13): 深度强化学习实验中应该使用多少个随机种子?

How Many Random Seeds Should I Use? Statistical Power Analysis in (Deep) Reinforcement Learning Experiments

前言

不断检查实验结果的统计意义是解决深度强化学习中所谓“再现性危机”的强制性方法步骤之一。本论文将解释随机种子数与统计错误概率之间的关系。对于t检验和bootstrap置信区间检验,作者回顾了确定随机种子数的理论准则,用以提供两种算法性能的统计显著性比较。最后讨论了由统计检验所作假设的偏差影响。结果表明,它们会导致对统计误差的不准确评估,并为应对这些负面影响提供指导。

机器学习和深度强化的可复现性是近年来学习成为一个严重的问题。复现RL论文可能会比你想象的要复杂得多,代码库并不总是被发布,而科学论文通常会省略部分实现技巧,。最近Henderson等人对导致这种复现性危机的各种参数进行了彻底的调查Henderson等,2017.他们使用了流行的深度RL算法,如DDPG,ACKTR,TRPO和PPO,以及OpenAI Gym流行的基准测试,如Half-Cheetah,Hopper和Swimmer研究代码库的影响,网络的大小,激活函数,奖励缩放或随机种子。在结果中,他们表明,使用相同的超参数集的相同算法的不同实现导致了截然不同的结果。

也许最令人惊讶的事情是:使用10个不同的随机种子在相同的超参数下运行10次相同的算法,并在5个种子的两次拆分中取平均性能,可能导致学习曲线似乎来自不同的统计分布。 值得注意的是,Henderson等人(包括他们在内)评论的所有深度RL论文都使用了5颗或更少的种子。 更糟糕的是,一些论文实际上报告了最佳运行的平均值。 如(Henderson等人,2017)所论证的,这些方法论可能导致两种算法的性能在不同时表现出不同。 解决此问题的方法是使用更多的随机种子来平均更多不同的试验,以便获得算法性能的更可靠度量。 但是,如何确定应使用多少个随机种子呢? 我们应该使用(Mania,2018)中的5、10或100吗?

这项工作假设有人想测试两种算法之间的性能差异。 第2节给出了定义并描述了差异测试的统计问题,而第3节则提出了两种统计测试来回答该问题。 在第4节介绍了选择样本量的标准准则,以满足两种类型的统计误差的要求。 最后挑战上一节中的假设,并在第5节中提出经验估计错误率的准则。

1、统计问题的定义

同一算法的两次运行通常会产生不同的性能指标。 这可能是由于各种因素造成的,例如随机生成器的种子(称为随机种子或此后的种子),代理的初始状态,环境的随机性等。算法的性能可以被建模为随机变量 X X X ,并且在环境中运行该算法的实现 x x x , 重复该过程 N N N 次,将得到一个统计学样本 x = ( x 1 , ⋯   , x N ) x = (x^{1},\cdots,x^{N}) x=(x1,,xN) , 随机变量通常以其平均值 μ \mu μ 和标准偏差为特征,记为 σ \sigma σ 。当然,你不知道 μ \mu μ σ \sigma σ 的值是多少。 你唯一能做的就是计算他们的估计 x ˉ \bar{x} xˉ 和s:
x ˉ = ^ ∑ i = 1 n x i \bar{x} \hat{=} \sum_{i=1}^{n}x^{i} xˉ=^i=1nxi
s = ^ ∑ i + 1 N ( x i − x ˉ ) 2 N − 1 s \hat{=} \sqrt{\frac{\sum_{i+1}^{N}(x^{i}-\bar{x})^{2}}{N-1}} s=^N1i+1N(xixˉ)2

其中 x ˉ \bar{x} xˉ 表示经验平均, s s s 表示经验标准分布, 样本量 N N N 越大,则估计的置信越准确。

在这我们比较两种性能为 X 1 X_{1} X1 X 2 X_{2} X2 的算法,如果 X 1 X_{1} X1 X 2 X_{2} X2 遵循正态分布,描述其差异的随机变量 X d i f f = X 1 − X 2 X_{diff} = X_{1}-X_{2} Xdiff=X1X2 也遵循带参数的正态分布 σ d i f f = ( σ 1 2 + σ 2 2 ) 1 2 \sigma_{diff} = (\sigma_{1}^{2}+\sigma_{2}^{2})^{\frac{1}{2}} σdiff=(σ12+σ22)21 μ d i f f = ( μ 1 − μ 2 ) \mu_{diff} = (\mu_{1}- \mu_{2}) μdiff=

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

@RichardWang

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

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

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

打赏作者

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

抵扣说明:

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

余额充值