Part 1、句法结构:一致性和相关性
1、语言学上的两种观点:
(1)短语结构文法
这种短语语法用固定数量的rule分解句子为短语和单词、分解短语为更短的短语或单词……一个取自WSJ语料库的短语结构树示例:
(2)依存结构:用单词之间的依存关系来表达语法。如果一个单词修饰另一个单词,则称该单词依赖于另一个单词。一个由HanLP输出的依存句法树如下:
Part 2、依存句法
这节课以及练习用的都是依存句法树,而不是短语结构树。这并不是随机选择,而是由于前者的优势。90年代的句法分析论文99%都是短语结构树,但后来人们发现依存句法树标注简单,parser准确率高,所以后来(特别是最近十年)基本上就是依存句法树的天下了(至少80%)。
不标注依存弧label的依存句法树就是短语结构树的一种:
一旦标上了,两者就彻底不同了:
这里箭头的尾部是head(被修饰的主题),箭头指向的是dependent(修饰语)。
句法分析可用特征:
- 双词汇亲和
- 词语间距,因为一般相邻的词语才具有依存关系
- 中间词语,如何中间词语是动词或者标点,两边词语不太可能存在依存关系
- 词语配价,一个词语最多有几个依赖者
约束条件:
- ROOT只能被一个词依赖
- 无环
有个学生问是否可以将一个依存句法树还原成句子,答案是否定的。
依存句法分析方法有:
- Dynamic programming:估计是找出以某head结尾的字串对应的最可能的句法树
- Graph algorithms:最小生成树。
- Constraint Satisfaction:估计是在某个图上逐步删除不符合要求的边,直到成为一棵树。
- “Transition-based parsing” or “deterministic dependency parsing”:主流方法,基于贪心决策动作拼装句法树。