机器学习---朴素贝叶斯与逻辑回归的区别(Machine Learning Naive Bayes Logistic Regression Difference)

朴素贝叶斯与逻辑回归的区别:

朴素贝叶斯

逻辑回归

生成模型(Generative model)

判别模型(Discriminative model)

对特征x和目标y的联合分布P(x,y)建模,使用极大后验概率估计法估计出最有可能的P(y|x)

直接对后验概率P(y|x)建模,使用极大似然估计法使其最大化

不需要优化参数,先用极大似然估计法估计出先验概率P(y)和条件概率P(x|y),然后计算出极大后验概率P(y|x)

需要优化参数,先用极大似然估计法得出损失函数,再用梯度下降法等优化参数

假设特征之间相互独立,对于不相互独立的特征,朴素贝叶斯的分类效果会差一些

不必假设特征之间是相互独立的,对于不相互独立的特征,逻辑回归会在训练过程中对参数自动调整

Andrew Ng和Michael Jordan在2001年发了一篇NIPS短文《 On Discriminative vs. Generative classifiers: A comparison of logistic regression and naive Bayes 》,他们把这两个模型在各种数据集上面进行测试,最后得到在小数据上Naive bayes可以取得更好的效果,随着数据的增多、特征维度的增大,Logistic regression的效果更好。这是因为Naive bayes是生成模型,假设训练数据服从某种分布,在有prior的情况下模型能够把数据fit的更好,但是随着数据量的增多,prior对整个数据后验概率分布的影响逐渐降低。而Logistic regression属于判别模型,不去建模联合概率,通过训练数据直接预测输出,因此在数据足够多的情况下能够得到更好一些的效果。
上一篇:完全平方数(钟神的hao)


下一篇:深度学习实践系列(3)- 使用Keras搭建notMNIST的神经网络