当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python SciPy special.log_expit用法及代码示例


本文简要介绍 python 语言中 scipy.special.log_expit 的用法。

用法:

scipy.special.log_expit(x, out=None) = <ufunc 'log_expit'>#

逻辑 sigmoid 函数的对数。

逻辑 sigmoid 函数的 SciPy 实现是 scipy.special.expit ,因此该函数称为 log_expit

该函数在数学上等同于 log(expit(x)) ,但其公式是为了避免大(正或负)幅度的输入的精度损失。

参数

x array_like

log_expit 应用于元素的值。

out ndarray,可选

函数结果的可选输出数组

返回

out 标量或 ndarray

计算值,与 x 形状相同的 ndarray。

注意

作为 ufunc,log_expit 采用许多可选关键字参数。欲了解更多信息,请参阅ufuncs

例子

>>> import numpy as np
>>> from scipy.special import log_expit, expit
>>> log_expit([-3.0, 0.25, 2.5, 5.0])
array([-3.04858735, -0.57593942, -0.07888973, -0.00671535])

大的负值:

>>> log_expit([-100, -500, -1000])
array([ -100.,  -500., -1000.])

请注意,expit(-1000) 返回 0,因此天真的实现 log(expit(-1000)) 返回 -inf

大的正值:

>>> log_expit([29, 120, 400])
array([-2.54366565e-013, -7.66764807e-053, -1.91516960e-174])

将其与天真的实现进行比较:

>>> np.log(expit([29, 120, 400]))
array([-2.54463117e-13,  0.00000000e+00,  0.00000000e+00])

第一个值只能精确到 3 位,较大的输入会丢失所有精度并返回 0。

相关用法


注:本文由纯净天空筛选整理自scipy.org大神的英文原创作品 scipy.special.log_expit。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。