bayesian_info_criterion_lsq

astropy.stats.bayesian_info_criterion_lsq(ssr, n_params, n_samples)[ソース]

ベイズ情報尺度(BIC)を計算し,観測値はガウス分布から来ると仮定する.

本例では、BICは、

\[\mathm{bic}=n\ln\Left(\dfrac{\mathm{ssr}{n}\right)+k\ln(N)\]

そのうち \(n\) サンプルの大きさです \(k\) アイドルパラメータの数です \(\mathrm{{SSR}}\) モデルとデータ間の残差二乗和を表す.

たとえば,最小二乗統計量を用いてモデルのパラメータを推定する場合には,これが適用される.参照してください [1] そして [2].

パラメータ
ssr浮いている.

モデルとデータ間の残差二乗和(SSR).

n_params集積する.

モデルの自由変数の個数,すなわちパラメータ空間の次元である.

n_samples集積する.

回数を観察する。

返品
bic浮いている.

参考文献

1

Wikipedia。ベイズ情報基準。<https://en.wikipedia.org/wiki/Bayesian_information_criteria>

2

起源実験室です。2つのフィッティング関数を比較する。<https://www.OriginLab.com/doc/Origin-Help/PostFit-CompareFitFunc>

3

Astropyモデルとフィッティング<https://docs.astterpy.org/en/Stability/Modeling>

実例.

Astropyモデリングページで提供される簡単な1次元フィッティングの例を考える. [3]. そこで,2つのモデル(BoxとGauss型)を最小二乗統計量で1つの源フラックスにフィッティングした。しかし,部品自体は,どのモデルがこの仮定源をよりよく代表するかをうまく説明することはできない.したがって、私たちはモデルに有利な決定を下すためにBICに申請するつもりだ。

>>> import numpy as np
>>> from astropy.modeling import models, fitting
>>> from astropy.stats.info_theory import bayesian_info_criterion_lsq
>>> # Generate fake data
>>> np.random.seed(0)
>>> x = np.linspace(-5., 5., 200)
>>> y = 3 * np.exp(-0.5 * (x - 1.3)**2 / 0.8**2)
>>> y += np.random.normal(0., 0.2, x.shape)
>>> # Fit the data using a Box model.
>>> # Bounds are not really needed but included here to demonstrate usage.
>>> t_init = models.Trapezoid1D(amplitude=1., x_0=0., width=1., slope=0.5,
...                             bounds={"x_0": (-5., 5.)})
>>> fit_t = fitting.LevMarLSQFitter()
>>> t = fit_t(t_init, x, y)
>>> # Fit the data using a Gaussian
>>> g_init = models.Gaussian1D(amplitude=1., mean=0, stddev=1.)
>>> fit_g = fitting.LevMarLSQFitter()
>>> g = fit_g(g_init, x, y)
>>> # Compute the mean squared errors
>>> ssr_t = np.sum((t(x) - y)*(t(x) - y))
>>> ssr_g = np.sum((g(x) - y)*(g(x) - y))
>>> # Compute the bics
>>> bic_t = bayesian_info_criterion_lsq(ssr_t, 4, x.shape[0])
>>> bic_g = bayesian_info_criterion_lsq(ssr_g, 3, x.shape[0])
>>> bic_t - bic_g  
30.644474706065466

したがって,ガウスモデルはBoxモデルよりもよくデータを表すという非常に有力な証拠がある.これは明らかに意図されている、なぜなら真のモデルはガウスだからだ。