(完整版)深度神经网络全面概述

合集下载

深度卷积神经网络

深度卷积神经网络

LeNet提供了利用卷积 层堆叠进行特征提取的 框架,开启了深度卷积 神经网络的发展。
图4:LeNet网络结构,来源于文献 [1]。 [1] Y. Lecun, L. Bottou, Y. Bengio and P. Haffner. Gradient-Based Learning Applied to Document Recognition. Proceedings of the IEEE, vol. 86, no. 11, 1998.
y
前向传播过程
……
.... ..
m1 i
w
m ij
loss
ym j
....
jm
1
前向传播
m 1
m m m m 1 y h ( s ) h ( w 1、计算每层中每个节点的输出 j ij yi ) h() 为激活函数 j
2、在输出层计算损失
h (s )(Tj ym j )
两个重要的信息: 1. 具有多个隐层的人工神经网络具有优异的特征学习能力, 学习得到的特征对数据有更本质的刻画,从而有利于可 视化或分类; 2. 深度神经网络在训练上的难度,可以通过“逐层初始化” (Layer-wise Pre-training)来有效克服。 Neural networks are coming back!
神经元
树突
神经元 接收信号 神经元激活 轴突发出信号
ANN
输入
隐含层输入
隐含层输出
ANN是对大脑神经元信号传输的模拟
神经网络简要介绍
感知机(Perceptron)
通过查找超平面解决二类分类问题(通过二值函数解决二类分类问题)
公式表达:
f (x) sign(w x)

深度神经网络模型解析

深度神经网络模型解析

深度神经网络模型解析深度神经网络模型是一种基于人工神经网络的机器学习模型,它模仿人类大脑的结构和功能,通过多个神经元层次的连接进行信息处理和模式识别。

深度神经网络模型由输入层、隐藏层和输出层组成,每个层都包含多个神经元节点。

在本文中,我们将深入解析深度神经网络模型的内部结构和工作原理,以及其在各个领域的应用。

首先,我们将介绍深度神经网络模型的基本组成部分。

输入层接收来自外部的数据,并将其传递给隐藏层。

隐藏层通过线性变换和激活函数的运算对输入数据进行处理,以提取和学习数据的特征。

输出层则根据隐藏层的结果,进行最终的分类或预测。

深度神经网络模型中的隐藏层通常包含多个节点,这些节点通过权重和偏置进行连接。

权重和偏置是深度神经网络模型中的可调参数,通过训练调整其值以最大程度地减少模型的误差。

每个隐藏层节点都应用激活函数,以引入非线性因素,从而使模型能够拟合更加复杂的数据模式。

在深度神经网络模型中,最常使用的激活函数包括ReLU (Rectified Linear Unit)、Sigmoid和Tanh。

ReLU函数在负输入值时输出0,正输入值时输出输入值本身,它的简单性和计算高效性使其成为首选。

Sigmoid函数将输入值压缩到0到1之间,常用于二分类问题。

Tanh函数将输入值压缩到-1到1之间,常用于多分类问题。

深度神经网络模型训练的核心是反向传播算法。

反向传播算法通过计算损失函数对参数的导数,根据梯度下降法来更新权重和偏置的值。

这样,在迭代训练的过程中,模型逐渐减少误差,并提高对数据的拟合能力。

深度神经网络模型的应用非常广泛。

在计算机视觉领域,深度神经网络模型已被成功应用于图像分类、目标识别和图像生成等任务。

在自然语言处理领域,深度神经网络模型在机器翻译、情感分析和文本生成等任务中也取得了很好的效果。

另外,在推荐系统、金融预测和医学诊断等领域,深度神经网络模型也显示出了出色的性能。

然而,深度神经网络模型也存在一些挑战和限制。

深度学习基础知识

深度学习基础知识

深度学习基础知识深度学习(Depth Learning)是机器学习的一个重要分支,旨在模仿人类大脑的工作方式,通过神经网络的构建和训练实现智能化的数据分析与决策。

在深度学习的背后,有一些基础知识需要我们掌握,才能更好地理解和应用深度学习技术。

一、神经网络的基本结构神经网络是深度学习的核心,它由多个神经元组成,每个神经元都有激活函数,能接收来自其他神经元的输入,并产生输出。

神经网络通常包括输入层、隐藏层和输出层,其中隐藏层可以有多个。

输入层接受外部数据输入,隐藏层负责对数据进行特征提取和转换,输出层产生最终的结果。

二、梯度下降算法梯度下降算法是深度学习中最基础且最常用的优化算法,用于调整神经网络中各个神经元之间的连接权重,以最小化损失函数。

在训练过程中,通过计算损失函数对权重的偏导数,不断地更新权重值,使得损失函数逐渐减小,模型的性能逐渐提升。

三、反向传播算法反向传播算法是神经网络中用于训练的关键算法,通过将误差从输出层倒推到隐藏层,逐层计算每个神经元的误差贡献,然后根据误差贡献来更新权重值。

反向传播算法的核心思想是链式法则,即将神经网络的输出误差按照权重逆向传播并进行计算。

四、卷积神经网络(CNN)卷积神经网络是一种主要用于图像处理和识别的深度学习模型。

它通过共享权重和局部感受野的方式,有效地提取图像中的特征。

卷积神经网络通常包括卷积层、池化层和全连接层。

其中卷积层用于提取图像中的局部特征,池化层用于降低特征的维度,全连接层用于输出最终的分类结果。

五、循环神经网络(RNN)循环神经网络是一种主要用于序列数据处理的深度学习模型。

它通过引入时间维度,并在每个时间步上传递隐藏状态,实现对序列数据的建模。

循环神经网络可以解决序列数据中的时序依赖问题,适用于音频识别、语言模型等任务。

六、生成对抗网络(GAN)生成对抗网络是一种通过让生成器和判别器相互博弈的方式,实现模型训练和生成样本的深度学习模型。

生成器负责生成与真实样本相似的假样本,判别器负责对真假样本进行分类。

人工神经网络基础_ANN课程笔记 2、深度神经网络

人工神经网络基础_ANN课程笔记 2、深度神经网络

第二章深度神经网络一、概述1、基本概念深度学习(Deep Learning)是一种没有人为参与的特征选取方法,又被称为是无监督的特征学习(Unsupervised Feature Learning)。

深度学习思想的神经网络利用隐含层从低到高依次学习数据的从底层到高层、从简单到复杂、从具体到抽象的特征,而这一特性决定了深度学习模型可以学习到目标的自适应特征,具有很强的鲁棒性。

深度学习的另外一个思想是贪婪算法(greedy algorithm)的思想,其在训练的时候打破了几十年传统神经网络训练方法的“桎梏”,采用逐层训练(greedy layer-wise)的贪婪思想,并经过最后的微调(fine-tuning),这一训练算法的成功也使得深度学习获得了巨大成功。

传统的模式识别方法:机器学习过程从最初的传感器得到原始的数据,到经过预处理,都是为了第三步和第四步的特征提取和特征选择,而这个耗时耗力的工作一般要靠人工完成。

这种靠人工的,需要大量的专业知识的启发式的特征提取方法注定要限制机器学习的发展,而深度学习的非监督学习阶段的“盲学习”的特性能够解决该问题,即:深度学习在特征提取和选择时是完全自主的,不需要任何的人工干预。

2、神经网络发展受限之处多隐含层的网络容易收敛到参数空间的局部最优解,即偏导数为0 的点,尤其在目标识别中,由于图像的信噪比很低,神经网络很容易陷入局部极小点; 训练算法与网络的初始参数有很大关系,比较容易过拟合;训练速度慢;在误差反向传播的训练算法中,层数越深,误差越小,甚至接近于0,造成训练失败。

误差反向传播算法必须要用到带标签的数据(有导师学习、监督学习),获取带标签的数据十分困难。

3、深度学习的学习算法深度学习的基本模型从形式上来看和神经网络一致,基本的结构单元都是神经元,由神经元组成网络层,整个网络由输入层,隐含层和输出层组成。

在深度学习理论中,一个网络的学习算法每运行一次,只调整一层网络的参数。

深度卷积神经网络的原理与应用

深度卷积神经网络的原理与应用

深度卷积神经网络的原理与应用深度卷积神经网络(Deep Convolutional Neural Network, DCNN)是一种在计算机视觉领域取得巨大成功的深度学习模型。

它通过模拟人脑视觉系统的工作原理,能够对图像进行高效的特征提取和分类。

本文将介绍DCNN的原理、结构和应用,并探讨其在计算机视觉领域的前沿研究。

一、DCNN的原理DCNN的核心思想是模拟人脑视觉系统中的神经元活动。

人脑视觉系统通过多层次的神经元网络对图像进行处理,从低级特征(如边缘、纹理)逐渐提取到高级特征(如形状、物体)。

DCNN也采用了类似的层次结构,通过多层卷积和池化层对图像进行特征提取,再通过全连接层进行分类。

具体来说,DCNN的核心组件是卷积层。

卷积层通过一系列的卷积核对输入图像进行卷积操作,提取图像的局部特征。

每个卷积核对应一个特定的特征,如边缘、纹理等。

卷积操作可以有效地减少参数数量,提高计算效率。

此外,卷积层还通过非线性激活函数(如ReLU)引入非线性,增加模型的表达能力。

为了减小特征图的尺寸,DCNN还引入了池化层。

池化层通过对特征图进行降采样,保留重要的特征同时减小计算量。

常用的池化操作有最大池化和平均池化。

通过多次卷积和池化操作,DCNN可以逐渐提取出图像的高级特征。

二、DCNN的结构DCNN的结构通常由多个卷积层、池化层和全连接层组成。

其中,卷积层和池化层用于特征提取,全连接层用于分类。

除了这些基本组件,DCNN还可以引入一些额外的结构来提高性能。

一种常见的结构是残差连接(Residual Connection)。

残差连接通过跳过卷积层的部分输出,将输入直接与输出相加,从而解决了深层网络训练困难的问题。

这种结构能够有效地减少梯度消失和梯度爆炸,加速网络收敛。

另一种常见的结构是注意力机制(Attention Mechanism)。

注意力机制通过给予不同特征不同的权重,使网络能够更加关注重要的特征。

这种结构在处理复杂场景或多目标识别时能够提升模型的性能。

深度学习之神经网络(CNN-RNN-GAN)算法原理+实战课件PPT模板可编辑全文

深度学习之神经网络(CNN-RNN-GAN)算法原理+实战课件PPT模板可编辑全文
8-1图像生成文本问题引入入
8-5showandtell模型
8-2图像生成文本评测指标
8-4multi-modalrnn模型
8-6showattendandtell模型
8-10图像特征抽取(1)-文本描述文件解析
8-8图像生成文本模型对比与总结
8-9数据介绍,词表生成
8-7bottom-uptop-downattention模型
第6章图像风格转换
06
6-1卷积神经网络的应用
6-2卷积神经网络的能力
6-3图像风格转换v1算法
6-4vgg16预训练模型格式
6-5vgg16预训练模型读取函数封装
6-6vgg16模型搭建与载入类的封装
第6章图像风格转换
单击此处添加文本具体内容,简明扼要的阐述您的观点。根据需要可酌情增减文字,与类别封装
06
7-12数据集封装
第7章循环神经网络
7-13计算图输入定义
7-14计算图实现
7-15指标计算与梯度算子实现
7-18textcnn实现
7-17lstm单元内部结构实现
7-16训练流程实现
第7章循环神经网络
7-19循环神经网络总结
第8章图像生成文本
08
第8章图像生成文本
02
9-9文本生成图像text2img
03
9-10对抗生成网络总结
04
9-11dcgan实战引入
05
9-12数据生成器实现
06
第9章对抗神经网络
9-13dcgan生成器器实现
9-14dcgan判别器实现
9-15dcgan计算图构建实现与损失函数实现
9-16dcgan训练算子实现
9-17训练流程实现与效果展示9-14DCGAN判别器实现9-15DCGAN计算图构建实现与损失函数实现9-16DCGAN训练算子实现9-17训练流程实现与效果展示

神经网络简介

神经网络简介

神经网络简介神经网络(Neural Network),又被称为人工神经网络(Artificial Neural Network),是一种模仿人类智能神经系统结构与功能的计算模型。

它由大量的人工神经元组成,通过建立神经元之间的连接关系,实现信息处理与模式识别的任务。

一、神经网络的基本结构与原理神经网络的基本结构包括输入层、隐藏层和输出层。

其中,输入层用于接收外部信息的输入,隐藏层用于对输入信息进行处理和加工,输出层负责输出最终的结果。

神经网络的工作原理主要分为前向传播和反向传播两个过程。

在前向传播过程中,输入信号通过输入层进入神经网络,并经过一系列的加权和激活函数处理传递到输出层。

反向传播过程则是根据输出结果与实际值之间的误差,通过调整神经元之间的连接权重,不断优化网络的性能。

二、神经网络的应用领域由于神经网络在模式识别和信息处理方面具有出色的性能,它已经广泛应用于各个领域。

1. 图像识别神经网络在图像识别领域有着非常广泛的应用。

通过对图像进行训练,神经网络可以学习到图像中的特征,并能够准确地判断图像中的物体种类或者进行人脸识别等任务。

2. 自然语言处理在自然语言处理领域,神经网络可以用于文本分类、情感分析、机器翻译等任务。

通过对大量语料的学习,神经网络可以识别文本中的语义和情感信息。

3. 金融预测与风险评估神经网络在金融领域有着广泛的应用。

它可以通过对历史数据的学习和分析,预测股票价格走势、评估风险等,并帮助投资者做出更科学的决策。

4. 医学诊断神经网络在医学领域的应用主要体现在医学图像分析和诊断方面。

通过对医学影像进行处理和分析,神经网络可以辅助医生进行疾病的诊断和治疗。

5. 机器人控制在机器人领域,神经网络可以用于机器人的感知与控制。

通过将传感器数据输入到神经网络中,机器人可以通过学习和训练来感知环境并做出相应的反应和决策。

三、神经网络的优缺点虽然神经网络在多个领域中都有着广泛的应用,但它也存在一些优缺点。

深度神经网络算法原理

深度神经网络算法原理

深度神经网络算法原理
深度神经网络(Deep Neural Networks,简称DNN)是一种基
于人工神经网络的机器学习算法。

该算法的原理是通过构建具有多个隐藏层的神经网络模型,从而实现对复杂任务的高效学习和预测。

深度神经网络的原理可以概括为以下几个步骤:
1. 初始化神经网络:首先,会初始化神经网络的参数,包括权重和偏置。

这些参数是随机初始化的,以便网络可以从头开始学习。

2. 前向传播:在这一步骤中,输入数据会通过网络的每一层,并产生输出。

每一层的输出将作为下一层的输入,并在每一层中进行加权和激活函数操作。

3. 计算损失函数:通过比较网络的输出和实际标签,可以计算出一个损失函数。

损失函数表示了网络预测的准确程度,我们的目标是最小化损失函数。

4. 反向传播:这是深度神经网络的关键步骤。

通过使用梯度下降算法,网络会根据损失函数的导数来更新网络中的权重和偏置。

梯度下降算法通过沿着损失函数的最陡坡度方向更新参数,逐渐降低损失函数的值。

5. 重复训练:通过反复进行前向传播和反向传播步骤,直到达到一定的停止准则(如达到一定的训练轮数或达到所需的精
度),或者网络的性能满足要求。

总之,深度神经网络通过多个隐藏层的组合,可以对复杂的任务进行建模和学习。

它通过不断调整网络参数,使得网络能够逐渐提高预测准确度,并在训练数据集之外进行泛化。

这使得深度神经网络成为了许多机器学习和人工智能领域的核心算法。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

深度神经网络全面概述从基本概念到实际模型和硬件基础深度神经网络(DNN)所代表的人工智能技术被认为是这一次技术变革的基石(之一)。

近日,由IEEE Fellow Joel Emer 领导的一个团队发布了一篇题为《深度神经网络的有效处理:教程和调研(Efficient Processing of Deep Neural Networks: A Tutorial and Survey)》的综述论文,从算法、模型、硬件和架构等多个角度对深度神经网络进行了较为全面的梳理和总结。

鉴于该论文的篇幅较长,机器之心在此文中提炼了原论文的主干和部分重要内容。

目前,包括计算机视觉、语音识别和机器人在内的诸多人工智能应用已广泛使用了深度神经网络(deep neural networks,DNN)。

DNN 在很多人工智能任务之中表现出了当前最佳的准确度,但同时也存在着计算复杂度高的问题。

因此,那些能帮助DNN 高效处理并提升效率和吞吐量,同时又无损于表现准确度或不会增加硬件成本的技术是在人工智能系统之中广泛部署DNN 的关键。

论文地址:https:///pdf/1703.09039.pdf本文旨在提供一个关于实现DNN 的有效处理(efficient processing)的目标的最新进展的全面性教程和调查。

特别地,本文还给出了一个DNN 综述——讨论了支持DNN 的多种平台和架构,并强调了最新的有效处理的技术的关键趋势,这些技术或者只是通过改善硬件设计或者同时改善硬件设计和网络算法以降低DNN 计算成本。

本文也会对帮助研究者和从业者快速上手DNN 设计的开发资源做一个总结,并凸显重要的基准指标和设计考量以评估数量快速增长的DNN 硬件设计,还包括学界和产业界共同推荐的算法联合设计。

读者将从本文中了解到以下概念:理解DNN 的关键设计考量;通过基准和对比指标评估不同的DNN 硬件实现;理解不同架构和平台之间的权衡;评估不同DNN 有效处理技术的设计有效性;理解最新的实现趋势和机遇。

一、导语深度神经网络(DNN)目前是许多人工智能应用的基础[1]。

由于DNN 在语音识别[2] 和图像识别[3] 上的突破性应用,使用DNN 的应用量有了爆炸性的增长。

这些DNN 被部署到了从自动驾驶汽车[4]、癌症检测[5] 到复杂游戏[6] 等各种应用中。

在这许多领域中,DNN 能够超越人类的准确率。

而DNN 的出众表现源于它能使用统计学习方法从原始感官数据中提取高层特征,在大量的数据中获得输入空间的有效表征。

这与之前使用手动提取特征或专家设计规则的方法不同。

然而DNN 获得出众准确率的代价是高计算复杂性成本。

虽然通用计算引擎(尤其是GPU),已经成为许多DNN 处理的砥柱,但提供对DNN 计算更专门化的加速方法也越来越热门。

本文的目标是提供对DNN、理解DNN 行为的各种工具、有效加速计算的各项技术的概述。

该论文的结构如下:•Section II 给出了DNN 为什么很重要的背景、历史和应用。

•Section III 给出了DNN 基础组件的概述,还有目前流行使用的DNN 模型。

•Section IV 描述了DNN 研发所能用到的各种资源。

•Section V 描述了处理DNN 用到的各种硬件平台,以及在不影响准确率的情况下改进吞吐量(thoughtput)和能量的各种优化方法(即产生bit-wise identical 结果)。

•Section VI 讨论了混合信号回路和新的存储技术如何被用于近数据处理(near-data processing),从而解决DNN 中数据流通时面临的吞吐量和能量消耗难题。

•Section VII 描述了各种用来改进DNN 吞吐量和能耗的联合算法和硬件优化,同时最小化对准确率的影响。

•Section VIII 描述了对比DNN 设计时应该考虑的关键标准。

二、深度神经网络(DNN)的背景在这一部分,我们将描述深度神经网络(DNN)在人工智能这个大框架下的位置,以及一些促进其发展的的概念。

我们还将对其主要的发展历程和现阶段主要的应用领域做一个简单的介绍。

1. 人工智能和深度神经网络根据John McCarthy 的论述,深度神经网络(也称为深度学习)是人工智能(AI)大框架下的一部分。

而人工智能(AI)是利用科学与工程学创造具有如同人类那样能实现目标的智能机器。

人工智能这个词就是这位计算机科学家在上个世纪50 年代所创造出的。

深度学习和整个人工智能的关系就如下图所示。

图1:深度学习在人工智能大框架下的位置2. 神经网络和深度神经网络(DNN)神经网络从神经元涉及对输入值求加权和进行计算这一概念而获得灵感。

这些加权和对应于突触完成值的缩放以及其和神经元值间的组合。

此外,因为计算与神经元级联相关联,并且其为简单线性代数的运算,所以神经元不会仅仅输出加权和。

相反,在神经元中有函数执行组合输入的运算,而这种函数应该是非线性运算。

在非线性运算的过程中,神经元只有在输入超过一定阀值时才生成输出。

因此通过类比,神经网络将非线性函数运用到输入值的加权和中。

我们等一下会描述一些非线性函数。

图2:简单的神经网络例子。

(a) 神经元和突触,(b) 为每一层计算加权和,(c) 前向和反向(循环)网络,(d) 全连接与稀疏(a)中展示了计算神经网络的示意图。

图的前端是输入层,该层会接受输入数据值。

这些数据值前向传播到神经网络中间层的神经元中,中间层也常称为神经网络的隐藏层。

一个或多个隐藏层的加权和最终前向传播到输出层,该输出层会最终向用户呈现神经网络的输出结果。

为了将脑启发的术语和神经网络相匹配,神经元的输出通常称为激活(activation),并且突触如(a)所示通常称为权重(weight)。

在上方表达式中,W_ij 代表着权重、x_i 为输入激活、y_i 是输出激活,而f(·) 就代表着在III-2 中描述的非线性激活函数。

在神经网络的领域内,有一门称为深度学习的研究。

普通神经网络基本上层级不会很多,而在深度学习里,神经网络的层级数量十分巨大,现如今基本上神经网络可以达到 5 到1000 多层。

3. 推理vs 训练这一节中,如图 4 所示,我们将把图像分类用作训练DNN 的一个强劲的实例。

评估DNN 时,我们输入一个图像,DNN 为每一个对象分类输出分值向量;分值最高的分类将成为图像中最有可能的对象分类。

训练DNN 的总体目标是决定如何设置权重以最大化正确分类(来自标注的训练数据)的分值并最小化其他不正确分类的分值。

理想的正确分值与DNN 基于其当前权重计算的分值之间的差被称为损失值(L)。

因此训练DNN 的目标是找到一组权重以最小化大型数据集中的平均损失值。

图4:图像分类任务4. 开发历史•1940 年代- 神经网络被提出•1960 年代- 深度神经网络被提出•1989 年- 识别数字的神经网(LeNet)出现•1990 年代- 浅层神经网硬件出现(Intel ETANN)•2011 年- DNN 语音识别取得突破性进展(Microsoft)•2012 年- 用于视觉的DNN 开始替代人工放大(AlexNet)•2014 年+ - DNN 加速器研究兴起(Neuflow、DianNao 等等)图 5 的表柱是这些年来ImageNet 竞赛中每届冠军的表现。

你可以看到最初算法精确度的错误率在25% 或更多。

2012 年,多伦多大学的AlexNet 团队通过GPU 来提升其计算能力并采用深度神经网络方法,把错误率降低了近10% [3]。

他们的成功带来了深度学习风格的算法的井喷,以及图像识别技术的持续进步。

图5:ImageNet 竞赛[10] 结果5. DNN 的应用从多媒体到医疗,DNN 对很多应用大有裨益。

在这一节中,我们将展示DNN 正在发挥影响的领域,并凸显DNN 有望在未来发挥作用的新兴领域。

•图像和视频•语音和语言•医疗•游戏•机器人6. 嵌入vs 云执行DNN 推断处理的嵌入平台有着严格的能耗、计算和存储成本限制。

当DNN 推断在云中执行时,语音识别等应用经常有强烈的延迟需求。

因此,在本文中,我们将聚焦于推断处理而不是训练的计算需求。

三、深度神经网络概述根据应用情况不同,深度神经网络的形态和大小也各异。

流行的形态和大小正快速演化以提升模型准确性和效率。

所有深度神经网络的输入是一套表征网络将加以分析处理的信息的值。

这些值可以是一张图片的像素,或者一段音频的样本振幅或者某系统或者游戏状态的数字化表示。

处理输入的网络有两种主要形式:前馈以及循环(图2c)。

前馈网络中,所有计算都是在前一层输出基础上进行的一系列运作。

最终一组运行就是网络的输出,比如,这张图片包括某个特定物体的概率是多少,某段音频出现某个单词的概率是多少,或者下一步行动的建议等。

在这类深度神经网络中,网络并无记忆,输出也总是与之前网络输入顺序无关。

相反,循环网络(LSTM 是一个很受欢迎的变种)是有内在记忆的,允许长期依存关系影响输出。

在这些网络中,一些中间运行生成的值会被存储于网络中,也被用作与处理后一输入有关的其他运算的输入。

在这篇文章中,我们关注的是前馈网络,因为到目前为止,少有人关注硬件加速,特别是循环网络的。

深度神经网络也可以是全连接的(FC,也指多层感知器),如图2(d)最左部分所示。

在一个全连接层中,所有输出与所有输入都是相连接的。

这需要相当数量的存储和计算空间。

谢天谢地,在许多应用中,我们可以移除激活(activations)之间的一些连接,方法就是将权重设置为零而不影响准确性。

结果会产生一个稀疏连接层。

图2(d)最右端的层就是一个稀疏连接层。

通过限制对结果有影响的权重数量,我们也可以实现更高效的计算。

如果每个输出仅仅是一个固定大小输入窗口的函数,就会出现这类结构化稀疏性。

如果这套权重被用于每一个输入计算,就会进一步提高效率。

这一权重共享能显著降低权重的存储要求。

通过将计算构建为卷积,一种非常流行的窗口式的权重共享的网络诞生了,如图6(a) 所示,其仅使用少量临近的激活来计算加权和的输出(即,该过滤器有一个有限的接受域,与输入的距离超过特定值的所有权重都将被设置为0),而且这一套权重能被每个输入共享来计算(即,滤波器是空间不变的)。

这种结构稀疏性的形式正交于源自网络(修改情况如本文部分VII-B2 所述)的稀疏性。

所以,卷积神经网络就是一种受欢迎的深度神经网络形式。

1. 卷积神经网络(CNN)图6:卷积的维度。

(a) 传统图像处理中的二维卷积,(b) CNN 中的高维卷积图7:卷积神经网络表1:CONV/FC 层的形状参数给定表I 中的形状参数(shape parameters),卷积层的计算可以定义为:2. 非线性(Non-Linearity)图8:多种形式的非线性激活函数(来自Caffe Tutorial [43])3. 池化(Pooling)图9:多种形式的池化(来自Caffe Tutorial [43])4. 归一化(Normalization)控制输入在层级中的分布能显著地加快训练速度并提升准确度。

相关文档
最新文档