雷锋网()人工智能科技评论出版社:在机器学习和深度强化学习的研究中,可重复性已经成为最近最热门和最常被批评的话题之一基于强化学习的文章复制比想象的要困难得多。具体分析请参考“从复制中吸取的教训——一篇深度研究报告”
事实上,总的来说,源代码库并不总是完全公开的,一些实现技术在科学论文中经常被忽略最近,赫尔德森等人对导致生殖困难的各种参数进行了深入研究。他们使用了流行的深度强化学习算法,如DDPG、阿克里、TRPO和PPO等。,并结合OpenAI体育馆的经典基准测试,如半猎豹、霍普和游泳运动员等。,研究代码库、网络大小、激活函数、奖励缩放或随机种子对性能的影响。结果中最令人惊讶的是,当相同的算法和相同的超级参数集用于训练时,每次运行后的结果将会非常不同。也许关于
最令人惊讶的事情是使用相同的超级参数和10个不同的随机种子运行相同的算法10次,其中5个种子的性能被平均,而其他5个种子的性能被平均,并且获得的两条学习曲线似乎来自两个不同的统计分布然后,他们显示了一个表:
,该表显示在亨德森等引用的所有深度RL论文中使用的种子少于5个。更糟糕的是,一些论文实际上显示了最佳表现的平均值!正如亨德森等人刚刚表明的那样,算法性能的不稳定性使得研究人员能够声称一种算法通过选择种子比另一种算法性能更好,即使事实并非如此。这个问题的解决方案是使用更多的随机种子来平均更多不同实验的结果,并最终获得更鲁棒的算法性能度量。那么,多少才算合适呢?应该用10,还是应该用100,正如马涅等人提出的。答案当然是,这要看情况
如果你读了这篇博客,我想你一定处于以下情况:你想比较两种算法的性能,以确定哪种算法在给定的环境中性能最好不幸的是,同一算法的两次运行通常会产生不同的性能值这可能是由各种因素造成的,如随机发生器产生的种子(随机种子,简称种子)、代理的初始条件、环境的随机性等。
本文中描述的一些统计过程可以在Github上找到这篇文章可以在ArXiv上找到。雷锋的人工智能科技评论编辑全文
统计问题的定义算法的性能可以被数学建模为随机变量,并且可以在环境中运行该算法。这个过程可以重复,并且可以获得统计样本随机变量通常可以用其平均值和标准差来表征。当然,平均值和偏差是未知的但可以计算的是它们的期望值之和,这被称为经验平均值和经验标准差。样本越大,估计结果的置信度越高。求和算法如果符合正态分布描述它们差异的随机变量也满足正态分布,在这种情况下,平均值的估计值为,而的估计值为影响效果可以用两种性能的平均差异来表示:测试两种算法的性能差异在数学上等同于测试它们运行结果的差异然后,根据上述推理,从随机变量和生成的两个样本以及减去的变量获得的计算是所需的样本为了说明本文提出的概念,在半猎豹环境下,采用了两种算法(Algo1算法和Algo2算法),并在OpenAI体育馆框架下进行了比较。实际使用的算法在这里并不重要,稍后会公布。首先,进行初步研究,为每个算法设置N = 5个随机种子,结果绘制在图2中该图显示了平均学习曲线和95%的置信区间学习曲线的每一点都是10个评估期内奖励的累积值算法的性能度量是过去10个点(即最后100个评估周期)的平均性能从图中可以看出,Algo1似乎比AlGO 2表现更好。此外,越接近终点,置信区间就没有太多重叠。当然,在得出任何结论之前,我们需要进行统计测试。将绩效与差异测试进行比较在差异测试中,统计学家首先定义了零假设和替代假设设置如下:这些假设指的是双尾情况如果你有一个性能最好的先验算法,假设Algo1,或者你可以使用单尾版本:
。起初,统计学家经常使用零假设一旦从获得样本,观测数据的概率就可以被估计为极端的。极值是指远离零假设的值,即远离零的值概率值可以回答以下问题:观察一个样本或多个极端样本出现的概率,假设两种算法的性能没有本质上的不同。在数学上,公式的单尾版本可以用来描述这个过程:类似地,或双尾描述:
。当这种概率变得非常低时,这意味着两种算法在没有性能差异的情况下生成收集的样本是非常不可能的这种明显的差别表现在单尾情况下概率较小,双尾情况下概率较小。的值通常设置为0.05或更小值得注意的是,尽管概率非常低,但仍有20%的机会出现假阳性,也就是说,当没有差异时,存在真正的差异。观察这种情况的另一种方法是考虑置信区间。可以计算两个置信区间:
统计可以显示两种类型的错误:
第一个错误是在没有实际差异时声称算法优于另一个算法请注意,我们称之为显著性水平和第一类误差α的概率,因为它们都指同一个概念在统计检验假设下,ⅰ型误差α的实施概率选择在α的显著性水平
的第二个错误是当存在差异时忽略差异的发生,即当实际算法具有性能差异时错过发出查询的机会
选择适当的统计实验为了评估性能,您必须首先确认需要使用的统计实验。在赫尔德森的论文中,两样本t检验和自举置信区间检验可以用于此目的。赫尔德森等人还推荐了Kolmogorov-Smirnov实验来测试两个样本是否来自相同的分布区间。然而,这个测试不能用来比较RL算法,因为它不能证明任何顺序关系。
T-检验和韦尔奇检验
以验证两个总体具有相同均值的假设(零假设)当两个总体的变量被假定为一致时,两样本t检验可以被检验。然而,当比较两种不同的算法(例如DDPG算法和TRPO算法)时,这个假设并不总是正确的在这种情况下,韦尔奇检验,一个2样本t检验的变体,被提出。t检验包含几个假设:< br>数据测量的尺度必须连续有序,强化学习满足条件;
数据是通过从群体中收集代表性样本获得的,这在强化学习中是合理的。
测量在强化学习中是独立合理的。
数据呈正态分布或至少呈钟形正态定律是一个包含无穷的数学概念,没有什么是完全正态分布。此外,算法性能的测量可以遵循多模态分布。
基于这些假设,统计值T和自由度V可由以下公式描述。这里使用的韦尔奇-萨特思韦特公式是:
同时,,是两个样本的经验标准差,n是样本大小(两个样本的大小相同)那么t统计量默认遵循t分布,呈钟形,其宽度取决于自由度。自由度越高,分布越平坦下图可以使人们更好地理解这个原理。值得注意的是,这是单尾的情况,并且获得了正差。
t分布由其概率密度函数定义(图中左侧曲线)累积分布函数是概率之和,即代表在单尾情况下满足的t值当时,概率p小于α,实验结果否定了零假设。另一方面,当小于时,概率p的值大于α,并且实验不否定零假设从图中可以看出,将阈值设置为将导致上述第二个错误。误差概率是图中深蓝色阴影表示的部分,可以用数学方法表示如下:使用积分的转换属性,β可以改写为:
。综上所述,韦尔奇的T检验实验对给定的两个样本的步骤是:是基于自由度V和T统计量的计算;
值通过t-表查找表获得或通过CDF函数评估;
比较t统计值和值得注意的是,
并不意味着这两种算法没有区别。它只能表明没有足够的证据证明基于置信水平的差异存在(这也可能意味着第二个错误条件)噪音可能会妨碍测试检测差异的能力。在这种情况下,增加样本大小n有助于发现差异。在第一误差条件下选择t检验结果的显著性水平α然而,上图显示,降低该概率归因于增加的值,这最终导致第二个错误的发生。通过增加样本数n和减小β,同时保持α值不变,可以使估计更精确,最终使图像中的分布曲线更平坦,β值更小下一节介绍当α和β同时满足时,选择合适样本数n的方法。自举置信区间自举置信区间是一种不对性能差异的分布做出任何假设的方法它通过对实际收集的样本进行重采样并计算每个生成样本的平均值来估计置信区间
给定正态分布的真均值μ和标准差σ,一个简单的公式给出了95%的置信区间但是在这里,考虑一个未知的分布f(给定算法的性能分布)正如我们在上面看到的,经验平均值是对其真实平均值的无偏估计,但是我们如何计算置信区间呢?一种解决方法是使用自举原理。
,其中n是样本数通过对原始样本进行置换抽样,可以得到经验自举样本,标记为,样本号与原始测试号相同在自举原理中,在原始样本和自举样本上计算的任何统计数据的变化是一致的。麻省理工学院在这篇文章中可以找到更多的解释和原因。因此,经验平均值的变化可以通过自举样本的变化量来近似(这里可以使用值变化范围)的计算过程通过以下步骤实现:
从原始样本中提取并使用相同的自举样本号和样本信息;
计算每个样本的经验平均值,即总和;
计算差额;
使用公式计算自举置信区间范围通常介于和向量的概率百分比之间(例如,α=0.05,范围为2.5和97.5)
自举的样本号b需要选择一个相对较大的值(例如1000)如果置信区间的范围不包含0,这意味着当置信区间为0时,差值仅为正或负(该范围的最大值和最小值均为正或负)通过这种方式,可以清楚地获得两种算法在性能上的统计显著差异您可以通过以下链接参考实际应用程序根据示例1
这里,设置α=0.05将导致第一个错误对两个p值为0.031的随机种子样本进行了Welch检验和bootstrap置信区间检验。由于p值低于α,且置信区间1不包含0,因此两个测试均通过这意味着两个实验结果表明算法Algo1和Algo2的性能显著不同,并且具有95%的置信度。如果检测失败,也就是说,只有5%的可能性算法性能会有显著差异。事实上,在实验中,确实遇到了第一种错误这种信念的原因是,在
实验中选择的算法1和算法2实际上是两个相同的算法< br>如前所述,β可以用公式来分析:
这里,是以0为中心点的t分布的累积分布函数,是临界值,是影响因素的t值示例2
为了更好地理解本文的含义,使用了两种DDPG算法:一种带有执行扰动(Algo1),另一种带有参数扰动(Algo2)这两种算法都是在OpenAI体育馆框架下的半猎豹环境中执行的。
步骤1-绘图学习
为了实际获得β,需要首先估计两种算法的标准偏差在该步骤中,算法在环境中计算并获得大小为n的两个样本x1和x2然后计算经验平均值和标准偏差根据示例2
此处,将样本大小设置为n=5,经验平均值设置为(3523,4905),经验标准偏差设置为(1341,990),如下图所示,其中红色曲线表示Algo2,蓝色曲线表示Algo1从图中可以看出,这两种算法的性能略有不同步骤2-选择样本量
给定一个统计检验(如韦尔奇检验),可以计算显著等级α(如α =0.05)和Algo1和Algo2的经验估计标准偏差β。基于样本量N和影响因素根据实施例2
如果N为在上述实验中,当N=10时,满足影响因子为1382的概率条件,在韦尔奇检验的前提下,使用的经验估计值为然而,应该注意的是,这样的实验结果基于几种近似,包括并假设t值的钟形分布步骤3-执行统计测试
需要执行两种算法来获得容量为N的新样本,以便可以应用统计测试根据示例2
这里,设置N=10,并执行韦尔奇测试和自举测试。通过实验,得到了AlGO _ 1和AlGO _ 2的经验平均值两个实验的结果都是否定的。韦尔奇检验的p值为0.0037,自举检验的置信区间为0.0037两个实验都通过了在下图中,绘制了N=5和N=10的曲线。当样本大小增加到10时,显示当样本大小为5时无法识别的显著差异。随机种子越多,估计越稳健,越有证据证明Algo2算法的性能优于Algo1算法,Algo1算法可以通过图像中的尖峰来识别。给定相应的假设,当选择显著性水平为α时,t检验和自举实验都面临第一个错误问题为了获得正确的错误概率信息,需要仔细检查这些假设。首先,基于实验数据,我们需要计算第一错误概率的经验评估,并表明:1)自举检验对小样本非常敏感;2)T检验的结果可能偏离非正态分布的数据。然后,在实验中,还验证了低样本数导致s12估计的不准确性,并导致β计算的较大误差,这最终导致对实验反馈的样本数的低需求。第一误差的经验估计
给定样本数N,第一误差的概率可以通过以下步骤来估计:
对给定算法执行双数运算(2×N)这可以确保它是正确的,因为所有的测量都来自相同的数据分布。
随机将n个样本分成两个每个部分都被视为从两种不同算法中分离出来的样本。
测试两个虚拟算法之间的差异并记录结果。
重复该过程t次(例如,t = 1000);
计算H0被拒绝的时间比例这是对α的经验评估
示例3 < br>使用示例2中的Algo1算法经过42次实验,n的选择范围如下下图显示了实验结果。在α=0.05的情况下,当n的值太小时,根据经验估计的假阳性概率远高于参考值
2
在实验中,bootstrap检验的置信区间不能用于小样本量(< 10)的计算即使在这种情况下,第一种错误的概率在实验中被低估了(应该是10%,而实验结果是5%)韦尔奇的检验减少了这种影响,但是当样本量很小时,就更难得到正确的结果。综上所述,在实验中,α的值应设定在0.05以下,以保证真阳性的概率低于0.05。在例1中,N=5,遇到第一个错误在上图中,这种可能性在自举测试中获得了大约10%的计算结果,在韦尔奇测试中获得了超过5%的计算结果。
经验标准偏差的影响基于样本量n和标准偏差的经验估计。韦尔奇检验计算统计信息和t的自由度v。当n的值非常低时,S12的估计值低于实际标准偏差值这导致较小的V和较低的值,并最终影响较低的β值最后,较低的β影响循环中样本大小的选择这对于样本大小n的计算有很大的影响。下图显示了两个分布之和的假阳性概率β图中两个结果的区别在于左边的图片使用真实值进行计算,而右边的图片使用经验评估值。从实验结果可以看出,无论使用哪个值,基于β的样本大小的选择都是一致的。重要的是
不要盲目相信统计测试结果这些测试基于不总是合理的假设。
α必须根据经验进行估计,因为统计检验可能会低估它,因为错误假设的潜在分布,或者因为小样本量
第一个错误的自举测试评估很大程度上取决于样本大小小于20的样本不应使用自举测试
小样本也会导致算法标准差估计不准确,最终导致低估样本容量需求
结论< br>本文详细介绍了在比较两种增强算法时遇到的统计问题定义了第一误差和第二误差。同时,提出了性能比较测试的自组织统计测试方法。最后,作者还介绍了在测试中选择正确样本量的方法,并通过实际案例进行了分析和描述。< br>
本文最重要的意义不仅限于介绍方法和应用,而是基于本文理论的后续研究通过挑战韦尔奇检验和自举检验的假设,作者发现了几个问题。首先,作者在实验中发现了经验推理值与理论实际值之间的显著差异。为了避免这一问题,作者提出了最小样本量要求N=20,并指出在样本数N >时必须使用自举检验;在20的条件下,只有满足这些要求,才能满足假阳性概率要求(< 0.05)其次,样本量n的要求在很大程度上取决于计算的准确性。为了顺利地进行计算,在实验开始时,有必要选择比功率分析更大的系统调节。
使用韦尔奇检验计算自举置信区间;
降低α(& lt;0.05)以确保第一错误发生的概率小于0.05;
校正多重比较,以避免假阳性概率随实验次数线性增加;
使用至少n=20的样本绘制曲线,以基于两种算法获得稳健估计;
使用的样本比功率分析多这可以更准确地估计制备偏差,并降低第二次误差发生的概率。在
的结尾,作者留下了一个非常谦虚的信息:应该注意的是,这篇文章的作者不是专业的统计学家。如果您在本文中发现任何统计问题,请随时通过openlab-flowers联系作者~
。inria。弗雷德。《艾丰科学技术评论》编辑了
199篇雷锋原创文章,禁止擅自转载详情请参考重印说明。