朴素贝叶斯和逻辑回归的错误率

7

我一直在试图弄清楚这两个模型中的误差率和特征数量之间的相关性。我看了一些视频,视频的作者说一个简单的模型可能比一个复杂的模型更好。所以我想,我有更多的特征,误差率就会更高。但是在我的工作中,这并没有证明是正确的,当我有较少的特征时,误差率反而上升了。我不确定我是否做错了什么,或者那个视频中的人犯了一个错误。有人能解释一下吗?我也很好奇特征与逻辑回归的误差率之间的关系。


3
这不是一个编程问题;http://stats.stackexchange.com 更加合适。 - Danica
2
话虽如此,“简单模型可能比复杂模型更好”并不意味着简单模型总是比复杂模型更好;这是一种权衡。否则,一个恒定的预测器将是最好的模型,那么就不会有机器学习这样的领域了。 - Danica
谢谢,从现在开始我会在那里提出我的问题。 - Taztingo
如果事件空间相同,则逻辑回归分类器的复杂度与朴素贝叶斯分类器相同——它们形成生成/判别对,并具有相同的分类规则形式。请参阅http://ai.stanford.edu/~ang/papers/nips01-discriminativegenerative.pdf。 - Ben Allison
1个回答

27

朴素贝叶斯和逻辑回归是一对“生成-判别”算法,意味着它们具有相同的模型形式(线性分类器),但是采用不同的参数估计方法。

对于特征x和标签y,朴素贝叶斯从训练数据中估计联合概率p(x,y) = p(y)*p(x|y)(即建立一个能够“生成”数据的模型),并使用贝叶斯规则来预测新测试实例的p(y|x)。另一方面,逻辑回归通过最小化误差函数(更多地是“判别”)直接从训练数据中估计p(y|x)。

这些差异对错误率有影响:

  1. 当训练实例非常少时,逻辑回归可能会“过度拟合”,因为没有足够的数据可靠地估计p(y|x)。朴素贝叶斯可能表现得更好,因为它对整个联合分布进行建模。
  2. 当特征集很大(且稀疏,如文本分类中的单词特征)时,朴素贝叶斯可能会“重复计数”与彼此相关的特征,因为它假设每个p(x|y)事件都是独立的,但实际上并非如此。逻辑回归可以更好地处理这些相关特征,自然地“平均分配”它们之间的影响。

如果特征确实(大部分)是条件独立的,则两种模型在具有足够数据实例的情况下可能会随着越来越多的特征而改进。问题出现在训练集大小相对于特征数量较小的情况下。在这些情况下,朴素贝叶斯特征参数的先验或逻辑回归的正则化方法(如L1/Lasso或L2/Ridge)可以帮助解决问题。


4
请注意,朴素贝叶斯模型参数上的先验分布与逻辑回归中的正则化起着相同的作用——实际上可以将正则化解释为逻辑回归模型参数的先验分布。为了使翻译更加通俗易懂,我将其简化为以下内容:注意,朴素贝叶斯模型参数的先验偏好与逻辑回归中的正则化有相同的作用,事实上,正则化也可以解释为逻辑回归模型参数的先验偏好。 - Ben Allison

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接