马里兰大学论文:可视化神经网络的损失函数

选自arXiv

机器之心编译

参与:黄小天、刘晓坤

在这篇论文中,研究人员提出了「过滤器归一化」方法,用于可视化损失函数的曲率,并对损失函数进行了实验性的并行对比。他们进一步探索了多种因素(网络架构、超参数、优化器等)对损失函数形态的影响,以及损失函数形态对泛化能力的影响。

神经网络的训练需要最小化高维度非凸损失函数——这是一项理论上很难、有时却易于实践的任务。尽管训练一般性神经损失函数(Blum & Rivest, 1989)是 NP-hard,简单的梯度方法却经常能找到全局最小值(global minimizer,带有零或接近于零的训练损失的参数配置),甚至在训练之前当数据和标签已被随机化时(Zhang et al., 2017)也有效。但是,这有效却不通用;神经网络的可训练性高度依赖于网络架构设计、优化器和变量初始化方式的选择,以及大量其他考虑。不幸的是,这些选择的每一个对底层损失函数的几何结构的影响还不清楚。由于评估损失函数成本高昂(需要循环遍历训练集中的所有数据点),因此该领域的研究仍然主要是理论性的。

本文目标是使用高分辨率可视化来提供神经损失函数的经验性特征,并探索不同网络架构的选择对损失函数的影响。进而,本文探索了神经损失函数的非凸结构与其可训练性的关系,以及神经极小值(即它们的尖锐度/平坦度和周遭的形状)的几何如何影响其泛化能力。

为了以有意义的方式达到目的,本文提出了一种简单的「过滤器归一化」(filter normalization)方案,能够并行比较由不同方法发现的不同极小值。然后,本文通过可视化来探索由不同方法发现的极小值的尖锐度/平坦度,以及网络架构选择(跳过连接的使用、过滤器数量、网络深度)对损失函数的影响。本文目标是理解损失函数几何形状的不同是如何影响神经网络的泛化能力的。

图 1:ResNet-56 没有跳过连接和有跳过连接的损失函数曲面。垂直坐标是对数的,以展示动态范围。本文提出的过滤器归一化方案用于比较两个图的尖锐度/平坦度。

图 2:通过对 VGG-9 使用小批次和大批次方法得到的解的 1D 线性差值。蓝线是损失值,红线是准确率。实线是训练曲线,虚线是测试曲线。小批次在横坐标的 0,大批次在横坐标的 1。

表 1:VGG-9 使用不同的优化算法和超参数在 CIFAR-10 上的测试误差。

图 3:权重的直方图。权重衰变率为 0、批尺寸较小的时候得到的权重较大。权重衰变率不为 0、批尺寸较大的时候得到的权重较小。

图 4:使用不同的优化算法得到的极小值的形状,其中使用了不同的批尺寸和权重衰变率。每个子图的下方标出了优化器、批尺寸和测试误差。第一行使用的权重衰变率为 0,第二行使用的权重衰变率为 5e-4。

图 5:通过 SGD 和小批尺寸、大批尺寸得到的解的 2D 可视化。和图 4 类似,第一行使用的权重衰变率为 0,第二行使用的权重衰变率为 5e-4。

图 6:不同网络的解的 2D 可视化。

表 2:不同架构的损失值和误差。

图 7:Wide-ResNet-56(WRN-56)包含捷径连接(上半 4 张)和不包含捷径连接(下半 4 张)在 CIFAR-10 上的损失函数图像。k=2 表示每层有两倍的滤波器,k=4 表示每层有四倍的滤波器,等。测试误差在每个图下方标出。

图 8:优化器轨迹的无效可视化。这些可视化方法遭遇了高维空间的随机方向正交性带来的困难。

图 9:对 VGG-9 使用归一化的 PCA 方向的投影学习轨迹。每个子图中的左图使用的批尺寸为 128,右图使用的批尺寸为 8192。

结语

本文提出了一种新的、更精确的可视化技术,能够为神经网络实践者面对的众多选择的结果提供见解,包括网络架构、优化器选择和批大小。

近年来神经网络飞速发展。要在未来取得更多进展,需要对神经网络的结构有更全面的理解。本文希望通过有效的可视化技术以及理论的持续进步,可以带来更快的训练、更简单的模型以及更好的泛化。

研究表明,当神经网络很深或没有跳过连接的时候,损失函数的曲面会从凸面的、平滑的转变成杂乱的、尖锐的,进而大大降低泛化能力和可训练性。

论文:Visualizing the Loss Landscape of Neural Nets

论文链接:https://arxiv.org/abs/1712.09913

神经网络的训练依赖于寻找高度非凸损失函数的(足够好的)极小值的能力。利用特定的网络架构设计(例如,跳过连接)生成的损失函数可以使训练过程变得更简单,利用精心调整的训练参数(批尺寸、学习率、优化器)可以达到使泛化能力更好的极小值。然而,对于这些规律,以及这些因素对损失函数形态的影响,并没有得到很好的理解。在这篇论文中,我们用多种可视化方法探索了神经网络损失函数结构,以及损失函数的形态对泛化能力的影响。首先,我们介绍了一种简单的「过滤器归一化」(filter normalization)方法帮助我们可视化损失函数的曲率,并对损失函数进行有意义的并排对比。然后我们使用多种可视化方法探索了网络架构对损失函数形态的影响,以及训练参数对极小值的形态的影响。

本文来自企鹅号 - 机器之心媒体

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏机器之心

学界 | 马里兰大学论文:可视化神经网络的损失函数

2908
来自专栏机器之心

深度 | 理解神经网络中的目标函数

选自Kdnuggets 作者:Lars Hulstaert 机器之心编译 参与:晏奇、李泽南 本文面向稍有经验的机器学习开发者,来自微软的 Lars Hulst...

3219
来自专栏CreateAMind

torcs强化学习的图像生成低纬表示重建效果

commaai的生成模型进行生成torcs道路画面,左侧为生成图像,右侧为实际游戏图像,两个画面为一个epoch的1万次循环训练的效果,下面跨度98个epoch...

1054
来自专栏新智元

清华&伯克利ICLR论文:重新思考6大剪枝方法

网络剪枝(Network Pruning)是常用的模型压缩方法之一,被广泛用于降低深度模型的繁重计算量。

1041
来自专栏海天一树

机器学习(二):有监督学习、无监督学习和半监督学习

一、基本概念 1 特征(feature) 数据的特征。 *举例:书的内容* 2 标签(label) 数据的标签。 *举例:书属于的类别,例如“计算机”“图形学”...

3416
来自专栏CVer

CS229 机器学习速查表

本文经机器之心(微信公众号:almosthuman2014)授权转载,禁止二次转载

1251
来自专栏ATYUN订阅号

赫尔辛基大学AI基础教程:先进的神经网络技术(5.3节)

在赫尔辛基大学AI基础教程前一节中,我们讨论了大多数神经网络方法的基本思想:多层神经网络,非线性激活函数并学习了反向传播算法。

732
来自专栏机器之心

资源 | 源自斯坦福CS229,机器学习备忘录在集结

项目地址:https://github.com/afshinea/stanford-cs-229-machine-learning

761
来自专栏机器之心

解读 | ICLR-17 最佳论文:理解深度学习需要重新思考泛化问题

选自morning paper 机器之心编译 参与:黄玉胜、黄小天 本文是一篇很好的综述论文:结果很容易理解,也让人有些惊讶,但其意指又会让人思考良久。 对于文...

3709
来自专栏机器之心

学界 | 模型的泛化能力仅和Hessian谱有关吗?

经验表明,通过训练深度神经网络得到的不同局部最优值往往并不能以相同的方式泛化到未知数据集上,即使取得了相同的训练损失。近年来,这一问题日益受到经验和理论深度学习...

872

扫码关注云+社区