9

我正在使用他们的默认 POS 标记和默认标记化..这似乎就足够了。我也想要他们的默认分块器。

我正在阅读 NLTK 工具包书,但他们似乎没有默认的分块器?

4

2 回答 2

9

您可以使用 nltk.ne_chunk() 方法开箱即用地命名实体分块。它需要一个 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')])])

它将巴拉克确定为一个人,但将奥巴马确定为一个组织。所以,并不完美。

于 2009-11-06T13:49:23.790 回答
8

我也找不到默认的分块器/浅层解析器。尽管本书描述了如何使用示例功能构建和训练一个。想出额外的特性来获得良好的性能应该不会太难。

请参阅第 7 章关于训练基于分类器的块的部分。

于 2009-11-07T04:10:04.607 回答