目录

深度神经网络(Deep Neural Networks)

深度神经网络(DNN)是在输入和输出层之间具有多个隐藏层的ANN。 与浅层神经网络类似,DNN可以模拟复杂的非线性关系。

神经网络的主要目的是接收一组输入,对它们执行逐步复杂的计算,并提供输出以解决诸如分类之类的现实世界问题。 我们限制自己前馈神经网络。

我们在深层网络中有输入,输出和顺序数据流。

深度网络

神经网络广泛用于监督学习和强化学习问题。 这些网络基于彼此连接的一组层。

在深度学习中,隐藏层的数量(大多数是非线性的)可能很大; 说大约1000层。

DL模型比普通ML网络产生更好的结果。

我们主要使用梯度下降法来优化网络并最小化损失函数。

我们可以使用Imagenet ,这是一个包含数百万个数字图像的存储库,可以将数据集分类为猫和狗等类别。 除了静态图像以及时间序列和文本分析之外,DL网络越来越多地用于动态图像。

训练数据集是深度学习模型的重要组成部分。 此外,反向传播是训练DL模型的主要算法。

DL涉及训练具有复杂输入输出变换的大型神经网络。

DL的一个示例是将照片映射到照片中的人的姓名,就像他们在社交网络上那样,并且用短语描述图片是DL的另一个近期应用。

DL映射

神经网络是具有x1,x2,x3等输入的函数,它们在两个(浅网络)或几个中间操作(也称为层(深层网络))中转换为输出,如z1,z2,z3等。

权重和偏差在层与层之间变化。 'w'和'v'是神经网络层的权重或突触。

深度学习的最佳用例是监督学习问题。在这里,我们有大量的数据输入和一组期望的输出。

反向传播算法

这里我们应用反向传播算法来获得正确的输出预测。

深度学习的最基本数据集是MNIST,即手写数字的数据集。

我们可以用Keras训练深度卷积神经网络,从这个数据集中分类手写数字的图像。

神经网络分类器的激活或激活产生分数。 例如,为了将患者分类为生病和健康,我们考虑身高,体重和体温,血压等参数。

高分意味着患者生病,低分意味着他健康。

输出和隐藏层中的每个节点都有自己的分类器。 输入层接收输入并将其分数传递到下一个隐藏层以进一步激活,并且这一直持续到达到输出。

从正向输入到输出从左到右的这种进展称为forward propagation.

神经网络中的信用分配路径(CAP)是从输入到输出的一系列变换。 CAP详细说明了输入和输出之间可能的因果关系。

给定前馈神经网络的CAP深度或CAP深度是隐藏层的数量加上包含输出层的一个。 对于递归神经网络,其中信号可以多次传播通过层,CAP深度可能是无限的。

深网和浅网

没有明确的深度阈值将浅层学习与深度学习分开; 但大多数人认为,对于具有多个非线性层的深度学习,CAP必须大于2。

神经网络中的基本节点是模仿生物神经网络中的神经元的感知。 然后我们有多层Perception或MLP。 每组输入都由一组权重和偏差修改; 每个边缘都有一个独特的重量,每个节点都有一个独特的偏差。

神经网络的预测accuracy取决于其weights and biases.

提高神经网络精度的过程称为training. 将前向道路网的输出与已知正确的值进行比较。

cost function or the loss function是生成的输出和实际输出之间的差异。

培训的目的是在数百万个培训示例中尽可能减少培训成本。为此,网络会调整权重和偏差,直到预测与正确的输出相匹配。

一旦训练好,神经网络就有可能每次都做出准确的预测。

当模式变得复杂并且您希望计算机识别它们时,您必须选择神经网络。在这种复杂的模式场景中,神经网络优于其他竞争算法。

现在有GPU可以比以前更快地训练它们。 深度神经网络已经彻底改变了人工智能领域

事实证明,计算机擅长执行重复计算并遵循详细说明,但并不擅长识别复杂模式。

如果存在识别简单模式的问题,支持向量机(svm)或逻辑回归分类器可以很好地完成工作,但随着模式的复杂性增加,除了深入的神经网络之外别无他法。

因此,对于像人脸这样的复杂模式,浅层神经网络会失败并且别无选择,只能选择具有更多层的深层神经网络。 深网能够通过将复杂的模式分解为更简单的模式来完成它们的工作。 例如,人脸; adeep net会使用边缘来检测嘴唇,鼻子,眼睛,耳朵等部位,然后将它们重新组合在一起形成一个人脸

正确预测的准确性已经变得如此准确,以至于最近在Google模式识别挑战赛中,一个深度网络击败了人类。

这种分层感知器网络的想法已经存在了一段时间; 在这个区域,深网模仿人类的大脑。 但其中一个缺点是它们需要很长时间才能进行训练,这是一个硬件约束

然而,最近的高性能GPU已经能够在一周内训练这样的深网; 虽然快速cpus可能需要数周或数月才能完成同样的工作。

选择一个深网

如何选择深网? 我们必须决定是否正在构建分类器,或者我们是否正在尝试在数据中查找模式以及是否要使用无监督学习。 要从一组未标记的数据中提取模式,我们使用Restricted Boltzman机器或Auto编码器。

选择深网时请考虑以下几点 -

  • 对于文本处理,情感分析,解析和名称实体识别,我们使用递归网络或递归神经张量网络或RNTN;

  • 对于在角色级别操作的任何语言模型,我们使用经常性网络。

  • 对于图像识别,我们使用深信念网络DBN或卷积网络。

  • 对于对象识别,我们使用RNTN或卷积网络。

  • 对于语音识别,我们使用经常性网络。

一般而言,深度置信网络和具有整流线性单元或RELU的多层感知器都是分类的良好选择。

对于时间序列分析,始终建议使用循环网络。

神经网已经存在了50多年; 但直到现在他们才变得突出。 原因是他们很难训练; 当我们尝试使用一种称为反向传播的方法来训练它们时,我们会遇到一个称为消失或爆炸渐变的问题。当发生这种情况时,训练需要更长的时间,而准确性则会落后。 在训练数据集时,我们不断计算成本函数,即预测输出与一组标记训练数据的实际输出之间的差异。然后通过调整权重和偏差值将成本函数最小化,直到最低值得到了。 训练过程使用梯度,该梯度是成本相对于重量或偏差值的变化而变化的速率。

受限制的Boltzman网络或自动编码器-RBN

2006年,在解决消失梯度问题方面取得了突破。 杰夫·辛顿(Geoff Hinton)设计了一种新策略,该策略导致了Restricted Boltzman Machine - RBM的发展,这是一种浅层双层网络。

第一层是visible层,第二层是hidden层。 可见层中的每个节点都连接到隐藏层中的每个节点。 网络被称为限制,因为同一层内不允许两个层共享连接。

自动编码器是将输入数据编码为矢量的网络。 它们创建原始数据的隐藏或压缩表示。 这些向量可用于降维; 向量将原始数据压缩为较少数量的基本维度。 自动编码器与解码器配对,允许基于其隐藏表示重建输入数据。

RBM是双向翻译器的数学等价物。 正向传递接收输入并将它们转换为一组编码输入的数字。 同时,后向传递采用这组数字并将它们转换回重建输入。 训练有素的网络可以高精度地执行背部支撑。

在任何一个步骤中,权重和偏见都起着至关重要的作用; 它们有助于RBM解码输入之间的相互关系,并决定哪些输入对于检测模式至关重要。 通过前向和后向通过,RBM被训练以重新构造具有不同权重和偏差的输入,直到输入和构造尽可能接近。 RBM的一个有趣方面是不需要标记数据。 这对于真实世界的数据集非常重要,例如照片,视频,声音和传感器数据,所有这些数据都往往没有标记。 RBM不是通过人工手动标记数据,而是自动对数据进行排序; 通过适当调整权重和偏差,RBM能够提取重要特征并重建输入。 RBM是特征提取器神经网络系列的一部分,旨在识别数据中的固有模式。 这些也称为自动编码器,因为它们必须编码自己的结构。

RBM结构

深信仰网络 - DBN

深层信念网络(DBN)是通过结合RBM和引入一种聪明的训练方法形成的。 我们有一个新模型,最终解决了渐变消失的问题。 Geoff Hinton发明了RBMs和Deep Belief Nets作为反向传播的替代品。

DBN在结构上类似于MLP(多层感知器),但在培训方面却非常不同。 正是这种培训使DBN能够超越浅薄的同行

可以将DBN可视化为RBM的堆栈,其中一个RBM的隐藏层是其上方的RBM的可见层。 训练第一RBM以尽可能准确地重建其输入。

将第一RBM的隐藏层作为第二RBM的可见层,并使用来自第一RBM的输出训练第二RBM。 迭代该过程直到训练网络中的每个层。

在DBN中,每个RBM学习整个输入。 DBN通过连续微调整个输入来全球工作,因为模型慢慢改善,就像一个慢慢聚焦图像的相机镜头。 由于多层感知器MLP优于单个感知器,因此一堆RBM优于单个RBM。

在此阶段,RBM已检测到数据中的固有模式,但没有任何名称或标签。 为了完成DBN的培训,我们必须为模式引入标签,并通过监督学习对网进行微调。

我们需要一小组标记样本,以便功能和模式可以与名称相关联。 这个小标记的数据集用于训练。 与原始数据集相比,这组标记数据可以非常小。

重量和偏差略有改变,导致网络对图案的感知发生微小变化,并且总体精度通常略有增加。

与浅网相比,通过使用GPU可以在合理的时间内完成培训,得到非常准确的结果,我们也看到了消除梯度问题的解决方案。

生成性对抗网络 - GAN

生成对抗网络是深度神经网络,包括两个网络,一个相对于另一个网格,因此是“对抗性”名称。

2014年,蒙特利尔大学的研究人员发表了一篇论文,介绍了GAN.Facebook的人工智能专家Yann LeCun在谈到GAN时称,对抗性训练是“过去10年ML中最有趣的想法”。

GAN的潜力巨大,因为网络扫描学会模仿任何数据分布。 可以教导GAN创建与我们在任何领域惊人相似的平行世界:图像,音乐,演讲,散文。 他们在某种程度上是机器人艺术家,他们的作品令人印象深刻。

在GAN中,一个神经网络(称为生成器)生成新的数据实例,而另一个神经网络(鉴别器)评估它们的真实性。

让我们说我们正在尝试生成手写的数字,就像在MNIST数据集中找到的数字一样,它取自现实世界。 当从真实的MNIST数据集中显示实例时,鉴别器的工作是将它们识别为真实的。

现在考虑GAN的以下步骤 -

  • 生成器网络以随机数的形式获取输入并返回图像。

  • 该生成的图像作为输入提供给鉴别器网络以及从实际数据集中获取的图像流。

  • 鉴别器接收真实和假图像并返回概率,0到1之间的数字,1表示真实性的预测,0表示假。

  • 所以你有一个双反馈循环 -

    • 鉴别器处于反馈循环中,具有图像的基本事实,我们知道这一点。

    • 发生器与鉴别器一起处于反馈回路中。

递归神经网络 - RNN

RNN Sare神经网络,数据可以在任何方向上流动。 这些网络用于语言建模或自然语言处理(NLP)等应用程序。

RNN的基本概念是利用顺序信息。 在正常的神经网络中,假设所有输入和输出彼此独立。 如果我们想要预测句子中的下一个单词,我们必须知道在它之前出现了哪些单词。

RNN被称为循环,因为它们对序列的每个元素重复相同的任务,输出基于先前的计算。 因此可以说RNN具有“存储器”,其捕获关于先前已经计算的信息。 从理论上讲,RNN可以在很长的序列中使用信息,但实际上,它们只能回顾几个步骤。

递归神经网络

长期短期记忆网络(LSTM)是最常用的RNN。

与卷积神经网络一起,RNN已被用作模型的一部分,以生成未标记图像的描述。 令人惊讶的是,这看起来有多好。

卷积深度神经网络 - CNN

如果我们增加神经网络中的层数以使其更深,则会增加网络的复杂性,并允许我们对更复杂的函数进行建模。 但是,权重和偏差的数量将呈指数增长。 事实上,对于正常的神经网络来说,学习这些难题是不可能的。 这导致了解决方案,即卷积神经网络。

CNN广泛用于计算机视觉; 已经应用于自动语音识别的声学建模中。

卷积神经网络背后的想法是通过图像的“移动滤波器”的想法。 该移动滤波器或卷积适用于某些节点邻域,例如可能是像素,其中所应用的滤波器是节点值的0.5倍 -

着名研究员Yann LeCun开创了卷积神经网络。 Facebook作为面部识别软件使用这些网络。 CNN一直致力于机器视觉项目的解决方案。 卷积网络有很多层。 在Imagenet的挑战中,一台机器在2015年能够在物体识别中击败人类。

简而言之,卷积神经网络(CNN)是多层神经网络。 这些层有时最多为17或更多,并假设输入数据为图像。

卷积神经网络

CNN大大减少了需要调整的参数数量。 因此,CNN有效地处理原始图像的高维度。

↑回到顶部↑
WIKI教程 @2018