scipy.stats.Mixture.

logpdf#

Mixture.logpdf(x, /, *, method=None)[原始碼]#

機率密度函數的對數

機率密度函數(“PDF”),表示為 \(f(x)\),是隨機變數將取值 \(x\)單位長度機率。 在數學上,它可以定義為累積分布函數 \(F(x)\) 的導數

\[f(x) = \frac{d}{dx} F(x)\]

logpdf 計算機率密度函數(“log-PDF”)的對數,\(\log(f(x))\),但與樸素的實作(計算 \(f(x)\) 並取對數)相比,它在數值上可能更佳。

logpdf 接受 x 作為 \(x\)

參數:
xarray_like

log-PDF 的引數。

method{None, ‘formula’, ‘logexp’}

用於評估 log-PDF 的策略。 預設 (None),基礎架構會在以下選項之間進行選擇,並按優先順序排列。

  • 'formula':使用 log-PDF 本身的公式

  • 'logexp':評估 PDF 並取其對數

並非所有發行版都提供所有 method 選項。 如果所選的 method 不可用,則會引發 NotImplementedError

返回:
outarray

在引數 x 處評估的 log-PDF。

參見

pdf
logcdf

筆記

假設連續機率分布具有支持 \([l, r]\)。 根據支持的定義,log-PDF 在支持之外評估為其最小值 \(-\infty\) (即 \(\log(0)\));即對於 \(x < l\)\(x > r\)。 log-PDF 的最大值可能小於或大於 \(\log(1) = 0\),因為 PDF 的最大值可以是任何正實數。

對於具有無限支持的分布,當引數在理論上位於支持範圍內時,pdf 通常會返回 0 的值;發生這種情況可能是因為 PDF 的真實值太小,無法用所選的 dtype 表示。 然而,log-PDF 通常會在更大的域上是有限的(非 -inf)。 因此,為了避免下溢,可能更傾向於使用機率和機率密度的對數。

參考文獻

[1]

機率密度函數,維基百科https://en.wikipedia.org/wiki/Probability_density_function

範例

使用所需的參數實例化分布

>>> import numpy as np
>>> from scipy import stats
>>> X = stats.Uniform(a=-1.0, b=1.0)

在所需的引數處評估 log-PDF

>>> X.logpdf(0.5)
-0.6931471805599453
>>> np.allclose(X.logpdf(0.5), np.log(X.pdf(0.5)))
True