卷积神经网络工作原理直观的解释?

CNN(卷积神经网络)形象地来说像一个黑匣子,只能看到输入和输出的数据,不太清楚其匣子内部到底怎么运转的:如何从初始状态一步步走向结果。

不同层数的卷积处理出来的结果,它们形成的特征有什么不同呢?

每一层卷积后形成的侦查特征,又和后面的侦查特征有什么关系呢?

到底选择几个卷积核来完成我的意图?

各层卷积处理结果组合而成会达到什么效果呢?

这个过程到底“看起来”什么样的呢?

今天从直观的角度来把这个黑匣子剖开,加深我们对CNN工作的直观印象。

其实我们在做线性回归也好,分类(逻辑斯蒂回归)也好,本质上来讲,就是把数据进行映射,要么映射到一个多个离散的标签上,或者是连续的空间里面,一般简单的数据而言,我们很好拟合,只要线性变化一下,然后学习出最好的W就可以了,但是对于一些比较复杂的数据怎么办呢?

比如说,对于一个二分类问题,特别是高纬度复杂化之后,数据不一定是线性可分的,这个时候,我们的basis function隆重登场,我们可以把数据进行一定的映射,转变,非线性的,线性的,转变之后,就可以进行分类,最明显的例子在andrew NG在讲SVM里面的例子就很好的说明了,但是这个时候问题来了,对于一个很复杂,高维度的数据,我们如何才能找到最好的basis function呢?

这个时候,神经网络隆重登场,我们把我们的basis function打开来,我们把误差转递到basis function的里面,通过这样的方式,来得到最好的basis function,同理,我们可以无限打开basis function,一直打开,对应的也就是一层神经网络(具体出自于prml关于神经网络的章节最开始简介的部分),但是问题来了,对于图片怎么办?

我们知道,对于图片而言,图片是一个二维度的数据,我们怎样才能通过学习图片正确的模式来对于一张图片有正确的对于图片分类呢?这个时候,有人就提出了一个观点,我们可以这样,对于所有的像素,全部都连接上一个权值,我们也分很多层,然后最后进行分类,这样也可以,但是对于一张图片来说,像素点太多,参数太多了。

然后就有人提出来,我们只看一部分怎么样,就是对于一张图片来说,我们只看一个小窗口就可以了,对于其他的地方,我们也提供类似的小窗口,我们知道,当我们对图片进行卷积的时候,我们可以对图片进行很多操作,比如说图片整体模糊,或者是边缘的提取,卷积操作对于图片来说可以很好的提取到特征,而且通过BP误差的传播,我们可以根据不同任务,得到对于这个任务最好的一个参数,学习出相对于这个任务的最好的卷积核,之所以权值共享的逻辑是:如果说一个卷积核在图片的一小块儿区域可以得到很好的特征,那么在其他的地方,也可以得到很好的特征。

这就有了alex net的提出,通过对图片进行五层(不知道有没有记忆错误)的卷积,然后后面三层的全连接,我们可以得到一个很好的结果,特别的相对于更大的数据集而言,最好参数越多越好,也就是网络最好更加深,更加的宽。

但是神经网络到底是什么?对于一批数据我们有很多的问题,为什么设置五层最好,batchsize多少比较好,每一层多少个卷积核(这个到现在我依旧没有一个更好的解释,每一个应该多少卷积核),宽度多少?要不要LRN?每一层都代表了什么?

这些的解释,就要好好看看今年CVPR的文章Visualizing and Understanding Convolutional Networks 这篇文章写的很棒,而且2015 CVPR出了很多对于卷积神经网络理解的文章,这篇文章提出了一个反卷积的方法(De-convolution)的方法,这样我们就可以好好看看每一层卷积神经网络到底做了什么事情:

首先第一层的返卷积(上面是反卷积的图片,下面对于第一层来说,激活值最大的图片):

我们看到,第一个卷积层只是表达了简单的图片的边缘而已,我们来看第二层:

第二层稍稍复杂了一点点,可以包含的不仅仅是一个边缘,可以是几个边缘的组合

第三层:

第四层:

第五层:

我们看到,每一层都是对于一张图片从最基础的边缘,不断得到最复杂的图片自己。

同时在进行反卷积的时候M.D. Zeiler and R. Fergus也发现,对于第一层的alexnet,会得到频度很高的像素(也就是颜色很深),所以他们也提出了应该要减小窗口,这样可以得到频度比较适中的像素:

当图片卷积完之后,会把一个图片对于这一类本身最独特的部分凸显出来,然后来进行判断,这一类到底是什么?有下面的实验截图:

最左边的图像是原图像,作者盖住不同的区域,来分析对于一张图片,经过五次卷积之后,到底是如何判断的,我们看到卷积到最后(左三),比较凸显出来的是狗的头部,左二和右二的意思是,当我们遮住不同的区域,判断是狗的几率,红色区域代表概率很高,蓝色区域代表概率很低,我们发现,当我们遮挡住狗的头的地方的时候,我们得到这个物体时狗的概率最低,这个侧面证明了,所谓卷积神经网络,就是会自动的对于一张图片学习出最好的卷积核以及这些卷积核的组合方式,也就是对于一张图片的任务来说,求出最好的图片对于本任务的特征的表达,然后来进行判断。

还有一篇文章也助于理解, UnderstandingDeepImageRepresentationsbyInvertingThem 这篇对于卷积每一层都不断的还原到最原始的图片:

越是到后面,图片越模糊,但是它自己独特的部分,却凸显了出来。(也就是这个猩猩还是狒狒的头的部分)

原文发布于微信公众号 - 人工智能LeadAI(atleadai)

原文发表时间:2017-08-25

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

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏程序生活

文本分类简介利用传统机器学习和深度学习进行文本分类参考资料

自己由于最近参加了一个比赛“达观杯”文本智能处理挑战赛,上一周主要在做这一个比赛,看了一写论文和资料,github上搜刮下。。感觉一下子接触的知识很多,自己乘热...

1102
来自专栏大数据智能实战

基于tensorflow + Vgg16进行图像分类识别的实验

图像分类识别目前已经得到了很大的飞跃,特别是15年微软提出的resnet已经超越人类,能够对图像中的物体进行更好的识别。 为了初步了解一下图像分类识别的过程,学...

3659
来自专栏机器学习算法全栈工程师

GAN系列学习(1)——前生今世

作者:刘威威 编辑:李文臣 1 1.GAN的 ‘前世’? 大家都知道GAN是Ian Goodfellow 2 014年放出的一篇开山之作,在深度学习界评价很高,...

3676
来自专栏深度学习思考者

图像处理——目标检测与前背景分离

前提     运动目标的检测是计算机图像处理与图像理解领域里一个重要课题,在机器人导航、智能监控、医学图像分析、视频图像编码及传输等领域有着广泛的应用。 ...

30111
来自专栏瓜大三哥

图像配准

图像配准(Image registration)是将同一场景拍摄的不同图像进行对齐的技术,即找到图像之间的点对点映射关系,或者对某种感兴趣的特征建立关联。以同...

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

深度学习之视频人脸识别系列(一):简介

852
来自专栏GAN&CV

GAN原理,优缺点、应用总结

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_25737169/article/d...

812

神经进化算法

强化学习的钟摆平衡问题我没有太多的研究。系统中似乎有许多状态,输出(电机速度)应该是一个连续的变量,它不能很好的工作,强化学习得到不同的速度,甚至产生更快、不变...

21610
来自专栏人工智能LeadAI

学习资料参考:从深度学习到自然语言处理

注意:本文已经更新,新版结合深度学习简介和发展历程,给出了更详尽的学习资料参考。新版链接:深度学习简介与学习资料参考(http://peteryuan.net/...

3598
来自专栏iOSDevLog

问题构建 (Framing):机器学习主要术语

26610

扫描关注云+社区