深度神经网络为何很难训练?

2017 年 12 月 22 日 数盟

假设你是一名工程师,接到一项从头开始设计计算机的任务。某天,你在工作室工作,设计逻辑电路,构建AND门,OR门等等时,老板带着坏消息进来:客户刚刚添加了一个奇特的设计需求:整个计算机的线路的深度必须只有两层:

你惊呆了,跟老板说道:“这货疯掉了吧!”

老板说:“我也认为他们疯了,但是客户的需求比天大,我们要满足它。”

实际上,在某种程度上看,他们的客户并没有太疯狂。假设你可以使用某种特殊的逻辑门,它让你对任意多的输入做AND运算。同样也能使用多输入的NAND门——可以对多个输入做AND运算并取负的门。有了这类特殊的门,构建出来的两层深度的电路可以计算任何函数。

但是仅仅因为某件事是理论上可能的,并不代表这是一个好的想法。在实践中,在解决线路设计问题(或者大多数的其他算法问题)时,我们通常考虑如何解决子问题,然后逐步地集成这些子问题的解。换句话说,我们通过多层的抽象来获得最终的解答。

例如,假设我们来设计一个逻辑线路来做两个数的乘法。我们希望在已经有了计算两个数加法的子线路基础上创建这个逻辑线路。计算两个数和的子线路也是构建在用于两个比特相加的子子线路上的。粗略地讲我们的线路看起来像这个样子:

最终的线路包含至少三层线路的基本部分。实际上,这个线路很可能会超过三层,因为我们可以将子任务分解成比上述更小的单元。但是基本思想就是这样。

因此深度线路让这样的设计过程变得更加简单。但是这对于设计本身帮助并不大。其实,数学证明对于某些函数设计的?常浅的线路可能需要指数级的线路单元来计算。例如,在1980 年代早期的一系列著名的论文已经给出了计算比特的集合的奇偶性通过浅的线路来计算需要指数级的门。另一当面,如果你使?更深的线路,那么可以使用规模很小的线路来计算奇偶性:仅仅需要计算比特的对的奇偶性,然后使用这些结果来计算比特对的对的奇偶性,以此类推,构建出总共的奇偶性。深度线路这样就能从本质上获得超过浅线路的更强的能力。

几乎我们遇到的所有的网络就只包括一层隐藏神经元(另外还有输入输出层):

这些简单的网络已经非常有用了:在前面的章节中,我们使用这样的网络可以进行准确率高达98% 的手写数字的识别!而且,凭直觉地看,我们期望拥有更多隐藏层的神经网络能够变的更加强大:

这样的网络可以使用中间层构建出多层的抽象,正如我们在布尔线路中做的那样。例如,如果我们在进行视觉模式识别,那么在第一层的神经元可能学会识别边,在第二层的神经元可以在边的基础上学会识别出更加复杂的形状,例如三?形或者矩形。第三层将能够识别更加复杂的形状。以此类推。这些多层的抽象看起来能够赋予深度网络一种学习解决复杂模式识别问题的能力。然后,正如线路的示例中看到的那样,存在着理论上的研究结果告诉我们深度网络在本质上比浅层网络更加强大。

媒体合作请联系:

邮箱:contact@dataunion.org





登录查看更多
1

相关内容

深度神经网络(DNN)是深度学习的一种框架,它是一种具备至少一个隐层的神经网络。与浅层神经网络类似,深度神经网络也能够为复杂非线性系统提供建模,但多出的层次为模型提供了更高的抽象层次,因而提高了模型的能力。
[ICML-Google]先宽后窄:对深度薄网络的有效训练
专知会员服务
33+阅读 · 2020年7月5日
【实用书】Python机器学习Scikit-Learn应用指南,247页pdf
专知会员服务
257+阅读 · 2020年6月10日
【实用书】Python技术手册,第三版767页pdf
专知会员服务
229+阅读 · 2020年5月21日
Sklearn 与 TensorFlow 机器学习实用指南,385页pdf
专知会员服务
127+阅读 · 2020年3月15日
机器学习速查手册,135页pdf
专知会员服务
336+阅读 · 2020年3月15日
模型压缩究竟在做什么?我们真的需要模型压缩么?
专知会员服务
27+阅读 · 2020年1月16日
网络宽度对深度学习模型性能有什么影响?
极市平台
15+阅读 · 2019年7月7日
深度学习必须理解的25个概念
机器学习算法与Python学习
5+阅读 · 2018年6月7日
卷积神经网络的最佳解释!
专知
12+阅读 · 2018年5月1日
第二章 机器学习中的数学基础
Datartisan数据工匠
12+阅读 · 2018年4月5日
一文帮你理解什么是深层置信网络(DBN)
从零开始:教你如何训练神经网络
机器之心
5+阅读 · 2017年12月11日
干货 | 深度学习之损失函数与激活函数的选择
机器学习算法与Python学习
15+阅读 · 2017年9月18日
人工神经网络
平均机器
14+阅读 · 2017年7月17日
Arxiv
6+阅读 · 2019年8月22日
Arxiv
5+阅读 · 2018年1月17日
Arxiv
10+阅读 · 2017年12月29日
Arxiv
4+阅读 · 2016年12月29日
VIP会员
相关VIP内容
[ICML-Google]先宽后窄:对深度薄网络的有效训练
专知会员服务
33+阅读 · 2020年7月5日
【实用书】Python机器学习Scikit-Learn应用指南,247页pdf
专知会员服务
257+阅读 · 2020年6月10日
【实用书】Python技术手册,第三版767页pdf
专知会员服务
229+阅读 · 2020年5月21日
Sklearn 与 TensorFlow 机器学习实用指南,385页pdf
专知会员服务
127+阅读 · 2020年3月15日
机器学习速查手册,135页pdf
专知会员服务
336+阅读 · 2020年3月15日
模型压缩究竟在做什么?我们真的需要模型压缩么?
专知会员服务
27+阅读 · 2020年1月16日
相关资讯
网络宽度对深度学习模型性能有什么影响?
极市平台
15+阅读 · 2019年7月7日
深度学习必须理解的25个概念
机器学习算法与Python学习
5+阅读 · 2018年6月7日
卷积神经网络的最佳解释!
专知
12+阅读 · 2018年5月1日
第二章 机器学习中的数学基础
Datartisan数据工匠
12+阅读 · 2018年4月5日
一文帮你理解什么是深层置信网络(DBN)
从零开始:教你如何训练神经网络
机器之心
5+阅读 · 2017年12月11日
干货 | 深度学习之损失函数与激活函数的选择
机器学习算法与Python学习
15+阅读 · 2017年9月18日
人工神经网络
平均机器
14+阅读 · 2017年7月17日
Top
微信扫码咨询专知VIP会员