2013-02-27 331 views
2

我需要为多种语言的文本进行名称实体提取:西班牙语,葡萄牙语,希腊语,捷克语,中文。支持哪些语言的nltk.word_tokenize和nltk.pos_tag

是否有某处列出了这两个函数支持的所有语言?有没有一种方法使用其他语料库,以便可以包含这些语言?

回答

2

默认情况下,这两个函数仅支持英文文本。这不是真正的文档中,但你可以通过查看源代码中看到它:

  1. pos_tag()函数从该文件加载恶搞:'taggers/maxent_treebank_pos_tagger/english.pickle'。 ()

  2. word_tokenize()函数使用Treebank标记器,该标记器使用正则表达式来标记文本,如同在(英文)Penn Treebank语料库中一样。 (see here

+0

但是word_tokenize与西方语言很好地配合。这是否意味着我可以使用它,但不适用于不将单词与空格分开的语言? – Michael 2013-03-01 10:28:52

+0

他们解释算法[这里](http://www.cis.upenn.edu/~treebank/tokenization.html)。由于西方语言通常由空间隔离,因此应该可以正常工作。我只用德语试过,看起来没问题。 – 2013-03-01 15:15:33