我尝试使用nltk以一种非常低保真的方式自动分类新闻文章。我已经创建了一个与我的类别(如教师/EDU,computer/TECH等)相关联的单词/标记对的自定义语料库,我一直在阅读,并且this question让我非常接近,但是我仍然被卡住了。在
根据目前为止我的代码,我如何使用标记器标记我的句子?在
import nltk
# Loads my custom word/tag corpus
from nltk.corpus.reader import TaggedCorpusReader
reader = TaggedCorpusReader('taggers','.*')
#Sets up the UnigramTagger
default_tagger = nltk.data.load(nltk.tag._POS_TAGGER)
tagger = nltk.tag.UnigramTagger(model=reader.tagged_words(), backoff=default_tagger)
#Sample content
sent = 'The students went to school to ask their teacher what the homework for the day was but she told them to check their email.'
tokens = nltk.tokenize.word_tokenize(sent)
# Sad Panda
tagged = tagger.tag(tokens)
# ^ produces AttributeError: 'ConcatenatedCorpusView' object has no attribute 'get'
这也是很可能的,这是一个糟糕的方式去做我想做的事情,但它似乎足够好的第一次运行。提前谢谢。在
标记器用于词性标记,而不是文本分类。看看路透社的语料库——它使用一个分类文件将新闻文章分为多个类别。那么看看nltk.分类模块和阅读如何训练文本分类器。在
相关问题 更多 >
编程相关推荐