购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

1.1 研究背景

现实世界中的许多优化问题涉及大量决策变量和多个可能冲突的优化目标,例如机器人设计 [1] 、模拟电路设计 [2] 、超参数调优 [3] 以及航空航天 [4] 和智能交通领域 [5-11] 的优化问题等。在这些问题中,需要在给定的约束条件下找到最佳的决策变量组合,以最大化或最小化一组目标函数。该类问题通常需要耗时的模拟或实验,导致极高的计算成本。以广泛应用于自然语言处理、音频分析和计算机视觉中的神经网络超参调优任务为例,人们希望在提高模型精度的同时降低网络的复杂度或训练时间。在优化机器学习模型时,同时优化模型精度和复杂度(或训练时间)是一项挑战。这涉及对多个超参数进行调整,包括隐藏层数、每个隐藏层的神经元数量、学习率、批处理大小、权重衰减率、优化算法以及与正则化权重惩罚相关的参数等。通过合理地选择和调整这些超参数,可以找到一种权衡关系,以获得既具有高精度且复杂度低或训练时间短的模型。对于某些复杂的神经网络,模型的单次训练可能需要许多GPU计算天数(GPU Days)。为了获得更好的模型性能,通常需要进行多次模型训练,尝试不同的超参数组合。然而,这种迭代性训练方法会导致巨大的计算成本。因此,一种可行的解决方案是在可接受的计算成本范围内对问题进行优化,以获得满意的可行解。这意味着需要在有限的计算资源下,通过智能化的优化策略和算法选择,找到适合问题需求的超参数组合,以实现性能和计算成本的权衡。

以超参数调优任务为例,较好的神经网络模型应该具有较低的训练成本和较高的准确率,但实际很难找到一组超参数能够同时使这两个子目标达到最优。基于种群的多目标进化算法(Multi-objective Evolutionary Algorithms,MOEAs)是求解多目标优化问题的一类有效算法。经典的多目标进化算法包括NSGA-Ⅱ [12] 、SPEA2 [13] 、PESA-Ⅱ [14] 、MOEA/D [15] 、NSGA-Ⅲ [16-17] 以及这些算法的相关改进算法 [18-20] 等。该类进化算法采用种群进化、优胜劣汰的思想,通过选择、交叉、变异等操作算子逐步改进种群中的个体,直至找到原多目标优化问题的可行解。尽管该类算法能够有效地求解多目标优化问题,但是它们往往需要大量的函数评估,一般是几万、几十万甚至几百万次函数评估,才能搜索到满意的可行解。以上述经典的进化算法为例,NSGA-Ⅱ、SPEA2、PESA-Ⅱ、MOEA/D和NSGA-Ⅲ分别使用了25000、1000000、20000、25000~70000和150000次函数评估。

特别地,如上述超参调优任务评估代价昂贵的多目标优化问题被称为昂贵的多目标优化问题(Expensive MOPs)。进化算法在面对有限的函数评估次数和昂贵的多目标优化问题时,其优化性能大打折扣。为了克服这一问题,可以采用智能和高效的基于代理模型的优化方法,利用已有样本信息构建模型,在模型指导下进行超参数搜索,以在有限的函数评估次数内更有效地探索超参数空间,获得更好的优化结果。求解昂贵的多目标优化问题具有两大挑战。如果昂贵的多目标优化问题具有大量决策变量(大于或等于10),由于维度灾难 [21] 会更具挑战性。一般地,具有超过10个决策变量的昂贵的多目标优化问题被称为高维昂贵的多目标优化问题(High-dimensional Expensive MOPs) [22-26] 。图1.1展示了多目标优化问题、昂贵的多目标优化问题和高维昂贵的多目标优化问题的关系。

图1.1 多目标优化问题、昂贵的多目标优化问题和高维昂贵的多目标优化问题的关系

基于代理模型的方法可以有效地求解昂贵的多目标优化问题。不同于真实的代价高昂的仿真实验,该类方法利用一组先验数据构建代理模型,用来近似原昂贵的多目标优化问题,且该代理模型较原优化问题具有相对低的评估代价。利用高斯过程(Gaussian Process,GP) [27] 的贝叶斯优化(Bayesian Optimization,BO) [28] 是一种有效的黑盒全局优化算法,该类方法充分沿袭高斯过程的简单性、有效性和优美的数学性质,成为最经典的基于代理模型的昂贵多目标优化方法之一。

贝叶斯优化方法起源于神经网络的超参调优任务 [28] ,其可在有限的函数评估次数内,求得昂贵的黑盒多目标优化问题的满意解。利用贝叶斯优化方法求解诸如机器人、模拟电路设计、超参调优和航空航天等领域中的实际昂贵的多目标优化问题,既可以节约大量评估成本,又能保证在目标函数是黑盒的情况下找到全局最优解。所以,贝叶斯优化方法的研究对实际应用领域的优化问题具有较高的指导意义。 BLuv/A2agLCmHGTLiKvwj8Eyydld1S7tUvmyB0j92pAm5NBaFYjiXOuuR5QmAXde

点击中间区域
呼出菜单
上一章
目录
下一章
×