科研成长时机器学习与深度学习

深度学习综述

2018-08-22  本文已影响60人  Limityoung

The History Began from AlexNet: A Comprehensive Survey on Deep Learning Approaches

作者:Md Zahangir Alom, Tarek M. Taha, Christopher Yakopcic, Stefan Westberg, Mahmudul Hasan, Brian C Van Esesn, Abdul A S. Awwal, Vijayan K. Asari

提交日期:2018年3月3日

文章链接:https://arxiv.org/abs/1803.01164

摘要:深度学习在过去几年已经在不同应用领域展现了巨大的成功。这个机器学习的新领域已经迅速成长并且以一些新的应用模式被应用于大多数应用领域,帮助开启了新的机会。在学习方法的不同类别中已经提出了不同的方法,包括监督式、半监督式和非监督式。实验结果显示了在图像处理、计算机视觉、语音识别、机器翻译、艺术、医学影像处理、机器人学和控制、生物信息学、自然语言处理(NLP)、网络安全和更多领域中基于传统机器学习方法的最新深度学习的表现。这篇报告提供了对于深度学习方法的简短的调研,包括深度神经网络(DNN)、卷积神经网络(CNN)、递归神经网络(RNN)——RNN又包含长短期记忆(LSTM)和门控递归单元(GRU)、自动编码器(AE)、深度信念网络(DBN)、生成对抗网络(GAN)和深度强化学习(DRL)。另外,我们总结了最近提出的基于提到的深度学习方法的各种各样先进机器学习技术的发展。值的注意的是我们我们已经考虑到了从深度学习历史开始到大多数在2012年以后发表的论文。此外,在不同应用领域探索和评估的深度学习方法也包含在这份调查当中。我们也囊括了最近发展的框架、软件开发工具包(SDK)和用于执行和评估深度学习方法的基准数据集。有一些已经发表的关于神经网络中的深度学习的调查[1, 38]和关于强化学习的调查[234]。但是,这些论文并没有讨论单独的用于训练大规模深度学习模型和最近发展的生成模型方法[1]的先进技术、

索引项:深度学习,卷积神经网络(CNN),递归神经网络(RNN),自动编码器(AE),受限玻尔兹曼机(RBM),深度信念网络(DBN),生成对抗网络(GAN),深度强化网络(DRL),迁移学习


1. Introduction

从20世纪50年代以来,一个小的人工智能的子集,通常称作机器学习(ML),在过去的几十年里在一些领域引发革命。神经网络(NN)是机器学习的一个子领域,也是深度学习(DL)开始的地方,产生和创造了前所未有的破坏,在几乎所有的应用领域显示出了杰出的成功。图1显示了人工智能的分类。深度学习(学习的深度框架或者分层学习方法)是一类从2006年开始大幅度发展的机器学习技术。“学习”是一个预测模型参数来使学习到的模型(算法)可以完成一项特定任务的过程。例如,在人工神经网络(ANN)中,参数是权重矩阵(wi,j's)。另一方面,深度学习在输入层和输出层之间的若干层的主体允许许多阶段的具有用于特征学习和模式分类的分层体系结构的非线性信息处理单元[1,2]。基于数据表示的学习方法也可以定义为表示学习[3]。最近的文章定义了基于表示学习的深度学习,涉及分层特征或者概念,顶层的概念可以由底层的概念来定义,反之亦然。在一些文章中,深度学习也被描述为可以解决在不同应用领域中几乎所有种类问题的通用学习方法[4]。

A. 深度学习方法的种类:

如同机器学习,深度学习的方法可以被分成如下几类:监督式,半监督式或部分监督式以及非监督式。另外,还有一类学习方法叫做强化学习(RL)或深度强化学习(DRL),通常在半监督式,也在非监督式学习方法的范畴下讨论。

图1 AI: 人工智能,机器学习,神经网络,深度学习和尖峰神经网络(SNN)根据[294].

1) 监督式学习

一个拥有带标签数据的学习技术。在监督式深度学习方法的情况下,环境有一组输入和它们对应的输出(xt, yt)~ρ。例如,如果对于输入xt,智慧代理人预测𝑦𝑡=𝑓(𝑥𝑡),则代理人将收到损失值𝑙(𝑦𝑡,𝑦𝑡^)。然后,代理人将迭代地修改网络参数,以更好地近似所需的输出。 成功训练后,代理人将能够从环境中获得正确的答案。深度学习有不同的监督学习方法,包括深度神经网络(DNN),卷积神经网络(CNN),包括长短期记忆(LSTM)的递归神经网络(RNN),以及门控递归单元(GRU)。这些网络分别在第2,3,4和5节中描述。

2)半监督式学习

使用部分标记的数据集进行学习(通常也称为强化学习)。本研究的第8部分调研了深度强化学习方法。在某些情况下,深度强化学习和生成性对抗网络(GAN)被用作半监督学习技术。另外,包括LSTM和GRU的RNN也用于半监督学习。GAN将在第7节中讨论。

3)无监督式学习

没有标签的学习方法。在这种情况下,代理人学习内部表示或重要特征以发现输入数据中的未知关系或结构。通常,聚类,降维和生成技术被认为是非监督学习方法。深度学习系列中有几个成员擅长聚类和非线性降维,包括自动编码器(AE),受限玻尔兹曼机(RBM)和最近开发的GAN。此外,诸如LSTM和RL之类的RNN也用于许多应用领域的非监督学习[243]。第6节和第7节详细讨论了RNN和LSTM。

4)深度强化学习(DRL)

这是一种在未知环境中使用的学习技术。 DRL始于2013年的Google Deep Mind [5,6]。从那时起,基于RL提出了几种先进的方法被提出。以下是RL的一个例子:如果环境样本输入:𝑥𝑡~ρ,代理人预测:𝑦𝑡=𝑓(𝑥𝑡),代理人收到代价:𝑐𝑡~𝑃(𝑐𝑡|𝑥𝑡, 𝑦𝑡^)。其中P是未知概率分布,环境问代理人一个问题,并给它一个有噪声的分数作为它的答案。有时这种方法也被称为半监督学习。有许多半监督和无监督技术已经基于这个概念实施(见第8节)。在RL中,我们没有直接的损失函数,因此与传统的监督方法相比,学习更加困难。RL和监督学习之间的根本区别在于:首先,您无法完全访问要优化的功能;您必须通过交互查询它,其次,您正在与基于状态的环境进行交互:输入𝑥𝑡取决于之前的操作。

根据问题范围或空间,您可以决定需要应用哪种类型的RL来解决任务。如果问题有很多要优化的参数,DRL是最好的方法。如果问题具有较少的优化参数,则无推导RL方法是好的。其示例是退火,交叉熵方法和SPSA。我们引用Yann LeCun的话总结本节:

“如果情报是一块蛋糕,无监督的学习就是蛋糕本身,监督学习将为其锦上添花,强化学习是蛋糕的底座。” - Yann LeCun

图2 深度学习方法的分类

B. 特征学习

传统ML和DL之间的关键区别在于如何提取特征。传统的ML方法通过应用几种特征提取算法来使用手工特征,包括尺度不变特征变换(SIFT),加速鲁棒特征(SURF),GIST,RANSAC,直方图定向梯度(HOG),局部二值模式(LBP),用于语音分析的经验模式分解 (EMD)等等。最后,包括支持向量机(SVM),随机森林(RF),主成分分析(PCA),核心PCA(KPCA),线性递减分析(LDA),Fisher减量分析(FDA)和许多其他的学习算法被应用于对提取的特征进行分类。另外 应用于 单个任务或数据集特征 和 根据不同算法得到多种结果来做出抉择的 一些学习算法,通常会使用一些其他的增强方法。

表1 不同的特征学习方法

另一方面,在DL的情况下,自动学习特征并且在多个级别中分层表示。这是与传统机器学习方法相比深度学习的优势点。下表显示了具有不同学习步骤的基于不同特征的学习方法。

图3 在哪里应用DL方法

C. 何时何处应用DL

DL用于机器智能有用的几种情况(见图3):

1.没有人类专家(火星导航)

2.人类无法解释他们的专业知识(语言识别,视觉和语言理解)

3.问题的解决方案随时间而变化(跟踪,天气预报,偏好,股票,价格预测)

4.解决方案需要适应特定情况(生物识别,个性化),

5.问题规模对于我们有限的推理能力来说太大了(计算网页排名,将广告与Facebook匹配,情绪分析)。

目前,几乎所有领域都在使用深度学习。因此,这种方法通常被称为通用学习方法。 一些示例应用程序如图4所示。


图4 DL被成功应用并取得先进表现的案例图

D. DL的最先进性能

如下所述,在计算机视觉和语音识别领域取得了一些突出的成就:

1)图像分类和ImageNet数据集

其中一个大规模问题被称为大规模视觉识别挑战赛(LSVRC)。基于DL CNN的技术表现出了ImageNet任务的最佳精度[11]。 Russakovsky等人最近发表了一篇关于ImageNet数据集和最近几年取得的最新精确度的论文[285]。下图显示了从2012年以来深度学习技术在这项挑战上面取得的成功案例。ResNet-152仅显示3.57%的误差,这比此任务5%的人为误差还要更好。

图5 使用不同DL模型的ImageNet挑战的准确性

2)自动语音识别

语音识别领域的初步成功是在流行的TIMIT数据集(通常用于评估的通用数据集,common data set are generally used for evaluation)的小规模识别任务。TIMIT声学 - 语音连续语音语料库包含来自八种主要方言的美国英语的630个发音者,每个发音者阅读10个句子。下图总结了错误率,包括这些早期结果,并以过去20年的电话错误率(PER)百分比来衡量。条形图清楚地表明,与TIMIT数据集上的任何其他先前的机器学习方法相比,最近开发的深度学习方法(图的顶部)表现更好。

图6 TIMIT数据集的电话错误率(PER)

E. 为什么是深度学习?

1)通用学习方法

这个方法有时也被称作通用学习因为其可以被应用于几乎任何应用领域。

2)健壮性

深度学习方法不需要提前设计功能。会自动学习对于手头的任务是最佳的特征。结果,数据中自然变化的鲁棒性会被自动学习到。

3)泛化性

相同的深度学习方法可用于不同的应用程序或使用不同的数据类型。这种方法通常称为转移学习。此外,如果问题没有足够的可用数据,这种方法很有帮助。基于这一概念已经发表了几篇论文(在第4节中有更详细的讨论)。

4)可扩展性

深度学习方法具有高度可扩展性。在2015年的一篇论文中,微软描述了一个名为ResNet的网络[11]。该网络包含1202层,通常以超级计算规模运行。劳伦斯利弗莫尔国家实验室(LLNL)开展了一项大型计划,为这样的网络开发框架,可以实现数千个节点[24]。

F. 深度学习的挑战

深度学习有几个挑战:

■ 使用深度学习进行大数据分析

■ DL方法的可扩展性

■ 生成数据的能力,这对于无法学习系统的数据非常重要(特别是对于计算机视觉任务,如反向图形)。

■ 用于特殊用途设备的节能技术,包括移动智能,FPGA等。

■ 多任务和转移学习(泛化)或多模块学习。这意味着要从不同的领域或不同的模型一起学习。

■ 处理学习中的因果关系。

深度学习社区已经认真考虑了大多数提到的挑战。 已经发表了几篇论文作为这些挑战的解决方案。对于大数据分析的挑战,2014年进行了一项很好的调查。在这篇文章中,作者解释了DL如何处理不同标准的细节,包括大数据问题的数量,速度,种类和准确性,以及 展示了处理大数据问题的DL方法的不同优点[25,26和27]。深度学习是一种数据驱动技术。图7清楚地表明,传统ML方法的性能对于较少量的输入数据表现出更好的性能。随着数据量的增加超过一定量,传统机器学习方法的性能变得稳定。 相反,深度学习方法的性能随着数据量的增加而增加。

图7 不同数据量下深度学习的表现

其次,大多数解决大规模问题的案例,解决方案是在高性能计算(HPC)系统(超级计算,集群,有时被认为是云计算)上执行的,这为数据密集型商业计算提供了巨大的潜力。但随着数据在速度,种类,准确性和数量方面的爆炸式增长,使用企业级服务器和存储器随着增加而逐步扩展计算性能变得越来越困难。大多数论文都考虑了所有要求,并提出了具有异性计算系统的高效HPC。其中一个例子:Lawrence Livermore国家实验室(LLNL)开发了一个名为Livermore Big Artificial Neural Networks(LBANN)的框架,用于DL的大规模实执行超计算规模),明确解决了DL的可扩展性问题[24]。

第三,生成模型是深度学习的另一个挑战,GAN的一个示例是对于任何可以生成具有相同分布的数据的任务的数据生成的优秀方法[28]。第四,我们在第7节中讨论过的多任务和转移学习。第五,对于与网络架构和硬连线相关的节能深度学习方法已经进行了许多研究。第10节讨论这个问题。

我们可以制作任何可以解决不同应用领域中多个任务的统一模型吗?根据多模型系统的关注,谷歌最近发表了一篇题为“One Model To Learn All all”的论文[29]。这种方法可以从不同的应用领域中学习,包括ImageNet,多种翻译任务,图像字幕(MS-COCO数据集),语音识别语料库和英语解析任务。我们将通过本次调研讨论大部分挑战和各自的解决方案。在过去的几年中,还提出了一些其他的多任务技术[30,31和32]。

最后,具有因果关系的学习系统是一种用于定义如何从数据中推断出因果模型的图形模型。最近提出了一种基于DL的方法来解决这类问题[33]。然而,在过去几年中还有许多具有挑战性的问题已经解决,这些问题在这次革命之前无法有效解决。例如:图像或视频字幕[34],使用GAN 从一个域转换到另一个域的样式[35],文本到图像合成[36]以及更多[37]。

最近在该领域进行了一些调研[294,295]。其中一篇是关于深度学习及其革命的优秀调查,但这篇文章没有讨论最近开发的名为GAN的生成模型[28]。此外,它讨论了关于RL的标题位,但没有涵盖DRL方法的最新趋势[1,39]。大多数情况下,调研分别针对不同的DL方法进行。有一项很好的调研基于强化学习方法[40,41]。另一项调研关于迁移学习[42]。有一项调研是在神经网络硬件上进行的[43]。然而,本技术报告的主要目的是提供深度学习及其相关领域的总体思路,包括深度监督(例如DNN,CNN和RNN),无监督(例如AE,RBM,GAN)(有时GAN也用于半监督学习任务)和DRL。在某些情况下,DRL被视为半监督或非监督方法。此外,我们已经考虑了该领域的最新发展趋势以及基于该技术开发的应用。此外,我们还包括了通常用于评估深度学习技术的框架和基准数据集。此外,还包括会议和期刊的名称,这些会议和期刊被本社区考虑用于发表他们的研究文章。

本文的其余部分按以下方式组织:DNN的详细调研在第二部分讨论,第三部分讨论CNN。第四节描述了有效训练DL方法的不同先进技术。第五节讨论了RNN。AE和RBM在第六节中讨论。带有应用的GAN将在第七节中讨论。RL见第八节。 第九节解释了迁移学习。第十节介绍了DL的节能方法和硬线。第十一节讨论深度学习框架和标准开发工具包(SDK)。第十二节给出了具有Web链接的不同应用程序域的基准。结论在第十三节中作出。

2. 深度神经网络(DNN)

A. DNN的历史

以下是高亮的神经网络的关键事件的简要历史:

■ 1943年:McCulloch&Pitts表明神经元可以组合起来构建图灵机(使用AND,OR和NOT)[44]。

■ 1958年:罗森布拉特表明,如果他们想要学习的东西可以被表示,那么感知器将会收敛[45]。

■ 1969年:Minsky&Papert展示了感知器的局限性,扼杀了神经网络研究十年[46]。

■ 1985:Geoff Hinton等[47]的反向传播算法使该领域重新焕发活力。

■ 1988:Neocognitron:一种能够进行视觉模式识别的分层神经网络[48]。

■ 1998年:由Yan LeCun提出的带有反向传播,用于文档分析的CNN[49]。

■ 2006:Hinton实验室解决了DNN的训练问题[50,51]。

■ 2012:由Alex Krizhevesky于2012年提出的AlexNet[7]。

计算神经生物学已经对构建人工神经元的计算模型进行了重要的研究。试图模仿人类大脑行为的人工神经元是构建人工神经网络的基本组成部分。基本计算元素(神经元)被称为节点(或单元),其接收来自外部源的输入,具有一些内部参数(包括在训练期间学习的权重和偏差),并产生输出。这个单位被称为感知器。NN感知器的基本框图如下图所示。

图9 神经元的基本模型

图9显示了神经元的基本非线性模型,其中𝑥1,𝑥2,𝑥3,...𝑥𝑚是输入信号; 𝑤𝑘1,𝑤𝑘2,𝑤𝑘3,⋯𝑤𝑘𝑚是突触权重; 𝑣𝑘是输入信号的线性组合; φ(∙)是激活函数(例如sigmoid),𝑦𝑘是输出。偏置𝑏𝑘与线性组合器输出added相加,具有应用仿射变换的效果,产生输出𝑦𝑘。神经元功能可以用数学表示如下:

人工神经网络或一般神经网络由多层感知器(MLP)组成,其中包含一个或多个内有多个隐藏单元(神经元)的隐藏层。具有MLP的NN模型如图10所示。

图10 带有多层感知器的神经网络模型

多层感知器可以数学表达(这是一个复合函数),如下所示:

B. 梯度下降

梯度下降法是一阶优化算法,用于寻找目标函数的局部最小值。这已经成功地用于过去几十年的人工神经网络训练。算法I解释了梯度下降的概念:

C. 随机梯度下降(SGD)

由于长训练时间是传统梯度下降法的主要缺点,因此SGD方法用于训练深度神经网络(DNN)[52]。算法II详细解释了SGD。

D. 反向传播

DNN使用流行的反向传播(BP)算法和SGD 进行训练[53]。算法III给出了基本反向传播的伪代码。

在MLP的情况下,我们可以容易地使用作为指令非循环图的计算图来表示NN模型。 对于DL的表示,我们可以使用链式法则(反向传播)有效地计算从顶层到底层的梯度,如算法III中针对单路径网络所示。例如:

这是网络𝐿层的复合函数。如果𝐿= 2,则该函数可写为:

根据链式法则,该函数的导数可以写成:

E. 动量

动量是一种有助于通过SGD方法加速训练过程的方法。它背后的主要思想是使用梯度的动态平均值,而不是仅使用梯度的当前实际值。我们可以用数学方法用下面的方程表达:

这里γ是动量,η是第t轮训练的学习率。 在过去的几年中引入了其他流行的方法,这些方法在第4节的优化方法范围内进行了解释。在训练期间使用动量的主要优点是防止网络陷入局部最小化。动量值为γ∈(0,1)。值得注意的是,较高的动量值超过其最小值,可能使网络不稳定。通常γ设定为0.5,直到初始学习稳定,然后增加到0.9或更高[54]。

F. 学习率(η)

学习率是训练DNN的重要组成部分(如算法I和II中所述)。学习率是训练期间考虑的步长,使训练过程更快。但是,学习率值的选择是敏感的。 例如:如果为η选择较大的值,网络可能会开始发散而不是收敛。另一方面,如果为η选择较小的值,则网络将需要更多时间来收敛。此外,它可能很容易陷入局部最小值。 这个问题的典型解决方案是降低训练期间的学习率[52]。

在训练期间,有三种常用方法可用于降低学习率:常数,因子和指数衰减。首先,我们可以定义一个常数ζ,用于通过定义的步长函数手动降低学习率。其次,在训练期间可以使用以下等式调整学习率:

其中η𝑡是第t轮学习率,η0是初始学习率,β是衰减因子,其值在(0,1)范围之间。

指数衰减的阶跃函数格式为:

通常的做法是使用β= 0.1的学习率衰减,以在每个阶段将学习率降低10倍。

G. 权重衰减

权重衰减用于训练深度学习模型作为L2正则化方法,这有助于防止网络过拟合和模型泛化。 ℱ(θ,𝑥)的L2正则化可以定义为:

权重θ的梯度为:

一般的做法是使用值λ= 0.0004。较小的λ将加速训练。

用于高效训练的其他必要组件,包括数据预处理和增强,网络初始化方法,批量归一化,激活函数,具有丢弃的正则化以及不同的优化方法(如第4节中所讨论的)。

在过去的几十年中,已经提出了许多有效的方法来更好地训练深度神经网络。 在2006年之前,对深层架构进行培训的尝试失败了:训练深度监督的前馈(feed foward)神经网络往往会比浅层网络(有1或2个隐藏层)产生更差的结果(在训练和测试误差中)。Hinton在DBN上的革命性工作率先在2006年引发了改变[50,53]。

根据他们的文章,与浅层学习方法相比,许多DNN层更能代表高度变化的非线性函数[56,57和58]。此外,由于特征提取和分类层的组合,DNN用于学习更加高效。接下来的章节详细讨论具有必要组件的不同DL方法。

3. 卷积神经网络(CNN)

A. CNN概述

这种网络结构最初由Fukushima于1988年提出[48]。然而,由于用于训练网络的计算硬件的限制,它没有被广泛使用。在20世纪90年代,LeCun等人将基于梯度的学习算法应用于CNN,并获得了手写数字分类问题的成功结果[49]。之后,研究人员进一步改进了CNN,并在许多识别任务中报告了最先进的结果。CNN具有优于DNN的若干优点,包括更类似于人类视觉处理系统,在处理2D和3D图像的结构中高度优化,并且有效地学习和提取2D特征的抽象。CNN的最大汇集层有效地吸收形状变化。此外,由具有绑定权重的稀疏连接组成,CNN具有比相似大小的完全连接网络明显更少的参数。最重要的是,CNN使用基于梯度的学习算法进行训练,并且受到较少的减少梯度问题的困扰。鉴于基于梯度的算法训练整个网络以直接最小化误差标准,CNN可以产生高度优化的权重。

图11显示了CNN的整体架构,包括两个主要部分:特征提取器和分类器。在特征提取层中,网络的每一层都接收来自其前一层的输出作为其输入,并将其输出作为输入传递给下一层。CNN架构由三种类型的层组合而成:卷积,最大池和分类。网络的底层和中层有两种类型的层:卷积层和最大池层。偶数层用于卷积,奇数层用于最大池操作。卷积和最大化层的输出节点被分组为称为特征映射(feature map)的2D平面。层的每个平面通常由先前层的一个或多个平面的组合导出。平面的节点连接到前一层的每个连接平面的小区域。卷积层的每个节点通过输入节点上的卷积运算从输入图像中提取特征。

图11 CNN的整体架构包括输入层,多个交替卷积和最大池层,一个完全连接层和一个分类层。

更高级别的特征源自从较低级别层传播的特征。随着特征传播到最高层或级别,特征的尺寸分别根据用于卷积和最大池操作的内核的大小而减小。然而,为了确保分类准确性,通常增加特征映射的数量以表示输入图像的更好特征。CNN的最后一层的输出用作完全连接的网络的输入,该网络称为分类层。前馈神经网络已被用作分类层,因为它们具有更好的性能[50,58]。在分类层中,相对于最终神经网络的权重矩阵的维度,选择期望数量的特征作为输入。然而,就网络或学习参数而言,完全连接的层是昂贵的。如今,有几种新技术,包括平均池和全局平均池,用作全连接网络的替代方案。使用soft-max层在顶部分类层中计算相应类别的分数。基于最高分,分类器为相应的类提供输出。CNN的不同层的数学细节将在下一节中讨论。

1)卷积层

在此层中,来自先前层的特征映射与可学习的内核进行卷积。内核的输出通过线性或非线性激活函数,例如(S形,双曲正切,Softmax,整流线性和标识函数),以形成输出特征映射。每个输出特征映射可以与多个输入特征映射组合。一般来说,我们有

其中𝑥𝑗𝑙是当前层的输出,𝑥𝑖𝑙-1是前一层输出,𝑘𝑖𝑗𝑙是当前层的内核,𝑏𝑗𝑙是当前层的偏差。𝑀𝑗表示输入映射的选择。对于每个输出映射,给出了附加偏差𝑏。但是,输入映射将与不同的内核进行卷积以生成相应的输出映射。输出映射最终通过线性或非线性激活函数(例如sigmoid,hyperboliic tangent,Softmax,整流线性或标识函数)。

2)子采样层

子采样层对输入映射执行下采样操作。这通常称为池化层。 在此层中,输入和输出特征映射的数量不会更改。例如,如果有𝑁个输入映射,那么将会有𝑁个输出映射。由于下采样操作,输出映射的每个维度的大小将减小,这取决于下采样掩码的大小。例如:如果使用2×2下采样内核,则所有图像的每个输出维度将是相应输入维度的一半。该操作可以表述为

其中down(.)表示子采样函数。 在该层中主要执行两种类型的操作:平均池化或最大池化。在平均池化方法的情况下,该函数通常对来自前一层的特征映射的N×N个patch求和并选择平均值。另一方面,在最大池化的情况下,从特征映射的N×N个patch中选择最高值。因此,输出映射维度减少了n倍。在某些特殊情况下,每个输出映射都会乘以标量。已经提出了一些替代的子采样层,例如分数最大池化层和带卷积的子采样。这些在4.6节中解释。

3)分类层

这是完全连接的层,它根据前面步骤中卷积层的提取特征计算每个类的得分。最后一层特征映射表示为具有标量值的矢量,这些标量值被传递到完全连接的层。完全连接的前馈神经层用作soft-max分类层。对网络模型中包含的层数没有严格的规定。但是,在大多数情况下,在不同的架构中观察到了2-4层,包括LeNet [49],AlexNet [7]和VGG Net [9]。由于完全连接的层在计算方面是昂贵的,因此在过去几年中已经提出了替代方法。这些包括全局平均池层和平均池层,这有助于显着减少网络中的参数数量。

在通过CNN的反向传播中,完全连接的层按照完全连接的神经网络(FCNN)的一般方法更新。通过对卷积层与其前一层之间的特征映射执行完全卷积运算来更新卷积层的滤波器。图12示出了输入图像的卷积和子采样中的基本操作。

图12 卷积和池化操作的例子

4)网络参数和CNN需要的内存

计算参数的数量是衡量深度学习模型复杂性的重要指标。输出特征映射的大小可以表示如下:

其中𝑁是指输入特征映射的大小,𝐹是指滤波器或感受野(receptive field)的大小,𝑀是指输出特征映射的大小,𝑆代表步幅长度。通常在卷积操作期间应用填充以确保输入和输出特征图具有相同的尺寸。填充量取决于内核的大小。 公式17用于确定填充的行数和列数。

这里𝑃是填充量,𝐹是指内核的维度。 考虑比较模型的几个标准。但是,在大多数情况下,会考虑网络参数的数量和内存总量。第𝑙层的参数(𝑃𝑎𝑟𝑚𝑙)的数量基于以下等式计算:

如果偏差与权重相加,则上述等式可写如下:

这里第𝑙层的参数总数可以用𝑃𝑙表示,𝐹𝑀𝑙表示输出特征映射的总数,𝐹𝑀𝑙-1是输入特征映射或通道的总数。例如,假设第𝑙层具有𝐹𝑀𝑙-1 = 32个输入特征映射,𝐹𝑀𝑙= 64个输出特征映射,并且滤波器大小为𝐹= 5。在这种情况下,该层的偏置参数总数为:

因此,第𝑙层操作所需的存储量(𝑀𝑒𝑚𝑙)可表示为:

B. 流行的CNN架构

我们现在将研究几种流行的最先进的CNN架构。通常,大多数深度卷积神经网络由一组关键基本层组成,包括卷积层,子采样层,密集层和soft-max层。这些体系结构通常由几个卷积层和最大池层组成,最后跟随着完全连接的SoftMax层。这些模型的一些例子是LeNet [49],AlexNet [7],VGG Net [9],NiN [60]和所有卷积网络(All Conv)[61]。已经提出了其他替代和更有效的高级架构,包括带有Inception Networks的GoogLeNet [10,64],Residual Networks [11],DenseNet [62]和FractalNet [63]。这些体系结构中的基本构建组件(卷积和池化)几乎相同。然而,在现代深度学习架构中可以观察到一些拓扑差异。在众多DCNN架构中,AlexNet [7],VGG [9],GoogLeNet [10,64],Dense CNN [62]和FractalNet [63]通常被认为是最受欢迎的架构,因为它们在不同基准上的对象识别任务具有最先进的表现。在所有这些结构中-,一些架构专门用于大规模数据分析(例如GoogLeNet和ResNet),而VGG网络被认为是通用架构。一些架构在连接性方面非常密集,例如DenseNet [62]。FractalNet是ResNet的替代品。

1)LeNet(1998)

尽管LeNet是在20世纪90年代提出的,但有限的计算能力和内存容量使得该算法直到2010年左右仍难以实现[49]。然而,LeCun提出了带有反向传播算法的CNN,并在手写数字数据集上进行了实验,以实现最先进的精度。他的架构以LeNet-5而闻名[49]。 LeNet-5的基本配置是(参见图13):2个卷积(conv)层,2个子采样层,2个完全连接的层和1个具有高斯连接的输出层。权重和MAC的总数分别为431k和2.3M。

图13 LeNet的架构

随着计算硬件能力的提高,CNN越来越受欢迎,成为计算机视觉和机器学习社区中一种有效的学习方法。

2)AlexNet (2012)

2012年,Alex Krizhevesky和其他人提出了与LeNet相比更深入,更广泛的CNN模型,并在2012年赢得了视觉对象识别中最困难的ImageNet挑战,称为ImageNet大规模视觉识别挑战赛(ILSVRC)[7]。AlexNet战胜所有传统的机器学习和计算机视觉方法实现了最先进的识别准确性。这是机器学习和用于视觉识别与分类任务的计算机视觉领域的重大突破,也是历史上对深度学习兴趣迅速增加的一个关键点。

AlexNet的体系结构如图14所示。第一个卷积层使用局部响应标准化(LRN)执行卷积和最大池化,其中使用96个不同的接收滤波器,其大小为11×11。最大池化操作使用步幅大小为2的3×3滤波器执行。在第二层中使用5×5滤波器执行相同的操作。3×3滤波器分别用于第三,第四和第五卷积层,分别具有384,384和296个特征映射。两个带有丢弃的完全连接(FC)层被使用,最后是Softmax层。对于该模型,并行训练具有相似结构和相同数量的特征映射的两个网络。在该网络中引入了两个新概念,即本地响应规范化(LRN)和丢弃(dropout)。LRN可以以两种不同的方式应用:首先应用于单通道或特征图,其中从相同的特征映射中选择N×N块并且基于邻域值对其进行归一化。其次,LRN可以应用于跨通道或特征映射(沿第三维的邻域,但是单个像素或位置)。

图14. AlexNet的结构:卷积,最大池化,LRN和全连接(FC)层

AlexNet有3个卷积层和2个完全连接层。处理ImageNet数据集时,AlexNet第一层的参数总数可按如下方式计算:输入样本为224×224×3,滤波器(内核或掩码)或感受野大小为11,步幅为4, 第一卷积层的输出为55×55×96。根据3.1.4节中的等式,我们可以计算出该第一层具有290400(55×55×96)个神经元和364个(11×11×3 = 363 + 1个偏置)权重。第一卷积层的参数是290400×364 = 105,705,600。表II显示了每层的参数数量,以百万计。整个网络的权重和MAC总数分别为61M和724M。

3) ZFNet / Clarifai (2013)

2013年,Matthew Zeiler和Rob Fergue凭借CNN架构赢得了2013 ILSVRC,这个架构是AlexNet的延伸。以作者的名字命名,该网络被称为ZFNet [8]。由于CNN在计算上是昂贵的,因此从模型复杂性的观点来看需要参数的最佳使用。ZFNet架构是对AlexNet的改进,通过调整后者的网络参数来设计。ZFNet使用7x7内核而不是11x11内核来显着减少权重数量。这大大减少了网络参数的数量,提高了整体识别准确率。

4) Network in Network (NiN)

这个模型与以前的模型略有不同,其引入了几个新概念[60]。第一个概念是使用多层感知卷积,其中使用1×1滤波器执行卷积,有助于在模型中添加更多非线性。 这有助于增加网络的深度,然后可以通过丢弃来规范化。这个概念经常用在深度学习模型的瓶颈层中。

第二个概念是使用全局平均池化(GAP, Global Average Pooling)作为完全连接层的替代方案。这有助于显著减少网络参数的数量。GAP显着改变了网络结构。通过在大型特征映射上应用GAP,我们可以生成最终的低维特征向量,而不会降低特征映射的维数。

5) VGGNET (2014)

视觉几何组(VGG, Visual Geometry Group)是2014年ILSVRC的亚军[9]。 这项工作的主要贡献在于它表明网络的深度是CNN取得更好识别或分类准确性的关键组成部分。 VGG架构由两个卷积层组成,两个层都使用ReLU激活函数。 激活函数之后是单个最大池化层和几个完全连接层也使用ReLU激活函数。 模型的最后一层是Softmax层,用于分类。 在VGG-E [9]中,卷积滤波器的大小变为3x3滤波器,步幅为2。三个VGG-E [9]模型,VGG-11,VGG-16和VGG-19,分别有11,16和19层。

图15. VGG网络的基本构建模块:用于完全连接层的卷积(Conv)和FC

所有版本的VGG-E模型都以三个完全连接的层结束。 然而,卷积层的数量不同:VGG-11包含8个卷积层,VGG-16具有13个卷积层,VGG-19具有16个卷积层。 VGG-19是计算量最大的模型,包含138M的权重,和15.5G的MAC。

6) GoogLeNet (2014)

2014年ILSVRC的获胜者GoogLeNet [10]是Google的Christian Szegedy提出的一个模型,其目标是与传统的CNN相比降低计算复杂度。 提出的方法是合并具有可变感受野的”初始层(Inception Layers)”,这些感受野由不同的内核大小创建。 这些感受野创建了在新特征映射堆中捕获稀疏相关模式的操作。

图16. 初始层:初级版本

初始层的初始概念可以在图16中看到。GoogLeNet使用图17中所示的初始层堆改进了现有技术识别精度。初始初始层和最终初始层之间的区别在于增加了1x1卷积内核。 这些内核允许在计算昂贵的层之前降低维数。 GoogLeNet共有22层,远远超过之前的任何网络。但是,GoogLeNet使用的网络参数数量远远低于其前身AlexNet或VGG。当AlexNet拥有60M和VGG-19拥有138M参数时,GoogLeNet仅拥有7M网络参数。 GoogLeNet的计算也是1.53G MAC,远远低于AlexNet或VGG。

图17. 具有降维的初始层

7) Residual Network (ResNet in 2015)

ILSVRC 2015的获胜者是ResNet网络架构,ResNet [11]。Resnet是由Kaiming He开发的,旨在设计超深度网络,而不会受到前辈的梯度消失的问题的影响。ResNet有许多不同数量的层; 34, 50, 101, 152,甚至1202层。流行的ResNet50在网络包含49个卷积层和1个在末尾的完全连接层。整个网络的权重和MAC总数分别为25.5M和3.9G。


图18. Residual模块的基本图

ResNet架构的基本框图如图18所示。ResNet是一种具有残差连接(residual connection)的传统前馈网络。残差层的输出可以根据第(𝑙 - 1)的输出定义,该输出来自前一层,定义为𝑥𝑙-1· ℱ(𝑥𝑙-1)是执行各种操作后的输出(例如,使用不同大小的滤波器进行卷积,跟随着激活函数的批量归一化(BN),例如𝑥𝑙-1上的ReLU)。残差单元的最终输出是𝑥𝑙,可以使用以下等式定义:

残差网络(residual network)由几个基本残差块组成。然而,残差块中的操作可以根据残差网络的不同架构而变化[11]。Zagoruvko 等人在2016年提出了更广泛的残差网络版本[66]。另一种改进的残差网络方法也在2016年被提出,称为聚合残差变换(aggregated residual transformation)[67]。最近,基于残余网络架构残差模型的一些其他变体[68,69和70]被提出。此外,几种高级的架构也已经被提出,它们结合了Inception和Residual单元。Inception-Residual单元的基本概念图如下图19所示。

图19. Inception-Residual单元的基本结构图

在数学上,这个概念可以表示为:

符号⨀表示3×3和5×5滤波器的两个输出之间的逐元素乘积运算(concentration operations)。之后,使用1×1滤波器执行卷积运算。最后,输出与this-1的模块的输入相加。在Inception-v4架构中引入了具有残差连接的Inception模块的概念[65]。最近改进版的Inception-Residual网络被提出,称为PolyNet [70,290]。

8) Densely Connected Network (DenseNet)

由Gao Huang和其他人在2017年开发的DenseNet[62],由密集连接的CNN层组成,每层的输出与密集块中的所有后继层相连[62]。因此,它形成了e层之间的密集连接,因此得名“DenseNet”。此概念对于特征重用非常有效,可显着减少网络参数。 DenseNet由几个密集块和转换块组成,它们位于两个相邻的密集块之间。密集块的概念图如图20所示。

图20. 一个具有k=3成长率的4层Dense块

每个图层都将所有前面的特征映射作为输入。

当解构图20时,第𝑙层接收来自先前层𝑥0,𝑥1,𝑥2⋯𝑥𝑙-1的所有特征映射作为输入:

其中 [𝑥0,𝑥1,𝑥2⋯𝑥𝑙-1] 是层0, ⋯⋯, 𝑙 - 1的连接特征,𝐻𝑙(∙)被认为是单个张量。 它执行三种不同的连续操作:Batch Normalization(BN)[110],然后是ReLU [58]和3×3卷积操作。 在事务块(transaction block)中,用BN执行1×1卷积运算,然后执行2×2平均池化层。这个新模型通过合理数量的用于对象识别任务的网络参数表现出了最先进的精度。

9) FractalNet (2016)

这种架构是ResNet模型的一种先进的替代架构,它可以有效地设计具有标称深度的大型模型,但在训练期间传播梯度的路径较短[63]。 这个概念基于droppath,是制作大型网络的另一种正规化方法。因此,这个概念有助于加快速度与准确性之间的权衡。FractalNet的基本框图如图21所示。

左侧是详细的FractalNet模块,右侧是FractalNet

C. CapsuleNet

CNN非常智能地检测对象的特征,并且与基于手工特征的方法相比,有效地表现出良好的识别性能。然而,CNN的局限性在于CNN在探索特征之间的特殊关系(透视,大小和方向)方面是有效的。例如:如果你有脸部图像,面部的不同组件(鼻子,眼睛,嘴等)的放置无关紧要,CNN的神经元将错误地激活并且识别为面部而不考虑特殊关系(方向,大小) 。现在,想象一个包含特征属性(透视,方向,大小等)的可能性的神经元。因此,这种特殊类型的神经元可以用不同的信息有效地检测面部。这些特殊类型的神经元称为胶囊(capsules)。胶囊网络由几层胶囊节点组成。第一版胶囊网络(CapsNet)由编码单元中的三层胶囊节点组成。

图22. 具有3层的CapsNet编码单元。每个类的实例用DigitCaps层中的胶囊向量表示,该向量用于计算分类损失。 主胶囊层和DigitCaps层之间的权重用𝑊𝑖𝑗表示。

MNIST(28×28)图像的这种架构,256个9×9内核应用步幅1,因此输出为(28 - 9 + 1 = 20),具有256个特征映射。然后将输出馈送到主胶囊层,该胶囊层是经修改的卷积层,其产生8-D向量而不是标量。在第一个卷积层中,9×9内核应用步幅2,输出维数为((20-9)/ 2 + 1 = 6)。主胶囊使用8×32个核,产生32×8×6×6(32个组,每组8个神经元,每个神经元6×6大小)。

图23. 解码单元,其中数字是从DigitCaps层的表示重建的。 欧式距离用于最小化输入样本和来自S形层的重建样本之间的误差。 真实标签在训练期间用于重建目标。

CapsNet的整个编码和解码过程分别如图22和图23所示。我们经常使用CNN中的最大池化层来处理转换方差(translation variance)。即使特征移动,如果仍然在最大池窗口下也可以检测到。由于胶囊包含来自前一层的特征的加权和,因此该方法能够检测对于分割和检测任务非常重要的重叠特征。

在传统的CNN中,我们使用单一成本函数(cost function)来评估在训练期间向后传播的总体误差。然而,在这种情况下,如果神经元之间的权重为零,则神经元的激活不会传播到神经元。信号根据特征参数进行路由,而不是在协议的迭代动态路由中适合所有成本函数的单一大小。有关此架构的详细信息,请参阅[293]。 这种新的CNN架构为MNIST上的手写数字识别提供了最先进的精确度。 但是,从应用的角度来看,这种架构相对于分类任务来说更适合分块和检测任务。

D. 不同模型的比较

表II给出了基于误差,网络参数和最大连接数的最近提出的模型的比较。

表2. 对于不同深度CNN模型的计算参数和MAC的前5%的误差。

E. 其他模型

还有许多其他网络架构,例如基于快速区域的CNN [71]和Xception [72],它们在计算机视觉社区中很流行。2015年,一种使用递归卷积层的名叫Recurrent Convolution Neural Network或RCNN的新模型[73]被提出。该网络的改进版本是初始网络和递归卷积网络中两种最流行的架构的组合,称为初始卷积递归神经网络(IRCNN)[74]。与RCNN和初始网络相比,IRCNN在具有几乎相同的网络参数的情况下提供了更好的准确性。视觉相位引导CNN(ViP CNN)被提出具有相位引导信息传递结构(PMPS)以在关系组件之间建立连接,其显示出更好的加速和识别准确性[75]。基于查找的CNN [76]是一种快速,紧凑,准确的模型,可实现高效推理。 2016年,被称为完全卷积网络(FCN)的架构被提出用于现在常用的分块任务。最近提出的其他CNN模型包括具有随机深度的深度网络,深度监督网络和梯形网络[79,80和81]。

问题是,深度网络真的需要更深吗?

一些论文已经被发表,基于更深层次网络的合理的解释,并得出结论:“越深越好”[82,83]。现在的问题是宽度和深度哪一个更好?一方面,关于深度网络还是广泛网络哪个更好存在争议,一些研究可以在以下论文中看到[84,85,86]。由于DL方法是数据驱动技术,其需要大量标记样本用于监督方法的训练。最近,一些框架已经被开发用于从标记和未标记的数据集中制作有效的数据库[87,88]。

超参数优化允许不同级别的性能,这有助于创建与深度学习设计硬件相匹配的模型[89,90]。

F. CNN的应用

上面讨论的大多数技术都是在计算机视觉和图像处理任务上进行评估的。以下是一些已经讨论过的最近发表的论文,这些论文应用于计算机视觉和图像处理的不同模式。

1)用于解决图形问题的CNN

学习图形数据结构是数据挖掘和机器学习任务中各种不同应用的常见问题。 DL技术在机器学习和数据挖掘组之间架起了一座桥梁。2016年提出了一种有效的CNN用于任意图形处理的方法[91]。

2)图像处理和计算机视觉

我们上面讨论过的大多数模型都应用于不同的应用领域,包括图像分类,检测,分割,定位,字幕,视频分类等等。有一篇对图像处理和计算机视觉相关任务的深度学习方法很好的调研[92]。使用CNN方法的单图像超分辨率[93]。使用块匹配CNN进行图像降噪[94]。使用A-Lamp进行照片美学评估:自适应布局感知多重深度CNN [95]。DCNN用于使用马尔可夫随机场(MRF)进行分割的超光谱成像[96]。使用CNN进行图像配准[97]。用于快速艺术风格转换的分层深度CNN [98]。使用DCNN进行背景分割[99]。使用DCNN方法的手写字符识别[291]。使用深度学习方法的光学图像分类[296]。使用蜂窝同步递归网络和卷积神经网络的对象识别[297]。

3)语音处理

CNN方法也应用于语音处理:使用多模式深度CNN的语音增强[100],以及使用卷积门控递归网络(CGRN)的音频标记[101]。

4)用于医疗影像的CNN

一篇关于DL用于医疗影像的分类,检测和分割任务的很好地调研[102]。这篇调研后发表了一些论文。MDNet,用于医学诊断,带有图像及其相应的文字说明[103]。使用短轴MRI进行心脏分割[104]。使用CNN分割视盘和视网膜脉管系统[105]。使用具有完全卷积神经网络(FCNN)学习的特征的随机森林进行脑肿瘤分割[106]。最近,改进版的U-Net [300]采用递归残余卷积神经网络(RRCNN),命名为R2U-Net [301]。

4. 高级的训练技术

上一节中缺少的是高级的训练技术或组件,需要仔细考虑这些技术或组件才能有效地训练DL方法。不同的高级技术可用于更好地训练深度学习模型。这些技术包括输入预处理,更好的初始化方法,批量标准化,替代卷积方法,高级激活函数,替代池化技术,网络正则化方法以及更好的训练优化方法。 以下各节将分别讨论各种高级训练技巧。

A. 准备数据集

目前,在将数据递送到网络之前已经应用了不同的方法。准备数据集的不同操作如下:样本重新缩放,平均减法,随机裁剪,相应于水平轴或垂直轴的数据翻转,颜色抖动,PCA/ZCA白化等等。

B. 网络初始化

深度网络的初始化对整体识别准确性有很大影响[53,54]。以前,大多数网络都是使用随机权重进行初始化的。对于具有高维度数据的复杂任务,训练一个DNN变得困难,因为权重不应该由于反向传播过程而对称。因此,有效的初始化技术对于训练这种类型的DNN很重要。然而,在过去几年中已经提出了许多有效的技术。 LeCun在1998年[107],Y.Bengio在2010年[108]提出了简单却有效的方法。在这种方法中,权重通过层的输入神经元数量的平方根的倒数来缩放,可以表示为1/√𝑁𝑙,其中𝑁𝑙是第𝑙层的输入神经元的数量。基于根据线性假设的对称激活函数,已经提出了Xavier的深度网络初始化方法。这种方法被称为“Xavier”初始化方法。

最近在2016年,Dmytro M等人提出了层序单位不变性(LSUV),这是一种数据驱动的初始化方法,可以在包括ImageNet在内的几个基准数据集上提供良好的识别准确度[85]。 Kiming He在2015年提出了一种流行的初始化方法[109]。第𝑙层权重的分布是均值为零,方差为2/𝑛𝑙的正态分布,可表示如下。

C. 批量归一化(Batch Normalization)

批量归一化有助于通过转换输入样本来减少内部协方差,从而加速DL过程。这意味着输入被线性转换为零均值和单位方差。对于白化输入,网络收敛更快,并且在训练期间表现出更好的正则化,这对整体准确性有影响。由于数据白化是在网络外部执行的,因此在模型训练期间不会产生白化的影响。在深度递归神经网络的情况下,第n层的输入是第n-1层的组合,其不是原始特征输入。随着训练的进行,归一化或白化的效果分别降低,这导致梯度消失的问题。这可能会减慢整个训练过程并导致饱和。为了在训练期优化训练过程,批量归一化会应用于深度神经网络的内部层。这种方法确保了理论上和基准测试期间更快的收敛。在批量归一化中,层的特征独立地归一化为均值为0和方差为1 [110,111]。批量归一化算法在算法IV中给出。

参数γ和β是用于归一化值的缩放和偏移因子,因此归一化不仅取决于层值。如果使用归一化技术,建议在实施过程中考虑以下标准:

■ 提高学习率

■ 丢弃(批量归一化做同样的工作)

■ L2权重正则化

■ 加速学习率下降

■ 删除本地响应规范化(LRN)(如果您用过它)

■ 更彻底地打乱训练样本

■ 减少训练集中图像的变形

D. 替代卷积方法

已经提出了替代且计算上有效的卷积技术,其将乘法成本降低了2.5倍[112]。

E. 激活函数

在过去的几十年中,传统的Sigmoid和Tanh激活函数已被用于实现神经网络方法。图形和数学表示如下图24所示。

图24. 激活函数:左侧蓝色是sigmoid函数 右侧绿色是hyperbolic transient

2010年提出的称为整流线性单元(ReLU)的流行激活函数解决了训练深度学习方法的消失梯度问题。基本概念很简单,将所有值保持在零以上,并将所有负值设置为零,如图25所示[58]。ReLU激活首先在AlexNet中使用,这是Hinton在2012年提出的突破性CNN [7]。

图25. 整流线性单元(ReLU)的图形表示

在数学上我们可以表达ReLU如下:

因为激活函数在学习深层架构的权重方面起着至关重要的作用。许多研究人员关注这里,因为在这方面可以做很多事情。同时,已经提出了几种改进版的ReLU,与ReLU激活功能相比,它提供了更高的精度。 ReLU激活函数的有效改进版本被称为Kaiming He等人提出的参数ReLU(PReLU)。图26显示了Leaky ReLU和ELU激活功能的图示。这种技术可以自动地自动学习参数,并以可忽略的额外计算成本提高精度[109]。

图26. 左侧红色是Leaky ReLU的示意图 右侧紫色是Exponential Linear Unit(ELU)的示意图

这里a是一个常数,其值为0.1。

最近提出的指数线性单元激活函数(ELU),它允许更快和更准确的DCNN结构版本[113]。此外,调整激活函数的负部分产生了最近提出的具有多指数线性单位(MELU)的Leaky ReLU [114]。S形整流线性激活单元于2015年提出[115]。2015年发表了一篇对现代激活函数的调研[116]。

F. 子采样层和池化层

目前,已经使用两种不同的技术来在深度网络中实现子采样或池化层:平均和最大池化。平均池化层的概念首次在LeNet [49]中使用,而AlexNet在2012年使用最大池化层[7]。最大池和平均池操作的概念图如图27所示。He等人在2014年提出了特殊金字塔池化的概念,如图28所示[117]。

图27. 平均池化和最大池化操作

多尺度金字塔池化于2015年提出[118]。2015年,Benjamin G.提出了一种具有分数最大池化的新架构,该架构为CIFAR-10和CIFAR-100数据集提供了最先进的分类精度。该结构通过考虑子采样层或池层的两个重要属性来概括网络。首先,非重叠最大池化层限制了网络深度结构的推广,这篇文章提出了一个带有3x3重叠最大池步幅为2的网络,而不是以2x2作为子采样层[119]。另一篇论文对不同类型的池化方法进行了调研,包括混合,门控和树作为池化函数的推广[120]。

图28. 空间金字塔池化

G. DL的正则化方法

在过去几年中,针对深度CNN提出了不同的正则化方法。最简单但有效的方法称为“丢弃”是由Hinton在2012年提出的[121]。在丢弃中,随机选择的激活子集在层内设置为零[122]。丢弃的概念如图29所示。

图29. 丢弃概念的图像化表示

另一种正则化方法称为Drop Connect,在这种情况下,不是将激活丢弃,而是将网络层内的权重子集设置为零。结果,每个层从前一个层接收随机选择的单元子集[123]。还提出了一些其他正则化方法,详见[124]。

H. DL的最优化方法

有不同的优化方法,如SGD,Adagrad,AdaDelta,RMSprop和Adam[125]。一些激活函数已经得到改进,例如在SGD的情况下,其中已经提出了增加的可变动量,这提高了训练和测试精度。在Adagrad的案例中,主要贡献是在训练期间计算自适应学习率。对于该方法,考虑梯度幅度的总和来计算自适应学习速率。在具有大量历元(epoch)的情况下,梯度的大小的总和变大。结果是学习率从根本上降低,这导致梯度快速接近零。这种方法的主要缺点是它在训练期间引起问题。后来,RMSprop被提出仅考虑前一次迭代的梯度大小,这可以防止Adagrad的问题,并在某些情况下提供更好的性能。基于用于计算类似RMSprop的自适应学习速率的梯度的动量和幅度,提出了Adam最优化方法。 Adam提高了整体准确性,并通过更好地融合深度学习算法帮助进行有效的训练[126]。最近提出了改进版的Adam最优化方法,称为EVE。 EVE提供更好的性能:快速准确的收敛[127]。

5. 递归神经网络(RNN)

A. 简介

人类的思想具有持久性; 人类不会扔掉东西,一秒钟就从头开始思考。当您阅读本文时,您将基于对先前单词或句子的理解来理解每个单词或句子。包括DNN和CNN在内的传统神经网络方法无法解决这类问题。由于以下原因,标准神经网络和CNN无能为力。首先,这些方法仅处理固定大小矢量作为输入(例如,图像或视频帧)并产生固定大小的矢量作为输出(例如,不同类别的概率)。其次,这些模型以固定数量的计算步骤(例如模型中的层数)操作。RNN是唯一的,因为它们允许随着时间的推移在一系列向量上操作。这种RNN的概念是在1980年开发的。Hopfield Newark在1982年引入了这个概念,但这个想法很快就在1984年描述[128]。图示表示在图30中。

图30. 具有循环的基本RNN结构

Jordan和Elman提出了不同版本的RNN。在Elman架构中,使用隐藏层的输出作为输入以及隐藏层的正常输入[129]。另一方面,Jordan网络中输出单元的输出与输入一起用作隐藏层输入[130]。在数学上我们可以表达为:

其中𝑥𝑡是输入向量,ℎ𝑡是隐藏层向量,𝑦𝑡是输出向量,w和u是权重矩阵,b是偏置向量。

循环允许信息从网络的一个步骤传递到下一个步骤。可以将d递归神经网络视为同一网络的多个副本,每个网络将消息传递给后继者。下图显示了如果我们展开循环会发生什么。

图31. 一个展开的RNN

RNN方法的主要问题是体验消失的梯度问题。这个问题在1992年第一次被Hochreiter 等人解决[131]。在1993年实施并评估了由1000个后继层组成的深度RNN以解决深度学习任务[132]。在过去的几十年中,已经提出了几种RNN方法来解决的消失梯度问题。这个问题的两种可能有效的解决方案是:第一种是剪切梯度并在标准(norm)太大时缩放梯度,第二种是创建更好的RNN模型。Felix A等人在2000年提出了一个更好的模型,其被命名为长期短期记忆(LSTM, Long Short Term Memory)[133,134]。 从LSTM开始,在过去几年中提出了不同的先进方法,这些方法将在以下章节中进行解释。

然而,RNN方法允许输入序列、输出序列,以及在最通常情况下两者都允许。例如:用于文本挖掘的深度学习,在文本数据上构建深度学习模型需要表示基本文本单元和单词。神经网络结构可以分层次地捕获文本的顺序性质。在大多数情况下,RNN或递归神经网络用于语言理解[292]。在语言建模中,它试图根据先前的单词或某些案例句子预测下一个单词或一组单词[135]。RNN是具有环路的网络,允许信息持续存在。另一个例子:RNN能够将先前的信息连接到当前任务:使用先前的视频帧,理解现在并尝试生成未来的帧[142]。

图32. 长短期记忆(LSTM)的示意图

B. 长短期记忆(LSTM)

LSTM的核心思想是单元状态,水平线贯穿图32的顶部。LSTM将信息移除或添加到称为门的单元状态:输入门(𝑖𝑡),忘记门(𝑓𝑡)和输出门( 𝑜𝑡)可以定义为:

LSTM模型在时间信息处理中很受欢迎。大多数包含LSTM模型的论文都有一些微小的差异。 其中一些将在下一节中讨论。

Gers和Schimidhuber在2000年提出了一个略有修改版本的网络,其带有“窥视孔连接(peephole connections)”。窥视孔的概念包含在该模型中的几乎所有门控中。

C. 门控递归单元(GRU, Gated Recurrent Unit)


图33. 门控递归单元的示意图

GRU也来自LSTMs,2014年,Cho等人给其带来的改动稍微多一些。GRU现在在使用递归网络的社区中很受欢迎。受欢迎的主要原因是计算成本和模型的简单性,如图33所示。在拓扑,计算成本和复杂性方面,GRU是比标准LSTM更轻量的RNN方法版本[136]。该技术将遗忘和输入门组合成单个“更新门”,并将单元状态和隐藏状态以及一些其他变化合并。更简单的GRU模型越来越受欢迎。在数学上,GRU可以用以下等式表示:

问题是:哪一个最好?根据不同的实证研究,没有明确的证据表明获胜者。但是,GRU需要较少的网络参数,这使得模型更快。另一方面,如果你有足够的数据和计算能力,LSTM可以提供更好的性能[137]。有一个名为Deep LSTM的变体LSTM [138]。另一种变体是位不同的方法称为“A clockwork RNN”[139]。Greff等人在2015年对于包括LSTM在内的不同版本的RNN方法进行了一个重要的实证评估,最终的结论是所有的LSTM变体都差不多[140]。对数千种RNN架构进行了另一项实证评估,包括LSTM,GRU等,在某些任务中发现了一些比LSTM更好的架构[141]。

D. 卷积长短期记忆(ConvLSTM, Convolutional LSTM)

完全连接(FC)LSTM和短FCLSTM模型的问题是处理时空数据(spatiotemporal data)及其在输入到状态和状态到状态事务中的完全连接的使用,其中没有编码空间信息。ConvLSTM的内部门是3D张量,其中最后两个维度是空间维度(行和列)。ConvLSTM根据输入和其本地邻居的过去状态确定网格中特定单元的未来状态,这可以使用图34中的状态到状态或输入到状态转换中的卷积运算来实现。

图34. ConvLSTM[142]的示意图

ConvLSTM为视频数据集的时态数据分析提供了良好的性能[142]。数学上ConvLSTM表示如下,其中*表示卷积运算,∘表示Hadamard乘积:

E. RNN架构的变体与其相应的应用

为了将注意机制(attention mechanism)与RNN结合,Word2Vec在大多数情况下用于单词或句子编码。Word2vec是一种功能强大的单词嵌入技术,具有来自原始文本输入的2层预测NN。这种方法用于不同的应用领域,包括无监督单词学习,不同单词之间的关系学习,基于相似性抽象单词的更高意义的能力,句子建模,语言理解等等。在过去几年中,已经提出了不同的其他单词嵌入方法,用于解决困难的任务并提供最先进的性能,包括机器翻译和语言建模,图像和视频字幕以及时间序列数据分析[ 143,144和288]。

图35. RNN在应用方面的不同结构:(a)一对一 (b)多对一 (c)一对多 (d)多对多 (e)多对多*

从应用的角度来看,需要不同架构的RNN的来解决不同类型的问题,如图35所示。在图35中,输入向量表示为绿色,RNN状态用蓝色表示,橙色表示输出向量。 这些结构可以描述为:

一对一:没有RNN的分类标准模式(例如图像分类问题)如图35(a)所示

多对一:输入序列和单个输出(例如情感分析,其中输入是一组句子或单词,输出是正或负表达),如图35(b)所示

一对多:系统接受一个输入并产生输出序列(图像字幕问题:输入是单个图像,输出是一组带有上下文的字),如图35(c)所示。

多对多:输入序列和输出序列(例如,机器翻译:机器从英语中获取单词序列并转换为法语单词序列),如图35(d)所示。

多对多*:序列到序列学习(例如,视频分类问题,其中我们将视频帧作为输入并且希望标记图35(e)所示的视频的每个帧。

F. RNN的基于注意力(attention based)的模型

不同的使用RNN方法的基于注意力的模型已经被提出。Xu等人在2015年第一个提出了带有注意力可以自动学习描述图像内容的RNN[145]。基于双态注意力的RNN被提出用于有效时间序列预测[146]。另一个困难的任务是使用GRU的视觉问答(VQA),其中输入是图像和关于图像的自然语言问题,任务是提供准确的自然语言答案。输出以图像和文本输入为条件。CNN用于对图像进行编码,RNN被应用于对句子进行编码[147]。另一个出色的概念是从谷歌发布的Pixel Recurrent Neural Networks(Pixel RNN)。这种方法为图像补全任务提供了最先进的性能[148]。一种称为残差RNN的新模型被提出,其中RNN在深度循环网络中引入了有效的残差连接[149]。

G. RNN应用

包括LSTM和GRU的RNN应用于张量处理[150]。使用包含LTSM和GRU的RNN技术进行自然语言处理[151,152]。在2017年提出了基于多语言识别系统的卷积RNN [153]。使用RNN的时间序列数据分析[154]。最近,用于时间序列分类(TSC)的基于预训练的深度RNN被提出,称作TimeNet[155]。语音和音频处理,包括用于大规模声学建模的LSTM [156,157]。使用卷积RNN进行声音事件预测[158]。使用卷积GRU进行音频标记[159]。使用RNN进行早期心力衰竭检测 [160]。

6. 自动编码器(AE, AUTO-ENCODER)和受限玻尔兹曼机(RBM, RESTRICTEDBOLTZMANNMACHINE)

本节将讨论无监督深度学习方法之一的自动编码器[55](例如变分自动编码器(VAE, variational auto-encoder)[167],去噪AE [59],稀疏AE [168],叠加去噪AE [169] ,Split-Brain AE [170])。本章末尾还讨论了不同AE的应用。

A. 自动编码器回顾

AE是一种深度神经网络方法,用于无监督的特征学习,具有高效的数据编码和解码能力。自动编码器的主要目的是学习和表示(编码)数据,通常用于数据降维,压缩,融合等等。这种自动编码器技术由两部分组成:编码器和解码器。在编码阶段,输入样本通常在具有构造特征表示的较低维特征空间中映射。可以重复该方法,直到达到期望的特征维度空间。而在解码阶段,我们通过反向处理从较低维度特征重新生成实际特征。具有编码和解码阶段的自动编码器的概念图如图36所示。

图36. 自动编码器的示意图

编码器和解码器转换可以用∅和φ表示

如果我们考虑一个带有一个隐藏层的简单自动编码器,其中输入是𝑥∈ℝ𝑑=𝒳,它被映射到∈ℝ𝑝=ℱ,那么它可以表示如下:

其中W是权重矩阵,b是偏差。σ1表示元素智能激活函数(element wise activation function),例如S形或整流线性单元(RLU, rectified linear unit)。让我们考虑将𝑧再次映射或重构到𝑥',与𝑥具有相同维度。重构可以表示为

该模型经过最小化重构误差的训练,重构误差定义为损失函数如下:

通常,特征空间ℱ的维度小于输入特征空间𝒳,可以将其视为输入样本的压缩表示。在多层自动编码器的情况下,在编码和解码阶段将根据需要重复相同的操作。通过扩展具有多个隐藏层的自动编码器的编码器和解码器来构造深度自动编码器。对于更深的AE模型,梯度消失问题仍然是一个大问题:梯度变得太小,因为它通过AE模型的许多层进行回传。以下各节将讨论不同的高级AE模型。

B. 变分自动编码器(VAEs, Variational auto encoders)

使用简单的生成对抗网络(GAN)存在一些限制,这些限制在第7节中讨论。限制是:首先,使用GAN从输入噪声生成图像。如果有人想要生成特定图像,则难以随机选择特定特征(噪声)以产生期望的图像。它需要搜索整个分布。其次,GAN区分“真实”和“虚假”对象。例如:如果你想生成一只狗,并没有狗必须长得像狗这样的限制(?)。因此,它产生相同风格的图像,风格看起来像狗,但如果我们仔细观察,那么它并不完全像狗。然而,VAE被提出来克服基本GAN的那些限制,其中潜在向量空间用于表示遵循单位高斯分布的图像[167, 174]。

图37. 变分自动编码器

在这个模型中,有两个损失,一个是均方误差(MSE),它决定了网络在重建图像方面的表现,以及潜在的损失(Kullback-Leibler(KL)发散),它决定了带有单位高斯分布潜在变量匹配的接近程度。例如,假设𝑥是输入,隐藏表示是z。参数(权重和偏差)是𝜃。为了重建相位,输入为𝑧,所需输出为𝑥。参数(权重和偏差)是𝜙。因此,我们可以将编码器分别表示为𝑞𝜃(𝑧|𝑥)和解码器𝑝𝜙(𝑥|𝑧)。网络和潜在空间的损失函数可表示为

C. Split-Brain Auto-encoder

最近,Split-Brain AE由Berkeley AI Research(BAIR)实验室提出,该AE是用于无监督表示学习的传统自动编码器的架构修改版本。在这个架构中,网络被分成不相交的子网络,其中两个网络试图预测整个图像的特征表示[170]。

图38. Split-Brain Auto encoder

D. AE的应用

AE应用于生物信息学[102,171]和网络安全[172,302]。我们可以将AE应用于无监督特征提取,然后应用Winner Take All(WTA)来聚类这些样本以生成标签[173]。在过去十年中,AE已经被用作编码和解码技术,或者用于其他深度学习方法,包括CNN,DNN,RNN和RL。但是,这里有一些最近发表的其他方法[174,175]。

E. RBM(受限玻尔兹曼机)回顾

受限的玻尔兹曼机(RBM)是另一种无监督的深度学习方法。训练阶段可以使用称为“受限玻尔兹曼机”的双层网络建模[176],其中随机二进制像素使用对称加权连接连接到随机二进制特征检测器。RBM是一种基于能量的无向生成模型,它使用一层隐藏变量来模拟可见变量的分布。隐性和可见变量之间相互作用的无向模型用于确保似然项对隐含变量的后验的贡献是近似因子的,这极大地促进了推理[177]。RBM的概念图如图39所示。

图39. RBM的结构图

基于能量的模型意味着通过能量函数定义感兴趣变量的概率分布。能量函数由一组可观察变量s𝑉= {𝑣𝑖}和一组隐藏变量= {ℎ𝑖}组成,其中i是可见层中的节点,j是隐藏层中的节点。它在某种意义上受到限制,即没有可见-可见和隐藏-隐藏的连接。其值对应于RBM的“可见”单位,因为它们的状态是可被观察到的;特征检测器对应于“隐藏”单元。可见和隐藏单元的联合配置(v, h)具有能量(Hopfield, 1982),由下式给出:

其中𝑣𝑖 ℎ𝑗是可见单元𝑖和隐藏单元𝑗的二元状态,𝑎𝑖,𝑏𝑗是它们的偏差,𝑤𝑖𝑗是它们之间的权重。网络通过此能量函数为可能的可见对和隐藏向量分配概率:

其中“分区函数(partition function)”,𝑍,是通过对所有可能的可见和隐藏向量对进行求和得到的:

网络分配给可见矢量v的概率是通过对所有可能的隐藏矢量求和来给出的:

可以通过调整权重和偏差来提高网络分配给训练样本的概率,以降低样本的能量并提高其他样本的能量,特别是那些能量较低的样本,因此对分区函数有很大贡献。训练向量相对于权重的对数概率的导数令人惊讶地简单。

其中尖括号用于表示由下面的下标指定的分布下的期望值。这导致了一个简单的学习规则,用于在训练数据的对数概率中执行随机最陡上升:

其中ε是学习率。给定随机选择的训练图像𝑣,每个隐藏单元𝑗的二进制状态ℎ𝑗以概率设置为1

其中σ(𝑥)是逻辑sigmoid函数1 / (1 + 𝑒^(-𝑥))。然后𝑣𝑖 ℎ𝑗是无偏样本。因为在RBM中可见单元之间没有直接连接,所以在给定隐藏向量的情况下,也很容易得到可见单元状态的无偏样本

获得一个 ⟨𝑣𝑖ℎ𝑗⟩𝑚𝑜𝑑𝑒𝑙 的无偏样本要困难得多。它可以通过从可见单元的任何随机状态开始并长时间执行交替的吉布斯采样(alternating Gibbs sampling)来完成。交替吉布斯采样的一次迭代包括使用等式(61)并行更新所有隐藏单元,然后使用等式(62)并行更新所有可见单元。Hinton(2002)提出了一种更快的学习过程。其首先将可见单位的状态设置为训练向量。然后使用等式(61)并行计算隐藏单元的二进制状态。 一旦为隐藏单元选择了二进制状态,就通过用方程(62)给出的概率将每个𝑣𝑖设置为1来进行“重建”。然后给出权重的变化

一个使用相同学习规则的简化版本使用单个单位的状态而不是成对单位状态的乘积作为偏置[178]。该方法主要用于以非监督方式预训练神经网络以生成初始权重。基于这种方法提出了一种称为深度信念网络(DBN)的最流行的深度学习方法。一些使用RBM和DBN的用于数据编码,新闻聚类和网络安全的应用案例详见[51,179,289]。

7. 生成对抗网络(GAN, Generative Adversarial Networks)

在本章开头,我们从Yann LeCun的一句话开始,“GAN是过去十年在深度学习(神经网络)领域提出的最佳概念”。

A. GAN回顾

机器学习中的生成模型的概念在很长一段时间之前开始用于具有条件概率密度函数的数据建模。通常,这种类型的模型被认为是具有关于观察和目标(标签)值的联合概率分布的概率模型。然而,我们之前没有看到这种生成模型的巨大成功。最近基于深度学习的生成模型变得流行并且在不同应用领域中显示出巨大的成功。

深度学习是一种数据驱动技术,随着输入样本数量的增加,该技术表现更好。由于这个原因,使用来自大量非标签数据集的可重用特征表示进行学习已经成为一个活跃的研究领域。我们在介绍中提到计算机视觉具有不同的任务,分割,分类和检测,这需要大量的标记数据。已经尝试通过生成具有生成模型的类似样本来解决该问题。

图40. 生成对抗网络(GAN)的概念图

生成性对抗网络(GAN)是Goodfellow最近在2014年开发的一种深度学习方法。GAN为最大似然估计技术提供了另一种方法。GAN是一种无监督的深度学习方法,其中两个神经网络在零和游戏中相互竞争。每次迭代时,两个网络中的每一个都在其给定任务中变得更好。在图像生成问题的情况下,生成器以高斯噪声开始以生成图像,并且鉴别器确定生成的图像有多好。该过程继续,直到发生器的输出变得接近实际输入样本。根据图40,可以认为鉴别器(D)和发生器(G)两个玩家使用V(D,G)函数进行min-max游戏,根据论文[180,181]可以将其表达为以下形式

在实践中,该等式可能无法在早期阶段为学习G(从随机高斯噪声开始)提供足够的梯度。在早期阶段,D可以拒绝样本,因为它们与训练样本相比明显不同。 在这种情况下,𝑙𝑜𝑔(1 − 𝐷(𝐺(𝑧))) 将饱和。我们可以训练G来最大化 𝑙𝑜𝑔(𝐺(𝑧)) 目标函数,而不是训练G来最小化𝑙𝑜𝑔(1 −𝐷(𝐺(𝑧))),这在目标函数中在学习期间的早期阶段提供了更好的梯度。但是,在第一版的培训过程中,收敛过程存在一些局限性。在开始状态下,GAN对以下问题有一些限制:

■ 缺乏启发式成本函数(作为像素级近似均方误差(MSE))

■ 训练不稳定(有时可能导致产生无意义的输出)

GAN领域的研究一直在进行,并提出了许多改进版本[​​181]。GAN能够为诸如内部或工业设计的可视化,鞋子,包和衣物等应用产生逼真的图像。GAN在游戏开发领域也有如此广泛的应用。 GAN已被用于在视频中生成运动以及生成人工视频[182]。GAN有两个不同的深度学习领域,它们属于半监督和无监督。这些领域的一些研究侧重于GAN架构的拓扑结构,以改进功能和培训方法。深度卷积GAN(DCGAN)是一种基于卷积的GAN方法,于2015年提出[183]​​。这种半监督方法与无监督方法相比,已经显示出有希望的结果。根据DCGAN实验的再生结果如下图所示[183]​​。图41显示了一次训练通过数据集后生成的卧室图像的输出。本节中包含的大多数数据都是通过实验生成的。从理论上讲,该模型可以学习记忆训练样例,但这在实验上不太可能,因为我们用较小的学习率和SGD的小批量训练。我们知道没有先前的经验证据表明对SGD的记忆和较小的学习率[183]​​。

图41. 卧室图像的实验输出

图42表示在五个训练时期之后生成的卧室图像。似乎有证据表明在多个样品(例如某些床的基板)上通过重复的噪声纹理进行视觉欠拟合。

图42. 使用DCGAN进行重建的卧室图像

在图42中,顶部行在Z中的一系列9个随机点之间进行插值,并且表明所学习的空间具有平滑过渡。在每个图像中,空间似乎都像卧室。在第6排,你看到一个没有窗户的房间慢慢变成一个有巨大窗户的房间。在第10行中,您可以看到电视正在慢慢转变为窗口。下面的图43显示了潜在空间矢量的有效应用。通过首先执行加法和减法操作,然后进行解码,可以将潜在空间矢量转换为意义输出。图43显示了一个男人戴着眼镜减去一个男人并添加一个女人,这导致一个女人戴着眼镜。

图43. 微笑算法和用于使用GAN佩戴眼镜的算法的例子

图44显示了从左侧看向右侧的四个平均样本样本创建的“转向”向量。通过沿着该随机样本轴添加插值,可以可靠地变换姿势。已经为GAN提出了一些有趣的应用程序。 例如,生成具有改进的GAN结构的自然室内场景。 这些GAN学习表面法线,并与Wang和Gupta的Style GAN[184]结合使用。在该实现中,作者考虑了名为(S2-GAN)的GAN的样式和结构,其生成表面法线贴图,这是GAN的改进版本。2016年,提出了一个名为“InfoGAN”的GAN信息理论扩展。infoGAN可以以完全无监督的方式学习更好的表示。实验结果表明,无监督的InfoGAN与完全监督学习方法的表征学习具有竞争性[185]。

图44. 使用GAN从不同角度生成面部

2016年,Im等人提出了另一种新架构,其中递归概念包含在训练期间的对抗网络中[186]。Jun等人提出的iGAN允许在自然图像流形上交互地进行图像处理。在2017年提出了使用条件对抗网络进行图像到图像的翻译[187]。另一个名为耦合生成对抗网络(CoGAN, Coupled Generative Adversarial Network)的改进版GAN是多域图像的学习联合分布。现有方法不需要训练集中不同域中相应图像的元组[188]。双向生成对抗网络(BiGANs是通过逆特征映射来学习的,并且表明所得到的学习特征表示对于辅助监督鉴别任务是有用的,与现有的非监督和自我监督特征学习方法相竞争[189]。

最近谷歌提出了扩展版本的GAN,称为边界均衡生成对抗网络(BEGAN, Boundary Equilibrium Generative Adversarial Networks),具有简单但强大的架构。 BEGAN拥有更好的训练过程,快速稳定的收敛。均衡的概念有助于平衡鉴别器与发生器的功率。此外,它可以平衡图像多样性和视觉质量之间的权衡[190]。另一项类似的工作称为Wasserstein GAN(WGAN)算法,该算法显示出优于传统GAN的显着优势[191]。与传统的GAN相比,WGAN有两大优势。 首先,WGAN有意义地将损耗度量与发生器的收敛和样本质量相关联。其次,WGAN提高了优化过程的稳定性。

WGAN的改进版本提出了一种新的裁剪技术,它惩罚反对者(critic)根据其输入的梯度的法线[192]。基于生成模型提出了有前途的架构,其中图像用未经训练的DNN表示,为更好地理解和可视化DNN提供了机会[193]。生成模型的对抗性例子[194]。基于能量的GAN由Yann LeCun于2016年在Facebook提出[195]。对于GAN而言,训练过程很困难,Manifold Matching GAN(MMGAN)提出了更好的训练过程,该过程在三个不同的数据集上进行了实验,实验结果清楚地证明了MMGAN相对其他模型的功效[196]。GAN通过有效的训练方法进行地质统计模拟和反演[197]。

概率GAN(PGAN, Probabilistic GAN)是一种具有修正目标函数的新型GAN。这种方法背后的主要思想是将概率模型(高斯混合模型)整合到支持可能性而不是分类的GAN框架中[198]。具有贝叶斯网络模型的GAN [199]。变分自动编码是一种流行的深度学习方法,它采用对抗变分贝叶斯(AVB)训练,有助于建立VAE和GAN之间的主要联系[200]。基于通用前馈神经网络提出的fGAN[201]。基于Markov模型的GAN用于纹理合成[202]。另一种基于双随机MCMC方法的生成模型[203]。带有多发生器的GAN[204]。

无监督的GAN能够学习像素级域适应,其在像素空间中从一个域转换到另一个域。这种方法提供了相较几种无监督域自适应技术取得了最佳性能,具有较大的领先[205]。一种名为Schema Network的新网络被提出,它是一种面向对象的生成物理模拟器,能够通过各种原因解开事件推理的多种原因,从而实现从数据环境动态中学习的目标[206]。有一项有趣的研究是用GAN进行的,即生成对抗文本到图像合成。在这篇文章中,为GAN公式提出了新的深层架构,可以对图像进行文本描述,并根据输入产生逼真的图像。这是使用字符级文本编码器和类条件GAN进行基于文本的图像合成的有效技术。GAN首先在鸟类和花卉数据集上进行评估,然后在MS COCO数据集上评估一般文本到图像[36]。

B. GAN的应用

此学习算法已应用于以下各节中讨论的不同应用程序领域:

1) 用于图像处理的GAN

GAN用于使用超分辨率方法生成照片般逼真的图像[207]。GAN用于半隐式和弱监督方法的语义分割[208]。文本条件辅助分类器GAN(TAC GAN),用于从文本描述生成或合成图像[209]。多样式的生成网络(MSG-Net),它以快速的速度保留基于优化的方法的功能。该网络以多种尺度匹配图像样式,并将计算负担付诸于训练[210]。 大多数时候,视觉系统都会遇到雨,雪和雾。最近使用GAN提出了单个图像去除系统[211]。

2)用于语音和音频处理的GAN

使用生成分层神经网络模型的端到端对话系统[212]。此外,GAN已经用于语音分析领域。最近,GAN用于语音增强,称为SEGAN,它结合了进一步的以语音为中心的设计,以逐步提高性能[213]。GAN用于符号域和音乐生成,与Melody RNN相当[214]。

3)用于医疗信息处理的GAN

用于医疗想象和医学信息处理的GAN [102],使用Wasserstein距离和感知损失进行医学图像去噪的GAN [215]。GAN还可以被用于脑肿瘤分割的条件性GAN(cGAN)[216]。使用称为Segan的GAN的通用医学图像分割方法[217]。在深度学习革命之前,压缩感知是最热门的话题之一。然而,Deep GAN被用于压缩感知,使MRI自动化[218]。此外,由于隐私问题,电子健康记录(EHR)仅限于或不像其他数据集一样公开可用,因此GAN也可用于健康记录处理。GAN用于合成EHR数据,可以降低风险[219]。使用Recurrent GAN(RGAN)和Recurrent Conditional GAN(RCGAN)生成时间序列数据[220]。LOGAN由生成和判别模型的组合组成,用于检测过度拟合和识别输入。该技术已经与最先进的GAN技术进行了比较,包括GAN,DCGAN,BEGAN以及DCGAN与VAE的组合[221]。

4)其他应用

一种称为贝叶斯条件GAN(BC-GAN)的新方法,可以从确定性输入生成样本。 这只是一个带贝叶斯框架的GAN,可以处理监督,半监督和非监督学习问题[222,223]。在机器学习和深度学习社区中,在线学习是一种重要的方法。GAN用于在线学习,其中它被训练用于在零和游戏中找到混合策略,其被命名为Checkov GAN 1 [224]。基于统计假设检验的生成矩匹配网络称为最大均值差异(MMD)[225]。用基于双样本的内核MMD替换GAN的鉴别器的一个有趣的想法,称为MMD-GAN。这种方法明显优于生成矩匹配网络(GMMN)技术,这是生成模型的另一种方法[226]。

使用GAN进行姿势估计[227]。使用GAN的照片编辑网络[228]。异常检测[229]。DiscoGAN用于学习与GAN的跨域关系[230]。用GAN单拍学习[231]。GAN用于响应生成和问答系统[232,233]。最后是WaveNet是一种用于生成音频波形的生成模型[286]。

8. 深度强化学习(DRL)

在前面的章节中,我们主要关注监督和无监督的深度学习方法,包括DNN,CNN,RNN,包括LSTM和GRU,AE,RBM,GAN等。这些类型的深度学习方法用于预测,分类,编码,解码, 数据生成,以及更多应用领域。然而,本节基于最近开发的RL领域的方法,展示了深度强化学习(DRL)的调研。

A. DRL回顾

DRL是一种学习方法,学习从未知的真实环境中以常理行事(有关详细信息,请阅读以下文章[234])。RL可以应用于不同的领域,包括决策的基础科学,计算机科学的机器学习,工程和数学领域,最优控制,机器人控制,电站控制,风力涡轮机和神经科学,奖励策略在过去的几十年中得到了广泛的研究。它也适用于经济效用或博弈论,以便做出更好的决策和投资选择。经典条件反射的心理学概念是动物如何学习的过程。强化学习是一种技术,用于做什么以及如何将情境与动作相匹配。强化学习不同于监督学习技术和其他类型的学习方法研究,包括传统的机器学习,统计模式识别和人工神经网络。

图45. RL系统的概念图

类似于一般的监督和无监督的机器学习,RL不是通过表征学习方法来定义的,而是通过表征学习问题来定义的。然而,最近DL的成功对DRL的成功产生了巨大影响。根据学习策略,通过观察学习RL技术。 为了观察环境,根据观察空间使用有前景的DL技术,包括CNN,RNN,LSTM和GRU。由于DL技术有效地编码数据,因此更准确地执行下面的动作步骤。根据行动,代理人分别获得适当的奖励。因此,整个RL方法在环境中以更好的性能学习和交互变得更加高效。

然而,现代DRL革命的历史最近始于2013年的谷歌Deep Mind使用DRL的Atari的比赛。代理人在超过50种不同的游戏中被评估。在几乎所有游戏中,基于DRL的方法比人类专家的表现更好。在这种情况下,在使用CNN处理的视频帧上观察环境 [235,236]。DRL方法的成功取决于尝试解决任务的难度级别。在Google Deep Mind的Alpha-Go和Atari取得巨大成功之后,他们在2017年提出了基于星际争霸II的强化学习环境,称为SC2LE(星际争霸II学习环境)[237]。SC2LE是一款具有多个玩家互动的多智能体游戏。该提议的方法具有大的动作空间,涉及数百个单元的选择和控制。它包含许多要从原始特征空间观察的状态,它使用数千个步骤的策略。基于开源python的StarCraft II游戏引擎已在线免费提供。

B. Q-Learning

对于使用DRL而言,有一些基本策略是必不可少的。首先,RL学习方法具有计算状态-动作组合的质量的函数,其被称为Q学习(Q-函数)。

从观察状态𝑆,状态的行动𝐴和奖励ℝ学习的Q函数。这是一种更新值的迭代方法。Q学习被定义为无模型强化学习方法,用于为任何给定(有限)马尔可夫决策过程(MDP)找到最优动作选择策略。MDP是使用状态,动作和奖励进行建模决策的数学框架。Q-learning只需了解可用状态以及每个状态可能采取的措施。Q-Learning的另一个改进版本称为双向Q-Learning。在本文中,讨论了Q-Learning,有关双向Q-Learning的详细信息,请参阅[238]。

在每个步骤s,选择最大化以下函数的动作Q(s, a)

    - Q是估计的效用函数 - 它告诉我们在某个给定状态下一个动作有多好

    - r(s, a)为最终状态制定行动最佳效用(Q)的直接奖励

这可以用递归定义表达如下:

这个方程称为Bellman方程,它是RL的核心方程。 这里𝑟(𝑠, 𝑎)是直接奖励,γ是延迟与直接奖励的相对值,取值在[0,1]。𝑠'是行动𝑎后的新状态。𝑎和𝑎'分别是状态𝑠和𝑠'中的动作。根据以下等式选择操作:

在每个状态中,分配一个称为Q值的值。当我们访问一个状态并且我们相应地收到奖励。我们使用奖励来更新该状态的估计值。由于奖励是随机的,因此我们需要多次访问这些状态。此外,我们无法保证在另一集中获得相同的奖励(Rt)。情节任务和环境中未来奖励的总和是不可预测的,未来,我们会进一步表达各种奖励。

两种情况下的折扣未来奖励总和都是以标量表达的因子。

这里γ是常数。 我们越在未来,我们就越少把这个奖励纳入考虑

Q-learning的性质:

■ Q函数的收敛:近似将收敛到真正的Q函数,但它必须无限多次访问可能的状态-动作对。

■ 状态表大小可以根据观察空间和复杂性而变化。

■ 观察期间不考虑看不见的值。

解决这些问题的方法是使用神经网络(特别是DNN)作为近似而不是状态表。DNN的输入是状态和动作,输出是0到1之间的数字,适当地表示状态和动作的效用编码。在这里,深度学习方法有助于根据状态信息做出更好的决策。在观察环境的大多数情况下,我们使用几个采集设备,包括摄像头或其他传感设备来观察学习环境。例如:如果您观察到Alpha-Go挑战的设置,则可以看出环境,动作和奖励是基于像素值(行动中的像素)学习的。详情见[235,236]。

然而,难以开发能够在任何观察环境中相互作用或表现良好的代理人。因此,该领域的大多数研究人员在训练该环境的代理人之前选择他们的行动空间或环境。与监督或无监督的深度学习方法相比,这种情况下的基准概念略有不同。由于环境的多样性,基准测试取决于环境与先前或现有研究相比的难易程度。困难取决于不同的参数,代理人的数量,代理人之间的互动方式,参与者的数量等。最近,DRL提出了另一种良好的学习方法[234]。有很多论文发表了不同的DRL网络,包括深度Q网络(DQN),双DQN,异步方法,政策优化策略(包括确定性政策梯度,深度确定性政策梯度,指导性政策搜索,置信区间政策优化,组合政策梯度和Q-学习)被提出[234]。政策梯度(DAGGER)超人类GO使用带有 政策梯度 和 具有值函数的蒙特卡洛树 的监督式学习[239]。使用引导式策略搜索进行机器人操作[240]。使用政策梯度的3D游戏的DRL [241]。

C. 具有应用的DRL的最近趋势

最近发布了一篇调研,其中提出了基本的RL,DRL DQN,置信区间政策优化和异步优势行为者评论(actor-critic)。这篇文章还讨论了深度学习的优势,并着重于通过RL的视觉理解和当前的研究趋势[243]。基于在线RL技术的约束网络内聚被提议用于称为mHealth的移动设备上的医疗保健。该系统帮助类似的用户有效地共享信息,以改进有限的用户信息并将其转换为更好的学习策略[244]。与团队驱动的RL类似的工作被提议用于移动设备上的医疗保健以用于个性化的mHealth干预。在这项工作中,K-means聚类应用于对人进行分组,最后与每个组的RL策略共享[245]。对于代理人来说,最优政策学习是一项具有挑战性的任务。选项-观察启动集(OOI)允许代理人在POMDP的挑战性任务中学习最佳策略,其比RNN更快地学习[246]。DRL提出了3D Bin Packing Problem(BPP)。主要目标是放置长方体物品来最小化表面积[247]。

DRL的输入部分是根据观察和代理人的行动确定的奖励。真实的奖励函数在任何时候都不完美。由于传感器错误,代理人可能获得最大奖励,而实际奖励应该更小。这篇文章提出了一种基于广义马尔可夫决策问题(MDP)的公式,称为Corrupt Reward MDP [248]。基于最近开发的Kronecker因式近似曲率(K-FAC),提出了基于最深区域RL的区域优化[249]。此外,还有一些研究是在使用深度学习方法评估物理实验时进行的。该实验聚焦于在交互式仿真环境中学习对象的质量和内聚等基本属性[250]。

最近提出了适用于连续状态和动作空间的模糊RL策略[251]。重点研究和讨论了连续控制的政策梯度中的超参数,算法的一般方差。 这篇文章还提供了报告结果和与基线方法进行比较的指南[252]。Deep RL也适用于高精度装配任务[253]。Bellman方程是RL技术的主要功能之一,提出了函数逼近,确保Bellman最优性方程始终成立。然后估计函数以最大化观察到的运动的可能性[254]。基于DRL的分层系统用于可计算系统中的资源分配和功率管理[255]。提出了一种新颖的注意意识面部幻觉(AttentionFC),其中Deep RL用于增强单个贴片上的图像质量,用于在面部图像上应用的图像[256]。

9. 迁移学习(Transfer Learning)


A. 什么是迁移学习?

解释转学习的一个好方法是看看学生的老师关系。在收集有关该主题的详细知识后,教师提供课程。随着时间的推移,这些信息将通过一系列讲座传达。这可以被认为是教师(专家)正在向学生(学习者)传递信息(知识)。同样的事情发生在深度学习的情况下,网络训练有大量数据,并且在训练期间模型学习权重和偏差。这些权重可以转移到其他网络,以测试或重新训练类似的新模型。网络可以从训练有素的重量开始,而不是从头开始训练。

B. 什么是预训练模型?

预训练模型是已经在与预期域相同的域上训练过的模型。例如,对于图像识别任务,可以下载已经在ImageNet上训练的Inception模型。然后,可以将初始模型用于不同的识别任务,而不是从头开始训练,可以将权重保留为具有一些学习特征的权重。当缺少样本数据时,这种训练方法很有用。在以下链接中,模型动物园中有许多预先训练的模型(包括不同数据集上的VGG,ResNet和Inception Net):https://github.com/BVLC/caffe/wiki/Model-Zoo。

C. 为什么你会使用预训练模型?

使用预训练模型有很多原因。首先,在大数据集上训练大型模型需要大量昂贵的计算能力。其次,培训大型模型可能需要数周时间。使用预先训练的权重训练新模型可以加速收敛并有助于网络泛化。

D. 你会如何使用预训练模型?

当使用表III中所示的预训练权重时,我们需要考虑以下关于相应应用领域和数据集大小的标准。

表III. 需要考虑转移学习的标准。

E. 使用推理

专门研究推理应用程序的研究小组研究包括模型压缩在内的优化方法。模型压缩在移动设备或专用硬件领域非常重要,因为它使模型更节能,更快速。

F. 关于深度学习的神话

有一个神话; 您是否需要一百万个标记样本来训练深度学习模型? 答案是肯定的,但在大多数情况下,转移学习方法用于训练深度学习方法而不需要大量标签数据。例如:下面的图46详细说明了转移学习方法的策略。这里主要模型已经使用大量标记数据(ImageNet)进行训练,然后使用权重来训练PASCAL数据集。实际情况是:

■ 可以从未标记的数据中学习有用的表示。

■ 转移学习可以帮助从相关任务中学习表示[257]。

我们可以为不同的域采用已训练的网络,该网络可以适用于目标任务的任何其他域[258,589]。首先训练具有紧密域的网络,使用标准反向传播很容易获得标记数据,例如:ImageNet分类,来自增强数据的伪类。然后切割网络的顶层并用目标域的监督目标替换。最后,使用带有目标域标签的反向传播来调整网络,直到验证丢失开始增加[258,589]。有一些调研论文和书籍在迁移学习上发表[260,261]。迁移学习的自学式学习[262]。加速迁移学习的方法[263]。

10. 用于深度学习的能源高效方法和硬件

A. 概述

DNN已经成功应用,并在不同的应用领域实现了更好的识别精度,如计算机视觉,语音处理,自然语言处理,大数据问题等等。然而,大多数情况下,训练正在图形处理单元(GPU)上执行,以处理大量数据,这在功率方面是昂贵的。

最近,研究人员一直在用更深和更广的网络进行训练和测试,以达到更好的分类准确度,在某些情况下达到人类或超出人类水平的识别精度。虽然神经网络的大小正在增加,但它变得更强大并且提供更好的分类准确性。但是,存储消耗,存储器带宽和计算成本呈指数增长。另一方面,具有大量网络参数的这些类型的大规模实现不适用于低功率实现,无人机(UAV),不同医疗设备,诸如移动设备的低存储系统,现场可编程门阵列(FPGA) ) 等等。

有许多研究正在开发更好的网络结构或网络,计算成本更低,低功耗和低内存系统的参数数量更少,而不降低分类精度。 设计高效的深层网络结构有两种方法:

■ 第一种方法是通过有效的网络结构优化内部运算成本,

■ 第二种方法是设计具有低精度操作的网络或硬件高效的网络。

通过对卷积层使用低维卷积滤波器,可以减少网络结构的内部操作和参数。[260]。

这种方法有很多好处,首先是整改操作的卷积使得决策更具辨别力。其次,这种方法的主要好处是大大减少了计算参数的数量。例如:如果一个层具有5x5维滤波器,可以用两个3x3维滤波器替换(之间没有池化层),以便更好地进行特征学习;三个3x3维滤波器可用作7x7维滤波器的替代品等。使用低维滤波器的好处是假设当前卷积层都具有C通道,对于3x3滤波器的三个层,参数的总数是权重:3*(3*3*C*C)=27𝐶^2个权重,而在7x7滤波器,参数总数为(7*7*C*C)=49𝐶^2,与三个3x3滤波器参数相比几乎翻了一番。此外,在网络中以不同的间隔放置诸如卷积,池化,丢弃等层对整体分类准确性有影响。最近提出了一些优化网络架构的策略来设计有效的深度学习模型[89] [264]。根据论文[89],策略1:用1x1过滤器替换3x3过滤器。使用低维滤波器减少参数总数的主要原因。通过用1x1替换3x3滤波器可以减少9x参数的数量。

策略2:将输入通道的数量减少到3x3过滤器。对于层,计算输出特征映射的大小与使用(𝑁-𝐹) / 𝑆 + 1的网络参数相关,其中N是输入映射的大小,F是滤波器大小,S是步幅。为了减少参数的数量,减小滤波器的尺寸并不够,而且还需要控制输入通道的数量或特征维度。

策略3:在网络后期进行下采样,使得卷积层具有激活映射:当前卷积层的输出可以是至少1x1或通常大于1x1。输出宽度和高度可以通过一些标准来控制:(1)输入样本的大小(例如256x256)和(2)选择后置样本层。最常见的池化层是使用平均或最大池化层,有一个带卷积的替代子采样层(3x3滤波器),步长为2。如果大多数早期层具有更大的步幅,那么大多数层将具有少量的激活映射。另一方面,如果大多数层的步幅为1,并且网络末端应用大于1的步幅,那么许多网络层将具有大的激活映射。一个直觉是越大的激活映射(由于延迟下采样)会得到越高的分类精度[89]。这种直觉已被K.He和H.Sun研究,将延迟下采样应用于四种不同的CNN结构,并且观察到每种情况延迟下采样导致更高的分类精度[265]。

B. 二元连接(BC)或三元连接(TC)神经网络

采用低精度乘法,以及通过丢弃连接很少地进行乘法可以大大降低计算成本[266,267]。这些论文还介绍了二元连接神经网络(BNN)三元连接神经网络(TNN)。通常,实值权重与实值激活(在前向传播中)的相乘和梯度计算(在后向传播中)是深度神经网络的主要操作。二元连接(BNN)是通过将前向传播中使用的权重转换为二进制来消除乘法运算的技术,即限制至仅两个值(0和1或-1和1)。结果,乘法运算可以通过简单的加法(和减法)来执行,并使训练过程更快。有两种方法可以将实际值转换为相应的二进制值,例如确定性和随机性。在确定性技术的情况下,直接阈值技术应用于权重。另一种方法是随机方法,其中基于概率将矩阵转换为二进制,其中使用“hard sigmoid”函数,因为它在计算上是便宜的。实验结果显示出非常好的识别准确度[268,269,270]。BNN有以下几个优点:

■ 据观察,GPU上的二进制乘法几乎比GPU上传统矩阵乘法快七倍

■ 在正向传递中,BNN大大减少了存储器大小和访问,并且通过逐位操作取代了大多数算术运算,从而大大提高了功效

■ 二进制内核可用于CNN,可降低约60%的专用硬件复杂性。

■ 还观察到,与算术运算相比,存储器访问通常消耗更多能量,并且存储器访问成本随着存储器大小而增加。 BNN在两个方面都是有益的。

在过去几年中已经提出了一些其他技术[271,272,273]。已经针对具有XNOR操作的CNN提出了另一种节能且硬件友好的网络结构。在基于XNOR的CNN实现中,滤波器和卷积层的输入都是二进制的。这导致卷积运算速度提高了58倍,节省了32倍的内存。在同一篇论文中,提出了Binary-Weight-Networks,节省了大约32倍的内存。这使得在CPU上实现最先进的网络以实现实时使用而不是GPU成为可能。这些网络在ImageNet数据集上进行测试,与全精度AlexNet(前1%测量)相比,分类精度仅提高2.9%。该网络需要更少的功率和计算时间。这可以使对于专门硬件执行加速深度神经网络的训练过程成为可能[274]。针对不同的RNN方法提出了有效的量化方法,包括具有BC,TC和四元连接(QC)网络的ConvLSTM [299]。2016年,首次提出了用于神经形态系统节能深度神经网络(EEDN)架构。此外,他们还发布了一个名为EEDN的深度学习框架,该框架几乎可以提供除了ImageNet数据集之外流行基准测试最先进精度的精确度[275,276]。最近,一篇关于深度vs广度CNN的论文在IBM的TrueNorth系统上发表[298]。

11. 用于深度学习的硬件

随着DL方法的算法开发,在过去几年中已经提出了许多硬件架构。关于深度学习硬件的当前趋势的细节最近已经发表[277]。麻省理工学院提出“Eyeriss”作为深度卷积神经网络(DCNN)的硬件[278]。还有另一种称为“Dadiannao”的机器学习架构[279]。2016年,斯坦福大学发布了一种用于推理的高效硬件,称为高效推理机(EIE)[281]。谷歌开发了一种名为Tensor Processing Unit(TPU)的硬件用于深度学习,并于2017年发布[280]。IBM于2015年发布了名为“TrueNorth”的神经形态系统[275]。

深度学习方法不仅限于HPC平台,已经开发了许多在移动设备上运行的应用程序。移动平台提供与用户日常活动相关的数据,通过使用收集的数据重新训练系统,可以使移动系统更加高效和健壮。正在进行一些研究以开发用于DL的硬件友好算法[282,283,284]。

12. 框架和SDK

大多数时候,人们使用不同的深度学习框架和标准开发套件(SDK)来实现深度学习方法,如下所示:

A. 框架

■ Tensorflow : https://www.tensorflow.org/

■ Caffe : http://caffe.berkeleyvision.org/

■ KERAS : https://keras.io/

■ Theano : http://deeplearning.net/software/theano/

■ Torch : http://torch.ch/

■ PyTorch : http://pytorch.org/

■ Lasagne : https://lasagne.readthedocs.io/en/latest/

■ DL4J ( DeepLearning4J) : https://deeplearning4j.org/

■ Chainer : http://chainer.org/

■ DIGITS : https://developer.nvidia.com/digits

■ CNTK (Microsoft): https://github.com/Microsoft/CNTK

■ MatConvNet : http://www.vlfeat.org/matconvnet/

■ MINERVA : https://github.com/dmlc/minerva

■ MXNET : https://github.com/dmlc/mxnet

■ OpenDeep : http://www.opendeep.org/

■ PuRine : https://github.com/purine/purine2

■ PyLerarn2: http://deeplearning.net/software/pylearn2/

■ TensorLayer:https://github.com/zsdonghao/tensorlayer

■ LBANN : https://github.com/LLNL/lbann

B. SDK

■ cuDNN : https://developer.nvidia.com/cudnn

■ TensorRT : https://developer.nvidia.com/tensorrt

■ DeepStreamSDK: https://developer.nvidia.com/deepstream-sdk

■ cuBLAS : https://developer.nvidia.com/cublas

■ cuSPARSE : http://docs.nvidia.com/cuda/cusparse/

■ NCCL: https://devblogs.nvidia.com/parallelforall/fast-multigpu-collectives-nccl/

13. 基准数据库

以下是经常用于评估不同应用领域深度学习方法的基准数据集列表:

A. 图像分类或检测或分割

数据集列表用于图像处理和计算机视觉领域:

■ MNIST : http://yann.lecun.com/exdb/mnist/

■ CIFAR 10/100: https://www.cs.toronto.edu/~kriz/cifar.html

■ SVHN/ SVHN2: http://ufldl.stanford.edu/housenumbers/

■ CalTech 101/256: http://www.vision.caltech.edu/Image_Datasets/Caltech101/

■ STL-10 : https://cs.stanford.edu/~acoates/stl10/

■ NORB : http://www.cs.nyu.edu/~ylclab/data/norbv1.0/

■ SUN-dataset: http://groups.csail.mit.edu/vision/SUN/

■ ImageNet : http://www.image-net.org/

■ National Data Science Bowl Competition: http://www.datasciencebowl.com/

■ COIL 20/100: http://www.cs.columbia.edu/CAVE/software/softlib/coil20.php

                          http://www.cs.columbia.edu/CAVE/software/softlib/coil-100.php

■ MS COCO DATASET: http://mscoco.org/

■ MIT-67 scene dataset: http://web.mit.edu/torralba/www/indoor.html

■ Caltech-UCSD Birds-200 dataset: http://www.vision.caltech.edu/visipedia/CUB-200-2011.html

■ Pascal VOC 2007 dataset: http://host.robots.ox.ac.uk/pascal/VOC/voc2007/

■ H3D Human Attributes dataset : https://www2.eecs.berkeley.edu/Research/Projects/CS/vision/shape/poselets/

■ Face recognition dataset: http://viswww.cs.umass.edu/lfw/

■ For more data-set visit : https://www.kaggle.com/

■ http://homepages.inf.ed.ac.uk/rbf/CVonline/Imagedbase.htm

■ Recently Introduced Datasets in Sept. 2016:

■ Google Open Images (~9M images) – https://github.com/openimages/dataset

■ Youtube-8M (8M videos): https://research.google.com/youtube8m/

B. 文本分类

■ Reuters-21578 Text Categorization Collection : http://kdd.ics.uci.edu/databases/reuters21578/reuters21578.html

■ Sentiment analysis from Stanford : http://ai.stanford.edu/~amaas/data/sentiment/

■ Movie sentiment analysis from cornel : http://www.cs.cornell.edu/people/pabo/moviereview-data/

C. 语言建模

■ free eBooks: https://www.gutenberg.org/

■ Brown and stanford corpus on present americal english: https://en.wikipedia.org/wiki/Brown_Corpus

■ Google 1Billion word corpus: https://github.com/ciprian-chelba/1-billion-wordlanguage-modeling-benchmark

D. 图像字幕

■ Flickr 8k: http://nlp.cs.illinois.edu/HockenmaierGroup/8kpictures.html

■ Flickr 30k :

■ Common Objects in Context (COCO) : http://cocodataset.org/#overview

■ http://sidgan.me/technical/2016/01/09/ExploringDatasets

E. 机器翻译

■ Pairs of sentences in English and French: https://www.isi.edu/naturallanguage/download/hansard/

■ European Parliament Proceedings parallel Corpus 196-2011 : http://www.statmt.org/europarl/

■ The statistics for machine translation: http://www.statmt.org/

F. 问题回答

Stanford Question Answering Dataset (SQuAD): https://rajpurkar.github.io/SQuAD-explorer/

Dataset from DeepMind : https://github.com/deepmind/rc-data

Amazon dataset: http://jmcauley.ucsd.edu/data/amazon/qa/

http://trec.nist.gov/data/qamain...

http://www.ark.cs.cmu.edu/QA-data/

http://webscope.sandbox.yahoo.co...

http://blog.stackoverflow.com/20..

G. 语音识别

TIMIT : https://catalog.ldc.upenn.edu/LDC93S1

Voxforge: http://voxforge.org/

Open Speech and Language Resources: http://www.openslr.org/12/

H. 文件摘要

https://archive.ics.uci.edu/ml/datasets/Legal+Case+Reports

http://wwwnlpir.nist.gov/related_projects/tipster_summac/cmp_lg.html

https://catalog.ldc.upenn.edu/LDC2002T31

I. 情绪分析

IMDB dataset: http://www.imdb.com/

14. 期刊和会议

A. 会议

Neural Information Processing System (NIPS)

International Conference on Learning Representation (ICLR): What are you doing for Deep Learning?

International Conference on Machine Learning(ICML)

Computer Vision and Pattern Recognition (CVPR): What are you doing with Deep Learning?

International Conference on Computer Vision (ICCV)

European Conference on Computer Vision (ECCV)

British Machine Vision Conference (BMVC)

B. 期刊

Journal of Machine Learning Research (JMLR)

IEEE Transaction of Neural Network and Learning System

IEEE Transactions on Pattern Analysis and Machine Intelligence (TPAMI)

Computer Vision and Image Understanding (CVIU)

Pattern Recognition Letter

Neural Computing and Application

C. 深度学习教程

http://deeplearning.net/tutorial/

http://deeplearning.stanford.edu/tutorial/

http://deeplearning.net/tutorial/deeplearning.pdf

Courses on Reinforcement Learning: http://rll.berkeley.edu/deeprlcourse/

D. 深度学习书籍

https://github.com/HFTrader/DeepLearningBook

  https://github.com/janishar/mit-deep-learning-book-pdf

http://www.deeplearningbook.org/

15. 总结和未来的工作

在本报告中,我们讨论了深度学习方法的革命及其在过去几年中的应用。我们在不同类别的学习方法中审查了不同的最先进的深度学习模型,包括监督,非监督和强化学习(RL)及其在不同领域的应用。此外,我们已经详细解释了不同的有监督的深度学习技术,包括DNN,CNN和RNN。我们还审查了非监督深度学习技术,包括AE,RBM和GAN。在同一部分中,我们已经考虑并解释了基于LSTM和RL提出的无监督学习技术。在第8节中,我们使用称为QLearning的基本学习技术介绍了深度强化学习(DRL)的调查。此外,我们还开展了一项关于节能深度学习方法,DL传输学习以及DL硬件开发趋势的调查。此外,我们还讨论了一些DL框架和基准数据集,这些数据集通常用于深度学习方法的实施和评估。最后,我们已经收录了相关的期刊和会议,其中DL社区已经发布了他们有价值的研究文章。

参考文献

[1] Jump, Schmidhuber, J. (2015). "Deep Learning in Neural Networks: An Overview". Neural Networks. 61: 85–117.

[2] Bengio, Yoshua; LeCun, Yann; Hinton, Geoffrey (2015). "Deep Learning". Nature. 521: 436–444. doi:10.1038/nature14539.

[3] Bengio, Y.; Courville, A.; Vincent, P. (2013). "Representation Learning: A Review and New Perspectives". IEEE Transactions on Pattern Analysis and Machine Intelligence. 35 (8): 1798–1828

[4] Bengio, Yoshua. "Learning deep architectures for AI." Foundations and trends® in Machine Learning 2.1 (2009): 1-127.

[5] Mnih, Volodymyr, et al. "Human-level control through deep reinforcement learning." Nature 518.7540 (2015): 529-533.

[6] Mnih, Volodymyr, et al. "Playing Atari with deep reinforcement learning." arXiv preprint arXiv:1312.5602 (2013).

[7] Krizhevsky, A., Sutskever, I., and Hinton, G. E. ImageNet classification with deep convolutional neural networks. In NIPS, pp. 1106–1114, 2012.

[8] Zeiler, M. D. and Fergus, R. Visualizing and understanding convolutional networks. CoRR, abs/1311.2901, 2013. Published in Proc. ECCV, 2014.

[9] Simonyan, Karen, and Andrew Zisserman. " deep convolutional networks for large-scale image recognition." arXiv preprint arXiv:1409.1556(2014).

[10] Szegedy, Christian, et al. "Going deeper with convolutions." Proceedings of the IEEE conference on computer vision and pattern recognition. 2015.

[11] He, Kaiming, et al. "Deep residual learning for image recognition." Proceedings of the IEEE conference on computer vision and pattern recognition. 2016.

[12] Canziani, Alfredo, Adam Paszke, and Eugenio Culurciello. "An analysis of deep neural network models for practical applications." arXiv preprint arXiv:1605.07678 (2016).

[13] G. Zweig, “Classification and recognition with direct segment models,” in Proc. ICASSP. IEEE, 2012, pp. 4161– 4164.

[14] Y. He and E. Fosler-Lussier, “Efficient segmental conditional random fields for phone recognition,” in Proc. INTERSPEECH, 2012, pp. 1898–1901.

[15] O. Abdel-Hamid, L. Deng, D. Yu, and H. Jiang, “Deep segmental neural networks for speech recognition.” in Proc. INTERSPEECH, 2013, pp.1849–1853.

[16] H. Tang, W. Wang, K. Gimpel, and K. Livescu, “Discriminative segmental cascades for feature-rich phone recognition,” in Proc. ASRU, 2015.

[17] Song, William, and Jim Cai. "End-to-end deep neural network for automatic speech recognition." (2015): 1. (Errors: 21.1)

[18] Deng, Li, Ossama Abdel-Hamid, and Dong Yu. "A deep convolutional neural network using heterogeneous pooling for trading acoustic invariance with phonetic confusion." Acoustics, Speech and Signal Processing (ICASSP), 2013 IEEE International Conference on. IEEE, 2013.

[19] Graves, A.-R. Mohamed, and G. Hinton, “Speech recognition with deep recurrent neural networks,” in Proc. ICASSP. IEEE, 2013, pp. 6645–6649.

[20] Zhang, Ying, et al. "Towards end-to-end speech recognition with deep convolutional neural networks." arXiv preprint arXiv:1701.02720 (2017).

[21] Deng, Li, and John Platt. "Ensemble deep learning for speech recognition." (2014).

[22] J. K. Chorowski, D. Bahdanau, D. Serdyuk, K. Cho, and Y. Bengio, “Attention-based models for speech recognition,” in Advances in Neural Information Processing Systems, 2015, pp. 577–585.

[23] Lu, Liang, et al. "Segmental recurrent neural networks for end-to-end speech recognition." arXiv preprint arXiv:1603.00223 (2016).

[24] Van Essen, Brian, et al. "LBANN: Livermore big artificial neural network HPC toolkit." Proceedings of the Workshop on Machine Learning in High-Performance Computing Environments. ACM, 2015.

[25] Chen, Xue-Wen, and Xiaotong Lin . “Big Data Deep Learning: Challenges and Perspectives” IEEE Access in date of publication May 16, 2014.

[26] Zhou, Zhi-Hua, et al. "Big data opportunities and challenges: Discussions from data analytics perspectives [discussion forum]." IEEE Computational Intelligence Magazine 9.4 (2014): 62-74.

[27] Najafabadi, Maryam M., et al. "Deep learning applications and challenges in big data analytics." Journal of Big Data 2.1 (2015): 1.

[28] Goodfellow, Ian, et al. "Generative adversarial nets." Advances in neural information processing systems. 2014.

[29] Kaiser, Lukasz, et al. "One Model To Learn Them All." arXiv preprint arXiv:1706.05137 (2017).

[30] Collobert, Ronan, and Jason Weston. "A unified architecture for natural language processing: Deep neural networks with multitask learning." Proceedings of the 25th international conference on Machine learning. ACM, 2008.

[31] Johnson, Melvin, et al. "Google's multilingual neural machine translation system: enabling zero-shot translation." arXiv preprint arXiv:1611.04558 (2016).

[32] Argyriou, Andreas, Theodoros Evgeniou, and Massimiliano Pontil. "Multi-task feature learning." Advances in neural information processing systems. 2007.

[33] Singh, Karamjit, et al. "Deep Convolutional Neural Networks for Pairwise Causality." arXiv preprint arXiv:1701.00597 (2017).

[34] Yu, Haonan, et al. "Video paragraph captioning using hierarchical recurrent neural networks." Proceedings of the IEEE conference on computer vision and pattern recognition. 2016.

[35] Kim, Taeksoo, et al. "Learning to discover cross-domain relations with generative adversarial networks." arXiv preprint arXiv:1703.05192 (2017).

[36] Reed, Scott, et al. "Generative adversarial text to image synthesis." arXiv preprint arXiv:1605.05396 (2016).

[37] Deng, Li, and Dong Yu. "Deep learning: methods and applications." Foundations and Trends® in Signal Processing 7.3–4 (2014): 197-387.

[38] Gu, Jiuxiang, et al. "Recent advances in convolutional neural networks." arXiv preprint arXiv:1512.07108 (2015).

[39] Sze, Vivienne, et al. "Efficient processing of deep neural networks: A tutorial and survey." arXiv preprint arXiv:1703.09039 (2017).

[40] Li, Yuxi. "Deep reinforcement learning: An overview." arXiv preprint arXiv:1701.07274 (2017).

[41] Kober, Jens, J. Andrew Bagnell, and Jan Peters. "Reinforcement learning in robotics: A survey." The International Journal of Robotics Research 32.11 (2013): 1238-1274.

[42] Pan, Sinno Jialin, and Qiang Yang. "A survey on transfer learning." IEEE Transactions on knowledge and data engineering22.10 (2010): 1345-1359.

[43] Schuman, Catherine D., et al. "A Survey of Neuromorphic Computing and Neural Networks in Hardware." arXiv preprint arXiv:1705.06963 (2017).

[44] McCulloch, Warren S., and Walter Pitts. "A logical calculus of the ideas immanent in nervous activity." The bulletin of mathematical biophysics 5.4 (1943): 115-133.

[45] Rosenblatt, Frank. "The perceptron: A probabilistic model for information storage and organization in the brain." Psychological review 65.6 (1958):386.

[46] Minsky, Marvin, and Seymour Papert. "Perceptrons." (1969).

[47] Ackley, David H., Geoffrey E. Hinton, and Terrence J. Sejnowski. "A learning algorithm for Boltzmann machines." Cognitive science 9.1(1985): 147-169.

[48] Fukushima, Kunihiko. "Neocognitron: A hierarchical neural network capable of visual pattern recognition." Neural networks 1.2 (1988): 119-130.

[49] LeCun, Yann, et al. "Gradient-based learning applied to document recognition." Proceedings of the IEEE 86.11 (1998): 2278-2324.

[50] Hinton, Geoffrey E., Simon Osindero, and Yee-Whye Teh. "A fast learning algorithm for deep belief nets." Neural computation 18.7 (2006): 1527-1554.

[51] Hinton, Geoffrey E., and Ruslan R. Salakhutdinov. "Reducing the dimensionality of data with neural networks." science 313.5786 (2006): 504-507.

[52] Bottou, Léon. "Stochastic gradient descent tricks." Neural networks: Tricks of the trade. Springer Berlin Heidelberg, 2012. 421-436.

[53] Rumelhart, David E., Geoffrey E. Hinton, and Ronald J. Williams. "Learning representations by back-propagating errors." Cognitive modeling 5.3 (1988): 1.

[54] Sutskever, Ilya, et al. "On the importance of initialization and momentum in deep learning." International conference on machine learning. 2013.

[55] Yoshua Bengio, Pascal Lamblin, Dan Popovici and Hugo Larochelle, Greedy Layer-Wise Training of Deep Network, in J. Platt et al. (Eds), Advances in Neural Information Processing Systems 19 (NIPS 2006), pp.153-160, MIT Press, 2007

[56] Erhan, Dumitru, et al. "The difficulty of training deep architectures and the effect of unsupervised pre-training." Artificial Intelligence and Statistics. 2009.

[57] Mohamed, Abdel-rahman, George E. Dahl, and Geoffrey Hinton. “Acoustic modeling using deep belief networks,”Audio, Speech, and Language Processing, IEEE Transactions on 20.1 (2012): 14-22

[58] V. Nair and G. Hinton, Rectified linear units improve restricted boltzmann machines. Proceedings of the 27th International Conference on Machine Learning (ICML-10). 2010.

[59] P. Vincent, H. Larochelle, Y. Bengio, and P.-A. Manzagol, “Extracting and composing robust features with denoising autoencoders,” Proceedings of the Twenty-fifth International Conference on Machine Learning, pp. 1096–1103, 2008.

[60] Lin, Min, Qiang Chen, and Shuicheng Yan. "Network in network." arXiv preprint arXiv:1312.4400 (2013).

[61] Springenberg, Jost Tobias, et al. "Striving for simplicity: The all convolutional net." arXiv preprint arXiv:1412.6806 (2014).

[62] Huang, Gao, et al. "Densely connected convolutional networks." arXiv preprint arXiv:1608.06993 (2016).

[63] Larsson, Gustav, Michael Maire, and Gregory Shakhnarovich. "FractalNet: Ultra-Deep Neural Networks without Residuals." arXiv preprint arXiv:1605.07648 (2016).

[64] Szegedy, Christian, Sergey Ioffe, and Vincent Vanhoucke. "Inception-v4, inception-resnet and the impact of residual connections on learning." arXiv preprint arXiv:1602.07261 (2016).

[65] Szegedy, Christian, et al. "Rethinking the inception architecture for computer vision." arXiv preprint arXiv:1512.00567 (2015).

[66] Zagoruyko, Sergey, and Nikos Komodakis. "Wide Residual Networks." arXiv preprint arXiv:1605.07146 (2016).

[67] Xie, S., Girshick, R., Dollár, P., Tu, Z., & He, K. (2016). Aggregated residual transformations for deep neural networks. arXiv preprint arXiv:1611.05431

[68] Veit, Andreas, Michael J. Wilber, and Serge Belongie. "Residual networks behave like ensembles of relatively shallow networks." Advances in Neural Information Processing Systems. 2016.

[69] Abdi, Masoud, and Saeid Nahavandi. "Multi-Residual Networks: Improving the Speed and Accuracy of Residual Networks." arXiv preprint arXiv:1609.05672 (2016).

[70] Zhang, Xingcheng, et al. "Polynet: A pursuit of structural diversity in deep networks." arXiv preprint arXiv:1611.05725 (2016).

[71] Ren, Shaoqing, et al. "Faster R-CNN: Towards real-time object detection with region proposal networks." Advances in neural information processing systems. 2015.

[72] Chollet, François. "Xception: Deep Learning with Depthwise Separable Convolutions." arXiv preprint arXiv:1610.02357 (2016).

[73] Liang, Ming, and Xiaolin Hu. "Recurrent convolutional neural network for object recognition." Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. 2015.

[74] Alom, Md Zahangir, et al. "Inception Recurrent Convolutional Neural Network for Object Recognition." arXiv preprint arXiv:1704.07709 (2017).

[75] Li, Yikang, et al. "ViP-CNN: Visual Phrase Guided Convolutional Neural Network."

[76] Bagherinezhad, Hessam, Mohammad Rastegari, and Ali Farhadi. "LCNN: Lookup-based Convolutional Neural Network." arXiv preprint arXiv:1611.06473 (2016).

[77] Long, Jonathan, Evan Shelhamer, and Trevor Darrell. "Fully convolutional networks for semantic segmentation." Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. 2015.

[78] Bansal, Aayush, et al. "Pixelnet: Representation of the pixels, by the pixels, and for the pixels." arXiv preprint arXiv:1702.06506(2017).

[79] Huang, Gao, et al. "Deep networks with stochastic depth." arXiv preprint arXiv:1603.09382 (2016).

[80] Lee, Chen-Yu, et al. "Deeply-Supervised Nets." AISTATS. Vol. 2. No. 3. 2015.

[81] Pezeshki, Mohammad, et al. "Deconstructing the ladder network architecture." arXiv preprint arXiv:1511.06430 (2015).

[82] Ba, Jimmy, and Rich Caruana. "Do deep nets really need to be deep?." Advances in neural information processing systems. 2014.

[83] Urban, Gregor, et al. "Do deep convolutional nets really need to be deep and convolutional?." stat 1050 (2016): 4.

[84] Romero, Adriana, et al. "Fitnets: Hints for thin deep nets." arXiv preprint arXiv:1412.6550 (2014).

[85] Mishkin, Dmytro, and Jiri Matas. "All you need is a good init." arXiv preprint arXiv:1511.06422 (2015).

[86] Pandey, Gaurav, and Ambedkar Dukkipati. "To go deep or wide in learning?." AISTATS. 2014.

[87] Ratner, Alexander, et al. "Data Programming: Creating Large Training Sets, Quickly." arXiv preprint arXiv:1605.07723 (2016).

[88] Aberger, Christopher R., et al. "Empty-Headed: A Relational Engine for Graph Processing." arXiv preprint arXiv:1503.02368 (2015).

[89] Iandola, Forrest N., et al. "SqueezeNet: AlexNet-level accuracy with 50x fewer parameters and< 1MB model size." arXiv preprint arXiv:1602.07360 (2016).

[90] Han, Song, Huizi Mao, and William J. Dally. "Deep compression: Compressing deep neural network with pruning, trained quantization and huffman coding." CoRR, abs/1510.00149 2 (2015).

[91] Niepert, Mathias, Mohamed Ahmed, and Konstantin Kutzkov. "Learning Convolutional Neural Networks for Graphs." arXiv preprint arXiv:1605.05273 (2016).

[92] https://github.com/kjw0612/awesome-deep-vision

[93] Jia, Xiaoyi, et al. "Single Image Super-Resolution Using Multi-Scale Convolutional Neural Network." arXiv preprint arXiv:1705.05084 (2017).

[94] Ahn, Byeongyong, and Nam Ik Cho. "Block-Matching Convolutional Neural Network for Image Denoising." arXiv preprint arXiv:1704.00524 (2017).

[95] Ma, Shuang, Jing Liu, and Chang Wen Chen. "A-Lamp: Adaptive LayoutAware Multi-Patch Deep Convolutional Neural Network for Photo Aesthetic Assessment." arXiv preprint arXiv:1704.00248(2017).

[96] Cao, Xiangyong, et al. "Hyperspectral Image Segmentation with Markov Random Fields and a Convolutional Neural Network." arXiv preprint arXiv:1705.00727 (2017).

[97] de Vos, Bob D., et al. "End-to-End Unsupervised Deformable Image Registration with a Convolutional Neural Network." arXiv preprint arXiv:1704.06065 (2017).

[98] Wang, Xin, et al. "Multimodal Transfer: A Hierarchical Deep  Convolutional Neural Network for Fast Artistic Style Transfer." arXiv preprint arXiv:1612.01895 (2016).

[99] Babaee, Mohammadreza, Duc Tung Dinh, and Gerhard Rigoll. "A deep convolutional neural network for background subtraction." arXiv preprint arXiv:1702.01731 (2017).

[100]Hou, Jen-Cheng, et al. "Audio-Visual Speech Enhancement based on Multimodal Deep Convolutional Neural Network." arXiv preprint arXiv:1703.10893 (2017).

[101]Xu, Yong, et al. "Convolutional gated recurrent neural network incorporating spatial features for audio tagging." arXiv preprint arXiv:1702.07787 (2017).

[102]Litjens, Geert, et al. "A survey on deep learning in medical image analysis." arXiv preprint arXiv:1702.05747 (2017).

[103]Zhang, Zizhao, et al. "MDNet: a semantically and visually interpretable medical image diagnosis network." arXiv preprint arXiv:1707.02485 (2017).

[104]Tran, Phi Vu. "A fully convolutional neural network for cardiac segmentation in short-axis MRI." arXiv preprint arXiv:1604.00494(2016).

[105]Tan, Jen Hong, et al. "Segmentation of optic disc, fovea and retinal vasculature using a single convolutional neural network." Journal of Computational Science 20 (2017): 70-79.

[106]Moeskops, Pim, et al. "Automatic segmentation of MR brain images with a convolutional neural network." IEEE transactions on medical imaging 35.5 (2016): 1252-1261.

[107]LeCun, Y., L. Bottou, and G. Orr. "Efficient BackProp in Neural Networks: Tricks of the Trade (Orr, G. and Müller, K., eds.)." Lecture Notes in Computer Science 1524.

[108]Glorot, Xavier, and Yoshua Bengio. "Understanding the difficulty of training deep feedforward neural networks." International conference on artificial intelligence and statistics. 2010.

[109]He, Kaiming, et al. "Delving deep into rectifiers: Surpassing human-level performance on imagenet classification." Proceedings of the IEEE international conference on computer vision. 2015.

[110]Ioffe, Sergey, and Christian Szegedy. "Batch normalization: Accelerating deep network training by reducing internal covariate shift." International Conference on Machine Learning. 2015.

[111]Laurent, César, et al. "Batch normalized recurrent neural networks." Acoustics, Speech and Signal Processing (ICASSP), 2016 IEEE International Conference on. IEEE, 2016.

[112] Lavin, Andrew. "Fast algorithms for convolutional neural networks." arXiv preprint arXiv , ICLR 2016

[113]Clevert, Djork-Arné, Thomas Unterthiner, and Sepp Hochreiter. "Fast and accurate deep network learning by exponential linear units (elus)." arXiv preprint arXiv:1511.07289 (2015).

[114]Li, Yang, et al. "Improving Deep Neural Network with Multiple Parametric Exponential Linear Units." arXiv preprint arXiv:1606.00305 (2016).

[115]Jin, Xiaojie, et al. "Deep Learning with S-shaped Rectified Linear Activation Units." arXiv preprint arXiv:1512.07030 (2015).

[116]Xu, Bing, et al. "Empirical evaluation of rectified activations in convolutional network." arXiv preprint arXiv:1505.00853 (2015)

[117]He, Kaiming, et al. "Spatial pyramid pooling in deep convolutional networks for visual recognition." European Conference on Computer Vision. Springer, Cham, 2014.

[118]Yoo, Donggeun, et al. "Multi-scale pyramid pooling for deep convolutional representation." Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition Workshops. 2015.

[119]Graham, Benjamin. "Fractional max-pooling." arXiv preprint arXiv:1412.6071 (2014).

[120]Lee, Chen-Yu, Patrick W. Gallagher, and Zhuowen Tu. "Generalizing pooling functions in convolutional neural networks: Mixed, gated, and tree." International Conference on Artificial Intelligence and Statistics. 2016.

[121]Hinton, Geoffrey E., et al. "Improving neural networks by preventing coadaptation of feature detectors." arXiv preprint arXiv:1207.0580 (2012).

[122]Srivastava, Nitish, et al. "Dropout: a simple way to prevent neural networks from overfitting." Journal of Machine Learning Research 15.1(2014): 1929-1958.

[123]Wan, Li, et al. "Regularization of neural networks using dropconnect." Proceedings of the 30th International Conference on Machine Learning (ICML-13). 2013.

[124]Bulò, Samuel Rota, Lorenzo Porzi, and Peter Kontschieder. "Dropout distillation." Proceedings of The 33rd International Conference on Machine Learning. 2016.

[125]Ruder, Sebastian. "An overview of gradient descent optimization algorithms." arXiv preprint arXiv:1609.04747 (2016).

[126]Ngiam, Jiquan, et al. "On optimization methods for deep learning." Proceedings of the 28th International Conference on Machine Learning (ICML-11). 2011.

[127]Koushik, Jayanth, and Hiroaki Hayashi. "Improving Stochastic Gradient Descent with Feedback." arXiv preprint arXiv:1611.01505 (2016). (ICLR-2017)

[128]Sathasivam, Saratha, and Wan Ahmad Tajuddin Wan Abdullah. "Logic learning in Hopfield networks." arXiv preprint arXiv:0804.4075 (2008).

[129]Elman, Jeffrey L. "Finding structure in time." Cognitive science14.2 (1990): 179-211.

[130]Jordan, Michael I. "Serial order: A parallel distributed processing approach." Advances in psychology 121 (1997): 471-495.

[131]S. Hochreiter, Y. Bengio, P. Frasconi, and J. Schmidhuber. Gradient flow in recurrent nets: the difficulty of learning long-term dependencies. In S. C. Kremer and J. F. Kolen, editors, A Field Guide to Dynamical Recurrent Neural Networks. IEEE Press, 2001.

[132]Schmidhuber, Jürgen . Habilitation thesis: System modeling and optimization in 1993. Page 150 ff demonstrates credit assignment across the equivalent of 1,200 layers in an unfolded RNN

[133]Gers, Felix A., and Jürgen Schmidhuber. "Recurrent nets that time and count." Neural Networks, 2000. IJCNN 2000, Proceedings of the IEEEINNS-ENNS International Joint Conference on. Vol. 3. IEEE, 2000.

[134]Gers, Felix A., Nicol N. Schraudolph, and Jürgen Schmidhuber. "Learning precise timing with LSTM recurrent networks." Journal of machine learning research 3.Aug (2002): 115-143.

[135]Mikolov, Tomas, et al. "Recurrent neural network based language model." Interspeech. Vol. 2. 2010.

[136]Chung, Junyoung, et al. "Empirical evaluation of gated recurrent neural networks on sequence modeling." arXiv preprint arXiv:1412.3555 (2014).

[137]Jozefowicz, Rafal, Wojciech Zaremba, and Ilya Sutskever. "An empirical exploration of recurrent network architectures." Proceedings of the 32nd International Conference on Machine Learning (ICML-15). 2015.

[138]Yao, Kaisheng, et al. "Depth-gated LSTM." arXiv preprint arXiv:1508.03790(2015).

[139]Koutnik, Jan, et al. "A clockwork rnn." International Conference on Machine Learning. 2014.

[140]Greff, Klaus, et al. "LSTM: A search space odyssey." IEEE transactions on neural networks and learning systems (2016).

[141]Karpathy, Andrej, and Li Fei-Fei. "Deep visual-semantic alignments for generating image descriptions." Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. 2015.

[142]Xingjian, S. H. I., et al. "Convolutional LSTM network: A machine learning approach for precipitation nowcasting." Advances in neural information processing systems. 2015.

[143]Mikolov, Tomas, et al. "Efficient estimation of word representations in vector space." arXiv preprint arXiv:1301.3781 (2013).

[144]Goldberg, Yoav, and Omer Levy. "word2vec Explained: deriving Mikolov et al.'s negative-sampling word-embedding method." arXiv preprint arXiv:1402.3722 (2014).

[145]Xu, Kelvin, et al. "Show, attend and tell: Neural image caption generation with visual a attention." International Conference on Machine Learning. 2015.

[146]Qin, Yao, et al. "A Dual-Stage Attention-Based Recurrent Neural Network for Time Series Prediction." arXiv preprint arXiv:1704.02971 (2017).

[147]Xiong, Caiming, Stephen Merity, and Richard Socher. "Dynamic memory networks for visual and textual question answering." International Conference on Machine Learning. 2016.

[148]Oord, Aaron van den, Nal Kalchbrenner, and Koray Kavukcuoglu. "Pixel recurrent neural networks." arXiv preprint arXiv:1601.06759(2016).

[149]Xue, Wufeng, et al. "Direct Estimation of Regional Wall Thicknesses via Residual Recurrent Neural Network." International Conference on Information Processing in Medical Imaging. Springer, Cham, 2017.

[150]Tjandra, Andros, et al. "Gated Recurrent Neural Tensor Network." Neural Networks (IJCNN), 2016 International Joint Conference on. IEEE, 2016.

[151]Wang, Shuohang, and Jing Jiang. "Learning natural language inference with LSTM." arXiv preprint arXiv:1512.08849 (2015).

[152]Sutskever, Ilya, Oriol Vinyals, and Quoc VV Le. “Sequence to sequence learning with neural networks.” Advances in Neural Information Processing Systems. 2014.

[153]Lakhani, Vrishabh Ajay, and Rohan Mahadev. "Multi-Language Identification Using Convolutional Recurrent Neural Network." arXiv preprint arXiv:1611.04010 (2016).

[154]Längkvist, Martin, Lars Karlsson, and Amy Loutfi. "A review of unsupervised feature learning and deep learning for time-series modeling." Pattern Recognition Letters 42 (2014): 11-24.

[155]Malhotra, Pankaj, et al. "TimeNet: Pre-trained deep recurrent neural network for time series classification." arXiv preprint arXiv:1706.08838 (2017).

[156]Soltau, Hagen, Hank Liao, and Hasim Sak. "Neural speech recognizer: Acoustic-to-word LSTM model for large vocabulary speech recognition." arXiv preprint arXiv:1610.09975 (2016).

[157]Sak, Haşim, Andrew Senior, and Françoise Beaufays. "Long short-term memory recurrent neural network architectures for large scale acoustic modeling." Fifteenth Annual Conference of the International Speech Communication Association. 2014.

[158]Adavanne, Sharath, Pasi Pertilä, and Tuomas Virtanen. "Sound event detection using spatial features and convolutional recurrent neural network." arXiv preprint arXiv:1706.02291 (2017).

[159]Chien, Jen-Tzung, and Alim Misbullah. "Deep long short-term memory networks for speech recognition." Chinese Spoken Language Processing (ISCSLP), 2016 10th International Symposium on. IEEE, 2016.

[160]Choi, Edward, et al. "Using recurrent neural network models for early detection of heart failure onset." Journal of the American Medical Informatics Association 24.2 (2016): 361-370.

[161]Li, Yaguang, et al. "Graph Convolutional Recurrent Neural Network: Data-Driven Traffic Forecasting." arXiv preprint arXiv:1707.01926 (2017).

[162]Azzouni, Abdelhadi, and Guy Pujolle. "A Long Short-Term Memory Recurrent Neural Network Framework for Network Traffic Matrix Prediction." arXiv preprint arXiv:1705.05690 (2017).

[163]Olabiyi, Oluwatobi, et al. "Driver Action Prediction Using Deep (Bidirectional) Recurrent Neural Network." arXiv preprint arXiv:1706.02257 (2017).

[164]Kim, ByeoungDo, et al. "Probabilistic Vehicle Trajectory Prediction over Occupancy Grid Map via Recurrent Neural Network." arXiv preprint arXiv:1704.07049 (2017).

[165]Richard, Alexander, and Juergen Gall. "A bag-of-words equivalent recurrent neural network for action recognition." Computer Vision and Image Understanding 156 (2017): 79-91.

[166]Bontemps, Loïc, James McDermott, and Nhien-An Le-Khac. "Collective Anomaly Detection Based on Long Short-Term Memory Recurrent Neural Networks." International Conference on Future Data and Security Engineering. Springer International Publishing, 2016.

[167]Kingma, Diederik P., and Max Welling. "Stochastic gradient VB and the variational auto-encoder." Second International Conference on Learning Representations, ICLR. 2014.

[168]Ng, Andrew. "Sparse autoencoder." CS294A Lecture notes72.2011 (2011): 1-19.

[169]Vincent, Pascal, et al. "Stacked denoising autoencoders: Learning useful representations in a deep network with a local denoising criterion." Journal of Machine Learning Research 11.Dec (2010): 3371-3408.

[170]Zhang, Richard, Phillip Isola, and Alexei A. Efros. "Split-brain autoencoders: Unsupervised learning by cross-channel prediction." arXiv preprint arXiv:1611.09842 (2016).

[171]Chicco, Davide; Sadowski, Peter; Baldi, Pierre (1 January 2014). "Deep Autoencoder Neural Networks for Gene Ontology Annotation Predictions". Proceedings of the 5th ACM Conference on Bioinformatics, Computational Biology, and Health Informatics - BCB '14. ACM: 533–540.

[172]Alom, Md Zahangir and Tarek M. Taha. " Network Intrusion Detection  for Cyber Security using Unsupervised Deep Learning Approaches " Aerospace and Electronics Conference (NAECON), National. IEEE, 2017.

[173]Song, Chunfeng, et al. "Auto-encoder based data clustering." Iberoamerican Congress on Pattern Recognition. Springer Berlin Heidelberg, 2013.

[174]Lu, Jiajun, Aditya Deshpande, and David Forsyth. "CDVAE: Coembedding Deep Variational Auto Encoder for Conditional Variational Generation." arXiv preprint arXiv:1612.00132 (2016).

[175]Ahmad, Muhammad, Stanislav Protasov, and Adil Mehmood Khan. "Hyperspectral Band Selection Using Unsupervised Non-Linear Deep Auto Encoder to Train External Classifiers." arXiv preprint arXiv:1705.06920 (2017).

[176]Freund, Yoav, and David Haussler. "Unsupervised learning of distributions of binary vectors using two layer networks." (1994).

[177]Larochelle, Hugo, and Yoshua Bengio. "Classification using discriminative restricted Boltzmann machines." Proceedings of the 25th international conference on Machine learning. ACM, 2008.

[178]R. Salakhutdinov and G. E. Hinton. Deep Boltzmann machines. In AISTATS, volume 1, page 3, 2009.

[179]Alom, Md Zahangir, VenkataRamesh Bontupalli, and Tarek M. Taha. "Intrusion detection using deep belief networks." Aerospace and Electronics Conference (NAECON), 2015 National. IEEE, 2015.

[180]Goodfellow, Ian, et al. "Generative adversarial nets." Advances in neural information processing systems. 2014.

[181]T. Salimans, I. Goodfellow, W. Zaremba, V. Che- ung, A. Radford, and X. Chen. Improved techniques for training gans. arXiv preprint arXiv:1606.03498, 2016.

[182]Vondrick, Carl, Hamed Pirsiavash, and Antonio Torralba. "Generating videos with scene dynamics." Advances In Neural Information Processing Systems. 2016.

[183]Radford, Alec, Luke Metz, and Soumith Chintala. "Unsupervised representation learning with deep convolutional generative adversarial networks." arXiv preprint arXiv:1511.06434 (2015).

[184]X. Wang and A. Gupta. Generative image modeling using style and structure adversarial networks. In Proc. ECCV, 2016.

[185]Chen, Xi, et al. "InfoGAN: Interpretable representation learning by information maximizing generative adversarial nets." Advances in Neural Information Processing Systems. 2016.

[186]D. J. Im, C. D. Kim, H. Jiang, and R. Memisevic. Generating images with recurrent adversarial net- works. http://arxiv.org/abs/ 1602.05110, 2016.

[187]Isola, Phillip, et al. "Image-to-image translation with conditional adversarial networks." arXiv preprint (2017).

[188]Liu, Ming-Yu, and Oncel Tuzel. "Coupled generative adversarial networks." Advances in neural information processing systems. 2016.

[189]Donahue, Jeff, Philipp Krähenbühl, and Trevor Darrell. "Adversarial feature learning." arXiv preprint arXiv:1605.09782 (2016).

[190]Berthelot, David, Tom Schumm, and Luke Metz. "Began: Boundary equilibrium generative adversarial networks." arXiv preprint arXiv:1703.10717(2017).

[191]Martin Arjovsky, Soumith Chintala, and Léon Bottou. Wasserstein gan. arXiv preprint arXiv:1701.07875, 2017.

[192]Gulrajani, Ishaan, et al. "Improved training of wasserstein gans." arXiv preprint arXiv:1704.00028 (2017).

[193]He, Kun, Yan Wang, and John Hopcroft. "A powerful generative model using random weights for the deep image representation." Advances in Neural Information Processing Systems. 2016.

[194]Kos, Jernej, Ian Fischer, and Dawn Song. "Adversarial examples for generative models." arXiv preprint arXiv:1702.06832 (2017).

[195]Zhao, Junbo, Michael Mathieu, and Yann LeCun. "Energy-based generative adversarial network." arXiv preprint arXiv:1609.03126 (2016).

[196]Park, Noseong, et al. "MMGAN: Manifold Matching Generative Adversarial Network for Generating Images." arXiv preprint arXiv:1707.08273 (2017).

[197]Laloy, Eric, et al. "Efficient training-image based geostatistical simulation and inversion using a spatial generative adversarial neural network." arXiv preprint arXiv:1708.04975 (2017).

[198]Eghbal-zadeh, Hamid, and Gerhard Widmer. "Probabilistic Generative Adversarial Networks." arXiv preprint arXiv:1708.01886 (2017).

[199]Fowkes, Jaroslav, and Charles Sutton. "A Bayesian Network Model for Interesting Itemsets." Joint European Conference on Machine Learning and Knowledge Disco in Databases. Springer International Publishing, 2016.

[200]Mescheder, Lars, Sebastian Nowozin, and Andreas Geiger. "Adversarial variational bayes: Unifying variational autoencoders and generative adversarial networks." arXiv preprint arXiv:1701.04722 (2017).

[201]Nowozin, Sebastian, Botond Cseke, and Ryota Tomioka. "f-gan: Training generative neural samplers using variational divergence minimization." Advances in Neural Information Processing Systems. 2016.

[202]Li, Chuan, and Michael Wand. "Precomputed real-time texture synthesis with markovian generative adversarial networks." European Conference on Computer Vision. Springer International Publishing, 2016.

[203]Du, Chao, Jun Zhu, and Bo Zhang. "Learning Deep Generative Models with Doubly Stochastic Gradient MCMC." IEEE Transactions on Neural Networks and Learning Systems (2017).

[204]Hoang, Quan, et al. "Multi-Generator Gernerative Adversarial Nets." arXiv preprint arXiv:1708.02556 (2017).

[205]Bousmalis, Konstantinos, et al. "Unsupervised pixel-level domain adaptation with generative adversarial networks." arXiv preprint arXiv:1612.05424 (2016).

[206]Kansky, Ken, et al. "Schema Networks: Zero-shot Transfer with a Generative Causal Model of Intuitive Physics." arXiv preprint arXiv:1706.04317 (2017).

[207]Ledig, Christian, et al. "Photo-realistic single image super-resolution using a generative adversarial network." arXiv preprint arXiv:1609.04802 (2016).

[208]Souly, Nasim, Concetto Spampinato, and Mubarak Shah. "Semi and Weakly Supervised Semantic Segmentation Using Generative Adversarial Network." arXiv preprint arXiv:1703.09695 (2017).

[209]Dash, Ayushman, et al. "TAC-GAN-Text Conditioned Auxiliary Classifier Generative Adversarial Network." arXiv preprint arXiv:1703.06412 (2017).

[210]Zhang, Hang, and Kristin Dana. "Multi-style Generative Network for Real-time Transfer." arXiv preprint arXiv:1703.06953 (2017).

[211] Zhang, He, Vishwanath Sindagi, and Vishal M. Patel. "Image De-raining Using a Conditional Generative Adversarial Network." arXiv preprint arXiv:1701.05957 (2017).

[212]Serban, Iulian Vlad, et al. "Building End-To-End Dialogue Systems Using Generative Hierarchical Neural Network Models." AAAI. 2016.

[213]Pascual, Santiago, Antonio Bonafonte, and Joan Serrà. "SEGAN: Speech  Enhancement Generative Adversarial Network." arXiv preprint arXiv:1703.09452 (2017).

[214]Yang, Li-Chia, Szu-Yu Chou, and Yi-Hsuan Yang. "MidiNet: A convolutional generative adversarial network for symbolic-domain music generation." Proceedings of the 18th International Society for Music Information Retrieval Conference (ISMIR’2017), Suzhou, China. 2017.

[215]Yang, Qingsong, et al. "Low Dose CT Image Denoising Using a Generative Adversarial Network with Wasserstein Distance and Perceptual Loss." arXiv preprint arXiv:1708.00961 (2017).

[216]Rezaei, Mina, et al. "Conditional Adversarial Network for Semantic Segmentation of Brain Tumor." arXiv preprint  arXiv:1708.05227(2017)

[217]Xue, Yuan, et al. "SegAN: Adversarial Network with Multi-scale $ L_1 $ Loss for Medical Image Segmentation." arXiv preprint arXiv:1706.01805 (2017).

[218]Mardani, Morteza, et al. "Deep Generative Adversarial Networks for Compressed Sensing Automates MRI." arXiv preprint arXiv:1706.00051 (2017).

[219]Choi, Edward, et al. "Generating Multi-label Discrete Electronic Health Records using Generative Adversarial Networks." arXiv preprint arXiv:1703.06490 (2017).

[220]Esteban, Cristóbal, Stephanie L. Hyland, and Gunnar Rätsch. "Realvalued (Medical) Time Series Generation with Recurrent Conditional GANs." arXiv preprint arXiv:1706.02633 (2017).

[221]Hayes, Jamie, et al. "LOGAN: Evaluating Privacy Leakage of Generative Models Using Generative Adversarial Networks." arXiv preprint arXiv:1705.07663 (2017).

[222]Gordon, Jonathan, and José Miguel Hernández-Lobato. "Bayesian Semisupervised Learning with Deep Generative Models." arXiv preprint arXiv:1706.09751 (2017).

[223]Abbasnejad, M. Ehsan, et al. "Bayesian Conditional Generative Adverserial Networks." arXiv preprint arXiv:1706.05477 (2017).

[224]Grnarova, Paulina, et al. "An Online Learning Approach to Generative Adversarial Networks." arXiv preprint arXiv:1706.03269 (2017).

[225]Li, Yujia, Kevin Swersky, and Rich Zemel. "Generative moment matching networks." Proceedings of the 32nd International Conference  on Machine Learning (ICML-15). 2015.

[226]Li, Chun-Liang, et al. "MMD GAN: Towards Deeper Understanding of Moment Matching Network." arXiv preprint arXiv:1705.08584(2017).

[227]Nie, Xuecheng, et al. "Generative Partition Networks for Multi-Person Pose Estimation." arXiv preprint arXiv:1705.07422 (2017).

[228]Saeedi, Ardavan, et al. "Multimodal Prediction and Personalization of Photo Edits with Deep Generative Models." arXiv preprint arXiv:1704.04997 (2017).

[229]Schlegl, Thomas, et al. "Unsupervised Anomaly Detection with Generative Adversarial Networks to Guide Marker Disco ." International Conference on Information Processing in Medical Imaging. Springer, Cham, 2017.

[230]Kim, Taeksoo, et al. "Learning to discover cross-domain relations with generative adversarial networks." arXiv preprint arXiv:1703.05192 (2017).

[231]Mehrotra, Akshay, and Ambedkar Dukkipati. "Generative Adversarial Residual Pairwise Networks for One Shot Learning." arXiv preprint arXiv:1703.08033 (2017).

[232]Sordoni, Alessandro, et al. "A neural network approach to contextsensitive generation of conversational responses." arXiv preprint arXiv:1506.06714(2015).

[233]Yin, Jun, et al. "Neural generative question answering." arXiv preprint arXiv:1512.01337 (2015).

[234]Li, Yuxi. "Deep reinforcement learning: An overview." arXiv preprint arXiv:1701.07274 (2017).

[235]Goodfellow, Ian, Yoshua Bengio, and Aaron Courville. Deep learning. MIT press, 2016.

[236]David Silver, Aja Huang, Chris J Maddison, Arthur Guez, Laurent Sifre, George Van Den Driessche, Julian Schrittwieser, Ioannis Antonoglou, Veda Panneershelvam, Marc Lanc- tot, et al. Mastering the game of Go with deep neural networks and tree search. Nature, 529(7587):484–489, 2016.

[237] Vinyals, Oriol, et al. "StarCraft II: A New Challenge for Reinforcement Learning." arXiv preprint arXiv:1708.04782 (2017).

[238]Koenig, Sven, and Reid G. Simmons. Complexity analysis of real-time reinforcement learning applied to finding shortest paths in deterministic domains. No. CMU-CS-93-106. CARNEGIE-MELLON UNIV PITTSBURGH PA SCHOOL OF COMPUTER SCIENCE, 1992.

[239]Schulman, John, et al. "Trust region policy optimization." Proceedings of the 32nd International Conference on Machine Learning (ICML-15). 2015.

[240]Levine, Sergey, et al. "End-to-end training of deep visuomotor policies." Journal of Machine Learning Research 17.39 (2016): 1-40.

[241]Mnih, Volodymyr, et al. "Asynchronous methods for deep reinforcement learning." International Conference on Machine Learning. 2016.

[242]Kober, Jens, J. Andrew Bagnell, and Jan Peters. "Reinforcement learning in robotics: A survey." The International Journal of Robotics Research 32.11 (2013): 1238-1274.

[243]Arulkumaran, Kai, et al. "A brief survey of deep reinforcement learning." arXiv preprint arXiv:1708.05866 (2017).

[244]Zhu, Feiyun, et al. "Cohesion-based Online Actor-Critic Reinforcement Learning for mHealth Intervention." arXiv preprint arXiv:1703.10039 (2017).

[245]Zhu, Feiyun, et al. "Group-driven Reinforcement Learning for Personalized mHealth Intervention." arXiv preprint arXiv:1708.04001 (2017).

[246]Steckelmacher, Denis, et al. "Reinforcement Learning in POMDPs with Memoryless Options and Option-Observation Initiation Sets." arXiv preprint arXiv:1708.06551 (2017).

[247]Hu, Haoyuan, et al. "Solving a new 3d bin packing problem with deep reinforcement learning method." arXiv preprint arXiv:1708.05930 (2017).

[248]Everitt, Tom, et al. "Reinforcement Learning with a Corrupted Reward Channel." arXiv preprint arXiv:1705.08417 (2017).

[249]Wu, Yuhuai, et al. "Scalable trust-region method for deep reinforcement learning using Kronecker-factored approximation." arXiv preprint arXiv:1708.05144 (2017).

[250]Denil, Misha, et al. "Learning to perform physics experiments via deep reinforcement learning." arXiv preprint arXiv:1611.01843(2016).

[251]Hein, Daniel, et al. "Particle swarm optimization for generating interpretable fuzzy reinforcement learning policies." Engineering Applications of Artificial Intelligence 65 (2017): 87-98.

[252]Islam, Riashat, et al. "Reproducibility of Benchmarked Deep Reinforcement Learning Tasks for Continuous Control." arXiv preprint arXiv:1708.04133 (2017).

[253]Inoue, Tadanobu, et al. "Deep reinforcement learning for high precision assembly tasks." arXiv preprint arXiv:1708.04033(2017).

[254]Li, Kun, and Joel W. Burdick. "Inverse Reinforcement Learning in Large State Spaces via Function Approximation." arXiv preprint arXiv:1707.09394 (2017).

[255]Liu, Ning, et al. "A Hierarchical Framework of Cloud Resource Allocation and Power Management Using Deep Reinforcement Learning." Distributed Computing Systems (ICDCS), 2017 IEEE 37th International Conference on. IEEE, 2017.

[256]Cao, Qingxing, et al. "Attention-aware face hallucination via deep reinforcement learning." arXiv preprint arXiv:1708.03132 (2017).

[257]Chen, Tianqi, Ian Goodfellow, and Jonathon Shlens. "Net2net: Accelerating learning via knowledge transfer." arXiv preprint arXiv:1511.05641 (2015).

[258]Ganin, Yaroslav, and Victor Lempitsky. "Unsupervised domain adaptation by backpropagation." arXiv preprint arXiv:1409.7495 (2014).

[259]Ganin, Yaroslav, et al. "Domain-adversarial training of neural networks." Journal of Machine Learning Research 17.59 (2016): 1-35.

[260]Pan, Sinno Jialin, and Qiang Yang. "A survey on transfer learning." IEEE Transactions on knowledge and data engineering22.10 (2010): 1345- 1359.

[261]McKeough, Anne. Teaching for transfer: Fostering generalization in learning. Routledge, 2013.

[262]Raina, Rajat, et al. "Self-taught learning: transfer learning from unlabeled data." Proceedings of the 24th international conference on Machine learning. ACM, 2007

[263]Dai, Wenyuan, et al. "Boosting for transfer learning." Proceedings of the 24th international conference on Machine learning. ACM, 2007.

[264] Han, Song, Huizi Mao, and William J. Dally. "Deep compression: Compressing deep neural networks with pruning, trained quantization and huffman coding." arXiv preprint arXiv:1510.00149 (2015).

[265]Qiu, Jiantao, et al. "Going deeper with embedded FPGA platform for convolutional neural network." Proceedings of the 2016 ACM/SIGDA International Symposium on Field-Programmable Gate Arrays. ACM, 2016.

[266]He, Kaiming, and Jian Sun. "Convolutional neural networks at constrained time cost." Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. 2015.

[267]13. Lin, Zhouhan, et al. "Neural networks with few multiplications." arXiv preprint arXiv:1510.03009 (2015).

[268]14. Courbariaux, Matthieu, Jean-Pierre David, and Yoshua Bengio. "Training deep neural networks with low precision multiplications." arXiv preprint arXiv:1412.7024 (2014).

[269]Courbariaux, Matthieu, Yoshua Bengio, and Jean-Pierre David. "Binaryconnect: Training deep neural networks with binary weights during propagations." Advances in Neural Information Processing Systems. 2015.

[270]Hubara, Itay, Daniel Soudry, and Ran El Yaniv. "Binarized Neural Networks." arXiv preprint arXiv:1602.02505 (2016).

[271]Kim, Minje, and Paris Smaragdis. "Bitwise neural networks." arXiv preprint arXiv:1601.06071 (2016).

[272]Dettmers, Tim. "8-Bit Approximations for Parallelism in Deep Learning." arXiv preprint arXiv:1511.04561 (2015).

[273]Gupta, Suyog, et al. "Deep learning with limited numerical precision." CoRR, abs/1502.02551 392 (2015).

[274]Rastegari, Mohammad, et al. "XNOR-Net: ImageNet Classification Using Binary Convolutional Neural Networks." arXiv preprint arXiv:1603.05279(2016).

[275]Merolla, Paul A., et al. "A million spiking-neuron integrated circuit with a scalable communication network and interface." Science345.6197  (2014): 668-673.

[276]Esser, Steven K., et al. "Convolutional networks for fast, energy-efficient neuromorphic computing “Proceedings of the National Academy of Science (2016): 201604850.

[277]Schuman, Catherine D., et al. "A Survey of Neuromorphic Computing and Neural Networks in Hardware." arXiv preprint arXiv:1705.06963 (2017).

[278]Chen, Yu-Hsin, et al. "Eyeriss: An energy-efficient reconfigurable accelerator for deep convolutional neural networks." IEEE Journal of Solid-State Circuits 52.1 (2017): 127-138.

[279]Chen, Yunji, et al. "Dadiannao: A machine-learning supercomputer." Proceedings of the 47th Annual IEEE/ACM International Symposium on Microarchitecture. IEEE Computer Society, 2014.

[280]Jouppi, Norman P., et al. "In-datacenter performance analysis of a tensor processing unit." arXiv preprint arXiv:1704.04760 (2017).

[281]Han, Song, et al. "EIE: efficient inference engine on compressed deep neural network." Proceedings of the 43rd International Symposium on Computer Architecture. IEEE Press, 2016.

[282]Zhang, Xiangyu, et al. "Efficient and accurate approximations of nonlinear convolutional networks." Proceedings of the IEEE Conference  on Computer Vision and Pattern Recognition. 2015.

[283]Novikov, Alexander, et al. "Tensorizing neural networks." Advances in Neural Information Processing Systems. 2015.

[284]Zhu, Chenzhuo, et al. "Trained ternary quantization." arXiv preprint arXiv:1612.01064 (2016).

[285]Russakovsky, Olga, et al. "Imagenet large scale visual recognition challenge." International Journal of Computer Vision 115.3 (2015): 211-252.

[286]Oord, Aaron van den, et al. "Wavenet: A generative model for raw audio." arXiv preprint arXiv:1609.03499 (2016).

[287]Zhang, Xingcheng, et al. "Polynet: A pursuit of structural diversity in deep networks." 2017 IEEE Conference on Computer Vision and Pattern Recognition (CVPR). IEEE, 2017.

[288]Kunihiko Fukushima, "Neural network model for selective attention in visual pattern recognition and associative recall," Appl. Opt. 26, 4985-4992 (1987)

[289]Alom, Md Zahangir, et al. "Handwritten Bangla Digit Recognition Using Deep Learning." arXiv preprint arXiv:1705.02680 (2017)

[290]Alom, Md Zahangir, et al. "Improved Inception-Residual Convolutional Neural Network for Object Recognition." arXiv preprint arXiv:1712.09888 (2017).

[291]Alom, Md Zahangir, et al. "Handwritten Bangla Character Recognition Using The State-of-Art Deep Convolutional Neural Networks." arXiv preprint arXiv:1712.09872 (2017).

[292]Socher, Richard, et al. "Parsing natural scenes and natural language with recursive neural networks." Proceedings of the 28th international conference on machine learning (ICML-11). 2011.

[293]Sabour, Sara, Nicholas Frosst, and Geoffrey E. Hinton. "Dynamic routing between capsules." Advances in Neural Information Processing Systems. 2017.

[294]Sze, Vivienne, et al. "Efficient processing of deep neural networks: A tutorial and survey." Proceedings of the IEEE105.12 (2017): 2295-2329.

[295]Rawat, Waseem, and Zenghui Wang. "Deep convolutional neural networks for image classification: A comprehensive review." Neural computation 29.9 (2017): 2352-2449.

[296]Alom, Md Zahangir, et al. "Optical beam classification using deep learning: a comparison with rule-and feature-based classification." Optics and Photonics for Information Processing XI. Vol. 10395. International Society for Optics and Photonics, 2017.

[297]Alom, Md Zahangir, et al. "Object recognition using cellular simultaneous recurrent networks and convolutional neural network." Neural Networks (IJCNN), 2017 International Joint Conference on. IEEE, 2017.

[298]Alom, Md Zahangir, et al. "Deep Versus Wide Convolutional Neural Networks for Object Recognition on Neuromorphic System." arXiv preprint arXiv:1802.02608 (2018).

[299]Alom, Md Zahangir, et al. "Effective Quantization Approaches for Recurrent Neural Networks." arXiv preprint arXiv:1802.02615 (2018).

[300]Ronneberger, Olaf, Philipp Fischer, and Thomas Brox. "U-net: Convolutional networks for biomedical image segmentation." International Conference on Medical image computing and computer-assisted intervention. Springer, Cham, 2015.

[301]Alom, Md Zahangir, et al. "Recurrent Residual Convolutional Neural Network based on U-Net (R2U-Net) for Medical Image Segmentation." arXiv preprint arXiv:1802.06955 (2018).

[302]Alom, Md Zahangir, and Tarek M. Taha. "Network intrusion detection for cyber security using unsupervised deep learning approaches." Aerospace and Electronics Conference (NAECON), 2017 IEEE National. IEEE, 2017.

上一篇下一篇

猜你喜欢

热点阅读