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


Python sklearn BayesianRidge用法及代碼示例


本文簡要介紹python語言中 sklearn.linear_model.BayesianRidge 的用法。

用法:

class sklearn.linear_model.BayesianRidge(*, n_iter=300, tol=0.001, alpha_1=1e-06, alpha_2=1e-06, lambda_1=1e-06, lambda_2=1e-06, alpha_init=None, lambda_init=None, compute_score=False, fit_intercept=True, normalize='deprecated', copy_X=True, verbose=False)

貝葉斯嶺回歸。

擬合貝葉斯嶺模型。有關此實現的詳細信息以及正則化參數 lambda(權重的精度)和 alpha(噪聲的精度)的優化,請參閱注釋部分。

在用戶指南中閱讀更多信息。

參數

n_iter整數,默認=300

最大迭代次數。應大於或等於 1。

tol浮點數,默認=1e-3

如果 w 已經收斂,則停止算法。

alpha_1浮點數,默認=1e-6

超參數:先於 alpha 參數的 Gamma 分布的形狀參數。

alpha_2浮點數,默認=1e-6

超參數:先於 alpha 參數的 Gamma 分布的反比例參數(速率參數)。

lambda_1浮點數,默認=1e-6

超參數:先於 lambda 參數的 Gamma 分布的形狀參數。

lambda_2浮點數,默認=1e-6

超參數:先於 lambda 參數的 Gamma 分布的反比例參數(速率參數)。

alpha_init浮點數,默認=無

alpha 的初始值(噪聲的精度)。如果未設置,alpha_init 為 1/Var(y)。

lambda_init浮點數,默認=無

lambda 的初始值(權重的精度)。如果未設置,lambda_init 為 1。

compute_score布爾,默認=假

如果為 True,則在每次優化迭代中計算對數邊際似然。

fit_intercept布爾,默認=真

是否計算此模型的截距。截距不被視為概率參數,因此沒有相關的方差。如果設置為 False,則不會在計算中使用截距(即數據應居中)。

normalize布爾,默認=假

fit_intercept 設置為 False 時忽略此參數。如果為 True,則回歸量 X 將在回歸前通過減去均值並除以 l2 範數進行歸一化。如果您希望標準化,請在使用 normalize=False 對估計器調用 fit 之前使用 StandardScaler

copy_X布爾,默認=真

如果為 True,則 X 將被複製;否則,它可能會被覆蓋。

verbose布爾,默認=假

擬合模型時的詳細模式。

屬性

coef_形狀類似數組 (n_features,)

回歸模型的係數(分布均值)

intercept_浮點數

決策函數中的獨立項。如果 fit_intercept = False 則設置為 0.0。

alpha_浮點數

估計的噪聲精度。

lambda_浮點數

權重的估計精度。

sigma_形狀類似數組 (n_features, n_features)

權重的估計方差-協方差矩陣

scores_形狀類似數組 (n_iter_+1,)

如果computed_score 為真,則在優化的每次迭代中對數邊際似然的值(將被最大化)。該數組以 alpha 和 lambda 的初始值獲得的對數邊際似然值開始,並以估計的 alpha 和 lambda 獲得的值結束。

n_iter_int

達到停止標準的實際迭代次數。

X_offset_浮點數

如果 normalize=True ,則減去偏移量以使數據居中為零均值。

X_scale_浮點數

如果 normalize=True ,用於將數據縮放到單位標準偏差的參數。

n_features_in_int

擬合期間看到的特征數。

feature_names_in_ndarray 形狀(n_features_in_,)

擬合期間看到的特征名稱。僅當 X 具有全為字符串的函數名稱時才定義。

注意

存在幾種執行貝葉斯嶺回歸的策略。該實現基於(Tipping,2001)附錄 A 中說明的算法,其中正則化參數的更新按照(MacKay,1992)中的建議進行。請注意,根據 A New View of Automatic Relevance Determination(Wipf 和 Nagarajan,2008 年),這些更新規則不能保證在優化的兩個連續迭代之間邊際似然增加。

參考

D. J. C. MacKay,貝葉斯插值、計算和神經係統,卷。 4,第 3 期,1992 年。

M. E. 小費,稀疏貝葉斯學習和相關向量機,機器學習研究雜誌,卷。 1,2001 年。

例子

>>> from sklearn import linear_model
>>> clf = linear_model.BayesianRidge()
>>> clf.fit([[0,0], [1, 1], [2, 2]], [0, 1, 2])
BayesianRidge()
>>> clf.predict([[1, 1]])
array([1.])

相關用法


注:本文由純淨天空篩選整理自scikit-learn.org大神的英文原創作品 sklearn.linear_model.BayesianRidge。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。