朴素贝叶斯和Logistic回归误差率

时间:2013-10-02 02:34:11

标签: machine-learning

我一直试图找出错误率与这两种模型中的特征数量之间的相关性。我观看了一些视频,视频的创建者说,简单的模型可能比复杂的模型更好。所以我认为我拥有的功能越多,错误率就越大。这在我的工作中并不是真的,当我的功能较少时,错误率就会上升。我不确定我是否做错了,或者视频中的那个人犯了错误。有人可以解释一下吗?我也很好奇功能如何与Logistic回归的错误率相关。

1 个答案:

答案 0 :(得分:26)

Naive Bayes和Logistic回归是一种“生成 - 判别对”,意味着它们具有相同的模型形式(线性分类器),但它们以不同的方式估计参数。

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

这些差异会影响错误率:

  1. 当训练实例非常少时,逻辑回归可能会“过度拟合”,因为没有足够的数据来可靠地估计p(y | x)。朴素贝叶斯可能做得更好,因为它模拟整个联合分布。
  2. 当特征集很大(和稀疏,如文本分类中的单词特征)时,朴素贝叶斯可能会“重复计算”彼此相关的特征,因为它假设每个p(x | y)事件是独立的,当他们不是。 Logistic回归可以通过在这些相关特征之间自然地“分割差异”来做得更好。
  3. 如果功能确实(大部分)是有条件独立的,那么只要有足够的数据实例,这两个模型实际上可能会随着越来越多的功能而改进。当训练集大小相对于特征数量较小时,问题就出现了。在逻辑回归上使用朴素贝叶斯特征参数或正则化方法(如L1 / Lasso或L2 / Ridge)的推荐可以帮助解决这些问题。