朴素贝叶斯分类器数学 - 计算精度不足

时间:2012-03-25 13:37:02

标签: math data-mining

我从数学的角度与某人讨论了朴素贝叶斯分类器。我们讨论的是如果将大量概率相乘,最终像float或double这样的原始类型将无法存储结果值,它只会变为零。

P(x1)* P(x2)* ... =计算机数量太小= 0

与我交谈过的人说,“解决方法”是记录概率,然后将它们加在一起。

log(P(x1))+ log(P(x2))+ ...

我理解获取概率日志的优势,它增加了数字的大小,使其不会“脱落”,但是如何在此之后将它们加在一起呢?是不是当你运行朴素贝叶斯时,只要你对所有分类“桶”一直这样做,你仍然可以在一天结束时找到最好的那个?

任何解释都表示赞赏。谢谢,

MJ

1 个答案:

答案 0 :(得分:5)

因为log(a*b) = log(a) + log(b)。它是对数的属性。