NumPy参考 >例行程序 >Mathematical functions > numpy.logaddexp2
numpy.
logaddexp2
(X1,X2,/,出=无,*,其中=真,铸造= 'same_kind' ,为了= 'K' ,D型细胞=无,subok =真[,签名,extobj ] )= <ufunc 'logaddexp2'> ¶以2为底的输入的幂和的对数。
计算。当计算的事件概率可能很小到超过正常浮点数的范围时,此功能在机器学习中很有用。在这种情况下,可以代替使用计算出的概率的以2为底的对数。该功能允许以这种方式添加存储的概率。log2(2**x1 + 2**x2)
输入值。如果为,则必须将它们广播为通用形状(成为输出的形状)。x1.shape != x2.shape
结果存储的位置。如果提供,它必须具有输入广播到的形状。如果未提供或没有,则返回一个新分配的数组。元组(只能作为关键字参数)的长度必须等于输出的数量。
此条件通过输入广播。在条件为True的位置,将out数组设置为ufunc结果。在其他地方,out数组将保留其原始值。请注意,如果通过default创建未初始化的out数组out=None
,则条件为False的数组中的
位置将保持未初始化。
有关其他仅关键字的参数,请参见 ufunc docs。
的以2为底的对数。如果x1和x2均为标量,则为标量。2**x1 + 2**x2
也可以看看
logaddexp
输入取幂之和的对数。
笔记
1.3.0版的新功能。
例子
>>> prob1 = np.log2(1e-50)
>>> prob2 = np.log2(2.5e-50)
>>> prob12 = np.logaddexp2(prob1, prob2)
>>> prob1, prob2, prob12
(-166.09640474436813, -164.77447664948076, -164.28904982231052)
>>> 2**prob12
3.4999999999999914e-50