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


Python sklearn PassiveAggressiveRegressor用法及代碼示例


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

用法:

sklearn.linear_model.PassiveAggressiveRegressor(*, C=1.0, fit_intercept=True, max_iter=1000, tol=0.001, early_stopping=False, validation_fraction=0.1, n_iter_no_change=5, shuffle=True, verbose=0, loss='epsilon_insensitive', epsilon=0.1, random_state=None, warm_start=False, average=False)

被動進取回歸器。

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

參數

C浮點數,默認=1.0

最大步長(正則化)。默認為 1.0。

fit_intercept布爾,默認=真

是否應該估計截距。如果為 False,則假定數據已經居中。默認為真。

max_iter整數,默認=1000

訓練數據的最大傳遞次數(又名 epochs)。它隻影響fit 方法中的行為,而不影響partial_fit 方法中的行為。

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

停止標準。如果不是 None,迭代將在 (loss > previous_loss - tol) 時停止。

early_stopping布爾,默認=假

驗證時是否使用提前停止終止訓練。分數沒有提高。如果設置為 True,它將自動留出一小部分訓練數據作為驗證,並在驗證分數沒有至少提高 n_iter_no_change 個連續 epoch 時終止訓練。

validation_fraction浮點數,默認=0.1

留出作為提前停止驗證集的訓練數據的比例。必須介於 0 和 1 之間。僅在 early_stopping 為 True 時使用。

n_iter_no_change整數,默認=5

在提前停止之前等待沒有改進的迭代次數。

shuffle布爾,默認=真

是否應該在每個 epoch 之後對訓練數據進行洗牌。

verbose整數,默認=0

詳細程度。

lossstr,默認=”epsilon_insensitive”

要使用的損失函數:epsilon_insensitive:相當於參考論文中的PA-I。 squared_epsilon_insensitive:相當於參考論文中的PA-II。

epsilon浮點數,默認=0.1

如果當前預測與正確標簽之間的差異低於此閾值,則不會更新模型。

random_stateint,RandomState 實例,默認=無

shuffle 設置為 True 時,用於對訓練數據進行洗牌。傳遞 int 以獲得跨多個函數調用的可重現輸出。請參閱詞匯表。

warm_start布爾,默認=假

當設置為 True 時,重用之前調用的解決方案作為初始化,否則,隻需擦除之前的解決方案。請參閱詞匯表。

當 warm_start 為 True 時重複調用 fit 或 partial_fit 可能會導致與單次調用 fit 時不同的解決方案,因為數據被打亂的方式。

averagebool 或 int,默認 = False

當設置為 True 時,計算平均 SGD 權重並將結果存儲在 coef_ 屬性中。如果設置為大於 1 的 int,則一旦看到的樣本總數達到平均值,就會開始平均。所以 average=10 將在看到 10 個樣本後開始平均。

屬性

coef_數組,形狀 = [1, n_features] 如果 n_classes == 2 否則 [n_classes, n_features]

分配給特征的權重。

intercept_數組,形狀 = [1] 如果 n_classes == 2 否則 [n_classes]

決策函數中的常數。

n_features_in_int

擬合期間看到的特征數。

feature_names_in_ndarray 形狀(n_features_in_,)

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

n_iter_int

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

t_int

訓練期間執行的權重更新次數。與 (n_iter_ * n_samples) 相同。

參考

在線Passive-Aggressive算法<http://jmlr.csail.mit.edu/papers/volume7/crammer06a/crammer06a.pdf> K. Crammer、O. Dekel、J. Keshat、S. Shalev-Shwartz、Y. Singer - JMLR (2006)。

例子

>>> from sklearn.linear_model import PassiveAggressiveRegressor
>>> from sklearn.datasets import make_regression
>>> X, y = make_regression(n_features=4, random_state=0)
>>> regr = PassiveAggressiveRegressor(max_iter=100, random_state=0,
... tol=1e-3)
>>> regr.fit(X, y)
PassiveAggressiveRegressor(max_iter=100, random_state=0)
>>> print(regr.coef_)
[20.48736655 34.18818427 67.59122734 87.94731329]
>>> print(regr.intercept_)
[-0.02306214]
>>> print(regr.predict([[0, 0, 0, 0]]))
[-0.02306214]

相關用法


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