首页 > 其他分享 >深度学习最新进展

深度学习最新进展

时间:2023-01-22 20:12:16浏览次数:39  
标签:学习 DL -- 编码器 最新进展 神经网络 深度

Recent Advances in Deep Learning An Overview

引言:DL和ML的发展现状以及DL是什么

深度学习(DL)的概念最早在1989年引入机器学习(ML),在2000后被引入人工神经网络(ANN)。最近的深度学习方法大多数是在2006年开始发展起来的。

深度学习(DL)即表征(特征)学习是ML的一个子领域,它使用多层次的非线性信息处理和抽象,用于有监督或无监督的特征学习、表示、分类和模式识别。

特征

1.DL方法由多层组成,以学习多个抽象层次的数据特征,这一学习过程是非线性操作。

2.DL允许计算机从较简单的概念中建立复杂的概念来学习。

3.对于ANN来说深度学习DL又称分层学习(Hierarchical Learning),是指在多个计算阶段进行准确的信用分配,来转换网络的聚合激活。

相关研究

在过去的几年中,有许多关于深度学习的综述论文。他们以很好的方式描述了 DL 方法、方法论以及它们的应用和未来研究方向。这里,我们简要介绍一些关于深度学习的优秀综述论文。

Young 等人(2017)讨论了 DL 模型和架构,主要用于自然语言处理(NLP)。他们在不同的 NLP 领域中展示了 DL 应用,比较了 DL 模型,并讨论了可能的未来趋势。

Zhang 等人(2017)讨论了用于前端和后端语音识别系统的当前最佳深度学习技术。

Zhu 等人(2017)综述了 DL 遥感技术的最新进展。他们还讨论了开源的 DL 框架和其他深度学习的技术细节。

Wang 等人(2017)以时间顺序的方式描述了深度学习模型的演变。该短文简要介绍了模型,以及在 DL 研究中的突破。该文以进化的方式来了解深度学习的起源,并对神经网络的优化和未来的研究做了解读。

Goodfellow 等人(2016)详细讨论了深度网络和生成模型,从机器学习(ML)基础知识深度架构的优缺点出发,对近年来的 DL 研究和应用进行了总结。

LeCun 等人(2015)从卷积神经网络(CNN)和递归神经网络(RNN)概述了深度学习(DL)模型。他们从表征学习的角度描述了 DL,展示了 DL 技术如何工作、如何在各种应用中成功使用、以及如何对预测未来进行基于无监督学习(UL)的学习。同时他们还指出了 DL 在文献目录中的主要进展。

Schmidhuber(2015)从 CNN、RNN 和深度强化学习 (RL) 对深度学习做了一个概述。他强调了序列处理的 RNN,同时指出基本 DL 和 NN 的局限性,以及改进它们的技巧。

Nielsen (2015) 用代码和例子描述了神经网络的细节。他还在一定程度上讨论了深度神经网络和深度学习。

Schmidhuber (2014) 讨论了基于时间序列的神经网络、采用机器学习方法进行分类,以及在神经网络中使用深度学习的历史和进展。

Deng 和 Yu (2014) 描述了深度学习类别和技术,以及 DL 在几个领域的应用。

Bengio (2013) 从表征学习的角度简要概述了 DL 算法,即监督和无监督网络、优化和训练模型。他聚焦于深度学习的许多挑战,例如:为更大的模型和数据扩展算法,减少优化困难,设计有效的缩放方法等。

Bengio 等人 (2013) 讨论了表征和特征学习即深度学习。他们从应用、技术和挑战的角度探讨了各种方法和模型。

Deng (2011) 从信息处理及相关领域的角度对深度结构化学习及其架构进行了概述。

Arel 等人 (2010) 简要概述了近年来的 DL 技术。

Bengio (2009) 讨论了深度架构,即人工智能的神经网络和生成模型。

最近所有关于深度学习(DL)的论文都从多个角度讨论了深度学习重点。这对 DL 的研究人员来说是非常有必要的。然而,DL 目前是一个蓬勃发展的领域。在最近的 DL 概述论文发表之后,仍有许多新的技术和架构被提出。此外,以往的论文从不同的角度进行研究。我们的论文主要是针对刚进入这一领域的学习者和新手。为此,我们将努力为新研究人员和任何对这一领域感兴趣的人提供一个深度学习的基础和清晰的概念。

最新进展

在本节中,我们将讨论最近从机器学习和人工神经网络 (ANN) 的中衍生出来的主要深度学习 (DL) 方法,人工神经网络是深度学习最常用的形式。

深度架构的演变

人工神经网络 (ANN) 已经取得了长足的进步,同时也带来了其他的深度模型。第一代人工神经网络由简单的感知器神经层组成,只能进行有限的简单计算。第二代使用反向传播,根据错误率更新神经元的权重。然后支持向量机 (SVM) 浮出水面,在一段时间内超越 ANN。为了克服反向传播的局限性,人们提出了受限玻尔兹曼机(RBM),使学习更容易。此时其他技术和神经网络也出现了,如前馈神经网络 (FNN)、卷积神经网络 (CNN)、循环神经网络 (RNN) 等,以及深层信念网络、自编码器等。从那时起,为实现各种用途,ANN 在不同方面得到了改进和设计。

Schmidhuber (2014)、Bengio (2009)、Deng 和 Yu (2014)、Goodfellow 等人 (2016)、Wang 等人 (2017) 对深度神经网络 (DNN) 的进化和历史以及深度学习 (DL) 进行了详细的概述。在大多数情况下,深层架构是简单架构的多层非线性重复,这样可从输入中获得高度复杂的函数。

深度学习方法

深度神经网络在监督学习中取得了巨大的成功。此外,深度学习模型在无监督、混合和强化学习方面也非常成功。

4.1 深度监督学习

监督学习应用在当数据标记、分类器分类或数值预测的情况。LeCun 等人 (2015) 对监督学习方法以及深层结构的形成给出了一个精简的解释。Deng 和 Yu(2014) 提到了许多用于监督和混合学习的深度网络,并做出解释,例如深度堆栈网络 (DSN) 及其变体。Schmidthuber(2014) 的研究涵盖了所有神经网络,从早期神经网络到最近成功的卷积神经网络 (CNN)、循环神经网络 (RNN)、长短期记忆 (LSTM) 及其改进。

4.2 深度无监督学习

当输入数据没有标记时,可应用无监督学习方法从数据中提取特征并对其进行分类或标记。LeCun 等人 (2015) 预测了无监督学习在深度学习中的未来。Schmidthuber(2014) 也描述了无监督学习的神经网络。Deng 和 Yu(2014) 简要介绍了无监督学习的深度架构,并详细解释了深度自编码器。

4.3 深度强化学习

强化学习使用奖惩系统预测学习模型的下一步。这主要用于游戏和机器人,解决平常的决策问题。Schmidthuber(2014) 描述了强化学习 (RL) 中深度学习的进展,以及深度前馈神经网络 (FNN) 和循环神经网络 (RNN) 在 RL 中的应用。Li(2017) 讨论了深度强化学习 (Deep Reinforcement Learning, DRL)、它的架构 (例如 Deep Q-Network, DQN) 以及在各个领域的应用。

Mnih 等人 (2016) 提出了一种利用异步梯度下降进行 DNN 优化的 DRL 框架。

van Hasselt 等人 (2015) 提出了一种使用深度神经网络 (deep neural network, DNN) 的 DRL 架构。

深度神经网络

在本节中,我们将简要地讨论深度神经网络,以及它们最新的进展和突破。神经网络与人类大脑工作地方式相似。他们都是由神经元和连接构成。当我们谈到深度神经网络时,我们可以假设有相当多的隐藏层,这些隐藏层可以被用于从输入中提取特征和计算复杂的函数。Bengio(2009)解释了深度架构的神经网络例如卷积神经网络,自编码器等,及他们的变体。Deng和Yu(2014)详细介绍了一些神经网络架构如自编码器和它的变体。Goodfellow等人(2016)对深度前馈网络,卷积神经网络,循环和递归网络做了技巧性的解释和文章。Schmidhuber(2014)提到了神经网络从早期神经网络到最新的成熟的技术的完整历史。

深度自编码器

自编码器是把输出作为输入的神经网络。自编码器获取原始输入,将其编码来压缩表示然后解码来重构输入(Wang)。在一个深度自编码器中,低隐藏层用于编码,高隐藏层用于解码,误差反向传播用于训练。

变分自编码器(Variational Autoencoders)

VAE可以算作解码器。变分自编码器建立在标准神经网络上,可以通过随机梯度下降训练。

多层降噪自编码器(Stacked Denoising Autoencoders)

在早期的自编码器 (AE) 中,编码层的维度比输入层小(窄)。在多层降噪自编码器 (SDAE) 中,编码层比输入层宽 (Deng和Yu, 2014)。

变换自编码器(Transforming Autoencoders)

深度自动编码器 (DAE) 可以是转换可变的,也就是从多层非线性处理中提取的特征可以根据学习者的需要而改变。变换自编码器 (TAE) 既可以使用输入向量,也可以使用目标输出向量来应用转换不变性属性,将代码引导到期望的方向 (Deng和Yu,2014)。

深度卷积神经网络

四种基本思想构成了卷积神经网络(Convolutional Neural Networks),即局部连接(local connections),共享权重(shared weights),池化(pooling)和多层使用(using many layers)。卷积神经网络第一部分是由卷积层和池化层组成,后一部分主要是全连接层(fully connected layers)。卷积层检测局部连接的特征,池化层合并相似特征。CNN在卷积层中使用卷积而不是矩阵乘法。

graph LR A[CNN]-->C A-->B[构成] B-->卷积层和池化层 B-->全连接层 C[基本思想]-->|local connections|局部连接 C-->|shared weights|共享权重 C-->|pooling|池化 C-->|using many layers|多层使用

Krizhevsky等人(2012)提出了一种深度卷积神经网络架构,也叫做AlexNet,这是DL的一个重大突破。网络由五个卷积层和三个全连接层构成。这一架构使用了GPU进行卷积运算,采用线性整流函数(Rectified Linear Units)作为激活函数,用Dropout来减少过拟合。

Iandola 等人 (2016) 提出了一个小型的 CNN 架构,叫做「SqueezeNet」。

Szegedy 等人 (2014) 提出了一种深度 CNN 架构,名为 Inception。Dai 等人 (2017) 提出了对 Inception-ResNet 的改进。

Redmon 等人 (2015) 提出了一个名为 YOLO (You Only Look Once) 的 CNN 架构,用于均匀和实时的目标检测。

Zeiler 和 Fergus (2013) 提出了一种将 CNN 内部激活可视化的方法。

Gehring 等人 (2017) 提出了一种用于序列到序列学习的 CNN 架构。

Bansal 等人 (2017) 提出了 PixelNet,使用像素来表示。

Goodfellow 等人 (2016) 解释了 CNN 的基本架构和思想。Gu 等人 (2015) 对 CNN 的最新进展、CNN 的多种变体、CNN 的架构、正则化方法和功能以及在各个领域的应用进行了很好的概述。

激活函数

graph LR A[activate function 激活函数] B-->使用范围最广 A-->B[Sigmoid 逻辑函数]-->具有指数函形状,在物理意义上最接近生物神经元,单调连续,输出范围有限,优化稳定 B-->缺陷:饱和性,两侧导数逐渐趋于0,杀死梯度,输出不以0为中心 A-->C[Tanh 正切函数]-->收敛速度快于sigmoid,减少迭代次数 C-->输出以0为中心 C-->仍存在由于饱和性导致梯度消失的问题 A-->D[Reflected Linear Unit,ReLU 线性整流函数] A-->E[Exponential Linear Unit ELU函数] A-->F[Softplus函数]

\( Sigmoid:f(x)=\frac{1}{1+e^{-x}} \\ Tanh:tanh(x)=\frac{1-e^{-2x}}{1+e^{2x}}\\ ReLU:y=\begin{cases} x,&\text{if }x\ge0 \\ 0,&\text{if }x\lt0 \end{cases}\quad, y=max(0,x) \\ ELU:f(x)=\begin{cases} x&\text{if }x\gt0 \\ \alpha&\text{if }x\le0 \end{cases}\quad, f'(x)=\begin{cases} 1&\text{if }x\gt0 \\ f(x)+\alpha&\text{if }x\le0 \end{cases} \\ Softplus:f(x)=log(e^x+1)\quad,Softsign:f(x)=\frac{x}{|x|+1} \)

整流函数

线性整流函数(ReLU):线性整流函数(Rectified Linear Unit, ReLU),又称修正线性单元, 是一种人工神经网络中常用的激活函数(activation function),通常指代以斜坡函数及其变种为代表的非线性函数。比较常用的线性整流函数有斜坡函数f(x)=max(0, x),以及带泄露整流函数 (Leaky ReLU),其中x为神经元(Neuron)的输入。通常意义下,线性整流函数代指数学中的斜坡函数,即

\[f(x)=max(0,x) \]

ReLU瓶颈

1.不以零为中心:和Sigmoid激活函数类似,ReLU函数的输出不以零为中心。

2.前向传导(forward pass)过程中,如果x < 0,则神经元保持非激活状态,且在后向传导(backward pass)中「杀死」梯度。这样权重无法得到更新,网络无法学习。当x = 0时,该点的梯度未定义,但是这个问题在实现中得到了解决,通过采用左侧或右侧的梯度的方式

所谓「杀死」梯度就是后向传播时x<0导致了激活函数f(x)的导数为1。

带泄露线性整流函数(Leaky ReLU):在输入值为负的时候,Leaky ReLU的梯度为一个常数,而不是0。在输入值为正的时候,Leaky ReLU和普通斜坡函数保持一致。换言之,

\[f(x)=\begin{cases} x, & \text{if }x>0 \\ \lambda{x}, & \text{if }x\le0 \end{cases} \]

带泄露随机线性整流(Randomized Leaky ReLU, RReLU):RReLU在负输入值段的函数梯度是一个取自连续性均匀分布概率模型的随机变量,即

\[f(x)=\begin{cases} x, &\text{if }x\gt0 \\ \lambda{x}, &\text{if }x\le0 \end{cases} \\ \text{其中}\lambda\sim{U}(l,u),l<u\text{且}l,u\in[0,1) \]

标签:学习,DL,--,编码器,最新进展,神经网络,深度
From: https://www.cnblogs.com/hugaotuan/p/17064607.html

相关文章