NLTK工具包在Python中的默认分块器是什么?
我正在使用他们的默认词性标注和默认分词,这些功能看起来已经足够用了。我也想要他们的默认分块工具。
我在看NLTK工具包的书,但似乎他们没有提供默认的分块工具?
2 个回答
8
我也找不到一个默认的分块器或浅层解析器。虽然书里有讲怎么用示例特征来构建和训练一个。想出更多的特征来提高性能应该不会太难。
可以看看第七章关于 基于分类器的分块器训练 的部分。
9
你可以使用nltk.ne_chunk()这个方法来进行命名实体识别。这个方法需要一个已经标注好词性的元组列表:
nltk.ne_chunk([('Barack', 'NNP'), ('Obama', 'NNP'), ('lives', 'NNS'), ('in', 'IN'), ('Washington', 'NNP')])
运行后会得到:
Tree('S', [Tree('PERSON', [('Barack', 'NNP')]), Tree('ORGANIZATION', [('Obama', 'NNP')]), ('lives', 'NNS'), ('in', 'IN'), Tree('GPE', [('Washington', 'NNP')])])
这个结果把Barack识别为一个人,而把Obama识别为一个组织。所以,这个识别并不是完全准确的。