【米尔MYS-8MMX】米尔MYS-8MMQ6-8E2D-180-C应用三——NLP词性分析与应用
上篇我们说到可以利用jieba进行分词,这篇我们继续研究jieba的使用。
在jieba中,还有一个很重要的功能,就是对词性进行标注,支持对不同词性进行标注。现代汉语中的词性分为实词、虚词、叹词、拟声词四个大类。
实词(有实际意义的词,能独立充当句子成分,即有词汇意义和语法意义),包括体词(名词、数词和量词)、谓词(动词和形容词)、加词(副词)和代词(主要作用是替代,可替代名词、数词、量词、动词、形容词和副词。所替代的对象不同,语法功能就不同)。
虚词(没有完整意义但有语法意义或功能的词。其必须依附于实词或语句来表示语法意义,不能单独成句、单独作语法成分、重叠),包括关系词(连词和介词)和辅助词(助词和语气词)。
拟声词和叹词既不属于实词和虚词,同为特殊词类分类。其特点是在句子中通常不跟其他词发生结构关系。
NLP中,对语言的分析,除了分词外,还可以对词性进行标注。以jieba为例,使用缺省词库,常用的标注有:
x:标点符号
eng:英语单词
a:形容词
n:名称
nr:人名
ns :地名
nt机构团体
r:代词
t:时间
f:方位
我们不妨仍然以《战争与和平》来分析一下,看看里面提到的人名有多少,认为提到少于15次的名字不考虑。
可以看到,jieba对词语的词性识别并不是特别准确,陆军、元帅等都识别成为人名。
也许是外文的原因?我们找个武侠小说,拿《天龙八部》试试?
可以看到不仅词性标注有问题,连分词都产生了错误,例如:向萧峰、童姥道等等,显然是需要修正的。
在下一篇,我们考虑引入自定义字典来实现同样功能,并制作字典优化