numpy log1p()和exmp1()

xiaoxiao2025-06-09  8

log1p和expm1

原文 https://blog.csdn.net/qq_36523839/article/details/82422865?utm_source=blogxgwz0

log1p = log(x+1) 即ln(x+1) expm1 = exp(x)-1

log1p函数有它存在的意义,即保证了x数据的有效性,当x很小时(如 两个数值相减后得到x = 10^{-16}),由于太小超过数值有效性,用log(x+1)计算得到结果为0,换作log1p则计算得到一个很小却不为0的结果,这便是它的意义(用泰勒公式来展开运算的)。

对于x的小值,这个函数提供了比exp(x) - 1更高的精度。

>>> np.expm1(1e-10) 1.00000000005e-10 >>> np.exp(1e-10) - 1 1.000000082740371e-10

log1p 和 expm1 互为逆运算

y = log ⁡ ( 1 + x ) y = \log(1+x) y=log(1+x) e x p ( y ) = 1 + x exp(y) = 1+x exp(y)=1+x x = e x p ( y ) − 1 x = exp(y) - 1 x=exp(y)1

转载请注明原文地址: https://www.6miu.com/read-5031565.html

最新回复(0)