朴素贝叶斯 VS 逻辑回归

来源:互联网 发布:线性映射及其矩阵表示 编辑:程序博客网 时间:2024/05/30 23:04






总结起来,有以下几点不同:

(1)     Naive Bayes是一个生成模型,在计算P(y|x)之前,先要从训练数据中计算P(x|y)和P(y)的概率,从而利用贝叶斯公式计算P(y|x)

         Logistic Regression是一个判别模型,它通过在训练数据集上最大化判别函数P(y|x)学习得到,不需要知道P(x|y)和P(y)。

(2)    Naive Bayes是建立在条件独立假设基础之上的,设特征X含有n个特征属性(X1,X2,...Xn),那么在给定Y的情况下,X1,X2,...Xn是条件独立的。



       如果要判定X属于哪一类,可以这样计算:


      Logistic Regression的限制则要宽松很多,如果数据满徐条件独立假设,Logistic Regression能够取得非常好的效果;当数据不满度条件独立假设时,Logistic Regression仍然能够通过调整参数让模型最大化的符合数据的分布,从而训练得到在现有数据集下的一个最优模型。

 (3)    当数据集比较小的时候,应该选用Naive Bayes,为了能够取得很好的效果,数据的需求量为O(log n)

          当数据集比较大的时候,应该选用Logistic Regression,为了能够取得很好的效果,数据的需求量为O( n)

    Naive Bayes运用了比较严格的条件独立假设,为了计算P(y|x),我们可以利用统计的方法统计数据集中P(x|y)和P(y)出现的次数,从而求得P(x|y)和P(y)。因而其所需的数据量要小一些,为O(log n).

     Logistic Regression在计算时,是在整个参数空间进行线性搜索的,需要的数据集就更大,为O( n)




另外解释一下线性分类器的概念:






参考:

(1)  GENERATIVE AND DISCRIMINATIVE CLASSIFIERS:NAIVE BAYES AND LOGISTIC REGRESSION

(2)  Logistic Regression and Naive Bayes (Rob)

0 0
原创粉丝点击