词性标注(Part-Of-Speech tagging, POS tagging)也被称为语法标注(grammatical tagging)或词类消疑(word-category disambiguation),是
语料库语言学(corpus linguistics)中将
语料库内单词的词性按其含义和上下文内容进行标记的文本数据处理技术。
词性标注是随着语料库的建立而提出的,在其发展初期是语料库中
语法分析器(parser)的组件之一,词性标注的早期工作包括
宾夕法尼亚大学(University of Pennsylvania)TDAP(Transformations and Discourse Analysis Project)项目中的语法结构模型,以及Sheldon Klein和Robert F. Simmons通过人工指定的上下文规则建立的自动化词性标注系统CGC(Computational Grammar Coder)。1971年,Barbara B. Greene和Gerald M. Rubin以Klein and Simmons (1963)为基础开发了词性标注系统TAGGIT,并首次对大规模词库Brown Corpus进行了词性标注。
1985年,Andrew D. Beale使用统计学习方法为Lancaster-Oslo-Bergen Corpus开发了词性标注系统CLAWS (Constituent-Likelihood Automatic Word tagging System),1987年,Steven DeRose使用
动态规划方法对Brown Corpus进行了词性标注。统计学习方法的成功和更大规模的语料库,例如British National Corpus的出现,为词性标注研究中机器学习方法的引入奠定了基础。二十世纪80-90年代,学界开始尝试使用
隐马尔可夫模型(Hidden Markov Model, HMM)进行词性标注并取得了成功,以HMM为代表的词性标注方法也由此被广泛应用于各类大规模语料库的NLP和文本挖掘。
词性标注在本质上是分类问题,将语料库中的单词按词性分类。一个词的词性由其在所属语言的含义、形态和语法功能决定。以汉语为例,汉语的词类系统有18个子类,包括7类体词,4类谓词、5类虚词、代词和感叹词。词类不是闭合集,而是有兼词现象,例如“制服”在作为“服装”和作为“动作”时会被归入不同的词类,因此词性标注与上下文有关。对词类的理论研究可以得到基于人工规则的词性标注方法,这类方法对句子的形态进行分析并按预先给定的规则赋予词类。
词性标注的
机器学习算法主要为序列模型,包括HMM、最大熵马尔可夫模型(Maximum Entropy Markov Model, MEMM)、
条件随机场(Conditional random fields,CRFs)等广义上的
马尔可夫模型成员,以及以
循环神经网络(Recurrent Neural Network, RNN)为代表的
深度学习算法。此外,一些机器学习的常规分类器,例如
支持向量机(Support Vector Machine, SVM)在改进后也可用于词性标注。
词性标注是文本数据的预处理环节之一,原始文本在NLP或文本挖掘应用中,首先通过字符分割(word segmentation)和字符嵌入(word embedding)被向量化,随后通过词性标注得到高阶层特征,并输入
语法分析器执行
语义分析(sentiment analysis)、
指代消解(coreference resolution)等任务。