本文簡要介紹python語言中 sklearn.linear_model.ARDRegression
的用法。
用法:
class sklearn.linear_model.ARDRegression(*, n_iter=300, tol=0.001, alpha_1=1e-06, alpha_2=1e-06, lambda_1=1e-06, lambda_2=1e-06, compute_score=False, threshold_lambda=10000.0, fit_intercept=True, normalize='deprecated', copy_X=True, verbose=False)
貝葉斯 ARD 回歸。
使用 ARD 先驗擬合回歸模型的權重。假設回歸模型的權重為高斯分布。還要估計參數 lambda(權重分布的精度)和 alpha(噪聲分布的精度)。估計是通過迭代程序完成的(證據最大化)
在用戶指南中閱讀更多信息。
- n_iter:整數,默認=300
最大迭代次數。
- 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 分布的反比例參數(速率參數)。
- compute_score:布爾,默認=假
如果為真,則在模型的每一步計算目標函數。
- threshold_lambda:浮點數,默認=10 000
從計算中以高精度移除(修剪)權重的閾值。
- fit_intercept:布爾,默認=真
是否計算此模型的截距。如果設置為 false,則不會在計算中使用截距(即數據應居中)。
- normalize:布爾,默認=假
當
fit_intercept
設置為 False 時忽略此參數。如果為 True,則回歸量 X 將在回歸前通過減去均值並除以 l2 範數進行歸一化。如果您希望標準化,請在使用normalize=False
對估計器調用fit
之前使用StandardScaler
。- copy_X:布爾,默認=真
如果為 True,則 X 將被複製;否則,它可能會被覆蓋。
- verbose:布爾,默認=假
擬合模型時的詳細模式。
- coef_:形狀類似數組 (n_features,)
回歸模型的係數(分布均值)
- alpha_:浮點數
估計的噪聲精度。
- lambda_:形狀類似數組 (n_features,)
權重的估計精度。
- sigma_:形狀類似數組 (n_features, n_features)
權重的估計方差-協方差矩陣
- scores_:浮點數
如果計算,目標函數的值(要最大化)
- intercept_:浮點數
決策函數中的獨立項。如果
fit_intercept = False
則設置為 0.0。- X_offset_:浮點數
如果
normalize=True
,則減去偏移量以使數據居中為零均值。- X_scale_:浮點數
如果
normalize=True
,用於將數據縮放到單位標準偏差的參數。- n_features_in_:int
擬合期間看到的特征數。
- feature_names_in_:ndarray 形狀(
n_features_in_
,) 擬合期間看到的特征名稱。僅當
X
具有全為字符串的函數名稱時才定義。
參數:
屬性:
注意:
有關示例,請參見示例/linear_model/plot_ard.py。
參考:
D. J. C. MacKay,預測競賽的貝葉斯非線性建模,ASHRAE Transactions,1994 年。
R. Salakhutdinov,關於統計機器學習的講義,http://www.utstat.toronto.edu/~rsalakhu/sta4273/notes/Lecture2.pdf#page=15 他們的 beta 版本是我們的
self.alpha_
他們的 alpha 版本是我們的self.lambda_
ARD 與幻燈片略有不同:僅保留了self.lambda_ < self.threshold_lambda
的維度/特征,而其餘的被丟棄。例子:
>>> from sklearn import linear_model >>> clf = linear_model.ARDRegression() >>> clf.fit([[0,0], [1, 1], [2, 2]], [0, 1, 2]) ARDRegression() >>> clf.predict([[1, 1]]) array([1.])
相關用法
- Python sklearn AffinityPropagation用法及代碼示例
- Python sklearn AgglomerativeClustering用法及代碼示例
- Python sklearn AdditiveChi2Sampler用法及代碼示例
- Python sklearn AdaBoostClassifier用法及代碼示例
- Python sklearn AdaBoostRegressor用法及代碼示例
- Python sklearn jaccard_score用法及代碼示例
- Python sklearn WhiteKernel用法及代碼示例
- Python sklearn CalibrationDisplay.from_predictions用法及代碼示例
- Python sklearn VotingRegressor用法及代碼示例
- Python sklearn gen_batches用法及代碼示例
- Python sklearn ExpSineSquared用法及代碼示例
- Python sklearn MDS用法及代碼示例
- Python sklearn adjusted_rand_score用法及代碼示例
- Python sklearn MLPClassifier用法及代碼示例
- Python sklearn train_test_split用法及代碼示例
- Python sklearn RandomTreesEmbedding用法及代碼示例
- Python sklearn GradientBoostingRegressor用法及代碼示例
- Python sklearn GridSearchCV用法及代碼示例
- Python sklearn log_loss用法及代碼示例
- Python sklearn r2_score用法及代碼示例
- Python sklearn ndcg_score用法及代碼示例
- Python sklearn ShrunkCovariance用法及代碼示例
- Python sklearn SelfTrainingClassifier用法及代碼示例
- Python sklearn load_svmlight_file用法及代碼示例
- Python sklearn make_pipeline用法及代碼示例
注:本文由純淨天空篩選整理自scikit-learn.org大神的英文原創作品 sklearn.linear_model.ARDRegression。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。