我正在编写一个算法,在给定模型的情况下,我计算数据集列表的可能性,然后需要对每个可能性进行归一化(概率)。所以像 [0.00043, 0.00004, 0.00321] 这样的东西可能会被转换成 [0.2, 0.03, 0.77]。我的问题是,我正在使用的对数可能性非常小(例如,在对数空间中,这些值类似于 -269647.432、-231444.981 等)。在我的 C++ 代码中,当我尝试添加其中两个(通过取它们的指数)时,我得到“Inf”的答案。我试图将它们添加到 log-space (Summation/Subtraction of log)中,但再次偶然发现了同样的问题。
任何人都可以分享他/她的专家意见吗?
谢谢