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


Python sklearn AdaBoostRegressor用法及代碼示例


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

用法:

class sklearn.ensemble.AdaBoostRegressor(base_estimator=None, *, n_estimators=50, learning_rate=1.0, loss='linear', random_state=None)

AdaBoost 回歸量。

AdaBoost [1] 回歸器是一個 meta-estimator,它首先在原始數據集上擬合回歸器,然後在同一數據集上擬合回歸器的其他副本,但實例的權重會根據當前的誤差進行調整預言。因此,後續的回歸器更多地關注困難的案例。

此類實現稱為 AdaBoost.R2 [2] 的算法。

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

參數

base_estimator對象,默認=無

構建增強集成的基本估計器。如果 None ,則基本估計量是 DecisionTreeRegressor max_depth=3 初始化。

n_estimators整數,默認=50

終止提升的估計器的最大數量。在完美契合的情況下,學習過程會提前停止。

learning_rate浮點數,默認=1.0

在每次提升迭代中應用於每個回歸器的權重。更高的學習率會增加每個回歸器的貢獻。 learning_raten_estimators 參數之間存在折衷。

loss{‘linear’, ‘square’, ‘exponential’},默認='線性'

每次提升迭代後更新權重時使用的損失函數。

random_stateint、RandomState 實例或無,默認=無

在每次提升迭代中控製在每個 base_estimator 處給出的隨機種子。因此,它僅在 base_estimator 公開 random_state 時使用。此外,它還控製每次提升迭代中用於訓練base_estimator 的權重的引導。傳遞 int 以獲得跨多個函數調用的可重現輸出。請參閱詞匯表。

屬性

base_estimator_估計器

生成集成的基本估計量。

estimators_回歸器列表

擬合sub-estimators 的集合。

estimator_weights_浮點數數組

增強集成中每個估計器的權重。

estimator_errors_浮點數數組

增強集成中每個估計器的回歸誤差。

feature_importances_ndarray 形狀 (n_features,)

基於雜質的特征重要性。

n_features_in_int

擬合期間看到的特征數。

feature_names_in_ndarray 形狀(n_features_in_,)

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

參考

1

Y. Freund, R. Schapire,“on-Line 學習的 Decision-Theoretic 泛化和提升的應用”,1995 年。

2
  1. Drucker,“使用 Boosting 技術改進回歸量”,1997 年。

例子

>>> from sklearn.ensemble import AdaBoostRegressor
>>> from sklearn.datasets import make_regression
>>> X, y = make_regression(n_features=4, n_informative=2,
...                        random_state=0, shuffle=False)
>>> regr = AdaBoostRegressor(random_state=0, n_estimators=100)
>>> regr.fit(X, y)
AdaBoostRegressor(n_estimators=100, random_state=0)
>>> regr.predict([[0, 0, 0, 0]])
array([4.7972...])
>>> regr.score(X, y)
0.9771...

相關用法


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