CS224N Natural Language Processing with Deep Learning Lecture 18
课程主页:https://web.stanford.edu/class/archive/cs/cs224n/cs224n.1194/
视频地址:https://www.bilibili.com/video/av46216519?from=search&seid=13229282510647565239
这里回顾CS224N Lecture 18的课程内容,这一讲主要介绍了Tree Recursive Neural Networks以及constituency parsing。
备注:图片均来自课程课件。
语言的语义解释–不只是词向量
人们通过较小元素的语义组成来解释较大文本单元(实体,描述性术语,事实,论据,故事)的含义。
语言是递归的吗
- 在认知上有些争议(会产生长度无限的语言)
- 但是:递归对于描述语言是很自然的
- [The person standing next to [the man from [the company that purchased [the firm that you used to work at]]]]
- 这是语言结构非常强大的先决条件
例如解析树就是递归结构:
将短语映射到向量空间
句子的含义(向量)由如下两个部分构成:
- 词语的含义
- 结合它们的规则
(Tree)递归神经网络用于结构预测
输入:两个候选孩子节点的向量表示
输出:
- 两个节点合并后的语义表示。
- 新节点的可信度得分。
计算公式如下:
(Tree)递归神经网络解析(贪婪法)
对相邻节点计算分数和向量,然后选择分数最高的部分作为新的节点,过程如下:
关于结构反向传播(BTS)
和传统的反向传播类似,见课件29至34。
简单的TreeRNN
- 单矩阵TreeRNN的结果不错
- 单个权重矩阵TreeRNN可以捕获某些现象,但不足以用于更复杂,更高阶的组合和解析长句子
- 输入的单词之间没有真正的互动
- 所有语法类别,标点符号等的合成功能均相同
Syntactically-Untied RNN(SURNN)
- 符号无上下文语法(CFG)主干足以满足基本的语法结构
- 我们使用子节点的句法类别来选择合成矩阵
- TreeRNN在不同的句法环境下使用不同的合成矩阵可以做得更好
- 结果为我们提供了更好的语义
Matrix-Vector Recursive Neural Networks(MVRNN)
对每个短语(单词)用一个向量以及一个矩阵描述,公式如下:
Recursive Neural Tensor Network(RNTN)
计算公式如下:
其中$V\in \mathbb{R}^{2 d \times 2 d \times d}$
Tree-structured LSTM
将LSTM和树结构结合。
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 Doraemonzzz!
评论
ValineLivere