3

我正在使用朴素贝叶斯做文本分类机器学习问题。我将每个单词作为一个特征。我已经能够实现它并且我得到了很好的准确性。

我可以使用单词元组作为特征吗?

例如,如果有两个课程,政治和体育。政府这个词可能出现在他们俩身上。然而,在政治中我可以有一个元组(政府、民主),而在体育课上我可以有一个元组(政府、运动员)。所以,如果一个新的文本文章是政治的,元组(政府,民主)的概率比元组(政府,运动员)的概率更大。

我问这是因为这样做我违反了朴素贝叶斯问题的独立性假设,因为我也将单个单词视为特征。

另外,我正在考虑为特征添加权重。例如,3 元组特征的权重将低于 4 元组特征。

从理论上讲,这两种方法是否不会改变朴素贝叶斯分类器的独立性假设?另外,我还没有开始使用我提到的方法,但这会提高准确性吗?我认为准确度可能不会提高,但获得相同准确度所需的训练数据量会更少。

4

2 回答 2

5

即使不添加二元组,真实文档也已经违反了独立性假设。以奥巴马在文件中为条件,总统更有可能出现。尽管如此,朴素贝叶斯在分类方面仍然做得不错,即使它给出的概率估计是无可救药的。因此,我建议您继续向分类器添加更复杂的功能,看看它们是否会提高准确性。

如果你用更少的数据得到同样的准确率,那基本上相当于用同样多的数据得到更好的准确率。

另一方面,随着数据量的减少,使用更简单、更常见的功能效果会更好。如果你试图将太多的参数拟合到太少的数据中,你往往会严重过度拟合。

但最重要的是尝试并查看。

于 2011-11-30T01:09:40.627 回答
2

不,从理论的角度来看,您并没有改变独立性假设。您只是在创建一个修改过的(或新的)样本空间。通常,一旦您开始在样本空间中使用更高的 n-gram 作为事件,数据稀疏性就会成为问题。我认为使用元组会导致同样的问题。您可能需要更多的训练数据,而不是更少。您可能还需要多考虑一下您使用的平滑类型。简单的拉普拉斯平滑可能并不理想。

我认为最重要的一点是:无论您使用什么分类器,这些特征都高度依赖于领域(有时甚至是数据集)。例如,如果您根据电影评论对文本的情感进行分类,仅使用一元组似乎违反直觉,但它们比仅使用形容词表现更好。另一方面,对于 twitter 数据集,unigrams 和 bigrams 的组合被发现是好的,但更高的 n-grams 没有用。基于这样的报告(参考 Pang 和 Lee,意见挖掘和情感分析),我认为使用更长的元组会显示类似的结果,因为毕竟单词元组只是高维空间中的点。基本算法的行为方式相同。

于 2011-11-30T19:04:06.683 回答