第3章 词性标注
上一章对自己所要做的所有预处理步骤进行了讨论,以便在工作中可以应对任何文本语料库。我们现在应该可以放心地对任何种类的文本进行解析和清理了。应该执行所有的文本预处理,如针对任意文本的标识化处理、词干提取以及停用词移除等。可以根据自己的需要执行和定制所有相关的预处理工具。到目前为止,已经重点讨论了针对文本型文档的一般性预处理工作。现在,将焦点转向那些动作更为激烈的 NLP 预处理步骤吧。
本章将具体讨论何谓词性标注,以及词性(POS)在NLP应用环境中的意义。也会学习如何用NLTK标注有意义的信息,并介绍可用于NLP密集型应用程序的各种标注器。最后,还将学习如何用NLTK来标注命名实体。详细讨论各种NLP标注器,并且还会提供一些代码片段来帮助你理解它们。还将会看到这些标注器的最佳实践,以说明在什么地方应该使用哪种标注器。在读完本章之后,读者应了解以下内容。
- 何谓词性标注,以及其在NLP中的重要性。
- 如何使用NLTK中形形色色的词性标注。
- 如何用NLTK创建自定义的词性标注。
3.1 何谓词性标注
其实,我们可能在小时候就已经听说过词性(POS)这个术语了,尤其在形容词和副词的实际使用上。要想掌握其中的窍门还是很花时间的。这两者的区别究竟是什么?或许,可以考虑将所有这方面的知识进行编码以创建一个系统。这件事看起来好像挺容易的,但这几十年来,将这些知识转化为可编码的机器学习模型一直都是一个非常难解的NLP问题。在我个人看来,虽然目前最先进的词性标注算法在预测给定单词的词性上已经有了较高的精确度(约97%),但词性标注领域中仍有大量的研究在等着我们。
对于像英语这样的语言来说,它们在新闻和其他领域往往都有许多已被标注的语料库。这为我们带来了许多先进的算法。尽管在一般情况下,这其中的一些标注器应该足以应付各种跨不同领域的、文本化的使用环境了。但在某些特定的用例中,POS的预判可能还是有些不尽如人意。对于这些用例,可能就得要从头开始建立一个标注器了。然而,如果想要深入了解POS,就得先要对机器学习领域中的一些技术有一个基本的了解。虽然这部分有些是要在第6章:文本分类中讨论的内容,但在这里,必须先讨论一下相关基础知识,以便可以创建一个自定义的POS标注器以满足需求。 ...
Get NLTK应用开发指南 now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.