我正在使用他们的默认POS标记和默认标记化......这似乎就足够了。我也喜欢他们的默认chunker。
我正在阅读NLTK工具包书籍,但它似乎没有默认的chunker?
答案 0 :(得分:9)
您可以使用nltk.ne_chunk()方法开箱即用名为entity chunking。它需要一个POS标记元组列表:
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')])])
它将巴拉克视为一个人,但将奥巴马视为一个组织。所以,并不完美。
答案 1 :(得分:8)
我也找不到默认的chunker / shallow解析器。虽然本书描述了如何构建和训练具有示例功能的一个。提供额外的功能以获得良好的性能应该不会太困难。
请参阅第7章关于Training Classifier-based Chunkers的部分。