您好,欢迎访问三七文档
当前位置:首页 > 行业资料 > 冶金工业 > 深度学习-RNN循环神经网络
RecurrentNeuralNetworks江南大学-数媒学院-许鹏Outline1.RecurrentStructure2.Syncedseq2seq3.Seq2vec4.Vec2seq5.Seq2seq6.AttentionModel7.BidirectionalRNN8.LSTM机器翻译问答系统文本生成情感识别文本分类看图说话视频标注RecurrentStructure无输入动态系统()(1)(;)ttsfs(3)(2)(1)(;)((;);)sfsffs有输入动态系统()(1)()(,;)ttthfhx()()()(1)(2)(2)(1)(1)()(,,,...,,)(,;)ttttttthgxxxxxfhx每一个时间步计算都是用相同的激活函数和输入连接权以及循环连接权RNN—Syncedseq2seq上图是隐藏神经元之间有循环连接,并且每一个时间步都有一个输入,一个输出,这种模型可以叫做SyncedSeq2Seq。假设这里输出是预测单词或者字母,最直接的做法就是把输出当成多分类情况,使用softmax函数输出多个概率。()(1)()()()()()()()tanh()max()tttttttttabWhUxhaocVhysofto(1)()(1)()()()(1)()mod({,...,},{,...,})log(|{,...,})tttteltLxxyyLpyxx2015-ReLURNN—seq2vec右图中的网络包含三个权值,分别是U,W和V,最后损失函数采用的是标签和输出的softmax交叉熵,其实和最大似然函数最终推倒结果是一致的。右图中的网络是seq2vec模型,可以用于情感识别,文本分类等,主要针对输入为序列信号,输出为向量的模型建模RNN—vec2seq右图是一个vec2seq模型,它的输入是一个固定长度的向量,而输出是一个序列化的信号,比如文本数据。这个模型的输入x可以当作是循环神经网络的额外输入,添加到每个隐藏神经元中,同时每个时间步的输出y也会输入到隐藏神经元。在训练期间,下一个时间步的标签和上一个时间步的输出构成交叉熵损失函数,最终依旧采用BPTT算法进行训练。这样的模型可以用作imagecaptioning也就是看图说话。RNN—Encoder-Decoderorseq2seq右图是一个Encoder-Decoderseq2seq模型,它可以是输入一个序列,输出一个序列,但是不要求这两个序列长度相同,这个模型可以用于语言识别机器翻译,问答系统,文档摘要等等。一般来说输入序列叫做context,然后就和seq2vec模型一样,由这个context可以产生一个特征C,这个特征可以是向量,之后可以像vec2seq模型一样再输出一个序列。这个模型是在2014年由两个团队同时提出的,另外2015年又有团队提出可以使C成为一个变长向量,从而更好的捕捉到较长输入序列的特征,这个团队之后又提出了Attention注意力模型。RNN—AttentionModelEncoder-Decoder的局限性是编解码的唯一联系就是一个固定长度的语义向量,也就是说,编码器需要将整个序列的信息压缩进一个固定长度的向量,但这样做有两个弊端。1.语义向量无法完全表示整个序列的信息。2.先输入的信息容易被之后的信息稀释。所以有人在2015年提出了Attention模型,它将输入序列编码成一个向量序列,解码的时候会从这个向量序列里面挑选一个子集。向量序列是输入序列的不同区间产生的,所以包含了整个序列的信息,在解码时每个输出都会注意到不同的输入序列区间,也就是注意力模型。RNN—AttentionModel11111111(,)exp()exp()(,,)(|,...,,)(,,)xxijijTijijikkTiijjjiiiiiiiiieasheechsfsycpyyyxgyscRNN—BidirectionalRNNs右图是双向RNN模型,可以发现它的输出层,既接受了从左向右传播的隐藏层的输出,也接受了从右向左传播的隐藏层的输出。RNN—LSTM11111()()'tanh()()()()**'()()()*tanh()()tfxtfhtftCxtChtCtixtihtittttttoxtohtotttfWxWhbaCWxWhbbiWxWhbcCfCiCdoWxWhbehoCf输入门遗忘门总输入输出门2015年Hinton提出了IRNN,其中采用了ReLU激活神经元,并且对整个网络的权值进行的某种初始化,使得最终的模型效果在很多实验上达到了和LSTM相匹敌的效果ImageCaptioningCNN+RNN
本文标题:深度学习-RNN循环神经网络
链接地址:https://www.777doc.com/doc-7310050 .html