我正在读一本关于机器学习的书。在NaiveBayes一章中,我遇到了一个问题:
# Create Bernoulli Naive Bayes object with prior probabilities of each class
classifer = BernoulliNB(class_prior=[0.25, 0.5])
目标向量只有两类(二元分类)
为什么class_prior
列表的值总和不等于1?两个可能的类别,两个先验概率。所以这似乎是一个矛盾。我忘了统计中的一些东西了吗?我对class_prior
的理解有误吗
这似乎是个印刷错误
GaussianNB
检查优先级的总和是否为1here,但基于_BaseDiscreteNB
的模型不检查。见_update_class_log_prior和fit模型似乎默默地接受了先验知识。来自
predict_proba
的最终输出似乎产生了相同的输出,就好像您缩放了之前的单位和一样;联合对数似然是均匀移动的,我猜数学计算出来了(我没有检查),所以实际预测是相同的。如果有兴趣,请查看this notebook相关问题 更多 >
编程相关推荐