Transcription
下一位演讲者是 Adela,她将讨论利用自适应算法对变化的敏感性。 >> 好的。抱歉,稍等一下。我有点矮,够不着讲台。好的。大家好。嗯,好的。我很高兴向大家介绍我最近的一些项目,研究自适应算法及其对基变换的敏感性。嗯,这次演讲是基于与一些优秀的合作者一起完成的工作,特别是 Basilus,他将于秋季加入 Udub,还有 Becca Willlet 在芝加哥,以及一些出色的硕士生 Rick 和 Jose。所以,在这次演讲中,我想关注优化问题。所以,我们给定一个从 RD 到 R 的目标函数 f,我们的目标是找到一个 theta star 来最小化这个函数。所以,这里我绘制的是一个损失函数的等高线,它接受 R2 中的参数,即 theta 1 和 theta 2 轴。我想谈论的是对损失景观的小旋转。所以,从数学上讲,我们总是可以通过定义 tilda f 来做到这一点,这是一个映射,其作用是通过将 f 和 v 进行复合来实现的,其中 v 是一个正交矩阵,因为 v 是正交的,这非常字面意义上是绕原点旋转,我们没有缩放任何东西,并且我们保留了该景观的大部分重要属性。嗯,好的。嗯,尽管这似乎是一个如此良性的变换,但我声称存在一类算法,它们的性能在这种变换下会完全改变。而且,这是一个重要的家族,保守地说,我认为它可能已经被用于至少数千万美元的计算中。所以,在我告诉你们这个家族是什么之前,请允许我先向你们证明我的关于它们敏感性的主张。所以,这里我采用了一些神秘的算法。我将它初始化在右上角的橙色点,这些点在旋转下是等价的,然后我在两种坐标设置下以相同的超参数运行该算法。嗯,从视觉上看,我们可以看到生成的迭代点集在旋转下绝对不是等价的。而且,我们实际上已经看到了对收敛速率的影响。在第一种设置下,我们比在第二种设置下需要更多的迭代才能收敛。嗯,而且这是一个凸函数景观。但如果这个景观是非凸的,那么这种变化不仅会影响我们的收敛速率,还会影响我们收敛到的局部最小值。好的。所以,表现出这种行为的算法是所谓的自适应优化算法,特别是这里我运行的是 adrad,但这是一个庞大的家族。所以,如果你猜测的是 atom、atom w、rms prop,或者基本上任何名字以 ada 开头的算法,我都会给你满分。嗯,为了解释为什么这些算法被称为自适应,我想看看 adrad,对我来说,这是一个由 duchi、hassan 和 singer 提出的典型自适应算法。嗯,adrad 所做的是它维护所谓的自适应逐坐标学习率。所以,在时间步长 t,它使用学习率 ada subt 用于坐标 i。这可以通过取一个基本不变的全局学习率并将其除以一个小的稳定性参数 epsilon 加上所有先前迭代的 i 项梯度平方的总和的平方根来获得。这基本上允许 adrad 分别衰减每个坐标的学习率。嗯,这种自适应逐坐标学习率被这个家族中的所有算法共享,除了我们定义平均值的方式上的一些微小变化。嗯,它们都是这些算法对正交重参数化敏感的原因。嗯,鉴于这种敏感性,一些自然的研究问题出现了。首先,我们能否理解目标函数的哪些属性会使这些算法对基变换更加敏感,比如什么时候它们会特别敏感?然后,这是否是我们实际上可以利用的东西?所以,如果你来找我,给我一个损失函数,我能否给你一个有利的基,这样如果你对函数进行重参数化并在新的基中进行优化,也许你可以获得更好的性能。嗯,这就是我将在这次演讲中关注的。嗯,好的,为了寻找一个有利的基,我们观察到,如果你阅读最初的 ad 论文,它们深受梯度稀疏或轴对齐情况的启发。我的意思是,在第二个右手图示中,我绘制了在这些红色箭头不同点的梯度方向。你可以看到,在景观的大多数点上,梯度几乎平行于 theta 1 或 theta 2 轴。而像在最初的坐标设置中,大多数梯度要么平行于像 1 1 或 1 负 1。在第一个坐标设置中,它们是密集的。嗯,鉴于第二个框架是理想的 adrad 公式所偏好的那种,我们能否找到一种系统的重参数化来旋转损失景观,使其更趋于轴对齐?为了做到这一点,我们提出了 EGOP 重参数化。所以,EGOP 矩阵或函数的期望梯度外积矩阵,定义为在参数 theta 上取期望,然后将 theta 处的 f 的梯度与其自身进行外积,这里的期望是在用户指定的分布上进行的,但为了本次演讲的方便,让我们考虑各向同性分布,比如协方差为 sigma 平方乘以单位矩阵的高斯分布。嗯,我们选择这个对象的原因是,EGOP 矩阵的特征向量实际上捕捉了重要的主变异方向。我的意思是,看看这个损失景观。抱歉,这里显示得不太好。嗯,如果我们看我用红色绘制的主要 EGOP 特征向量,你可以看到它指向函数变化最剧烈的那个一维子空间的方向。而次要特征向量则识别了一个函数变化较慢的方向。所以,特征基是一个正交矩阵。如果我们重参数化到这个基,我们看到的是,我们实际上获得了我们所追求的那种改进的轴对齐属性。嗯,这表明了以下元算法。如果你来找我,给我一个损失函数,我们可以采样大量的点 theta,评估梯度,用它们来估计 EGOP,取它的特征基,形成 tilda f,由 f 复合特征基给出,然后优化 tilda f,希望获得更好的性能,如果你坚持使用像 atom 或 adrat 这样的算法。嗯,事实证明,这个元算法在某些假设下实际上可以证明地改善我们的收敛保证。所以,我想关注一个场景,其中 f 是凸的,我们有一个球形约束集,以及一个固定的步长 ADA。为了节省时间,我将不讨论我所有的假设。我只想强调两个。首先,我们将不得不假设海森矩阵在我们的集合内是 Lipschitz 连续的,并且 Lipschitz 常数足够小。然后,我们将假设原始函数不是极端轴对齐的。嗯,在这些假设下,我们可以证明 EGOP 重参数化将最坏情况收敛保证提高了高达 1/d 的因子。嗯,我这里展示的是,上面是 EGOP 重参数化 adrad 的收敛保证,下面是原始坐标下 adrad 的收敛保证。真正重要的是,这两个界限之间的唯一区别是我用黄色高亮显示的项。所以,这里我们有一个看起来像 srf 除以 d 的项,其中 d 再次是我们的优化问题的维度。所以,对于高维问题,这个 1/d 的因子可能相当可观。这个 srf 与 EGOP 矩阵的稳定秩有关,它被定义为特征值的平方根之和除以主特征值的平方根。如果你仔细看,你会注意到,如果 EGOP 具有很强的谱衰减,那么对于大多数 i 和 d,lambda i 相对于 lambda 1 都非常小。所以,在这些情况下,它将是一个常数。它不会随 D 缩放。因此,我们确实得到了一个像常数/d 这样的节省因子。嗯,好的,我们已经证明了这种 EGOP 谱衰减可以调节这些算法的敏感性,特别是当谱衰减更强时,我们的改进保证会更好。我声称这种强 EGOP 谱衰减在机器学习中是一种非常自然的属性。所以,这里我绘制的是一个两层 ReLU 网络函数在手写数字上的 EGOP 矩阵的归一化特征值。如果我们看这个线性尺度的插图,我们可以看到特征值正在极快地衰减到零。所以,在这种情况下,稳定秩将是相对于 D 的一个小的常数。而且,这并不是唯一一种数据集会观察到这种情况。你可以在你喜欢的基准测试上自己进行这个实验。而且,这也不是凭空出现的属性,这种稳定的秩很小的稳定秩与流形假设有关。嗯,这表明我们可能会在广泛的机器学习问题中看到改进。嗯,好的,那些是理论保证。在实践中它是如何工作的?这里我绘制了训练损失与每个周期的图,针对一系列不同的算法。实线表示原始坐标下的性能,虚线表示 EGOP 重参数化后的性能。我们看到自适应方法,即 adrad 和 atom,在 EGOP 重参数化下更快地最小化了训练损失,而像我将要评论的基线 SGD 和带动量的 SGD,它们在重参数化下基本上没有变化,这是可以预期的,因为它们实际上是旋转等变的。好的。嗯,一些快速的合理性检查。这种改进的训练损失最小化正在带来良好的测试准确性。嗯,这些结果对学习率是稳健的。你可能已经注意到,我们的保证对任何步长 ADA 都有效。所以,我不是在玩一个游戏,比如选择最佳的 ADA 和不同的东西,然后你可能会获得收益。好的。嗯,所以,总而言之,我们发现了什么?首先,我们提出了一个新假设,即机器学习目标中的这种低秩结构,由 EGOP 谱衰减量化,是调节这些算法对基变换敏感性的原因。我们提出了 EGOP 重参数化,希望能够提高这些算法的性能。然后,一些正在进行的工作,我很乐意与你们讨论,实际上是研究产生的解决方案的泛化本身对基变换的敏感性,以及我们可以在那里做什么。嗯,就这样,非常感谢大家,我很乐意回答问题。[掌声] 是的。>> 假设这有一些像你有一些条件分布,你正在使用>> 是的。嗯,我提到了这种各向同性属性,那些我忽略的温和条件基本上说,首先,让我们使用各向同性分布,然后第二,我们需要它的尺度足够分散。>> 没错。是的。相关问题,比如经验上你是否发现,理论上你知道,特别是对于非凸问题,你可以像重新做参数化一样,你觉得你好像停滞了或者什么的,这有帮助吗?>> 这是我到目前为止只做了一点点的事情,实际上,我发现前期重参数化非常有效,所以我没有通过周期性地进行重参数化获得巨大的收益。我认为,首先,理论上肯定有道理,你可以构造一些例子,你移动到某个新的盆地,重参数化会很有帮助。嗯,但也许我也只需要在经验上尝试一些更困难的问题,然后我就会开始看到周期性重参数化给我带来更多的好处。但是的,我认为这是一个非常自然的研究方向。谢谢。