我正在使用NLTK对文档进行分类,每个文档有1个标签,共有10种类型的文档。
为了进行文本提取,我正在清理文本(去除标点符号、HTML标记、小写化),删除nltk.corpus.stopwords以及我自己的停用词集合。
对于我的文档特征,我正在查看所有50k个文档,并收集前2k个单词,按频率排序(frequency_words),然后对于每个文档,确定文档中也在全局frequency_words中的单词。
然后,我将每个文档作为
我遇到的问题:
为了进行文本提取,我正在清理文本(去除标点符号、HTML标记、小写化),删除nltk.corpus.stopwords以及我自己的停用词集合。
对于我的文档特征,我正在查看所有50k个文档,并收集前2k个单词,按频率排序(frequency_words),然后对于每个文档,确定文档中也在全局frequency_words中的单词。
然后,我将每个文档作为
{word: boolean}
哈希映射传递给nltk.NaiveBayesClassifier(...),我在总文档数方面采用20:80的测试训练比例。我遇到的问题:
- 这个由NLTK提供的分类器是否适用于多标签数据?所有我看到的例子都更多地涉及2类分类,例如某物是被声明为积极或消极。
- 这些文档应该具有一组关键技能,但不幸的是,我没有一个包含这些技能的语料库。因此,我采用了一种理解方式,即每个文档的单词计数不是一个好的文档提取器,这样做正确吗?每个文档都是由个人编写的,所以我需要留下个体差异的空间。我知道SkLearn MBNaiveBayes 处理单词计数。
- 是否有其他库或此算法的变体我应该使用?
谢谢!