超参数优化的随机搜索
作者:James Bergstra;Yoshua Bengio
出处:Departement drsquo;Informatique et de recherche op acute; erationnelle acute; Universite de Montr acute; eal acute; Montreal, QC, H3C 3J7, Canada
摘要:
网格搜索和人工搜索是超参数优化中应用最广泛的策略。本文从经验和理论两方面证明了随机选择试验比网格试验更能有效地优化超参数。经验证据来自与之前使用网格搜索和手动搜索来配置神经网络和深度信念网络的大型研究的比较。与纯网格搜索配置的神经网络相比,我们发现,在同一个域上的随机搜索能够在一小部分计算时间内找到同样好的或更好的模型。给随机搜索相同的计算环境,随机搜索能通过有效地搜索更大、更少前景的配置空间来找到更好的模型。与人工搜索和网格搜索相结合配置的深度信念网络相比,在相同的32维配置空间中,纯随机搜索在7个数据集中的4个数据集上的性能在统计上是相同的,而在7个数据集中的1个数据集上的性能更优越。对函数从超参数到验证集性能的高斯过程分析表明,对于大多数数据集,只有少数超参数是真正重要的,但不同的超参数对不同的数据集是重要的。这种现象使得网格搜索成为为新数据集配置算法的糟糕选择。我们的分析揭示了为什么最近的“高吞吐量”方法取得了惊人的成功——它们似乎搜索了大量的超参数,因为大多数超参数并不重要。我们预计,对大型层次模型的日益增长的兴趣将给超参数优化技术带来越来越大的负担;这项工作表明,随机搜索是判断自适应(顺序)超参数优化算法发展进展的自然基线。
关键词:全局优化,模型选择,神经网络,深度学习,响应面建模
- 导言
典型学习算法a的最终目标是从自然(真数)分布Gx中找到一个函数
f,该函数使i.i.d.样本x上的一些预期损失L(x;f)最小化。学习算法A是将数据集X(序列)(Gx的有限样本集)映射到函数f的函数。通常,学习算法通过优化关于一组参数theta;的训练准则来产生f。然而,学习算法本身通常有含有警示作用的超参数lambda;,实际上学习算法是在选择lambda;后获得的,它可以表示为lambda;,对于训练集X(train),f=Alambda;(X(train))。例如,使用高斯核函数SVM,必须为训练标准选择合理的惩罚因子C(决定算法推广能力)和高斯核函数的尺度参数sigma;,所以超参数为lambda;=(C,sigma;)。
我们在实践中真正需要的是一种选择lambda;的方法,以最小化泛化误差
Exsim;Gx[L(x;Alambda;(X (train)))]。请注意,由A本身执行的计算通常涉及一个内部优化问题,该问题通常是迭代和近似的。 识别超参数lambda;的优值的问题称为超参数优化问题。本文研究了这一困难的外环优化问题的算法,该问题在经验机器学习工作中具有重要的实际意义:
一般来说,我们没有有效的算法来执行等式1所暗指的优化。此外,我们甚至无法评估未知自然分布Gx的期望值,即我们希望优化的值。然而,我们必须尽可能地进行优化。关于对Gx的期望,我们将使用广泛使用的交叉验证技术来估计它。交叉验证是用验证集X(有效)上的平均值替换期望值的技术,验证集X(有效)的元素以i.i.d Xsim; Gx。交叉验证是无偏的,只要X(有效)与lambda;使用的任何数据无关(见Bishop,1995,第32-33页)。我们在方程式2-4中看到了实际解决的超参数优化问题:
方程3用超参数响应函数psi;表示超参数优化问题。超参数优化是psi;(lambda;)
在lambda;上的最小化isin;Lambda;. 在实验设计文献中,该函数有时称为响应面。不同的数据集、任务和学习算法族产生不同的集and;和函数psi;。通常对响应面psi;或搜索空间and;知之甚少,找到一个好的lambda;的主要策略是选择一些试验点{lambda;(1)hellip;lambda;(S)},为每个试验点评估psi;(lambda;),并将效果最好的lambda;(i)返回为lambda;lambda;。方程4明确了该策略。
超参数优化的关键步骤是选择试验集{lambda;(1)hellip;lambda;(S)}。最广泛使用的
策略是网格搜索和手动搜索的结合(例如,LeCun等人,1998b;Larochelle等人,2007;Hinton,2010),以及机器学习软件包,如libsvm(Chang和Lin,2001)和scikits。学1如果and;是一个由K个配置变量索引的集合(例如,对于神经网络,它将是学习率、隐藏单元的数量、权重正则化的强度等),那么网格搜索要求我们为每个变量选择一组值(L(1)hellip;L(K))。在网格搜索中,通过组合所有可能的值组合形成试验集,因此网格搜索中的试验数为S=prod;Kk=1 | L(k)|元素。K集上的乘积使网格搜索遭受维数灾难,因为联合值的数量随着超参数的数量呈指数增长(Bellman,1961)。手动搜索用于识别and;中有希望的区域,并发展选择集合L(k)所需的直觉。手动搜索的一个主要缺点是很难再现结果。这对于机器学习科学研究的进展以及非专家用户应用学习算法的便利性都很重要。另一方面,网格搜索本身在实践中做得很差(如本文所讨论的)。我们建议将随机搜索作为一种替代和基线,它既合理有效(在我们的实验中,大致相当于或优于手动搜索和网格搜索的组合),又保持了纯网格搜索的实现简单性和可再现性的优势。随机搜索实际上比网格搜索更实用,因为它甚至可以在使用可能失败的计算机集群时应用,并允许实验者立即更改“分辨率”:向集合中添加新的试验或忽略失败的试验都是可行的,因为试验是i.i.d。,对于网格搜索来说,情况并非如此。当然,可以通过自动化手动搜索的功能(即顺序优化)来改进随机搜索,但这要留待将来的工作。
尽管对全局优化进行了几十年的研究(例如,Nelder和Mead,1965;
Kirkpatrick等人,1983;Powell,1994;Weise,2009),并发表了一些超参数优化算法,但手动搜索和网格搜索之所以成为最先进的搜索方式,有几个原因(例如,Nareyek,2003年;Czogiel等人,2005年;Hutter,2009年):
- 手动优化使研究人员对psi;有了一定程度的了解;
- 手动优化没有技术开销或障碍;
- 网格搜索易于实现,并行化很简单;
- 网格搜索(可以访问计算集群)通常比纯手动顺序优化(在相同的时间内)找到更好的circ;lambda;;
- 网格搜索在低维空间(例如,1-d、2-d)中是可靠的。
在我们对未来工作的讨论中,我们将回到超参数选择的全局优化算法
的使用(第6节)。在本文中,我们着重于随机搜索,即从均匀密度中独立抽取,作为生成试验集{lambda;(1)hellip;lambda;(S)}的替代策略,它来自于规则网格跨越的相同配置空间。我们证明了随机搜索具有网格搜索的所有实际优势(概念简单、易于实现、并行性小),并以低维空间中效率的小幅度降低换取高维搜索空间中效率的大幅度提高。
在这项工作中,我们证明了在高维空间中随机搜索比网格搜索更有效,
因为感兴趣的函数psi;的有效维数较低;本质上,感兴趣的psi;对某些维度的变化比其他维度更敏感(Caflisch等人,1997)。特别是,如果两个变量的函数f可以用一个变量的另一个函数(f(x1,x2)来近似asymp; g(x1)),我们可以说f的有效维数很低。图1说明了点网格和均匀随机点集在处理低有效维数方面的差异,如上面的f示例所示。点网格在原始二维空间中提供了均匀的覆盖,但在x1或x2子空间上的投影产生了子空间的无效覆盖。相比之下,随机点在原始空间中的分布稍不均匀,但在子空间中的分布要均匀得多。
如果研究人员能够提前知道哪些子空间是重要的,那么他或她就可以
设计一个合适的网格。然而,我们在第2节中展示了这种策略的失败之处。对于一个给定的学习算法,查看几个相对相似的数据集(从不同的分布)揭示了在不同的数据集上,不同的子空间在不同程度上是重要的。因此,对于每个单独的数据集,具有足够粒度以优化所有数据集的超参数的网格必须是低效的,因为维度灾难:浪费的网格搜索试验的数量是与特定数据集无关的搜索维度数量的指数。相比之下,随机搜索在低有效维度上蓬勃发展。随机搜索在相关子空间中的效率与仅用于搜索相关维度的效率相同。
图 1:用于优化函数 f (x, y) = g(x) h(y)asymp; 的九次试验的网格和随机搜索g(x) 具有低有效维数。 在每个正方形上方 g(x) 显示为绿色,并且每个正方形 h(y) 的左侧显示为黄色。 使用网格搜索,九次试验只测试 g(x)在三个不同的地方。 通过随机搜索,所有九个试验都探索了不同的值G。 网格搜索的这种失败是高维中的规则而不是例外超参数优化。
本文的组织结构如下。第2节介绍了随机搜索与网格搜索作为优化神
经网络超参数的方法在实践中的效率。我们将Larochelle等人(2007)的网格搜索实验作为比较点,并使用随机搜索重复类似的实验。第3节使用高斯过程回归(GPR)分析神经网络试验的结果。GPR使我们能够描述各种数据集的psi;的外观,并在psi;的低有效维数和随机搜索效率之间建立经验联系。第4节将随机搜索和网格搜索与为准蒙特卡罗数值积分开发的更复杂的点集进行了比较,并认为在超参数选择的关注范围内,网格搜索是不合适的,更复杂的方法与随机搜索相比几乎没有优势。第5节将随机搜索和Larochelle等人(2007年)为优化深层信念网络而采用的专家指导的手动顺序优化进行了比较。第6节评述了全局优化算法在未来工作中的作用。我们在第7节中得出结论,在优化超参数方面,随机搜索通常优于网格搜索。
- 对比随机搜索和网格搜索在优化神经网络
在本节中,我们将再次查看Larochelle et al.(2007)使用随机搜索的几个实验,以与该工作中完成的网格搜索进行比较。我们从超参数优化开始,然后从超参数优化开始。为了描述随机搜索的效率,我们在初步章节中介绍了两种技术:第2.1节解释了我们如何从一组候选模型中估计最佳模型的泛化性能,同时考虑到我们的不确定性,即哪个模型实际上是最佳的;第2.2节解释了我们用来描述随机搜索实验性能的随机实验效率曲线。有了这些初步工作,第2.3节描述了我们在工作中使用的Larochelle等人(2007)的数据集。第2.4节介绍了我们优化神经网络的结果,第5节介绍了我们优化DBN的结果。
2.1估计概括
由于有限数据集,验证误差中的测试误差不是单调的,并且取决于评估的特定超参数值lambda;的集合,最佳验证误差配置的测试误差可能会有所不同。在报告学习算法的性能时,考虑由于选择超参数值而产生的不确定性非常有用。本节描述了我们评估测试集准确性的程序,该程序考虑了在选择哪项试验实际上是最佳试验时的任何不确定性。为了解释该程序,我们必须分别基于验证集和测试集区分性能psi;(有效)=psi;和psi;(测试)的估计:
同样,我们必须在验证集和测试集上定义关于这些均值的估计方差V,例如,对于零一损失(伯努利方差):
对于其他损失函数,方差的估计值通常是不同的。
评估通过交叉验证找到的模型的标准做法是报告Psi;(test)(lambda;(s))对于最小化
Psi;(有效的)(lambda;(s))的lambda;(s)。 然而,当不同的试验具有接近最优的验证手段时,则不清楚要报告哪个测试分数,并且lambda;的选择略有不同可能会产生不同的测试错误。 为了解决选择获胜者的困难,我们报告了一个所有测试集分数的加权平均值,其中每个分数都由其出现的概率加权实际上,lambda;(s) 是最好的。 在这种情况下,由于 X(有效)是 Gx 的有限样本而产生的不确定性使得lambda;(1)...lambda;(S) 中最佳模型的测试集得分成为随机变量 z。该分数 z 由高斯混合模型建模,其 S 分量的平均值为 micro;s =Psi;(test)(lambda;(s)),方差 sigma;2s = V(test)(lambda;(s)),权重 ws 定义为
当
综上所述,S试验实验中最佳模型的性能z具有平均值micro;z和标准误差 ,
通过仿真来估计权重ws是一种简单实用的方法。这样做的程序是从正态分布中重复提取假设验证分数Z(s),其平均值为psi;(有效)(lambda;(s)),其方差为标准误差的平方V(有效)(lambda;(s)),并计算每次试验产生获胜分数的频率。由于最佳验证分数的测试分数通常比较接近,因此不需要非常精确地估计ws,几十次假设抽签就足够了。
与传统的报告验证中最佳模型的测试集误差的技术相比,这种估计泛化的技术给出了更高的估计。这种差异与方差psi;(有效)和接近最佳值的验证集分数密度psi;(lambda;(i))有关。由于psi;(有效)质疑哪种模型最好,该技术将最佳模型的性能与非最佳模型的性能进行平均。下一节(随机实验效率曲线)说明了这一现象,并对其进行了更详细的讨论。
2.2随机试验
剩余内容已隐藏,支付完成后下载完整资料
英语原文共 25 页,剩余内容已隐藏,支付完成后下载完整资料
资料编号:[596384],资料为PDF文档或Word文档,PDF文档可免费转换为Word
课题毕业论文、外文翻译、任务书、文献综述、开题报告、程序设计、图纸设计等资料可联系客服协助查找。