BAAI 2020 北京智源大会 | 鬲融 | Towards a Theoretical Understanding of Learning-to-learn Methods

Towards a Theoretical Understanding of Learning-to-learn Methods

回放地址

机器学习前沿青年科学家专题论坛

主要内容

概述

鬲融教授(Duke University)结合当前Learning-to-learn方法面临的挑战,在quadratic objective分析了一些optimizer(GD和SGD),通过分析,得出了1,小心地选择meta-objective也许能缓解explosion/vanishing 问题;处理反向传播问题要小心; 2,当只有很少的样本和很多噪音时,需要在单独的验证集上定义meta-objective。

主要内容

当我们训练一个神经网络的时候,通常会有很多tricks。比如训练SGD,就会遇到怎么设置Step size,momentum,weight decay,batch normalization 等,所以往往不是听上去那么简单。也许你想自动地训练这些过程,或者你还想进一步自动地发现新的tricks。人们已经考虑到了这个问题,并且提出了Learning to learn。

在这里插入图片描述

关于Learning to Learn 方法:

  • idea是使用meta-learning 方法来学习一个新的optimizer;
  • Goal是对一些任务优化目标函数;
  • 比较高层次(high-level)的idea不是使用定义好的SGD或者adam,事实上是把优化算法抽象成一个箱子,我们通过改变参数θ,这个箱子接收一些信息,比如当前的点w,目标函数在当前点的值 f ( w ) f(w) f(w)以及目标函数梯度在当前点的值 ∇ f ( w ) \nabla{f(w)} f(w)等等,然后输出一个当前的点应该移动的方向。所以一旦你有了这样的一个带有参数θ的abstract optimizer,你可以为这些任务来优化参数θ。
  • Optimizer可以很简单,但是也可以是一个神经网络。

在这里插入图片描述

所以你需要怎样来训练你的optimizer? 步骤如下:

  • 将optimizer展开为t步
  • 在trajectory上定义一个meta-objective (具体定义方法我们会在后面介绍)
  • 在参数θ上做(meta-)gradient descent
  • 某种程度上和recurrent neural network/policy gradient很像,因为你需要分享θ

在这里插入图片描述

你也许希望上手就能解决问题,但是事情并没有那么简单。在目前的研究中存在着一些问题(见下图)。
本次的工作:为简单的quadratic objective分析简单的optimizer(GD和SGD),learning-rate是唯一我们要tune的参数。实际上,即使是这些简单问题,也需要花费努力去解决。

在这里插入图片描述

我们的结果。

  • 对于Quadratic Objective的Gradient explosion/vanishing

    • 即使是非常naive的meta-objective在所有的step size中也会有meta-gradient explosion/vanishing 。
    • 我们可以设计一个更好的meta-objective使得它的meta-gradient保持多项式有界的。
    • 即使是对于新的objective,使用反向传播来计算meta-gradient也会导致一些数值问题。
  • 最小二乘训练优化器的一般化

    • 在样本数量小时,需要在单独的验证集(separate validation set)上定义meta-objective。
    • 当样本数量大时,可以仅仅在训练集(training set)上定义meta-objective。

在这里插入图片描述

所以首先来看看我们的第一个结果(对于Quadratic Objective的Gradient explosion/vanishing),我们定义了一个简单的Objective 函数,固定步长的梯度下降,同时定义了一个Naive meta-object。
通过一些简单的计算,我们能够证明对于几乎所有的值η,meta-gradient F ′ ( η ) F'(η) F(η)在T上要么非常大,要么非常小。

在这里插入图片描述

所以怎么来解决这个问题?
Idea:meta-gradeint很大是因为objective在T上很大或者很小。
所以我们可以对原来的objective取对数。我们可以证明对于新的objective,它的meta-gradient G ′ ( η ) G'(η) G(η)在相关参数中总是多项式的,此外拥有meta-step大小为 1 / k 1/\sqrt{k} 1/k 的meta-gradient收敛。
然而,如果使用backpropagtion计算 G ′ ( η ) G'(η) G(η),会出现项极大或极小的情况。

在这里插入图片描述

我们也进行的了实证验证。

在这里插入图片描述

现在我们来讨论我们第二个result(最小二乘训练优化器的一般化)。
首先我们来设置一下我们的问题,我们要解决的是最小二乘问题,目标是要恢复 w ∗ w_{*} w,使用图中的Ojbective和Algorithm,所以我们怎样定义一个meta-objective?

在这里插入图片描述

有两种idea来定义meta-objective。

  • Train-by-train(旧)
  • Train-by-validation(新)

在这里插入图片描述

我们可以证明,当σ是一个足够大的常数时,并且样本数量n是维度d的常数分数,那么train-by-validation会更好一些;当样本数量n远大于维度d时,两种方案都能work。
对于神经网络,通常是第一种情况发生。

在这里插入图片描述

我们这里给出一些high-level proof idea。

在这里插入图片描述

进行实证验证。

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

最后进行总结。

  • 小心地选择meta-objective也许能缓解explosion/vanishing 问题;处理反向传播问题要小心。
  • 当只有很少的样本和很多噪音时,需要在单独的验证集上定义meta-objective

还有一些开放的问题

  • 我们可以缓解neural network optimizer的gradient explosion/vanishing 问题和数值问题吗?
  • 我们可以在可证明地在更复杂的objectives上的更复杂的optimizers上调优参数吗?

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值