Visualizing the Loss Landscape of Neural Nets论文阅读笔记

原文链接

Abstract

神经网络训练依赖于find “good” minimizers of highly non-convex loss functions。众所周知,某些网络体系结构设计(例如skip connections)会产生更容易训练的损失函数,而精心选择的训练参数(batch size, learning rate, optimizer)会产生更泛化的minimizers。然而,这些差异的原因及其对underlying loss landscape的影响尚不清楚。本文使用一系列可视化方法探索了神经损失函数的结构,以及loss landscape对泛化的影响。首先介绍了一种简单的“filter normalization”方法,它可以帮助我们可视化损失函数曲率,并在损失函数之间进行并行比较。然后,使用各种可视化方法探索网络架构如何影响loss landscape ,以及训练参数如何影响the shape of minimizers。

1 Introduction

神经网络的可训练行在很大程度上取决于网络结构设计的选择、优化器的选择、变量初始化以及其他各种考虑因素。不幸的是,这些选择对underlying loss surface的影响尚不清楚。可视化有助于回答神经网络工作的几个重要问题

  1. 为什么能够最小化高度非凸的神经损失函数?为什么得到的极小值是一般化的?为了弄清这些问题,使用高分辨率可视化技术来提供神经损失函数的经验表征,并探索不同网络架构的选择如何影响loss landscape。
  2. 还探讨了神经损失函数的非凸结构与其可训练性的相关性,以及neural minimizers的几何结构(i.e., their sharpness/flatness, and their surrounding landscape)如何影响其泛化特性。

为了做到这一点,提出了“filter normalization”,能够对训练期间发现的不同最小值进行并行比较。然后使用可视化技术探索通过不同方法找到的最小值的sharpness/flatness,以及网络架构选择(use of skip connections, number of filters, network depth)对loss landscape的影响。我们的目标是了解损失函数几何如何影响神经网络的泛化。本文的主要贡献如下:

  1. 揭示了许多损失函数可视化方法的缺陷,并表明简单的可视化策略无法准确捕获loss function minimizers的局部几何结构(sharpness/flatness)。
  2. 提出了一种基于“filter normalization”的简单可视化方法。当使用这种规范化时,即使在不同的网络架构和训练方法进行比较时,minimizers的sharpness也与泛化误差有很好的相关性,使得可以在不同的最小值之间进行并行比较。
  3. 观察到当网络变得足够深时, neural loss landscapes会迅速从近乎凸面过渡到高度混乱。这种从凸行为到混沌行为的转变与泛化误差的急剧下降相吻合,并最终导致缺乏可训练性。
  4. 观察到skip connections促进了flat minimizers,并防止了向混沌行为的过渡,解释了为什么跳跃连接对于训练极深的网络是必要的。
  5. 通过计算局部极小值周围Hessian最小特征值,并将结果可视化为热图,定量测量非凸性。
  6. 研究SGD优化轨迹的可视化。我们解释了可视化这些轨迹时出现的困难,并表明优化轨迹位于极低维空间中。这种低维性可以通过loss landscape中存在的大型、近乎凸的区域来解释,例如我们在二维可视化中观察到的区域。

2 Theoretical Background

研究历史与现状

3 The Basics of Loss Function Visualization

神经网络包含许多参数,因此损失函数位于高维的空间中,必须使用一些技巧来将损失函数投影到低维空间内

1-Dimensional Linear Interpolation

选择两组参数θ和θ’,并沿着连接这两个点的线绘制损失函数的值。可以通过选择参数α来参数化这条线,定义加权平均θ(α) = (1 −α)θ +αθ’。最后绘制函数f(α) = L(θ(α)) 。该方法已被广泛用于研究不同最小值的“sharpness” and “flatness”,以及sharpness对batch-size的依赖性。
该方法有几个缺点。首先,使用1D图很难显示非凸性;其次,该方法不考虑网络中的batch normalization or invariance symmetries 。因此产生的visual sharpness comparisons可能会产生误导;第5节将深入探讨这个问题。

Contour Plots & Random Directions

选择一个中心点θ∗ 以及两个方向向量δ和η,(维度与θ∗ 相同,因为后面有相加操作),绘制f(α, β) = L(θ∗ + αδ + βη)。

这里有个注释:

When making 2D plots in this paper, batch normalization parameters are held constant, i.e., random directions are not applied to batch normalization parameters.

因为BN层包含了参数mean和std,如果这两个参数也会随着α、β的变化而变化,那么BN的特性会发生改变,BN层失去了原有的作用,因此论文会保持BN参数不变。

4 Proposed Visualization: Filter-Wise Normalization

关于两个方向矢量如何选取:一种简单的方法就是随机选取(参数符合高斯分布且经过适当比例的缩放),虽然很简单,但无法捕获loss surfaces的内在几何结构,并且无法用于比较两个不同的minimizers或网络。原因在于网络参数的尺度不变性,使用BN情况会更加严重,在于BN的强正则化过程(没理解)

论文开始对方向矢量δ和η进行正则化。首先产生一个和θ相同维度的随机高斯矢量d,之后,会对d进行正则化,以与θ拥有相同的范数,正则化公式为:
在这里插入图片描述

5 The Sharp vs Flat Dilemma

本节论证sharp minimizers的泛化性是否比flat的要好?

以前一直认为曲线的平或陡峭与泛化性相关,但论文通过实验反驳了这一观点:
在这里插入图片描述
在这里插入图片描述
上三幅图没有权值衰减,符合一般认为的曲线越平泛化性越好这一观点(α=0,意味着只有小batch的参数集合 ,此处曲线变化较平,α=1,意味着只有大batch的参数集合,此处曲线变化较频繁)。

然而论文用下三幅图狠狠的打了这个观点的脸,加了weight decay后,情况反过来了,小batch处的曲线变化较频繁,大batch处的曲线较平。但是注意test的准确率都是小batch好,这说明小batch的泛化性比大batch的泛化性要好,这说明曲线的陡峭程度与泛化性没有直接关系

Filter Normalized Plots

使用第4节介绍的方法重新绘制曲线,反应minimizers的陡峭程度与泛化性之间的关系:
在这里插入图片描述

图3就完美反应了sharpness与泛化性之间的关系,即越宽的contour泛化性越好,并且发现小batch size拥有更宽的contour,即泛化性更好

6 What Makes Neural Networks Trainable? Insights on the (Non)Convexity Structure of Loss Surfaces

本节探索网络结构对损失函数非凸性的影响,以及其与泛化性的关系

本节使用的方法是第4节介绍的filter-normalized随机方向方法来绘制loss landscape,并且5.1节的经验,即越宽的contour泛化性越好

The Effect of Network Depth

在这里插入图片描述

本节主要针对的是图5下面三幅图:当不加residual时,随着网络深度的增加, VGG-like nets的loss surface会自发地从(几乎)凸过渡到混沌,即非凸性变强,变得非常陡峭,根据后续实验的经验,loss curvature 越平坦,模型越容易 generalization,在test set上的表现越好

Shortcut Connections to the Rescue

如图5上面三幅图所示,有skip connection(shortcut connection)的网络比没有skip-connection的网络要平滑,更容易收敛到比较好的local/global minima,网络深度增加时,loss surface变为混沌状态的可能性变少了很多

Wide Models vs Thin Models

在这里插入图片描述
模型宽度越宽(每一层的神经元个数越多,参数越大),即卷积核数目越多,对应的 loss curvature 越 flat,更不容易出现混沌状态,泛化性也越好

Implications for Network Initialization

初始化如果落在"well-behaved"的区域,则很可能通过训练落在minimizer处,反之,初始化如果落在high-loss chaotic plateaus,则不会落回minimizer处

Landscape Geometry Affects Generalization

landscape geometry对泛化性的作用有两点,第一点为loss landscape越平检测错误率越低;第二点为混沌区域会增加错误率

Visualizing Optimization Paths

参考1
参考2

  • 1
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值