我们如何使用TFIDF向量与多项式朴素贝叶斯?

问题描述 投票:0回答:1

假设我们使用TFIDF转换将文档编码为连续值特征。

我们现在如何使用它作为朴素贝叶斯分类器的输入?

Bernoulli naive-bayes已经出局了,因为我们的功能不再是二进制了。 似乎我们也不能使用Multinomial naive-bayes,因为这些值是连续的而不是分类的。

作为替代方案,使用高斯朴素贝叶斯代替它是否合适?在高斯分布假设下,TFIDF向量是否可能保持良好状态?

关于MultionomialNB的sci-kit学习文档建议​​如下:

多项式朴素贝叶斯分类器适用于具有离散特征的分类(例如,用于文本分类的字数)。多项分布通常需要整数特征计数。然而,在实践中,诸如tf-idf的分数计数也可以起作用。

从根本上不可能使用MultinomialNB的小数值吗? 据我了解,似然函数本身假设我们正在处理离散计数(since it deals with counting/factorials

TFIDF值如何使用此公式?

scikit-learn tf-idf naivebayes
1个回答
1
投票

从技术上讲,你是对的。 (传统)多项式N.B.模型将文档D视为词汇大小的特征向量x,其中每个元素xi是文档I的计数。根据定义,该向量x遵循多项分布,导致MNB的特征分类函数。

当使用TF-IDF权重而不是术语计数时,我们的特征向量(很可能)不再遵循多项分布,因此分类函数在理论上不再具有良好的基础。然而,事实证明,tf-idf权重代替计数工作(更好)。

TFIDF值如何使用此公式?

以完全相同的方式,除了特征向量x现在是tf-idf权重的向量而不是计数。

您还可以查看在sklearn tfidf-vectorizer中实现的Sublinear tf-idf加权方案。在我自己的研究中,我发现这个表现更好:它使用术语频率的对数版本。这个想法是当一个查询术语在doc中出现20次时。一次和一次在doc。 b,doc。 a(可能)不应该被认为是重要的20倍,但更可能是log(20)次的重要。

© www.soinside.com 2019 - 2024. All rights reserved.