如何在python crfsuite中使用Conll 2003语料库

时间:2017-08-10 17:19:26

标签: machine-learning nlp crfsuite python-crfsuite

我已经下载了Conll 2003语料库(" eng.train")。我想用它来使用python crfsuite培训提取实体。但我不知道如何加载此文件进行培训。

我找到了这个例子,但不是英语。

train_sents = list(nltk.corpus.conll2002.iob_sents('esp.train'))
test_sents = list(nltk.corpus.conll2002.iob_sents('esp.testb'))

同样在将来我想培训除POS或位置以外的新实体。我该如何添加。

另请建议如何处理多个单词。

1 个答案:

答案 0 :(得分:0)

您可以使用 ConllCorpusReader

此处是常规提示ConllCorpusReader('file path', 'file name', columntypes=['','',''])

以下是您可以使用的列类型的列表'WORDS', 'POS', 'TREE', 'CHUNK', 'NE', 'SRL', 'IGNORE'

示例

from nltk.corpus.reader import ConllCorpusReader

train = ConllCorpusReader('CoNLL-2003', 'eng.train', ['words', 'pos', 'ignore', 'chunk'])
test = ConllCorpusReader('CoNLL-2003', 'eng.testa', ['words', 'pos', 'ignore', 'chunk'])