POS标记 - NLTK- Python

时间:2015-09-07 09:02:05

标签: python nltk

我想使用word_tokenize, pos_tag, FreqDist。我不想默认下载所有nltk。我想使用nltk.download(info_or_id='')。我应该在info_or_id中添加什么选项来获取POS标记及其频率。 POS标签 - Penn Treebank POS。

2 个答案:

答案 0 :(得分:0)

如果您查看语料库http://www.nltk.org/nltk_data/,则每个说明都包含其ID,例如棕色,wordnet,book_grammars。您选择哪个取决于您的应用程序。寻找标记的语料库,例如布朗包括POS,你必须看看每一个,我想,看看。 Treebank提到了Penn Treebank(id treebank),也是Sinica Treebank(id sinica_treebank)。请参见下文标题Parsed Corpora http://www.nltk.org/howto/corpus.html

答案 1 :(得分:0)

您的问题会将nltk本身与nltk_data混淆。你不能真正下载nltk的一部分(尽管如果你需要节省空间,你可以手动修剪它,小心)。但我认为您正试图避免下载所有nltk数据。正如@barny所写,当您打开交互式nltk.download()窗口时,您可以看到不同资源的ID。

  1. 要使用树库pos标记器,您需要其腌制培训表(树库语料库);你会在"模特"中找到它们。标识maxent_treebank_pos_tagger下的标签。 (因此:nltk.download("maxent_treebank_pos_tagger")

  2. FreqDist班级没有或不需要任何经过培训的模型。

  3. word_tokenize也没有,它将一个句子作为单个字符串并将其分解为单词。但是,您可能需要sent_tokenize的模型,它会将较长的文本分解为句子。这是由" Punkt"处理的。句子标记器,您可以使用nltk.download("punkt")下载其模型。

  4. PS。对于一般用途,我建议在" book"中下载所有内容。集合,即nltk.download("book")。它只占总数的一小部分,它可以让你做大部分事情,而不会经常争吵,找出缺少的东西。