gpt4 book ai didi

algorithm - 贝叶斯分类器的实现细节

转载 作者:塔克拉玛干 更新时间:2023-11-03 05:48:36 25 4
gpt4 key购买 nike

我已经实现了一个简单的贝叶斯分类器,但在处理大量数据时遇到了一些溢出问题。

为了使数字保持较小但仍然精确,我尝试了一个策略,即不断减少等式每一部分的分子和分母与最大公约数。然而,这仅在它们具有公约数时才有效...

请注意,问题是双向的,当我在大多数计算中将分母和分子分开时,我会遇到整数溢出问题,当我使用双重算术即时进行大多数计算时,我会遇到各种各样的问题非常小的 double 值所具有的问题/限制(由 IEEE 754 定义)。

我敢肯定你们中的一些人之前已经实现了这个算法,你们是如何处理这些问题的?我不想引入任意精度类型,因为它们成本太高,而且我确信存在不需要它们的解决方案。

谢谢。

最佳答案

通常你处理这个问题的方法是获取日志并使用 adds,然后如果你想回到概率空间则做一个 exp。

p1 * p2 * p3 * ... * pn = exp(log(p1) + log(p2) + log(p3) + ... log(pn))

您可以通过在日志空间中工作来避免欠流。

关于algorithm - 贝叶斯分类器的实现细节,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8001763/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com