Meta-Learning with Differentiable Convex Optimization||论文阅读
Abstract
很多元学习方法都依赖于简单的基础学习者,比如最近邻分类器。然而,即使是在很少的情况下,经过区别训练的线性预测器也能提供更好的泛化。我们建议使用这些预测器作为基础学习者来学习用于少镜头学习的表示,并表明它们在一系列少镜头识别基准中提供更好的特征大小和性能之间的折衷。我们的目标是学习新类别在线性分类规则下的特征嵌入。为了有效地解决这个问题,我们利用线性分类器的两个性质:凸问题最优性条件的隐式微分和优化问题的对偶公式。这允许我们使用高维嵌入和改进的泛化,并在计算开销上略有增加。我们的方法,名为MetaOptNet,在miniImageNet、tieredImageNet、CIFAR-FS和FC100少镜头学习基准测试中实现了最先进的性能。我们的代码可以在网上找到。
Introduction
从几个例子中学习的能力是人类智能的一个标志,但它仍然是现代机器学习系统的一个挑战。这个问题最近受到了机器学习社区的极大关注,他们将很少的学习视为元学习问题(例如[22,8,33,28])。目标是尽量减少泛化错误分布的任务,训练例子很少。通常,这些方法由一个将输入域映射到特征空间的嵌入模型和一个将特征空间映射到任务变量的基本学习器组成。元学习的目标是学习一个嵌入模型,这样基础学习者可以很好地跨任务进行泛化。
虽然基础学习者有许多选择,但最近邻分类器及其变体(如[28,33])是由于分类规则简单,且在低数据的情况下具有良好的可扩展性,因此该方法很受欢迎。然而,在低数据的情况下,区分训练的线性分类器通常比最近邻分类器(例如,[4,16])表现得更好,因为它们可以利用反面例子,这些反面例子通常更丰富,从而学习更好的类边界。通过适当的正则化如权值稀疏性或范数等,可以有效地利用高维特征嵌入来控制模型容量。
因此,在本文中,我们研究线性分类器作为基于元学习方法的基础学习。该方法如图1所示,使用一个线性支持向量机(SVM)学习一个分类器,给定一组标记的训练样本,并根据同一任务的一组新样本计算泛化误差。关键的挑战在于计算,因为最小化任务间泛化误差的元学习目标需要在优化的内环中训练一个线性分类器(见第3节)。然而,线性模型的目标是凸的,可以有效地解决。我们观察到由允许有效金属加工的凸性特性产生的两个附加特性:优化的隐式微分[2,11]和在少炮点设置中分类器的低秩特性。第一个特性允许使用现成的凸优化器来估计最优性,并隐式微分最优性或Karush-Kuhn-Tucker (KKT)条件来训练嵌入模型。第二个性质是指对偶构造中优化变量的数量远远小于少弹学习的特征维数。
为此,我们加入了一个可微二次规划(QP)求解器[1],它允许使用各种线性分类器对嵌入模型进行端到端学习,例如,多类支持向量机(SVMs)[5]或线性回归,用于少点分类任务。利用这些特性,我们表明,我们的方法是可行的,并提供实质性的收益在最近邻分类器在适度增加计算成本(见表3)。
Related Work
元学习研究学习者的哪些方面(通常称为偏差或先验)在任务分布上的效果泛化[26,31,32]。用于少量学习的元学习方法可以大致分为三组。基于梯度的方法[22,8]使用梯度下降来适应给定训练示例的嵌入模型参数(如深度网络的所有层)。最近邻方法[33,28]学习基于距离的嵌入预测规则。例如,原型网络[28]通过样本的平均嵌入来表示每个类,分类规则是根据到最接近的类平均值的距离来划分的。另一个例子是匹配网络[33],它利用训练数据上的嵌入来学习类密度的核密度估计(该模型也可以被解释为训练例子上的注意力的一种形式)。基于模型的方法[18,19]学习参数化预测器来估计模型参数,例如,一种预测参数的递归网络,类似于参数空间上的几步梯度下降。基于梯度的方法比较普遍,但随着嵌入维数的增加,容易出现过拟合[18,25]。最近邻的方法提供了简单和规模好,在少数射击设置。然而,最近邻方法没有特征选择机制,对噪声特征的鲁棒性不强。
我们的工作是有关技术的反向传播通过优化程序。Domke[6]提出了一种基于固定步数展开梯度下降和自动微分计算梯度的通用方法。然而,优化器的跟踪(即。(中间值)需要存储,以便计算梯度,而梯度对于大问题来说是禁止的。Maclaurin等人[15]更详细地考虑了存储开销问题,他们研究了深度网络优化跟踪的低精度表示。如果优化的argmin可以解析地找到,例如在无约束二次最小化问题中,那么也可以解析地计算梯度。这已被应用于低水平视力问题的学习[30,27]。一个并行的和密切相关的工作[3]使用这个想法来学习使用封闭式解决方案的ridgeregression基础学习者的少枪模型。我们向读者推荐Gould等人的[11],它提供了一个优秀的关于区分argmin和argmax问题的技术调查。
我们的方法提倡使用线性分类器,它可以表述为凸学习问题。特别是,目标是一个二次规划(QP),可以有效地解决,以获得其全局最优利用梯度技术。此外,凸问题的解可以通过它们的Karush-KuhnTucker (KKT)条件来描述,这些条件允许我们使用隐函数定理[12]通过学习者反向传播。具体来说,我们使用的公式Amos和Kolter[1]提供了高效的GPU例程计算解决QPs和他们的梯度。当他们应用这个框架来学习约束满足问题的表示法时,它也非常适合于少弹学习,因为出现的问题规模通常都很小。
虽然我们的实验集中在铰链损失和’ 2正则化的线性分类器,我们的框架可以用于其他损失函数和非线性核。例如,[3]中使用的ridge回归学习者可以在我们的框架中实现,允许直接比较。