CNN 内部网络结构区别 一文读懂 RNN DNN (cnn网络)

从广义上来说,NN(或是更美的DNN)确实可以认为包含了CNN、RNN这些具体的变种形式。在实际应用中,所谓的深度神经网络DNN,往往融合了多种已知的结构,包括卷积层或是LSTM单元。但是如果说DNN特指全连接的神经元结构,并不包含卷积单元或是时间上的关联。因此,如果一定要将DNN、CNN、RNN等进行对比,也未尝不可。

其实,如果我们顺着神经网络技术发展的脉络,就很容易弄清这几种网络结构发明的初衷,和他们之间本质的区别。神经网络技术起源于上世纪五、六十年代,当时叫 trong> 感知机 (perceptron),拥有输入层、输出层和一个隐含层。输入的特征向量通过隐含层变换达到输出层,在输出层得到分类结果。

早期感知机的推动者是Rosenblatt。(扯一个不相关的:由于计算技术的落后,当时感知器传输函数是用线拉动变阻器改变电阻的方法机械实现的,脑补一下科学家们扯着密密麻麻的导线的样子…),但是,Rosenblatt的单层感知机有一个严重得不能再严重的问题,即它对稍复杂一些的函数都无能为力(比如最为典型的“异或”操作)。

连异或都不能拟合,你还能指望这货有什么实际用途么o(╯□╰)o 随着数学的发展,这个缺点直到上世纪八十年代才被Rumelhart、Williams、Hinton、LeCun等人(反正就是一票大牛)发明的 多层感知机 (multilayer perceptron)克服。多层感知机,顾名思义,就是有多个隐含层的感知机。我们看一下多层感知机的结构:

一文读懂 CNN、DNN、RNN 内部网络结构区别ONE.com/uploads/new/article/740_740/201702/58a555c9e36f4.png" src="http://www.gpxz.com/zdmsl_image/article/20241130183412_36464.jpg" loading="lazy">

图1 上下层神经元全部相连的神经网络——多层感知机

多层感知机可以摆脱早期离散传输函数的束缚,使用sigmoid或tanh等连续函数模拟神经元对激励的响应,在训练算法上则使用Werbos发明的反向传播BP算法。

对,这货就是我们现在所说的 神经网络NN ——神经网络听起来不知道比感知机高端到哪里去了!这再次告诉我们起一个好听的名字对于研(zhuang)究(bi)很重要! 多层感知机解决了之前无法模拟异或逻辑的缺陷,同时更多的层数也让网络更能够刻画现实世界中的复杂情形。

相信年轻如Hinton当时一定是春风得意。多层感知机给我们带来的启示是, 神经网络的层数直接决定了它对现实的刻画能力 ——利用每层更少的神经元拟合更加复杂的函数。(Bengio如是说:functions that can be compactly represented by a depth k architecture might require an exponential number of computational elements to be represented by a depth k − 1 architecture.)

即便大牛们早就预料到神经网络需要变得更深,但是有一个梦魇总是萦绕左右。随着神经网络层数的加深, 优化函数越来越容易陷入局部最优解 ,并且这个“陷阱”越来越偏离真正的全局最优。利用有限数据训练的深层网络,性能还不如较浅层网络。

同时,另一个不可忽略的问题是随着网络层数增加, “梯度消失”现象更加严重 。具体来说,我们常常使用sigmoid作为神经元的输入输出函数。对于幅度为1的信号,在BP反向传播梯度时,每传递一层,梯度衰减为原来的0.25。层数一多,梯度指数衰减后低层基本上接受不到有效的训练信号。

2006年,Hinton利用预训练方法缓解了局部最优解问题,将隐含层推动到了7层,神经网络真正意义上有了“深度”,由此揭开了深度学习的热潮。这里的“深度”并没有固定的定义——在语音识别中4层网络就能够被认为是“较深的”,而在图像识别中20层以上的网络屡见不鲜。

为了克服梯度消失,ReLU、maxout等传输函数代替了sigmoid,形成了如今DNN的基本形式。单从结构上来说, 全连接的DNN和图1的多层感知机是没有任何区别的 。值得一提的是,去年出现的高速公路网络(highway network)和深度残差学习(deep residual learning)进一步避免了梯度消失,网络层数达到了前所未有的一百多层(深度残差学习:152层)!

具体结构大家可自行搜索了解。如果你之前在怀疑是不是有很多方法打上了“深度学习”的噱头,这个结果真是深得让人心服口服。

一文读懂 CNN、DNN、RNN 内部网络结构区别

图2 缩减版的深度残差学习网络,仅有34层,终极版有152层

如图1所示,我们看到 全连接DNN的结构里下层神经元和所有上层神经元都能够形成连接 ,带来的潜在问题是 参数数量的膨胀 。假设输入的是一幅像素为1K*1K的图像,隐含层有1M个节点,光这一层就有10^12个权重需要训练,这不仅容易过拟合,而且极容易陷入局部最优。

另外,图像中有固有的局部模式(比如轮廓、边界,人的眼睛、鼻子、嘴等)可以利用,显然应该将图像处理中的概念和神经网络技术相结合。此时我们可以祭出题主所说的卷积神经网络CNN。对于CNN来说,并不是所有上下层神经元都能直接相连,而是 通过“卷积核”作为中介。同一个卷积核在所有图像内是共享的,图像通过卷积操作后仍然保留原先的位置关系

两层之间的卷积传输的示意图如下:

一文读懂 CNN、DNN、RNN 内部网络结构区别

图3 卷积神经网络隐含层

通过一个例子简单说明卷积神经网络的结构。假设图3中m-1=1是输入层,我们需要识别一幅彩色图像,这幅图像具有四个通道ARGB(透明度和红绿蓝,对应了四幅相同大小的图像),假设卷积核大小为100*100,共使用100个卷积核w1到w100(从直觉来看,每个卷积核应该学习到不同的结构特征)。

用w1在ARGB图像上进行卷积操作,可以得到隐含层的第一幅图像;这幅隐含层图像左上角第一个像素是四幅输入图像左上角100*100区域内像素的加权求和,以此类推。

同理,算上其他卷积核,隐含层对应100幅“图像”。每幅图像对是对原始图像中不同特征的响应。按照这样的结构继续传递下去。CNN中还有max-pooling等操作进一步提高鲁棒性。

一文读懂 CNN、DNN、RNN 内部网络结构区别

图4 一个典型的卷积神经网络结构

注意到最后一层实际上是一个全连接层,在这个例子里,我们注意到 输入层到隐含层的参数瞬间降低到了100*100*100=10^6个 !这使得我们能够用已有的训练数据得到良好的模型。题主所说的适用于图像识别,正是由于 CNN模型限制参数了个数并挖掘了局部结构的这个特点 。顺着同样的思路,利用语音语谱结构中的局部信息,CNN照样能应用在语音识别中。

全连接的DNN还存在着另一个问题——无法对时间序列上的变化进行建模。然而, 样本出现的时间顺序对于自然语言处理、语音识别、手写体识别等应用非常重要 。对了适应这种需求,就出现了大家所说的另一种神经网络结构——循环神经网络RNN。

在普通的全连接网络或CNN中,每层神经元的信号只能向上一层传播,样本的处理在各个时刻独立,因此又被成为前向神经网络(Feed-forward Neural Networks)。而在 RNN中,神经元的输出可以在下一个时间戳直接作用到自身 ,即第i层神经元在m时刻的输入,除了(i-1)层神经元在该时刻的输出外,还包括其自身在(m-1)时刻的输出!表示成图就是这样的:

一文读懂 CNN、DNN、RNN 内部网络结构区别

我们可以看到在隐含层节点之间增加了互连。为了分析方便,我们常将RNN在时间上进行展开,得到如图6所示的结构:

一文读懂 CNN、DNN、RNN 内部网络结构区别

Cool, (t+1)时刻网络的最终结果O(t+1)是该时刻输入和所有历史共同作用的结果 !这就达到了对时间序列建模的目的。 不知题主是否发现,RNN可以看成一个在时间上传递的神经网络,它的深度是时间的长度!正如我们上面所说, “梯度消失”现象又要出现了,只不过这次发生在时间轴上

对于t时刻来说,它产生的梯度在时间轴上向历史传播几层之后就消失了,根本就无法影响太遥远的过去。因此,之前说“所有历史”共同作用只是理想的情况,在实际中,这种影响也就只能维持若干个时间戳。

为了解决时间上的梯度消失,机器学习领域发展出了 长短时记忆单元LSTM,通过门的开关实现时间上记忆功能,并防止梯度消失 ,一个LSTM单元长这个样子:

一文读懂 CNN、DNN、RNN 内部网络结构区别

除了目前提到的三种网络,以及我之前提到的深度残差学习、LSTM外,深度学习还有许多其他的结构。举个例子,RNN既然能继承历史信息,是不是也能吸收点未来的信息呢?

因为在序列信号分析中,如果我能预知未来,对识别一定也是有所帮助的。因此就有了 双向RNN、双向LSTM,同时利用历史和未来的信息

一文读懂 CNN、DNN、RNN 内部网络结构区别

事实上, 不论是哪种网络,他们在实际应用中常常都混合着使用,比如CNN和RNN在上层输出之前往往会接上全连接层,很难说某个网络到底属于哪个类别 。不难想象随着深度学习热度的延续,更灵活的组合方式、更多的网络结构将被发展出来。

尽管看起来千变万化,但研究者们的出发点肯定都是为了解决特定的问题。如果想进行这方面的研究,不妨仔细分析一下这些结构各自的特点以及它们达成目标的手段。

入门的话可以参考:

Ng写的Ufldl: UFLDL教程 – Ufldl

也可以看Theano内自带的教程,例子非常具体: Deep Learning Tutorials

欢迎大家继续推荐补充。

参考文献:

雷锋网按:本文来自于知乎 科研君 的 回答 。

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

一文读懂 CNN、DNN、RNN 内部网络结构区别

全局中部横幅
玩个球

《玩个球》是一款以球形为角色扮演形象,以大鱼吃小鱼为核心游戏玩法的多人在线休闲竞技类型的网络游戏。这里拥有各种好看又有趣的皮肤、光环、口水!快来玩吧~

大庆市龙凤区华鑫石化产品经贸有限公司

大庆市龙凤区华鑫石化产品经贸有限公司

江来好(重庆)食品有限公司

江来好(重庆)食品有限公司(以下简称江来好)成立于2020年,是一家集“研发、生产、销售”于一体的现代化食品企业。

强夯

湖州强夯公司(13908652573)东盛云,是专业的强夯服务提供商,涵盖强夯公司精选、强夯施工团队、优质强夯工程、强夯设备租赁服务,以及公开透明的强夯单价。为您打造稳固可靠的强夯地基!在湖北武汉,湖南长沙,河南郑州,安徽合肥,江西南昌,广西防城港等地成功交付多个市政工程及重点工程项目,资质齐全,全国开工欢迎咨询。

无锡微丰制冷科技有限公司

无锡市微丰液压科技有限公司专业生产风冷式油冷却器、机柜空调、油冷机、水冷机、机油冷却器、水冷却器、中冷器、换热器,广泛应用于工程机械、液压系统、冷却系统、风力发电、行驶车辆等领域

北京花都家美

北京花都家美,20年钢制家具生产厂家,专业生产定制钢制柜、文件柜、铁皮柜、密集架、制式营具等,全国销售体系,五星服务团队,全国政企单位口碑品牌.服务热线:010-87609023

烘干室

我司专业生产烘干设备和换热设备.主要产品有:农副产品药材烘干室,固化干燥室,复合膜熟化室,恒温恒湿房,热循环烘箱,立式烘干搅拌机,带式及箱式烘干机,翅片散热器等,咨询热线:13938519365.

金潮水暖

宏远公司成功研发“金潮”品牌尼龙管件、球阀系列,POM管件、三角阀、水嘴、浮球,以及混水阀、家用净水器、纳米塑钢水龙头等系列产品,拥有独立的知识产权。

泰迪智能科技

广东泰迪智能科技股份有限公司(简称:泰迪智能科技)提供高校大数据实训平台,人工智能实训平台,商务数据分析平台,专注于大数据人工智能专业建设,为高校大数据实验室建设,人工智能实验室建设,商务数据分析实验室提供一体化解决方案,实现学生从理论知识到能力塑造的开放型能力成长平台,助力成就未来大数据人才

元聚网络官方网站

上海元聚网络科技有限公司是一家专注于移动互联网领域,自主研发以及运营的公司,向广大互联网用户提供多元化的移动互联产品以及服务。

起点作文网

起点作文网提供:中小学作文,写景的作文,写人作文大全,写人的作文,写景作文,叙事作文,周记日记读后感等作文。

全局底部横幅