美文网首页
神经网络之RNN

神经网络之RNN

作者: 我叫胆小我喜欢小心 | 来源:发表于2017-07-22 11:28 被阅读195次

注意:本文为学习笔记,大量直接复制于参考文章中的原文字及图片

一、简介

递归神经网络RNN)是两种人工神经网络的总称。一种是时间递归神经网络(recurrent neural network),另一种是结构递归神经网络(recursive neural network)。时间递归神经网络的神经元间连接构成有向图,而结构递归神经网络利用相似的神经网络结构递归构造更为复杂的深度网络。RNN一般指代时间递归神经网络。
RNNs的目的使用来处理序列数据。在传统的神经网络模型中,是从输入层到隐含层再到输出层,层与层之间是全连接的,每层之间的节点是无连接的。例如,你要预测句子的下一个单词是什么,一般需要用到前面的词,因为句子前后的单词并不是独立的。
RNNs之所以称为循环神经网路,即一个序列当前的输出与前面的输出也有关。具体的表现形式为网络会对前面的信息进行记忆并应用于当前输出的计算中,即隐藏层之间的节点不再无连接而是有连接的,并且隐藏层的输入不仅包括输入层的输出还包括上一时刻隐藏层的输出。理论上,RNNs能够对任何长度的序列数据进行处理。但是在实践中,为了降低复杂性往往假设当前的状态只与前面的几个状态相关,下图便是一个典型的RNNs:

二、训练

对于RNN是的训练和对传统的ANN训练一样。同样使用BP误差反向传播算法,不过有一点区别。如果将RNNs进行网络展开,那么参数W,U,V是共享的,而传统神经网络却不是的。并且在使用梯度下降算法中,每一步的输出不仅依赖当前步的网络,并且还以来前面若干步网络的状态。比如,在t=4时,我们还需要向后传递三步,已经后面的三步都需要加上各种的梯度。该学习算法称为Backpropagation Through Time (BPTT)。

先来看一看符号注解:


上述符号的关系如下:



具体的计算过程在这里不详细写,大家想看的去看参考文章BPTT算法推导。求偏导是为了求损失函数的最小值,可以看看之前的关于BP的文章

三、应用

RNNs已经被在实践中证明对NLP是非常成功的。如词向量表达、语句合法性检查、词性标注等。

  • 语言模型与文本生成(Language Modeling and Generating Text)
    给你一个单词序列,我们需要根据前面的单词预测每一个单词的可能性。
  • 机器翻译(Machine Translation)
    机器翻译是将一种源语言语句变成意思相同的另一种源语言语句,如将英语语句变成同样意思的中文语句。与语言模型关键的区别在于,需要将源语言语句序列输入后,才进行输出,即输出第一个单词时,便需要从完整的输入序列中进行获取。
  • 语音识别(Speech Recognition)
    语音识别是指给一段声波的声音信号,预测该声波对应的某种指定源语言的语句以及该语句的概率值。
  • 图像描述生成 (Generating Image Descriptions)
    和卷积神经网络(convolutional Neural Networks, CNNs)一样,RNNs已经在对无标图像描述自动生成中得到应用。将CNNs与RNNs结合进行图像描述自动生成。这是一个非常神奇的研究与应用。该组合模型能够根据图像的特征生成描述。

参考文章:
循环神经网络(RNN, Recurrent Neural Networks)介绍
递归神经网络-维基百科
BPTT算法推导

相关文章

  • 「深度学习」循环神经网络 RNN 学习笔记

    循环神经网络 RNN 演化流程: RNN -> BRNN -> GRU -> LSTM RNN 「循环神经网络」 ...

  • 深度学习_循环神经网络RNN与LSTM

    1. 循环神经网络RNN 1) 什么是RNN? 循环神经网络(RNN)是一种节点定向连接成环的人工神经网络。具...

  • RNN

    RNN(Recurrent Neural Network,RNN)递归神经网络 递归神经网络是两种人工神经网络的总...

  • 深度学习_RNN循环神经网络,序列模型

    RNN(Recurrent Neural Network 循环神经网络) 循环神经网络的基本概念和地位: RNN是...

  • RNN

    前馈神经网络? 反向传播算法?理论不理解 解读tensorflow之rnn

  • 深度学习笔记之循环神经网络RNN学习笔记

    关键词:循环神经网络;RNN;深度学习;深度神经网络 循环神经网络 RNN 李宏毅: 机器学习,深度学习的课件参考...

  • 浅析RNN循环神经网络

    冒泡!小李又上线啦~周末愉快呀今天主要是对RNN循环神经网络的一个概述。 RNN循环神经网络 定义RNN(Recu...

  • RNN总结

    RNN RNN,循环神经网络,是一种专门处理序列数据的神经网络,其基本结构如图所示: RNN的输入是序列数据x与上...

  • RNN循环神经网络

    RNN 时间序列在深度学习的解决方案就是RNN了,RNN又叫循环神经网络。 它可以表示为该图。 又一个神经网络递归...

  • RNN概述

    RNN简介 RNN(递归神经网络)包括Recurrent Neural Network和Recursive Neu...

网友评论

      本文标题:神经网络之RNN

      本文链接:https://www.haomeiwen.com/subject/hmihkxtx.html