A. 神经网络包括卷积层,还包括哪些层
卷积神经网络(Convolutional Neural Network,CNN)是一种前馈神经网络,它的人工神经元可以响应一部分覆盖范围内的周围单元,对于大型图像处理有出色表现。[1] 它包括卷积层(alternating convolutional layer)和池层(pooling layer)。
卷积神经网络是近年发展起来,并引起广泛重视的一种高效识别方法。20世纪60年代,Hubel和Wiesel在研究猫脑皮层中用于局部敏感和方向选择的神经元时发现其独特的网络结构可以有效地降低反馈神经网络的复杂性,继而提出了卷积神经网络(Convolutional Neural Networks-简称CNN)。现在,CNN已经成为众多科学领域的研究热点之一,特别是在模式分类领域,由于该网络避免了对图像的复杂前期预处理,可以直接输入原始图像,因而得到了更为广泛的应用。 K.Fukushima在1980年提出的新识别机是卷积神经网络的第一个实现网络。随后,更多的科研工作者对该网络进行了改进。其中,具有代表性的研究成果是Alexander和Taylor提出的“改进认知机”,该方法综合了各种改进方法的优点并避免了耗时的误差反向传播。
B. 深度网络目前最高有多少层
目前ResNet最多可以达到152层,但是不要纠结这个问题,神经网络并不是层越多越好,目前优秀的设计主要是优化网络的基本结构以达到更高的准确率,同时还要在精度和算力之间妥协 。
C. 深度学习的现状和趋势
论坛
活动
招聘
专题
打开CSDN APP
Copyright © 1999-2020, CSDN.NET, All Rights Reserved
搜索博文/帖子/用户
登录
喜欢打酱油的老鸟
关注
深度学习技术发展趋势浅析 转载
2019-04-09 08:37:11
1点赞
喜欢打酱油的老鸟
码龄2年
关注
https://mp.weixin.qq.com/s/FtIhKiENv483iHE053RPkg
当前,人工智能发展借助深度学习技术突破得到了全面关注和助力推动,各国政府高度重视、资本热潮仍在加码,各界对其成为发展热点也达成了共识。本文旨在分析深度学习技术现状,研判深度学习发展趋势,并针对我国的技术水平提出发展建议。
一、深度学习技术现状
深度学习是本轮人工智能爆发的关键技术。人工智能技术在计算机视觉和自然语言处理等领域取得的突破性进展,使得人工智能迎来新一轮爆发式发展。而深度学习是实现这些突破性进展的关键技术。其中,基于深度卷积网络的图像分类技术已超过人眼的准确率,基于深度神经网络的语音识别技术已达到95%的准确率,基于深度神经网络的机器翻译技术已接近人类的平均翻译水平。准确率的大幅提升使得计算机视觉和自然语言处理进入产业化阶段,带来新产业的兴起。
深度学习是大数据时代的算法利器,成为近几年的研究热点。和传统的机器学习算法相比,深度学习技术有着两方面的优势。一是深度学习技术可随着数据规模的增加不断提升其性能,而传统机器学习算法难以利用海量数据持续提升其性能。二是深度学习技术可以从数据中直接提取特征,削减了对每一个问题设计特征提取器的工作,而传统机器学习算法需要人工提取特征。因此,深度学习成为大数据时代的热点技术,学术界和产业界都对深度学习展开了大量的研究和实践工作。
深度学习各类模型全面赋能基础应用。卷积神经网络和循环神经网络是两类获得广泛应用的深度神经网络模型。计算机视觉和自然语言处理是人工智能两大基础应用。卷积神经网络广泛应用于计算机视觉领域,在图像分类、目标检测、语义分割等任务上的表现大大超越传统方法。循环神经网络适合解决序列信息相关问题,已广泛应用于自然语言处理领域,如语音识别、机器翻译、对话系统等。
二、深度学习发展趋势
深度神经网络呈现层数越来越深,结构越来越复杂的发展趋势。为了不断提升深度神经网络的性能,业界从网络深度和网络结构两方面持续进行探索。神经网络的层数已扩展到上百层甚至上千层,随着网络层数的不断加深,其学习效果也越来越好,2015年微软提出的ResNet以152层的网络深度在图像分类任务上准确率首次超过人眼。新的网络设计结构不断被提出,使得神经网络的结构越来越复杂。如:2014年谷歌提出了Inception网络结构、2015年微软提出了残差网络结构、2016年黄高等人提出了密集连接网络结构,这些网络结构设计不断提升了深度神经网络的性能。
深度神经网络节点功能不断丰富。为了克服目前神经网络存在的局限性,业界探索并提出了新型神经网络节点,使得神经网络的功能越来越丰富。2017年,杰弗里•辛顿提出了胶囊网络的概念,采用胶囊作为网络节点,理论上更接近人脑的行为,旨在克服卷积神经网络没有空间分层和推理能力等局限性。2018年,DeepMind、谷歌大脑、MIT的学者联合提出了图网络的概念,定义了一类新的模块,具有关系归纳偏置功能,旨在赋予深度学习因果推理的能力。
深度神经网络工程化应用技术不断深化。深度神经网络模型大都具有上亿的参数量和数百兆的占用空间,运算量大,难以部署到智能手机、摄像头和可穿戴设备等性能和资源受限的终端类设备。为了解决这个问题,业界采用模型压缩技术降低模型参数量和尺寸,减少运算量。目前采用的模型压缩方法包括对已训练好的模型做修剪(如剪枝、权值共享和量化等)和设计更精细的模型(如MobileNet等)两类。深度学习算法建模及调参过程繁琐,应用门槛高。为了降低深度学习的应用门槛,业界提出了自动化机器学习(AutoML)技术,可实现深度神经网络的自动化设计,简化使用流程。
D. 人工神经网络分层结构包括
品牌型号:华为MateBook D15
人工神经网络分层结构包括神经元、层和网络三个部分。
1、神经元是人工神经网络最基本的单元。单元以层的方式组,每一层的每个神经元和前一层、后一层的神经元连接,共分为输入层、输出层和隐藏层,三层连接形成一个神经网络。
2、输入层只从外部环境接收信息,是由输入单元组成,而这些输入单元可接收样本中各种不同的特征信息。该层的每个神经元相当于自变量,不完成任何计算,只为下一层传递信息;隐藏层介于输入层和输出层之间,这些层完全用于分析,其函数联系输入层变量和输出层变量,使其更配适数据。而最后,输出层生成最终结果,每个输出单元会对应到某一种特定的分类,为网络送给外部系统的结果值,,整个网络由调整链接强度的程序来达成学习的目的。
3、神经网络是一种运算模型,由大量的节点(或称神经元)之间相互联接构成。每个节点代表一种特定的输出函数,称为激励函数(activation function)。每两个节点间的连接都代表一个对于通过该连接信号的加权值,称之为权重,这相当于人工神经网络的记忆。网络的输出则依网络的连接方式,权重值和激励函数的不同而不同。
E. 人工智能学习难吗
不难的,人工智能其那就是很不错的,零基础就能进行学习的
人工智能
就业方向:科学研究,工程开发。计算机方向。软件工程。应用数学。电气自动化。通信。机械制造
人工智能可以说是一门高尖端学科,属于社会科学和自然科学的交叉,涉及了数学、心理学、神经生理学、信息论、计算机科学、哲学和认知科学、不定性论以及控制论。研究范畴包括自然语言处理、机器学习、神经网络、模式识别、智能搜索等。应用领域包括机器翻译、语言和图像理解、自动程序设计、专家系统等。
F. ResNet网络
ResNet (Resial Neural Network,残差网络)由微软研究院何凯明等人提出的,通过在深度神经网络中加入残差单元(Resial Unit)使得训练深度比以前更加高效。ResNet在2015年的ILSVRC比赛中夺得冠军,ResNet的结构可以极快的加速超深神经网络的训练,模型准确率也有非常大的提升。
在ResNet之前,瑞士教授Schimidhuber提出了Highway Network,其原理与ResNet非常相似。通常认为神经网络的深度对其性能非常重要,但是网络越深训练越困难,Highway Network的目标就是解决极深的神经网络难以训练的问题。
Highway Network相当于修改了每一层激活函数,此前激活函数只是对输入做一次非线性变换y=H(x, Wh), 而Highway Network则允许保留一部分比例的原始输入x,即y=H(x, Wh)* T(x , Wt)+x*C(x, Wc),其中T为变换系数,C为保留系数,论文中令C=1-T。这样前面一层的信息,有一定比例可以不经过矩阵乘法和非线性变换,直接传输到下一层,仿佛一条信息高速公路,因此得名Highway Network。
结果显示,B比A略好,这是因为A中的零填充确实没有残差学习。而C比B稍好,这是由于投影快捷连接引入了额外参数。但A、B、C之间的细微差异表明投影连接对于解决退化问题不是至关重要的,而不/少使用投影连接可以减少内存/时间复杂性和模型大小。而且无参数恒等快捷连接对于瓶颈架构(3层残差学习单元)尤为重要,因为瓶颈架构中层具有较小的输入输出,快捷连接是连接到两个高维端,此时恒等快捷连接无需参数,而使用投影的话则会显示时间和模型复杂度加倍。因此,恒等快捷连接可以为瓶颈设计得到更有效的模型。
最后,作者尝试了更深的1000层以上的神经网络,发现神经网络仍然能够较好的学习,但是其测试误差比100多层的残差网络要差,而训练误差则与100多层的残差网络相似,作者认为这可能是由于过拟合导致的,可通过加大正则化来解决这一问题。
在ResNet V1中,作者研究通过加入残差单元使得训练深度达到上百层的神经网络成为可能,解决了梯度消失/爆炸的问题。而在ResNet V2中作者进一步证明了恒等映射(Identity mapping)的重要性。同时作者还提出了一种新的残差单元(采用了预激活)使得训练变得更简单,同时还提高了模型的泛化能力。
在ResNet V2中,作者提出了不止在残差单元内部,而是在整个神经网络中都创建了‘直接’的计算传播路径。在ResNet V1中,残差学习单元的
上式同样表明了在一个mini-batch中不可能出现梯度消失的现象,因为上式求导的第二部分对于一个mini-batch来说,不可能所有样本其导数都为-1,因此,可能会出现权重很小的情况,但是不会出现梯度消失的情况。
通过研究这些不同的快捷连接,作者发现大部分快捷连接方式无法很好地收敛,其中很大部分是由于使用这些快捷连接后或多或少会出现梯度消失或者梯度爆炸的现象,最后结果显示恒等映射效果最好。
虽然恒等映射在这些方法中表写结果最好,仍需引起注意的是1×1的卷积捷径连接引入了更多的参数,本应该比恒等捷径连接具有更加强大的表达能力。事实上,shortcut-only gating 和1×1的卷积涵盖了恒等捷径连接的解空间(即,他们能够以恒等捷径连接的形式进行优化)。然而,它们的训练误差比恒等捷径连接的训练误差要高得多,这表明了这些模型退化问题的原因是优化问题,而不是表达能力的问题。
在上图b中,采用先加后BN再激活的方法,此时f(x)就包含了BN和ReLU。这样的结果比原始a要差。这主要是因为BN层改变了流经快捷连接的信号,阻碍了信息的传递。
在c中,ReLU在相加之前,此时f(x)=x,为恒等映射。此时残差单元中的F(x)输出经由ReLU后变为非负,然而一个“残差”函数的输出应该是(−∞,+∞) 的。造成的结果就是,前向传递的信号是单调递增的。这会影响表达能力,结果也变得更差了。
结果显示,只使用ReLU预激活(d)的结果与原始ResNet结果很接近,这个与ReLU层不与BN层连接使用,因此无法获得BN所带来的好处。而当BN和ReLU都使用在预激活上时(e),结果得到了可观的提升。
预激活的影响有两个方面:第一,由于f(x)也是恒等映射,相比于V1优化变得更加简单;第二,在预激活中使用BN能提高模型的正则化。
对于f(x)为恒等映射的好处:一方面若使用f= ReLU,如果信号是负的时候会造成一定的影响,无法传递有用的负信号,而当残差单元很多时,这个影响将会变得尤为突出;另一方面当f是一个恒等映射时,信号在两个单元间能够很直接的传递。
在ResNet V1中作者提出了残差学习单元,并从理论和实验上证明使用直连的shortcuts有助于解决深度达到上百层的神经网络的训练问题。而在ResNet V2中作者证明了在shortcuts中使用直接映射(即H(x) = h(x) + F(x)中h(x) = x)得到的效果最好。在ResNext中作者将bottleneck拆分成多个分支,提出了神经网络中的第三个维度(另外两个维度分别为depth,神经网络层数深度,width,宽度,channel数),命名为 Cardinality ,并在多个数据集中证明了将bottleneck拆分能够降低训练错误率和提高准确率。
ResNext的灵感来源于VGG/ResNet和Inception:(1)在VGG、ResNet中,作者使用了相同结构的卷积层进行了堆叠,构建了层数很深但是结构简单的神经网络;(2)而在Inception中,提出了一种叫做 split-transform-merge 的策略,将输入(采用1x1 卷积核)分裂为几个低维 embedding,再经过一系列特定卷积层的变换,最后连接在一起。
而在ResNet中,作者将原ResNet bottleneck中的一条path拆分为多个分支(multi branch),以此分支数量提出神经网络中的第三个重要维度——Cardinality。这一想法结合了VGG中的相同结构堆叠和Inception中的split-transform-merge策略,即如上图所示,每个bottleneck 拆分为多个分支进行堆叠,这些分支的结构相同(这里借鉴了VGG的思想),而具体到分支的结构时又采用了Inception的split-transform-merge策略。与Inception不同的是Inception的每个分支结构都是需要认为的设计,而在ResNext中每个分支结构都相同。最终每个bottleneck的输出就变成了:
这些所有的bottlenecks结构都遵循两个原则:
作者提出了 三种效果相同的ResNext的表示方法,如下图所示:
其中a,b 结构相似,只是在merge这一步的地方不同,而c则借鉴了AlexNet中分组卷积的思想,将输入和输出都分为多个组。
作者首先评估权衡了cardinality和width的关系。
接着,作者又评估了使用增加cardinality和depth/width来增加模型复杂度后的效果:
最后,作者还研究了shortcuts对于ResNext的重要性,在ResNet-50中,不使用shortcuts准确率下降了7%,而在ResNext-50中准确率也下降了4%,说明shortcuts对于残差网络来说确实是非常重要的。
简言之,增加cardinality比增加depth和width效果要好,同时,shortcuts对于模型的准确率也是至关重要的。
参考:
Deep Resial Learning for Image Recognition.
Aggregated Resial Transformations for Deep Neural Networks.
Identity Mappings in Deep Resial Networks.
ResNet论文翻译——中文版
Identity Mappings in Deep Resial Networks(译)
TensorFlow实现经典卷积网络. 黄文坚,唐源
G. 深度神经网络具体的工作流程是什么样的
所谓神经网络算法,就是对人类学习能力的一种模拟算法。理论认为人的认知模式,处事方式是存储在神经元与神经元之间的连接上的,称为“神经元连接权重”,人脑神经布局类似网状结构,神经元是网的交叉点,权重就是网的连线,这些连线有粗有细,也就是权重的大小不同。而人类的学习能力就是去不断改变权重的值,从而改变自己的认知模式和处事方式,简单的说,不同人对同一个外部事物有不同看法,就是因为同样的初始信号,在不同粗细的神经元连线放大或缩小后,变成了侧重点不同的最终信号。最开始的“感知机"只用了2层神经元,即输入层和输出层,发现很多问题无法模拟,最着名的就是“异或”问题。 后来聪明的人在输入层和输出层之间加了一层神经元叫做隐藏层,3层的神经网络已经可以模拟二维上的任意函数曲线。只不过此时对“连接权重”的训练过程就变得非常复杂,通常使用一种叫“误差反传”的计算方法。参考人脑,人脑大概有亿级层数的神经元(当然,人脑是多任务处理器集合,某些特定的任务如人脸识别,只需用到大脑的某个局部)。于是人们会猜想,更多的隐藏层是否会有更高的学习效果。事实证明的确如此,随着隐藏层数的增加,一些图片,语音的识别率越来越高。因此,就有了深度神经网络这一概念。但隐藏层数越多训练过程也越复杂,且误差会在多层传递的时候衰减,导致GradientVanish问题,最终导致训练结果收敛在局部最优或者难以收敛。后来又有聪明的人不断改进误差训练算法,神经网路的层数深度越来越大,现在最NB的是微软的“残差神经网络”,已经将隐藏层提高至152层。