【文献阅读】understanding deep learning requires rethinking generalization 理解深度学习需要重新思考一下“泛化”

文章来自Google brain团队,2016年10月在arxiv.org上发表第一版本,百度学术显示,截止2017年7月,引用量为28。论文第二版投稿ICLR(学习表示国际会议),并赢得了best paper award. [论文全文], [slides]


背景:机器学习,模型选择

当训练数据少,模型假设的参数多时,可能可以有多个模型(不同的参数取值)都能很好的拟合训练数据。我们说此时假设空间太大,模型复杂度太高。在实际应用中的监督式模型中,我们的最终目的往往不是学习模型使得对训练数据拟合好(即在训练集上的准确性高,训练误差小),而是对新的,未标注的数据能很好的拟合(即在测试集上的准确性高,测试误差小),此时称模型的泛化能力好。

Q:模型选择/模型泛化能力只针对监督式学习?

传统的机器学习方法中,通常通过对最优解的范数进行限制,相当于限制了模型空间,进而提高泛化能力。概率解释,相当于给模型参数某种先验假设。

有Rademacher复杂度、VC维、fat-shattering维等一些方法来度量模型的复杂度。

算法层面用一致稳定性描述模型对数据的变化的敏感度。

现实世界往往是简单的,太复杂的模型往往泛化能力不好(当然其实模型复杂与否,也是一定程度上相对于泛化能力来说的),多用剃须刀。

Q:最小化参数的范数-而不是最大化或者其他什么限制,相对于是通往简单吗?
当最小化到0的时候稀疏了参数更少了,确实是更简单了。也可以把参数限制到某个常数比如1,也相当于砍掉了这个参数吧。(这和限制到常数0是等价的吧)

深度神经网络的泛化能力

作者在图片分类等任务上做了一些实验发现,当深度神经网络(卷积网络)的参数个数多于训练样本的时候,无论训练的标签是什么样的(随机的),模型都能很好的拟合训练数据(这个深度神经网络的模型假设空间真是太大了)。并且理论分析了有限样本上两层神经网络模型表达能力,即从d维实数数据空间,选择任意大小为n的样本集合,对其做任意实数的标签,激活函数ReLU,有2n+d个权重(模型参数)的两层神经网络模型都能完全拟合训练数据。

然而这些模型的泛化能力是不一样的,测试误差不是都好的,该怎么选择模型呢?考虑使用机器学习方法中的正则项方法。在深度神经网络上的显示的正则方法常见的有:

  • 数据增强:通过特定域的转换增强训练集。对图片数据,常用的转换包括随机的剪裁,对亮度、饱和度、色度、对比度的随机扰动。
  • 权重衰减:相当于在权重上加l2正则项,也相当于将权重严格的限制在euclidean球里。
  • dropout:以一定的概率随机地遮掩输出层的一些元素。

一些隐式的正则方法,和一些实验观察据说可以减小过拟合提高测试数据集上性能的方法技巧常见的有:

  • early stopping 是一些凸学习问题中的隐式的正则方法。
  • batch normalization在每个小批中标准化层响应,可以提高泛化性能。

作者通过实验表明,这些方法技巧,对模型泛化能力的提高都不是关键性的,不用没有影响,或者提高很小,或者通过微小地调整模型泛化能力提高的更多。

最后,在最简单的线性模型上min loss(wx,y)说明,采用SGD算法从0的初始值开始更新,相当于对最优解做了最新l2范数的隐式正则约束。

n个数据点 { (xi,yi)} , xi 是d维向量, yi 是实数标签。考虑最简单的线性模型,d维参数 w ,不加入正则项,

minw1niloss(wT
  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值