Deep Learning(深度学习)神经网络为啥可以识别?

今天看到一些感兴趣的东西,现在总结了给大家分享一下,如果有错,希望大家指正批评,谢谢!那就开始进入正题。 先从简单的说起来吧!

一、基本变换:层

一般的神经网络是由一层一层堆叠而成的,但是每层究竟在做啥呢? 我从三个方面述说一下:

  • 数学公式

Y=a*(W*X+b)

其中Y是输出量,X是输入量,a()是一个激活函数,W是权重矩阵,b是偏置向量。每一层都是通过该公式简单的得到输出Y。

  • 数学理解

通过如下5种对输入空间(输入向量的集合)的操作,完成输入空间—>输出空间的变换(矩阵的行空间到列空间)。 注:用“空间”二字是指被分类的并不是单个事物,而是一类事物。空间是指这类事物所有个体的集合。

  1. 升维/降维
  2. 放大/缩小
  3. 旋转
  4. 平移
  5. “弯曲”

这5种操作中,1,2,3的操作由 W*X完成的,4的操作是由+b完成的,5的操作则是由 a()来实现。

每层的数学理解:

用线性变换跟随着非线性变化,将输入空间投向另一个空间。

  • 物理理解

对 W*X的理解就是通过组合形成新物质,a()又符合了我们所处的世界都是非线性的特点。 假想情景: X是二维向量,维度是碳原子和氧原子的数量 [C;O],数值且定为 [1;1]。若确定 Y是三维向量,就会形成如下网络的形状 (神经网络的每个节点表示一个维度)。通过改变权重的值,可以获得若干个不同物质。右侧的节点数决定了想要获得多少种不同的新物质(矩阵的行数)。

若权重 W 的数值如(1),那么网络的输出Y就会是三个新物质,[二氧化碳,臭氧,一氧化碳]。

若减少右侧的一个节点,并改变权重 W 至(2),那输出Y就会是两个新物质, [ O_{0.3} ;CO_{1.5}]。

若再加一层,就是再次通过组合 [CO2;O3;CO] 这三种基础物质,形成若干个更高层的物质。

若希望通过层网络能够从[C, O]空间转变到 [CO2;O3;CO]空间的话,那么网络的学习过程就是将 W 的数值变成尽可能接近(1)的过程 。

重要的是这种组合思想,组合成的东西在神经网络中并不需要有物理意义,可以是抽象概念。

每层神经网络的物理理解:

通过现有的不同物质的组合形成新物质。

二、理解角度

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

数学视角:“线性可分”

  • 一维情景

以分类为例,当要分类正数、负数、零,三类的时候,一维空间的直线可以找到两个超平面(比当前空间低一维的子空间。当前空间是平面的话,超平面就是点)分割这三类。但面对像分类奇数和偶数无法找到可以区分它们的点的时候,我们借助 x % 2(除2取余)的转变,把x变换到另一个空间下来比较0和非0,从而分割奇偶数。

  • 二维情景 平面的四个象限也是线性可分。但下图的红蓝两条线就无法找到一超平面去分割。

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

上面是一层神经网络可以做到的空间变化。若把Y当做新的输入再次用这5种操作进行第二遍空间变换的话,网络也就变为了二层。最终输出是:

Y=a2(W2*(a1*(W1*X +b1))+b2)

设想当网络拥有很多层时,对原始输入空间的“扭曲力”会大幅增加,如下图,最终我们可以轻松找到一个超平面分割空间。

当然也有如下图失败的时候,关键在于“如何扭曲空间”。所谓监督学习就是给予神经网络网络大量的训练例子,让网络从训练例子中学会如何变换空间。每一层的权重 W 就控制着如何变换空间,我们最终需要的也就是训练好的神经网络的所有层的权重矩阵。这里有非常棒的可视化空间变换Demo,一定要打开尝试并感受这种扭曲过程。 更多内容请看Neural Networks, Manifolds, and Topology.

  1. 线性可分视角:神经网络的学习就是学习如何利用矩阵的线性变换加激活函数的非线性变换,将原始输入空间投向线性可分/稀疏的空间去分类/回归。
  2. 增加节点数:增加维度,即增加线性转换能力。
  3. 增加层数:增加激活函数的次数,即增加非线性转换次数。

物理视角:“物质组成”

  • 类比: 回想上文由碳氧原子通过不同组合形成若干分子的例子。若从分子层面继续迭代这种组合思想,可以形成DNA,细胞,组织,器官,最终可以形成一个完整的人。继续迭代还会有家庭,公司,国家等。这种现象在身边随处可见。并且原子的内部结构与太阳系又惊人的相似。不同层级之间都是以类似的几种规则再不断形成新物质。你也可能听过分形学这三个字。可通过观看从1米到150亿光年来感受自然界这种层级现象的普遍性。
  • 人脸识别情景: 我们可以模拟这种思想并应用在画面识别上。由像素组成菱角,再组成五官,最后到不同的人脸。每一层代表不同的物质层面 (如分子层)。每层的 W存储着如何组合上一层的物质从而形成若干新物质。 如果我们完全掌握一架飞机是如何从分子开始一层一层形成的,拿到一堆分子后,我们就可以判断他们是否可以以此形成方式,形成一架飞机。 附:Tensorflow playground展示了数据是如何“流动”的。
  1. 物质组成视角:神经网络的学习过程就是学习物质组成方式的过程。
  2. 增加节点数:增加同一层物质的种类,比如118个元素的原子层就有118个节点。
  3. 增加层数:增加更多层级,比如分子层,原子层,器官层,并通过判断更抽象的概念来识别物体。

三、“深层”的思考:真的只有这些原因吗?

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

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

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

然而深层神经网络的惊人表现真的只有这些原因吗? 为什么神经网络过深后,预测的表现又变差? 而且这时变差的原因是由于“过深”吗?

原文发布于微信公众号 - 计算机视觉战队(ComputerVisionGzq)

原文发表时间:2017-11-15

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏用户2442861的专栏

Deep Learning(深度学习)学习笔记整理系列之(二)

1)该Deep Learning的学习系列是整理自网上很大牛和机器学习专家所无私奉献的资料的。具体引用的资料请看参考文献。具体的版本声明也参考原文献。

1101
来自专栏机器之心

ICML 2018 | MILA提出防御增强型网络:简单修改已有网络即可提升防攻击能力

选自arXiv 作者:Alex Lamb, Jonathan Binas, Anirudh Goyal, Dmitriy Serdyuk, Sandeep Su...

3215
来自专栏数据派THU

清华朱军团队包揽三项冠军 | NIPS 2017对抗样本攻防竞赛总结(附学习资料)

4685
来自专栏闪电gogogo的专栏

像素级压缩感知图像融合的论文

2012 基于压缩感知理论的图像融合方法 ? 不同的是在测量前先对稀疏矩阵进行融合,从仿真结果来看效果并不是很好,仅做介绍。 2012 一种基于小波稀疏基的压缩...

3257
来自专栏机器学习算法与Python学习

干货 | 从入门到放弃:21种机器学习算法详解,附多种下载方式

关键字全网搜索最新排名 【机器学习算法】:排名第一 【机器学习】:排名第二 【Python】:排名第三 【算法】:排名第四 下面是各模型在博客中的详细解说,为方...

5339
来自专栏数说工作室

【分类战车SVM】第二话:线性分类

分类战车SVM (第二话:线性分类) 回复“SVM”查看本《分类战车SVM》系列的内容: 第一话:开题话 第二话:线性分类 第三话:最大间隔分类器 第四话:拉格...

44111
来自专栏IT派

神经网络告诉我,谁是世界上最「美」的人?

数月前,华南理工大学发布了关于「颜值预测」的论文和数据集,数据集包括 5500 人,每人按颜值魅力打分,分值在 1 到 5 分之间。

1370
来自专栏磐创AI技术团队的专栏

清华朱军团队包揽三项冠军,NIPS 2017对抗样本攻防竞赛总结

1302
来自专栏CVer

[计算机视觉论文速递] 2018-03-01

[1]《Stereoscopic Neural Style Transfer》 CVPR 2018 论文首次尝试对3D电影或AR/VR的新需求进行立体神经风格...

5018
来自专栏机器之心

资源 | 神经网络告诉我,谁是世界上最「美」的人?

选自TowardsDataScience 作者:Dima Shulga 机器之心编译 参与:路、刘晓坤 「魔镜魔镜告诉我,谁是世界上最美的女人?」这句伴随童年的...

3024

扫码关注云+社区

领取腾讯云代金券