动量
Momentum是Gradient Descent算法的扩展,可加速或抑制参数更新。在实践中,在梯度下降更新中包括动量项会导致Deep Networks中更好的收敛速度。
多层感知器(MLP)
多层感知器是一种前馈神经网络,具有多个完全连接的层,使用非线性激活函数来处理不可线性分离的数据。MLP是多层神经网络的最基本形式,如果它具有超过2层,则是深度神经网络。
负对数似然(NLL)
请参阅分类交叉熵损失。
神经机器翻译(NMT)
NMT系统使用神经网络在不同语言之间进行翻译,例如英语和法语。NMT系统可以使用双语语料库进行端到端的训练,这与需要手工制作的功能和工程的传统机器翻译系统不同。NMT系统通常使用编码器和解码器递归神经网络来实现,该编码器和解码器递归神经网络分别编码源句子并产生目标句子。
神经图灵机(NTM)
NMT是神经网络架构,可以从示例中推断出简单的算法。例如,NTM可以通过示例输入和输出来学习排序算法。NTM通常学习某种形式的内存和注意机制来在程序执行期间处理状态。
非线性
请参阅激活函数。
噪声对比估计(NCE)
噪声对比估计是通常用于训练具有大输出词汇的分类器的采样损耗。在大量可能的类别上计算softmax非常昂贵。使用NCE,我们可以通过训练分类器将问题从“实际”分布和人为生成的噪声分布区分开来,将问题简化为二元分类问题。
池
请参见Max-Pooling或Average-Pooling。
限制玻尔兹曼机(RBN)
RBM是一种概率图形模型,可以解释为随机人工神经网络。RBN以无人监督的方式学习数据的表示。RBN由可见和隐藏层以及这些层中的每个层中的二进制神经元之间的连接组成。RBN可以使用对比发散(Contrastive Divergence)进行有效训练,这是梯度下降的近似值。
递归神经网络(RNN)
RNN通过隐藏状态或内存模拟顺序交互。它最多可能需要N个输入并产生多达N个输出。例如,输入序列可以是输出是每个字(N到N)的词性标签的句子。输入可以是句子,输出是句子的情感分类(N-to-1)。输入可以是单个图像,并且输出可以是与图像的描述(1到N)对应的单词序列。在每个时间步,RNN基于当前输入和先前隐藏状态计算新的隐藏状态(“存储器”)。“经常性”源于这样的事实:在每个步骤中使用相同的参数并且网络基于不同的输入执行相同的计算。
递归神经网络
递归神经网络是递归神经网络到树状结构的推广。在每次递归时应用相同的权重。就像RNN一样,递归神经网络可以使用反向传播进行端到端的训练。虽然可以将树结构作为优化问题的一部分来学习,但递归神经网络通常应用于已经具有预定义结构的问题,如自然语言处理中的解析树。
RELU
整流线性单元的简称。ReLU通常用作深度神经网络中的激活函数。它们的定义是f(x) = max(0, x)。ReLU优于函数的优点tanh包括它们往往稀疏(它们的激活很容易设置为0),并且它们对消失的梯度问题的影响较小。ReLUs是卷积神经网络中最常用的激活函数。ReLU存在若干变体,例如Leaky ReLU,Parametric ReLU(PReLU)或更平滑的softplus近似。
RESNET
Deep Residual Networks赢得了2015年ILSVRC的挑战。这些网络通过在层的堆栈之间引入快捷方式连接来工作,允许优化器学习“更容易”的残差映射,而不是更复杂的原始映射。这些快捷方式连接类似于高速公路图层,但它们与数据无关,不会引入其他参数或培训复杂性。ResNet在ImageNet测试集上实现了3.57%的错误率。
RMSProp
RMSProp是一种基于梯度的优化算法。它与Adagrad类似,但引入了额外的衰减术语来抵消Adagrad学习率的快速下降。
Seq2Seq
序列到序列模型将序列(例如句子)作为输入读取并产生另一序列作为输出。它与标准RNN的不同之处在于,在网络开始产生任何输出之前完全读取输入序列。通常,seq2seq模型使用两个RNN实现,用作编码器和解码器。神经机器翻译是seq2seq模型的典型示例。
SGD
随机梯度下降(Wikipedia)是一种基于梯度的优化算法,用于在训练阶段学习网络参数。通常使用反向传播算法计算梯度。在实践中,人们使用SGD的小批量版本,其中参数更新是基于批次而不是单个示例来执行的,从而提高了计算效率。存在许多对香草SGD的扩展,包括Momentum,Adagrad,rmsprop,Adadelta或Adam。
SOFTMAX
该SOFTMAX功能通常用于原始分数的向量转换成类概率在一个神经网络用于分类的输出层。它通过取幂和除以归一化常数来对分数进行归一化。如果我们正在处理大量的类,例如机器翻译中的大量词汇表,则规范化常量的计算成本很高。存在各种替代方案以使计算更有效,包括Hierarchical Softmax或使用基于采样的损失,例如NCE。
TensorFlow
TensorFlow是一个开源的C ++ / Python软件库,用于使用数据流图进行数值计算,特别是深度神经网络。它是由Google创建的。在设计方面,它与Theano最相似,而且比Caffe或Keras更低。
Theano
Theano是一个Python库,允许您定义,优化和评估数学表达式。它包含许多用于深度神经网络的构建块。Theano是一个类似于Tensorflow的低级库。高级图书馆包括Keras和Caffe。
消失的梯度问题
消失梯度问题出现在非常深的神经网络中,通常是递归神经网络,它使用其梯度趋于小的激活函数(在0到1的范围内)。因为这些小梯度在反向传播期间成倍增加,所以它们倾向于在整个层中“消失”,从而阻止网络学习远程依赖性。解决此问题的常用方法是使用不受小梯度影响的ReLU等激活函数,或使用明确消除消失渐变的LSTM等架构。与此问题相反的是爆炸梯度问题。
VGG
VGG指的是卷积神经网络模型,分别在2014年ImageNet定位和分类轨道中获得第一和第二位。VGG模型由16-19个重量层组成,并使用尺寸为3×3和1×1的小卷积滤波器。
word2vec
word2vec是一种算法和工具,通过尝试预测文档中单词的上下文来学习单词嵌入。例如,生成的单词向量具有一些有趣的属性vector('queen') ~= vector('king') - vector('man') + vector('woman')。可以使用两个不同的目标来学习这些嵌入:Skip-Gram目标尝试从单词上预测上下文,并且CBOW目标尝试从其上下文预测单词。
网友评论