概述
词性标注是许多NLP下游的前置任务,比如我需要一句话以动词进行分割,或者单纯想要将每个词的词性作为一项特征,此时便需要用到词性标注。
词性标注的通常做法是基于一个标注语料库进行有监督的训练,通常不同领域的词性标注也不一样,我们介绍两种通用领域的词性标注方法
方法
NLTK
最常用的词性标注方法,但是准确率相对较低
text="I am good."
result=nltk.pos_tag(nltk.word_tokenize(text))
StanfordNLP
安装
首先安装stanfordcorenlp
包
pip install stanfordcorenlp
在官网上下载CoreNLP
压缩包
下载地址
将下载的压缩包中的slf4j-api.jar
和stanford-corenlp-x.x.x.jar
和stanford-corenlp-x.x.x-models.jar
解压到某一个文件夹下,该文件夹路径将作为api调用模型的路径
使用
text="I am good."
from stanfordcorenlp import StanfordCoreNLP
model=StanfordCoreNLP("../models/StanfordNLP",lang="en")
result=model.pos_tag(text)
还有其他的一些功能,如分词和句法分析等
网页版
一个基于django建立的网站,里面提供了进行常见NLP功能如分词和词性标注的网页交互和api等
链接