【发布时间】:2014-11-14 03:23:25
【问题描述】:
我有一个概率列表,我需要将其标准化为等于 1.0。
例如probs = [0.01,0.03,0.005]
我意识到这是通过将每个概率除以probs 的总和来完成的。但是,如果概率变得非常小,Python 会告诉我sum(probs)=0.0。我知道这是一个下溢问题。我想我应该使用每个概率的对数。我该怎么做?
【问题讨论】:
-
你想让它们在 [1-0] 之间吗?这就是规范化的意思。
-
我认为他想将每个值乘以某个常数,使
sum(probs)等于一。 -
您确定这不是打印问题吗?如果数组中的各个元素不完全为零,则总和应该是机器可表示的,但可能您的打印选项仅将其显示为零。
标签: python probability