AutoML-第一章 超参数优化

本章探讨了超参数优化(HPO)在复杂机器学习模型(如深度学习和AutoML)中的应用。介绍了基于无模型和贝叶斯优化的黑盒函数优化方法,以及现代多保真度技术,这些技术在资源有限的情况下也能进行高效的优化。章节还涵盖了条件和约束配置空间的处理,以及针对多个目标的优化。此外,还讨论了HPO面临的挑战,如昂贵的函数评估和高维配置空间,以及解决这些问题的策略。最后,提到了一些重要的HPO工具和未来的研究方向,包括避免过拟合和处理大规模管道构建的策略。

第一章:超参数优化

摘要

最近对具有许多超参数的复杂且计算成本很高的机器学习模型(例如自动化机器学习(AutoML)框架和深度神经网络)的兴趣引起了对超参数优化(HPO)的重新研究。在本章中,我们概述了 HPO 最主要的方法。我们首先讨论基于无模型方法和贝叶斯优化的黑盒函数优化方法。 由于许多现代机器学习应用程序对计算的高需求使得纯黑盒优化的成本极其高昂,因此我们接下来将重点介绍现代多保真方法,该方法使用黑盒函数便宜得多的变体来近似评估超参数设置的质量。最后,我们指出有待解决的问题和未来的研究方向。

简介

每个机器学习系统都有超参数,自动机器学习(AutoML)的最基本任务是自动设置这些超参数,以优化性能。特别是最近的深度神经网络,关键取决于神经网络的体系结构,正则化和优化的各种超参数选择。自动化超参数优化(HPO)有几个重要的用例。它可以

  • 减少应用机器学习所需的人力。 这在 AutoML 的应用中尤其重要。
  • 提高机器学习算法的性能(通过针对当前问题进行定制裁剪);这在多项研究中为重要的机器学习基准带来了新的最佳性能。
  • 提高科学研究的可重复性和公平性。显然,自动 HPO 比手动搜索具有更高的可重复性。因为不同的方法只有在针对手头的问题进行了相同水平的调整时,才可以公平地比较它们,所以它可以促进公平性。

HPO 问题的历史可追溯到 1990 年代,而且还早就确立了不同的超参数配置最适合于不同的数据集。相比之下,HPO 可用于使通用管道适应特定的应用程序域,这是一个全新的见解。 如今,人们还普遍认为调节后的超参数优于普通机器学习库提供的默认设置。

由于公司越来越多地使用机器学习,因此 HPO 也引起了巨大的商业兴趣,并且在公司内部工具中作为机器学习云服务的一部分发挥了越来越大的作用,或者自身作为一种服务。

HPO 面临几个挑战,使其成为实践中的难题:

  • 对于大型模型(例如,在深度学习中),复杂的机器学习管道或大型数据集而言,函数评估可能非常昂贵。

  • 配置空间通常很复杂(包含连续,类别分类和条件超参数的组合)且高维。此外,并不总是清楚需要优化算法的哪个超参数,以及在哪个范围内。

  • 我们通常无法获得关于超参数的损失函数的梯度。此外,经典优化中通常不使用的目标函数的其他属性(例如凸度和平滑度)通常不适用。

  • 由于训练数据集的大小有限,因此无法直接针对泛化性能进行优化。

本章的结构如下。首先,我们正式定义 HPO 问题并讨论其变体(第1.2节)。然后,我们讨论用于解决 HPO 的黑盒优化算法(第1.3节)。接下来,我们关注于现代的多保真方法,该方法通过采用比完整模型评估更低开销的近似性能指标,即使在非常昂贵的模型中也可以使用 HPO(第1.4节)。然后,我们概述了最重要的 AutoML 超参数优化系统及其应用(第1.5节),并在本章结束时讨论了开放性问题(第1.6节)。

问题陈述

使 A\mathcal{A}A 表示具有 NNN 个超参数的机器学习算法。 我们用 Λn\Lambda_nΛn 表示第 nnn 个超参数的域,而总超参数配置空间表示为 Λ=Λ2×Λ2×…ΛN\Lambda = \Lambda_2 \times \Lambda_2 \times \ldots \Lambda_NΛ=Λ2×Λ2×ΛN 。 一个超参数向量用 λ∈Λ\lambda \in \LambdaλΛ 表示,并将 A\mathcal{A}A 的超参数实例化到 λ\lambdaλ 表示为 Aλ\mathcal{A}_{\lambda}Aλ

超参数的域可以是实值(例如学习率),整数值(例如层数),二进制(例如是否使用提早停止)或分类的(例如选择优化器)。对于整数和实值超参数,由于实际原因,这些域大多是有界的,只有少数例外。

此外,配置空间可以包含条件,即,仅当另一个超参数(或超参数的某种组合)取某个值时,超参数才可能相关。条件空间采取有向无环图 (DAG) 的形式。 这样的条件空间,例如发生在机器学习管道的自动调整中,其中不同的预处理和机器学习算法之间的选择被建模为分类超参数,称为全模型选择(FMS)或组合算法选择和超参数优化问题(CASH)。它们在优化神经网络的架构时也会出现,例如层数可以是整数超参数,而仅当网络深度至少为 iii 时,iii 层的每层超参数才有效。

给定一个数据集 D\mathcal{D}D ,我们的目标是找到
λ∗=arg⁡min⁡λ∈ΛE(Dtrain,Dvalid)∼DV(L,Aλ,Dtrain,Dvalid) \lambda^* = \arg \min_{\lambda \in \Lambda} \mathbb{E}_{(D_{train}, D_{valid}) \sim D} V(\mathcal{L}, \mathcal{A}_{\lambda}, D_{train}, D_{valid}) λ=argλΛminE(Dtrain,Dvalid)DV(L,Aλ,Dtrain,Dvalid

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值