在pythonnltk中使用自己的语料库进行分类

2024-06-01 06:12:01 发布

您现在位置:Python中文网/ 问答频道 /正文

如何使用Python的分类库来管理Python的分类,但实际上如何使用Python的corxti/category来装载我的文本?在

>>> from nltk.corpus.reader import CategorizedPlaintextCorpusReader
>>> reader = CategorizedPlaintextCorpusReader('/ebs/category', r'.*\.txt', cat_pattern=r'(.*)\.txt')
>>> len(reader.categories())
234

Tags: from文本importtxtlen分类corpusreader
1条回答
网友
1楼 · 发布于 2024-06-01 06:12:01

假设您想要一个朴素的Bayes分类器,它具有单词包功能:

from nltk import FreqDist
from nltk.classify.naivebayes import NaiveBayesClassifier

def make_training_data(rdr):
    for c in rdr.categories():
        for f in rdr.fileids(c):
            yield FreqDist(rdr.words(fileids=[f])), c

clf = NaiveBayesClassifier.train(list(make_training_data(reader)))

得到的clfclassify方法可以用于任何FreqDist的单词。在

(但请注意:从你的cap_pattern看来,你的语料库中每个文件都有一个样本一个类别。请检查一下这是否真的是你想要的。)

相关问题 更多 >