文摘

深入学习是机器学习的一个分支,它旨在学习从输入数据的层次结构特征。如今,研究人员集中研究了深度学习算法解决具有挑战性的问题在许多领域,如图像分类、语音识别、信号处理、自然语言处理。在这项研究中,我们不仅回顾典型深学习算法在计算机视觉和信号处理还提供详细信息如何应用等具体领域深度学习道路裂缝检测、故障诊断和人类活动检测。此外,本研究还讨论了设计的挑战和训练神经网络。

1。介绍

深入学习方法是一组机器学习的方法,可以学习特性等级从低到高水平通过构建一个架构。深度学习的方法可以自动学习功能在多个水平,使系统能够学习复杂的映射函数 直接从数据,没有帮助human-crafted特性。这种能力是至关重要的高级特性抽象自高级特性很难直接从原始训练数据被描述。此外,随着数据的急剧增长,学习能力高级功能会自动将更加重要。

最深刻的学习方法的特色之一是,他们的模型都有很深的架构。深架构意味着它有多个网络中隐藏层。相比之下,一个浅架构只有几个隐藏层(1 - 2层)。深架构松散灵感来自哺乳动物大脑。当给定一个输入认知,哺乳动物的大脑处理它使用不同皮层区域抽象不同级别的功能。研究人员通常描述这些概念层次方面,许多的抽象级别。此外,通过许多哺乳动物的大脑似乎也处理信息阶段的转换和代表性。一个非常明显的例子是,灵长类动物的视觉系统中的信息处理在一系列阶段:边缘检测,原始形状,和更复杂的视觉形状。

灵感来自哺乳动物大脑的深层结构,研究人员调查了深层神经网络二十年,但在2006年之前没有发现有效的训练方法:研究人员只有获得良好的实验结果的神经网络与一个或两个隐藏层但不能得到好的结果的神经网络有更多的隐藏层。2006年,辛顿等人提出了深刻的信念网络(DBNs) [1),使用无监督学习算法的学习算法,贪婪地训练神经网络深一层一层地。这个训练方法,被称为深度学习,结果是非常有效的和有效的在训练神经网络。

许多其他深架构,autoencoder,深度卷积神经网络和递归神经网络,成功地应用于各个领域。回归(2)、分类(3- - - - - -9,降维10,11),建模运动(12,13],纹理建模[14)、信息检索(15- - - - - -17),自然语言处理(18- - - - - -20.,机器人21),故障诊断22),和道路裂缝检测(23)已经看到增加深入学习相关的研究。主要有三个重要原因的快速发展深度学习应用程序现在:深入学习算法的大飞跃,显著增加计算能力,硬件价格的大幅下降。

本调查概述几种深度学习算法和新兴应用在一些特定领域,人脸识别、道路裂缝检测、故障诊断和检测。补充现有的评论论文(24,25),我们不仅审查最先进的深度学习的方法,还提供了详细的信息关于如何深度学习应用于具体问题。本文的组织结构如下的提示。节2深度学习的两类算法介绍:限制玻耳兹曼机(元)和卷积神经网络(cnn)。节中讨论的培训策略3。节4,我们描述几个特定深度学习应用程序,也就是说,人脸识别,道路裂缝检测、故障诊断和人类活动检测。节5,我们将讨论几个挑战的训练和使用深层神经网络。节6,我们的结论。

2。深入学习算法

深入学习算法近年来被广泛研究。因此,有很多相关的方法。一般来说,这些算法可以分为两类基于他们的架构:限制玻耳兹曼机(元)和卷积神经网络(cnn)。在下面几节中,我们将简要地回顾这些深学习方法及其发展。

2.1。深层神经网络

本节介绍了如何构建和训练RBM-based深层神经网络(款)。款的构建和训练过程包含两个步骤。首先,建立一个深层信念网络(DBN)叠加限制玻耳兹曼机(元)和饲料无标号数据pretrain DBN。的pretrained DBN提供了深层神经网络初始参数。在第二步中,标记的数据是美联储使用反向传播训练款。两个步骤的训练,训练后款。这部分组织如下。部分2.1。1介绍了遏制,DBN的基本组成部分。节2.1。2RBM-based介绍款。

2.1.1。限制了玻耳兹曼机

疟疾是一种能源概率生成模型(26- - - - - -29日]。它由一层可见单元和一层隐藏的单位。可见单位代表一个数据样本的输入向量和隐藏的单位代表抽象的可见的功能单位。每一个可见的单元连接到隐藏的单位,而不存在连接在可见层或隐藏层。图1说明了玻耳兹曼机图形模型的限制。

由于缺乏hidden-hidden和input-input交互,遏制的能量函数 在哪里 是遏制他们的参数需要学习在培训过程; 表示可见层和隐层之间的权值; 的偏见是可见的层和隐层,分别;这种模式称为二进制元,因为向量 只包含二进制值(0或1)。

我们可以获得一个容易处理的条件概率的表达式 (30.]:

二进制元, ,一个隐藏的单元的方程的输出给定输入

因为 发挥的作用在能量函数,下面的方程可以推导出: 和可见的单元 ,我们有 在哪里 th列

尽管二进制元可以实现良好的性能在处理离散输入时,他们有处理连续值的输入限制由于它们的结构。因此,为了达到更好的性能在连续值的输入,利用高斯遏制可见层(4,31日]。作为遏制疟疾是高斯的能量函数 在哪里 是可见的均值和标准差单位 。注意,只有可见的层 是连续值和隐藏层 仍然是二进制。在实际情况下,输入数据规范化,使 。因此,(6)成为

2.1.2。深层神经网络

辛顿et al。1)表明,疟疾可以堆叠和贪婪的方式训练形成所谓的深层信念网络(DBNs) [32]。DBNs图形模型学习提取训练数据的深层次化表示。DBN模型与 层模型观察向量之间的联合分布 隐藏层 如下(30.]: 在哪里 的条件分布可见单位条件的隐藏的单位元水平 在顶级遏制visible-hidden联合分布。这是见图2

如图2显示,隐藏层的低级遏制是可见层高层遏制,这意味着低级遏制的输出是输入的高层组织遏制。通过使用这种结构,高级元能够学习高层特征从低级特征产生的低级遏制。因此,DBN允许潜变量空间隐藏层。为了有效地训练DBN,我们需要训练其遏制从低级别到高级别先后。

无监督DBN pretraining一步后,下一步就是利用DBN的参数初始化,做款监督培训款使用反向传播。的参数 层款如下:初始化参数 除了顶层设置参数一样的DBN,和上面层权重 初始化随机。之后,整个网络可以被反向传播调整监管方式使用带安全标签的数据。

2.2。卷积神经网络

卷积神经网络是其中一个最强大的类的神经网络在图像处理任务。它是高度有效的和常用的计算机视觉应用中33]。卷积神经网络包含三种类型的层:卷积层,二次抽样层、连接层。卷积神经网络的整体架构图所示3。简要介绍每种类型的层中提供以下段落。

2.2.1。褶积层

如图4显示,在卷积层,左边矩阵输入,这是一个数字图像,是一个卷积矩阵和矩阵。卷积层需要输入图像的卷积,卷积矩阵并生成输出图像。通常卷积矩阵称为滤波器和输出图像称为滤波器响应或过滤地图。卷积计算的一个例子是显示在图5。每一次,一块像素是复杂的过滤和生成一个像素在一个新的形象。

2.2.2。二次抽样层

二次抽样层是一个重要的层卷积神经网络。这一层主要是减少输入图像大小为了给神经网络更多的不变性和鲁棒性。二次抽样层的最常用方法是马克斯池图像处理任务。所以二次抽样层经常被称为最大池层。最大池方法如图6。图像分为块和每个块的最大值对应的输出图像的像素值。使用二次抽样层的原因如下。第一,二次抽样层更少的参数和速度训练。第二,二次抽样层使得卷积层容忍输入模式之间的平移和旋转。

2.2.3。完整的连接层

完整的连接层类似传统前馈神经层。他们使神经网络提出输入向量与一个预定义的长度。我们可以适应向量为特定类别或把它作为一个表示向量进行进一步处理。

3所示。培训策略

相比,传统的机器学习方法,深度学习的优点是,它可以构建深架构抽象学习更多的多尺度特性。不幸的是,大量的深层结构的参数可能导致过度拟合问题。

3.1。数据增加

增加数据的关键思想是生成额外的数据不引入额外的标签成本。一般来说,现有的增加是通过变形的数据。镜像,缩放和旋转是最常见的方法对数据增加(34- - - - - -36]。吴等人扩展变形主意的颜色空间,提供颜色铸造、渐晕,透镜畸变技术工作,显著扩大了训练集(37]。

3.2。Pretraining和微调

培训深入学习架构是一个耗时的和重要的任务。一方面,很难获得足够的已标示数据训练深度学习架构在实际应用程序中,虽然增加的数据可以帮助我们获得更多的培训数据。

对于视觉任务,很难获得足够的数据时,一个值得推荐的方法是调整pretrained CNN的自然图像(例如,ImageNet),然后使用特定的数据集来调整CNN (36,38,39]。Tajbakhsh等人表明,对于医疗应用程序,使用pretrained CNN与适当的微调表现或,在最坏的情况下,执行以及CNN从头训练(38]。

另一方面,深度学习架构包含成千上万的参数初始化甚至有足够的数据。Erhan等人提供的证据来解释pretraining一步帮助培训架构如深深信仰网络和堆叠autoencoders [40]。他们的实验支持正则化解释pretraining的影响,这有助于获得更好的泛化的deep-learned模型训练数据集。

4所示。应用程序

深度学习被广泛应用在各个领域,如计算机视觉(25),信号处理(24),和语音识别41]。在本节中,我们将简要地回顾一些最近开发的应用深度学习(所有的结果都是被从原来的论文)。

4.1。CNN-Based应用在视觉计算

正如我们所知,卷积神经网络是非常强大的工具,用于图像识别和分类。这些不同类型的cnn通常测试知名ImageNet大规模视觉识别的挑战(ILSVRC)数据集和近年来达到最先进的性能42- - - - - -44]。2012年赢得ImageNet竞争后(42),CNN-based方法在计算机视觉带来了一场革命。cnn已经取得了巨大的成功应用于目标检测(35,45,46,对象分割47,48),和图像识别的对象和地区49- - - - - -54]。与手工的特性,例如,局部二值模式(LBP) [55]和尺度不变特征变换(SIFT) [56),需要其他分类器来解决视力问题(57- - - - - -59],cnn可以学习的特征和分类器联合并提供性能优越。在下一小节,我们回顾最近deep-learned CNN是如何应用于人脸识别和道路裂缝检测问题提供一个概述为CNN应用到特定的问题。

以下4.4.1。CNN的人脸识别

人脸识别是自1970年代以来最重要的计算机视觉任务(60]。人脸识别系统通常由四个步骤组成。首先,给定一个输入图像与一个或多个面孔,一张脸探测器定位和隔离的面孔。然后,每个面预处理对齐使用2 d或3 d建模方法。接下来,一个特征提取器提取特征从一个对齐的脸(或嵌入)获得一个低维表示。最后,一个分类器预测基于低维表示。取得好表现为人脸识别系统的关键是获得一个有效的低维表示。人脸识别系统是用手工功能包括(61年- - - - - -64年]。劳伦斯et al。65年首次提出使用cnn进行人脸识别。目前,先进的人脸识别系统的性能,也就是说,Facebook的DeepFace [66年和谷歌FaceNet67年),是基于cnn。其他值得注意的CNN-based人脸识别系统是减轻卷积神经网络(68年)和视觉几何组(VGG)面对描述符(69年]。

7显示CNN-based人脸识别系统的逻辑流程。cnn使用手工制作的特性,而是直接应用于RGB像素值和用作功能器提供一个低维表示,描述一个人的脸。为了规范化输入图像不同角度面临强劲,DeepFace [66年面临的3 d模型和将它出现正面的脸。然后,美联储规范化输入到一个convolution-pooling-convolution过滤器。接下来,3本地连接层和2完全连接层是用来做最后的预测。DeepFace如图的架构8。虽然DeepFace达到最佳性能在人脸识别,其表示很难理解和使用,因为同一个人的面孔不是集群必然在训练过程中。相比之下,FaceNet定义了一个三联体直接损失函数表示法,使培训过程学会集群的脸表示同一个人(70年]。还应该指出,OpenFace使用一个简单的二维仿射变换来调整输入。

如今,人脸识别在移动计算是一个非常有吸引力的话题71年,72年]。而DeepFace和FaceNet保持私有和大尺寸,OpenFace [70年]提供了一个轻量级、实时和开源人脸识别系统与竞争的准确性,适用于移动计算。OpenFace实现FaceNet架构但是比DeepFace小一个数量级,比FaceNet小两个数量级。他们的表演比较标记脸上在野外数据集[伦敦时装周开幕73年),在人脸识别是一个标准的基准。实验结果显示在表1。尽管OpenFace的准确性略低于国家的艺术,其规模较小的规模和快速执行时间在移动人脸识别场景方面显示了很大的潜力。

4.1.2。CNN道路裂纹检测

路面裂缝的自动检测是一个重要的任务在交通维护行车安全保证。灵感来自最近的成功应用深度学习计算机视觉和医学问题,提出了一种基于深度学习的裂缝检测方法(23]。

数据准备。一个数据集有超过500路面大小的照片 收集在天普大学校园通过使用智能手机的传感器数据。每个图像的多个注释的注释。补丁的大小 该方法用于训练和测试。640000块,160000块,200000块被选中作为训练集,验证集和测试集,分别。

设计和训练CNN。深度学习架构设计,见图9conv,国会议员,足球俱乐部代表卷积,马克斯池,分别和完全连接层。cnn被训练使用随机梯度下降法(SGD)方法在GPU上一批的大小48例子,势头0.9和0.0005的重量衰变。不到20时代需要达到一个最低的验证集。辍学方法之间使用两个完全连接层的概率0.5和修正的线性单元(ReLU)激活函数。

CNN的性能进行评估。比较该方法和支持向量机(SVM)和提高的方法。训练支持向量机的特性和增强方法是基于颜色和纹理与二进制相关联的每个补丁标签指示碎裂的存在与否。93 -维特征向量,由颜色元素,textons直方图,枸杞多糖描述符在补丁。

接受者操作特征(ROC)曲线的方法,支持向量机,提高方法如图10。ROC曲线和曲线下面积(AUC)该方法表明,提出的基于深度学习的方法可以超越肤浅的结构从手工制作的特点。此外,更全面的实验正在进行 场景如图11

对于每一个场景,每一行显示了原始图像与裂缝、地面真理,SVM和概率地图生成的事先和提高方法。像素在绿色和蓝色表示裂纹和noncrack,分别和更高的亮度就意味着更高的信心。SVM无法区分裂缝和背景,和一些裂缝已经更进一步。与支持向量机相比,提高方法可以检测出裂缝,准确率更高。然而,一些背景的补丁被归类为裂缝,导致孤立图中绿色的部分11。这两种方法相比,该方法提供了优越的性能在正确分类从背景的破解补丁。

4.2。DBN-Based在信号处理中的应用
4.2.1。准备款为故障诊断

工厂错误可能导致异常的操作,紧急关闭,设备损坏,甚至人员伤亡。日益复杂的现代植物,即便是有经验的经营者很难诊断故障快速、准确。因此,设计一个智能故障检测和诊断系统来帮助操作员在过程工程是一个重要的任务。数据驱动的故障诊断方法是近年来越来越流行,因为他们利用强大的机器学习算法。传统的监督学习算法用于故障诊断的人工神经网络(76年- - - - - -81年)和支持向量机(82年- - - - - -84年]。作为一种新兴的机器学习技术,深度学习的故障诊断技术研究了一些当前研究[22,85年- - - - - -88年]。本节审查一项研究使用层次深神经网络(HDNN) [22)在一个众所周知的诊断故障数据集称为田纳西伊士曼流程(TEP)。

TEP中的仿真模型,模拟一个真正的产业的过程。模型最初由伊士曼化学公司(75年]。它由五个单元:冷凝器、压缩机、反应器、分离器和汽提塔。G和H两个液体产品生产过程中气体输入,C, D, E和惰性组件b TEP如图的工艺流程图12

数据准备。TEP使用由网络监控 传感器,收集测量在同一采样时间。在 th样品的状态 传感器由一个标量表示 。通过结合所有 传感器,整个过程的状态 采样间隔表示为行向量 。故障的发生 采样间隔与类标签指示 ,价值 代表之一 故障类型。有总 历史观察收集的 传感器组成一个数据集 。故障诊断的目的是训练一个分类 给定数据集

对于每一个模拟运行,介绍了仿真开始没有缺点和错误示例1。每次运行总共收集1000件样本数据。每一个故障类型有5个独立的模拟运行。田纳西伊士曼过程有20种不同的预定义的缺点但是缺点3、9、15是故障诊断排除由于没有影响或对所有传感器(微妙的影响82年,84年]。因此,训练数据集共有 数据样本;也就是说, , , 。然后,使用同样的方法生成测试数据。因为只有故障诊断方法进行这项工作,正常运行数据没有考虑。数据规范化和数据增强技术用于实现更好的性能。

设计和训练HDNN。的一般诊断方案HDNN [22)如下。症状由模拟生成的数据传输到监控款。监督款然后将症状数据分为不同群体和触发器的这款是受过专门训练的组做进一步的故障诊断。图13说明了HDNN的故障诊断方案,每个代理代表一个款。

款的性能进行评估。HDNN的实验结果相比单一神经网络和Duty-Oriented分层人工神经网络(DOHANN) [76年),如图14。7 17故障诊断准确率达到了90%。最高的正确分类率从故障4 (CCR)是99.6%,而最低的CCR是50.4%的错13。CCR的平均方法是80.5%,而平均的CCR自己SNN DOHANN是49.7%和70.7%,分别。它表明DNN-based算法优于其他传统NN-based算法。

4.2.2。款为人类活动检测

检测人类活动引起了科研人员由于高要求的重视安全,执法,和医疗保健90年- - - - - -93年]。使用相机来检测人类活动相比,传感器,如穿加速器或家庭雷达使用信号来检测人类活动是健壮的天气和光线等环境条件的变化(94年- - - - - -99年]。现在,有一些新兴的研究工作,重点使用深度学习技术来检测人类活动基于信号(89年,92年,One hundred.]。

秋天检测是非常重要的人类活动之一检测场景对于研究人员,由于下降是主要原因为老年人致命和非致命的伤害。汗和TaatiOne hundred.)提出了一种深度学习跌倒检测方法基于可穿戴设备采集的信号。他们提出一个autoencoders从每个通道遥感数据中提取特征。与可穿戴设备侵入和容易破碎,必须进行,家庭雷达是安全的,不干扰,健壮的秋季检测照明条件展示他们的优势。Jokanovic et al。89年)提出了一个方法,使用深度学习通过家庭雷达探测下降运动。展示在图的过程15。他们第一次降噪和规范化的声谱图作为输入。然后,堆放autoencoders执行器作为一个特性。在堆叠autoencoders, softmax回归分类器是用来进行预测。整个模型相比,支持向量机模型。实验结果表明,深度学习方法的正确分类率为87%,而支持向量机的正确分类率是78%。

5。挑战

尽管深度学习技术在多个领域实现承诺的性能,仍有几大挑战,表明研究文章。这些挑战描述如下。

5.1。有限的训练数据

深层神经网络训练通常需要大量的数据作为更大的训练数据集可以防止深学习模型过度拟合。有限的训练数据可能严重影响深层神经网络的学习能力。不幸的是,有许多应用程序缺乏足够的数据来训练一个款的标签。因此,如何培养款限制数据有效地成为一个热门话题。

最近,两种可能的解决方案吸引研究人员的注意。解决方案之一是推广新的培训数据从原始数据使用多个数据扩增方法。传统方法包括旋转、缩放和裁剪。除了这些,吴et al。37]采用光、颜色铸造和透镜畸变技术。这些技术可以进一步产生更多不同的训练例子。另一个解决方案是使用弱学习算法来获得更多的培训数据。歌等。101年提出了弱监督方法,可以标签映像级别object-presence。这种方法有助于减少费力边界框注释成本,生成训练数据。

5.2。时间复杂度

培训深层神经网络在早期是非常耗时的。它需要大量的计算资源和不适合实时应用程序。默认情况下,使用gpu加速训练的大型款的帮助下并行计算技术。因此,重要的是要充分利用GPU的计算能力培训款。他和太阳102年]调查培训CNN在时间成本约束下,提出了实际应用快速训练方法同时作为现有的CNN模型类似的性能。李等人。103年]删除所有多余的计算期间培训cnn像素明智的分类,从而导致加速1500倍。

5.3。理论的理解

虽然深学习算法实现有前景的结果在许多任务,基础理论还不是很清楚。有很多问题需要回答。例如,结构比其他体系结构在某些任务?多少层,每一层有多少节点应选择一款吗?除此之外,有一些hyperparameters如学习速率、辍学率,需要调整和规范的力量与特定的知识。

几种方法开发款帮助研究人员更好地理解。Zeiler,费格斯(43)提出了一个可视化的方法,说明了特征过渡层。它显示中间特性可翻译的模式,这可能有助于设计更好的架构未来款。除了可视化功能,Girshick et al。49]试图发现CNN的学习模式,测试性能一层一层地在训练过程中。它表明卷积层可以学习更通用的特性。

虽然有进步在理解深度学习理论,仍有很大提升空间的深度学习理论方面。

6。结论

本文概述的学习算法及其应用。等经典深学习算法限制玻耳兹曼机、深层信念网络,介绍了卷积神经网络。除了深学习算法,他们的应用程序与其他机器学习方法进行了综述和比较。虽然深层神经网络实现良好的性能在许多任务,他们仍然有许多属性,需要调查和合理的。我们讨论了这些挑战并指出一些新的理解和深层神经网络发展的趋势。

相互竞争的利益

作者宣称没有利益冲突有关的出版。