我正在为一个大数据类复习幻灯片。他们说,高维奈̈ve容易发生数值下流和未观察到的事件,所以在计算朴素Bayes时,您应该使用概率日志。这些幻灯片在说什么?我认为数值下垫是由于变量类型(例如)而失去精度。大转换成整数)。但在这些幻灯片中,这似乎并不是这个词的意思。数字下溢和未观察到的事件是什么意思?如何在朴素的贝叶斯中使用概率日志来避免这些事情?
发布于 2013-10-15 01:40:32
你的电脑只有有限的精度。例如,在一台理想的计算机上,它计算事物的精度是无限的,这个小Python程序永远不会停止,它只会使打印的数字越来越接近于0。
x = 1.0
while x != 0:
x = x * .5
print x但是,由于计算机将数字存储在固定数量的位中,所以它所能表示的数字只有那么多,最终它将乘积舍入0,循环退出。
当你有很多特性时,朴素贝叶斯的计算就会这样发生。你把许多小于1的概率相乘,最终由于机器精度问题,你可以达到0。
发布于 2013-10-15 03:22:41
避免(或至少减轻)算术下溢问题的一个常见方法是使用日志概率。谷歌类似的“日志概率下探”,你应该会找到很多好的点击。
这个链接提供了一个很好的介绍。以下是其他一些:链接 链接。外面有上百万人-好好享受吧!
发布于 2013-10-17 11:34:49
顺便说一句,使用日志的一个原因是它将产品转换为和。
https://stackoverflow.com/questions/19371910
复制相似问题