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

原创 2018年01月04日 06:48:12


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


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


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


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


0

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


0

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


0


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

0

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


0

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


0

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


0

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


0

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


0

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


0

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


0

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


结语


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


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


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


论文:Visualizing the Loss Landscape of Neural Nets

0


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


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


深度神经网络(DNN)损失函数和激活函数的选择

http://www.cnblogs.com/pinard/p/6437495.html     在深度神经网络(DNN)反向传播算法(BP)中,我们对DNN的前向反向传播算法的使用做了总结...
  • zdy0_2004
  • zdy0_2004
  • 2017年02月24日 15:51
  • 1783

神经网络数据预处理,正则化与损失函数

版权声明:本文为博主原创文章,未经博主允许不得转载。 作者:寒小阳  时间:2016年1月。  出处:/han_xiaoyang/arti...
  • memray
  • memray
  • 2016年05月19日 11:54
  • 3569

神经网络中常用的误差平方和损失函数是什么

神经网络中常用的误差平方和损失函数是什么
  • qq745021926
  • qq745021926
  • 2016年11月16日 21:06
  • 2455

马里兰大学帕克分校提出对「损失函数」进行「可视化」,以提高神经网络的训练能力

原文来源:arxiv作者:Hao Li、Zheng Xu、Gavin Taylor、Tom Goldstein「雷克世界」编译:嗯~阿童木呀、KABUDA一般来说,我们对于神经网络的训练,往往依赖于找...
  • Ksf3kg7dU95rn0XL
  • Ksf3kg7dU95rn0XL
  • 2018年01月02日 00:00
  • 236

深度学习与计算机视觉系列(7)_神经网络数据预处理,正则化与损失函数

1. 引言 上一节我们讲完了各种激励函数的优缺点和选择,以及网络的大小以及正则化对神经网络的影响。这一节我们讲一讲输入数据预处理、正则化以及损失函数设定的一些事情。 2. 数据与网络的设定 前一节提到...
  • yaoqiang2011
  • yaoqiang2011
  • 2016年01月03日 16:43
  • 47176

深度学习与计算机视觉系列(7)_神经网络数据预处理,正则化与损失函数

作者:寒小阳 && 龙心尘  时间:2016年1月。  出处:  /han_xiaoyang/article/details/50451460  htt...
  • qq_26898461
  • qq_26898461
  • 2016年01月05日 15:40
  • 779

CS231n 卷积神经网络与计算机视觉 6 数据预处理 权重初始化 规则化 损失函数 等常用方法总结

1 数据处理 首先注明我们要处理的数据是矩阵X,其shape为[N x D] (N =number of data, D =dimensionality). 1.1 Mean subtractio...
  • bea_tree
  • bea_tree
  • 2016年05月28日 04:50
  • 11366

深度学习与计算机视觉系列(7)_神经网络数据预处理,正则化与损失函数

作者:寒小阳 时间:2016年1月。 出处:/han_xiaoyang/article/details/50451460 声明:版权所有,转载请联系作者并...
  • u010480899
  • u010480899
  • 2016年10月07日 22:22
  • 576

深度学习与计算机视觉系列(7)_神经网络数据预处理,正则化与损失函数

上一节我们讲完了各种激励函数的优缺点和选择,以及网络的大小以及正则化对神经网络的影响。这一节我们讲一讲输入数据以及损失函数设定的一些事情。...
  • longxinchen_ml
  • longxinchen_ml
  • 2016年01月03日 16:52
  • 14728

神经网络的损失函数和正则化

Loss Function 损失函数可以看做误差部分(loss term) + 正则化部分(regularization term) 1.1 Loss Term Go...
  • hhhhhjkk
  • hhhhhjkk
  • 2018年01月07日 15:34
  • 24
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:马里兰大学论文:可视化神经网络的损失函数
举报原因:
原因补充:

(最多只允许输入30个字)