深度 究竟怎么理解 深度学习中的 (深度意思是什么)

雷锋网按:本文原作者,本文原载于其知乎专栏—— 超智能体 。雷锋网已获得原作者授权。

为了研究神经网络,我们必须要对什么网络是什么有一个更直观的认识。

神经网络是由一层一层构建的,那么每层究竟在做什么?

深度学习中的“深度”究竟怎么理解?

深度学习中的“深度”究竟怎么理解?

现在我们知道了每一层的行为,但这种行为又是如何完成识别任务的呢?

深度学习中的“深度”究竟怎么理解?

深度学习中的“深度”究竟怎么理解?

神经网络的解决方法依旧是转换到另外一个空间下,用的是所说的 5 种空间变换操作 。比如下图就是经过放大、平移、旋转、扭曲原二维空间后,在三维空间下就可以成功找到一个超平面分割红蓝两线 (同 SVM 的思路一样)。

深度学习中的“深度”究竟怎么理解?

上面是一层神经网络可以做到的,如果把 当做新的输入再次用这 5 种操作进行第二遍空间变换的话,网络也就变为了二层。最终输出是 。 设想网络拥有很多层时,对原始输入空间的 “扭曲力” 会大幅增加,如下图,最终我们可以轻松找到一个超平面分割空间。

深度学习中的“深度”究竟怎么理解?

当然也有如下图失败的时候,关键在于 “如何扭曲空间”。所谓监督学习就是给予神经网络网络大量的训练例子,让网络从训练例子中学会如何变换空间。每一层的权重 W 就控制着如何变换空间,我们最终需要的也就是训练好的神经网络的所有层的权重矩阵。

深度学习中的“深度”究竟怎么理解?

这里有非常棒的 可视化空间变换 demo ,一定要打开尝试并感受这种扭曲过程。更多内容请看 Neural Networks, Manifolds, and Topology 。

深度学习中的“深度”究竟怎么理解?

深度学习中的“深度”究竟怎么理解?

知道了神经网络的学习过程就是学习控制着空间变换方式(物质组成方式)的 权重矩阵 后,接下来的问题就是如何学习每一层的权重矩阵 。

既然我们希望网络的输出尽可能的接近真正想要预测的值。那么就可以通过 比较 当前网络的 预测值 和我们真正想要的 目标值 ,再根据两者的差异情况来更新每一层的权重矩阵(比如,如果网络的预测值高了,就调整权重让它预测低一些,不断调整,直到能够预测出目标值)。因此就需要先 定义 “如何比较 预测值和目标值的 差异 ”,这便是 损失函数 目标函数(loss function or objective function) ,用于衡量预测值和目标值的差异的方程。loss function 的输出值(loss)越高表示差异性越大。那神经网络的训练就变成了尽可能的缩小 loss 的过程。 所用的方法是 梯度下降(Gradient descent) :通过使 loss 值向当前点对应梯度的反方向不断移动,来降低 loss。一次移动多少是由 学习速率(learning rate) 来控制的。

然而使用梯度下降训练神经网络拥有两个主要难题。

梯度下降寻找的是 loss function 的局部极小值,而我们想要全局最小值。如下图所示,我们希望 loss 值可以降低到右侧深蓝色的最低点,但 loss 有可能 “卡” 在左侧的局部极小值中。

深度学习中的“深度”究竟怎么理解?

试图解决 “卡在局部极小值” 问题的方法分两大类:

机器学习所处理的数据都是高维数据,该 如何快速计算梯度 、而不是以年来计算。 其次如何更新 隐藏层 的权重? 解决方法是:计算图: 反向传播算法 这里的解释留给非常棒的 Computational Graphs: Backpropagation 需要知道的是, 反向传播算法是求梯度的一种方法 。如同快速傅里叶变换(FFT)的贡献。 而计算图的概念又使梯度的计算更加合理方便。

下面就结合图简单浏览一下训练和识别过程,并描述各个部分的作用。要 结合图解阅读以下内容。但手机显示的图过小,最好用电脑打开。

深度学习中的“深度”究竟怎么理解?

深度学习中的“深度”究竟怎么理解?

深度学习中的“深度”究竟怎么理解?

注:此部分内容 不是 这篇文章的 重点 ,但为了理解 深层 神经网络,需要明白最基本的训练过程。 若能理解训练过程是通过梯度下降尽可能缩小 loss 的过程即可。 若有理解障碍,可以用 python 实践一下 从零开始训练一个神经网络 ,体会整个训练过程。若有时间则可以再体会一下计算图自动求梯度的方便 利用 TensorFlow 。

理解 5 种空间操作和物质组成视角

打开网页后,总体来说,蓝色代表正值,黄色代表负值。拿 分类 任务来分析。

深度学习中的“深度”究竟怎么理解?

深度学习中的“深度”究竟怎么理解?

深度学习中的“深度”究竟怎么理解?

深度学习中的“深度”究竟怎么理解?

深度学习中的“深度”究竟怎么理解?

上图中所有在黄色背景颜色的点都会被分类为 “黄点 “,同理,蓝色区域被分成蓝点。在上面的分类分布图中你可以看到每一层通过上一层信息的组合所形成的。权重(那些连接线)控制了 “如何组合”。神经网络的学习也就是从数据中学习那些权重。Tensorflow playground 所表现出来的现象就是 “在我文章里所写的 “物质组成思想”,这也是为什么我把 Tensorflow playground 放在了那一部分。

不过你要是把 Tensorflow 的个名字拆开来看的话,是 tensor(张量)的 flow(流动)。Tensorflow playground 的作者想要阐述的侧重点是 “ 张量如何流动 ” 的。

5 种空间变换的理解: Tensorflow playground 下没有体现 5 种空间变换的理解。需要打开这个网站尝试: ConvNetJS demo: Classify toy 2D> 深度学习中的“深度”究竟怎么理解?

左侧是原始输入空间下的分类图,右侧是转换后的高维空间下的扭曲图。

深度学习中的“深度”究竟怎么理解?

最终的扭曲效果是所有绿点都被扭曲到了一侧,而所有红点都被扭曲到了另一侧。这样就可以线性分割(用超平面(这里是一个平面)在中间分开两类)

文章的最后稍微提一下深层神经网络。深层神经网络就是拥有更多层数的神经网络。

按照上文在理解视角中所述的观点,可以想出下面两条理由关于为什么更深的网络会更加容易识别,增加容纳变异体(variation)(红苹果、绿苹果)的能力、鲁棒性(robust)。

数学视角: 变异体(variation)很多的分类的任务需要高度非线性的分割曲线。不断的利用那 5 种空间变换操作将原始输入空间像 “捏橡皮泥一样” 在高维空间下捏成更为线性可分 / 稀疏的形状。

物理视角: 通过对 “ 抽象概念 ” 的判断来识别物体,而非细节。比如对 “飞机” 的判断,即便人类自己也无法用语言或者若干条规则来解释自己如何判断一个飞机。因为人脑中真正判断的不是是否 “有机翼”、“能飞行” 等细节现象,而是一个抽象概念。层数越深,这种概念就越抽象,所能 涵盖的变异体 就越多,就可以容纳战斗机,客机等很多种不同种类的飞机。

版权文章,未经授权禁止转载。详情见 转载须知 。

深度学习中的“深度”究竟怎么理解?


本文地址: https://www.gpxz.com/article/4019778061ee0c7d0c94.html
全局中部横幅
全局中部横幅
PHP中文网:一切建站资源免费下载

php中文网下载站为网站开发和前端人员提供最专业,最全的建站资源。包含各种最新的网站源码,前端模板,JS特效代码,图片素材,实用的在线工具等。并且一切资源免费!欢迎下载!

上海超精密加工

上海安宇泰环保科技有限公司专注于提供高质量的超精密加工,激光加工,MLCC,微孔加工,环保焚烧炉等服务.我们拥有强大的设备和经验丰富的团队,致力于为客户提供精密的加工服务.联系方式:13501735249

农村小院出租信息平台

好乡居是一个全国范围的农村小院出租平台,为城里人提供郊区农村小院出租信息,帮助农民出租闲置农宅、小院、宅基地和民宿。

玖玖网络官方导航网站

玖玖网络-天津市创梦网络科技有限公司

芯灵

广东芯灵实业有限公司专业贴片机一站式解决方案供应商,提供贴片机销售,租赁,配件供应,设备维修,板卡马达维修,飞达维修,贴片头维修,技术培训的全系列业务。

无尘车间

中电南方净化科技 (400-883-7763)是一家一站式净化工程服务商,服务范围包括:洁净工程,无尘车间,洁净厂房,洁净室,无尘室,药厂、食品厂、电子厂净化车间,无尘车间装修施工、建设、承包等,无尘车间建设.

666iy游戏

666iy游戏社区是专业网页游戏社区化第一平台,为中国游戏用户提供最尖端、最前沿的游戏精品;666iy游戏致力于游戏精细化运营与优质的客户服务,成为深受玩家喜欢的游戏社区运营平台,玩游戏,上666iy.com

提货系统搭建

瑞信专注免费提货系统搭建,卡券兑换软件,礼品卡系统开发,支持大闸蟹、海鲜、牛羊肉、月饼、水果、大米、茶叶、土鸡、酒类、海参、鸡蛋、端午粽子等等行业。

咩播云插件(原:跨播)

咩播云插件(原:跨播直播插件)是一款专注直播间美化,弹幕美化,礼物答谢等直播插件,支持所有可以使用浏览器源的直播软件。如:obs,B站直播姬,xsplit,此刻主播助手。跨播是云插件,无需安装,注册即用。

实用工具

我就查查询提供实用工具在线查询,免费在线工具包括生活服务、金融理财、教育学习、数学计算和站长查询等实用工具,是较受欢迎的在线实用查询工具网站。


全局底部横幅