3.5 小结及拓展阅读 107
3.5 小结及拓展阅读
本章将统计建模的思想应用到三个自然语言处理任务中,包括:中文分词、命
名实体识别、短语结构句法分析。它们和机器翻译有着紧密的联系,往往作为机器
翻译系统输入和输出的数据加工方法。可以发现:经过适当的假设和化简,统计模
型可以很好的描述复杂的自然语言处理问题。这种建模手段也会在后续章节的内容
中被广泛使用。
由于本章重点介绍如何用统计方法对自然语言处理任务进行建模,因此并没有
对具体的问题展开深入讨论。有几方面内容,读者可以继续关注:
• 在建模方面,本章描述了基于 1-gram 语言模型的分词、基于上下文无关文法的
句法分析等,它们都是基于人工先验知识进行模型设计的思路。也就是,问题
所表达的现象被“一步一步”生成出来。这是一种典型的生成式建模思想,它
把要解决的问题看作一些观测结果的隐含变量(比如,句子是观测结果,分词
结果是隐含在背后的变量),之后通过对隐含变量生成观测结果的过程进行建
模,以达到对问题进行数学描述的目的。这类模型一般需要依赖一些独立性假
设,假设的合理性对最终的性能有较大影响。相对于生成模型,另一类方法是
判别模型(Discriminative Model)。本章序列标注内容中提到一些模型就是判别
模型,如条件随机场
[99]
。它直接描述了从隐含变量生成观测结果的过程,这样
对问题的建模更加直接,同时这类模型可以更加灵活的引入不同的特征。判别
模型在自然语言处理中也有广泛应用
[109, 110, 111, 112, 113]
。在本书的第七章也会使用
到判别模型。
• 事实上,本章并没有对分词、句法分析中的预测问题进行深入介绍。比如,如
何找到概率最大的分词结果?这个问题的解决可以直接借鉴第二章中介绍的搜
索方法:对于基于 n-gram 语言模型的分词方法,可以使用动态规划方法
[114]
进
行搜索;在不满足动态规划的使用条件时,可以考虑使用更加复杂的搜索策略,
并配合一定的剪枝方法找到最终的分词结果。实际上,无论是基于 n-gram 语
言模型的分词还是简单的上下文无关文法都有高效的推断方法。比如,n-gram
语言模型可以被视为概率有限状态自动机,因此可以直接使用成熟的自动机工
具
[115]
。对于更复杂的句法分析问题,可以考虑使用移进- 规约算法(Shift-Reduce
Algorithm)来解决预测问题
[116]
。
• 从自然语言处理的角度来看,词法分析和句法分析中的很多问题都是序列标
注问题,例如本章介绍的分词和命名实体识别。此外序列标注还可以被扩展到
词性标注
[117]
、组块识别
[118]
、关键词抽取
[119]
、词义角色标注
[120]
等任务,本章
着重介绍了传统的方法,前沿方法大多与深度学习相结合,感兴趣的读者可以
自行了解,其中比较有代表性的使用双向长短时记忆网络对序列进行建模,之
后于不同模型进行融合得到最终的结果,例如,与条件随机场相结合的模型
(BiLSTM-CRF)
[121]
、与卷积神经网络相结合的模型(BiLSTM-CNNs)
[122]
、与