词性标注是对句子中的每个词贴上合适的词性标签,所谓词性就是动词、名词、形容词等分类(又是分类…)。词性标注是很多NLP任务的预处理步骤,比如知道句子中每个词的词性后,再进行句法分析就容易多了。当然词性标注并不是一个必须的预处理。
词性标注之所以能成为独立的研究主题还在于 NLP的终极目标–理解语言-目前看来还是遥不可及的,革命既然不能一蹴而就,那就先瞄准简单可实现的目标,基于此完成一些不需要理解语义也能完成的任务:如信息提取。
a 训练数据量。这个基本是废话,因为所有基于机器学习的任务都希望数据越
多越好。有道是”It’s not whohas the best algorithm that wins.It’s who has
the data.”;
b 词性标记集。有些词可以具备多种词性,即词性歧义,词性标记集越大,则
潜在歧义越多,标注任务也越困难(极端:如果只有一种词性,就永远不会
有歧义了,当然这是没有任何实用价值的);
c 训练集和真实数据集的差异。 简单理解就是用于训练的文本 和 真实应用的
文本差异较大,导致训练得到的模型只能拟合训练集。这一点也适用于其他
机器学习任务;
d 未登录词。这个也好理解,词典中么有的词,自然就无法判断词性了。当然
方法总是有的,下篇再讲。
上述a和c是所有机器学习任务的共同诉求或问题。这4个因素对词性标注的重要性不用我说,请看原文“It is important to stress that these types ofexternal conditions often have a stronger influence on performance than thechoice of tagging method especially when differences between methods reportedare on the order of half a percent.”
词性标注正确率达到90%是不难的,所以本书作者认为真正有意义的在于90%以上向100%的接近程度。97%的正确率看起来够高了吧?但如果以该模型为一个15词的句子标注,句子完全标注正确的概率只有63%,哈哈,坑爹吧。。。
a 为 句法分析 预处理;
b 为 词汇获取 预处理;
c 为 信息抽取 预处理;
d 其他。
词性标注单独干不成什么事,但没有它也很难干成事(注意,不是不能)。
a 万能的上下文;
b 词本身的信息,通过查字典得到。
上下文在NLP中也是个万金油,只要有足够多的上下文,就么有消除不了的歧义,么有分析不了的句法,么有标注不了的词性。