NLP深度学习 —— CS224学习笔记10
来源:互联网 发布:蚁群算法代码 编辑:程序博客网 时间:2024/05/16 15:29
2.3 深度双向RNN
到目前我们都是使用以前的词来预测后面的词。
双向深度神经网络是在每个时间点t,同时有2个隐藏层,一个从左往右传播,一个从右往左传播。
最后的分类结果由两个的结合产生。
方程式表达为
多层的深度结构为
2.4 应用:RNN翻译模型
我们讨论有RNN来替代传统翻译模型的可能性。
这里前3个隐藏层时间点编码来源语言,后2个将h3解码到目标语言。
编码阶段
解码阶段
实践中对交叉熵函数做一些扩展来提高翻译的准确性
一是为编码和解码训练不同的RNN权重,这使两个部分解耦并提高准确度,意味着编码和解码阶段的权重矩阵不同。
二是在解码是用三个不同输入计算每个隐藏状态:此前的隐藏状态(标准),编码的最后一个隐藏层,此前预测的输出词。
三是用多个RNN层训练深度RNN,更深的层提供更强的学习能力。
四是训练双向编码器以提高准确度。
五是考虑到梯度消失问题,逆转输入的顺序可以降低输出阶段的错误率。
3 GRU
GRU使RNN更能捕捉长期的信息。
GRU有4个操作阶段:
a 新记忆产生,新输入词x_t和之前的隐藏状态h_t-1,生成新的h_t。
b 重置门,重置信号r_t,决定h_t-1对于h_t的重要性,如果觉得与新记忆无关,可以完全消除过去的记忆。
c 更新门,更新信号z_t决定多大程度h_t-1应被输入下一个阶段。
d 隐藏状态,更具更新门的结果,隐藏状态h_t生成。
4 LSTM
LSTM动机与GRU相同,但单元结构不同。
LSTM由5个阶段操作:
a 生成新记忆,与GRU想同根据输入词和此前状态生成新的记忆状态。
b 输入门,根据新的输入词和此前的隐藏状态判断,生成i_t来指示新的输入是否值得保留。
c 遗忘门, 评估此前的记忆单元对于计算当前记忆单元是否有用,不考虑输入词。
d 最终记忆生成,根据遗忘门和输入门的结果生成最终记忆。
e 输出/展示门,这个门在GRU不显性存在,目的是将最终记忆和隐藏状态区分开来。最终记忆包含很多信息,但并不必要保存在隐藏状态中。隐藏状态被用于LSTM的每个门中,因此这个门评估记忆中的哪些部分要在隐藏状态中展示/保留。
- NLP深度学习 —— CS224学习笔记10
- NLP深度学习 —— CS224学习笔记 1
- NLP深度学习 —— CS224学习笔记2
- NLP深度学习 —— CS224学习笔记3
- NLP深度学习 —— CS224学习笔记4
- NLP深度学习 —— CS224学习笔记5
- NLP深度学习 —— CS224学习笔记6
- NLP深度学习 —— CS224学习笔记7
- NLP深度学习 —— CS224学习笔记8
- NLP深度学习 —— CS224学习笔记9
- NLP深度学习 —— CS224学习笔记12
- CS224 LectureNote4学习笔记
- NLP深度学习 —— CS 224学习笔记 11
- CS224 LectureNotes2的学习笔记
- NLP深度学习资源
- 深度学习笔记——理论与推导之Structured Learning【NLP】(十二)
- Stanford深度学习与自然语言处理讲义下载(CS224)
- 深度学习-->NLP-->语言模型
- rqnoj 99
- 新版10澳元纸币下月起正式推出!
- Java并发包中CopyOnWrite容器相关类简介
- CentOS下安装开发软件过程
- C++primer阅读笔记-----------重载运算与类型转换
- NLP深度学习 —— CS224学习笔记10
- 年总
- 2017多校联合第四场/HDU 6068 Classic Quotation(kmp+dp)
- Apache HBase 入门教程
- sizeof的使用
- PHP 查找算法
- JavaScript基础
- StartUML2.8版本破解
- linux设备插拔