作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
(1)问题的简单版:
如何计算 log(P1+P2+...+Pn),给定 log(P1), log(P2), ..., log(Pn),而不用任何项的 exp 得到原始 Pi。我不想得到原始的 Pi,因为它们非常小,可能会导致数字计算机下溢。
(2)长版问题:
我正在使用贝叶斯定理来计算条件概率 P(Y|E)。
P(Y|E) = P(E|Y)*P(Y) / P(E)
P(E|Y) = P(E1|Y) * P(E2|Y) * ... * P(E1000|Y)
log(P(E|Y)) = log(P(E1|Y)) + log(P(E2|Y)) + ... + log(P(E1000|Y))
P(E) = sum of P(E|Y)*P(Y)
log(P(E))
不等于 log
(P(E|Y)*P(Y))
的总和.我应该如何获得
log(P(E))
无需求解
P(E|Y)*P(Y)
(它们是极小的数字)并将它们相加。
最佳答案
您可以使用
log(P1+P2+...+Pn) = log(P1[1 + P2/P1 + ... + Pn/P1])
= log(P1) + log(1 + P2/P1 + ... + Pn/P1])
log(P1+P2+...+Pn) = log(maxP) + log(1+P2/maxP + ... + Pn/maxP)
关于math - 如何从其组件对数项计算对数(项的总和),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22009862/
我是一名优秀的程序员,十分优秀!