當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


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。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。