本文簡要介紹python語言中 sklearn.linear_model.SGDOneClassSVM
的用法。
用法:
class sklearn.linear_model.SGDOneClassSVM(nu=0.5, fit_intercept=True, max_iter=1000, tol=0.001, shuffle=True, verbose=0, random_state=None, learning_rate='optimal', eta0=0.0, power_t=0.5, warm_start=False, average=False)
使用隨機梯度下降求解線性One-Class SVM。
此實現旨在與內核近似技術(例如
sklearn.kernel_approximation.Nystroem
)一起使用,以獲得類似於默認使用高斯內核的sklearn.svm.OneClassSVM
的結果。在用戶指南中閱讀更多信息。
- nu:浮點數,默認=0.5
One Class SVM 的 nu 參數:訓練誤差分數的上限和支持向量分數的下限。應該在 (0, 1] 區間內。默認取 0.5。
- fit_intercept:布爾,默認=真
是否應該估計截距。默認為真。
- max_iter:整數,默認=1000
訓練數據的最大傳遞次數(又名 epochs)。它隻影響
fit
方法中的行為,而不影響partial_fit
。默認為 1000。- tol:浮點數或無,默認=1e-3
停止標準。如果不是 None,迭代將在 (loss > previous_loss - tol) 時停止。默認為 1e-3。
- shuffle:布爾,默認=真
是否應該在每個 epoch 之後對訓練數據進行洗牌。默認為真。
- verbose:整數,默認=0
詳細程度。
- random_state:int、RandomState 實例或無,默認=無
混洗數據時使用的偽隨機數生成器的種子。如果是int,random_state是隨機數生成器使用的種子;如果RandomState實例,random_state是隨機數生成器;如果為 None,則隨機數生成器是
np.random
使用的 RandomState 實例。- learning_rate:{‘constant’, ‘optimal’, ‘invscaling’, ‘adaptive’},默認='最佳'
與
fit
一起使用的學習率計劃。 (如果使用partial_fit
,必須直接控製學習率)。- ‘constant’:
eta = eta0
- ‘optimal’:
eta = 1.0 / (alpha * (t + t0))
其中 t0 由 Leon Bottou 提出的啟發式方法選擇。 - ‘invscaling’:
eta = eta0 / pow(t, power_t)
- ‘adaptive’:eta = eta0,隻要訓練不斷減少。如果 early_stopping 為 True,則每次 n_iter_no_change 個連續 epoch 未能將訓練損失減少 tol 或未能將驗證分數增加 tol,則當前學習率除以 5。
- ‘constant’:
- eta0:浮點數,默認=0.0
‘constant’, ‘invscaling’ 或 ‘adaptive’ 計劃的初始學習率。默認值為 0.0,因為默認計劃 ‘optimal’ 不使用 eta0。
- power_t:浮點數,默認=0.5
逆縮放學習率的 index [默認 0.5]。
- warm_start:布爾,默認=假
當設置為 True 時,重用之前調用的解決方案作為初始化,否則,隻需擦除之前的解決方案。請參閱詞匯表。
當 warm_start 為 True 時重複調用 fit 或 partial_fit 可能會導致與單次調用 fit 時不同的解決方案,因為數據被打亂的方式。如果使用動態學習率,則根據已經看到的樣本數量調整學習率。調用
fit
重置此計數器,而partial_fit
將導致增加現有計數器。- average:bool 或 int,默認 = False
設置為 True 時,計算平均 SGD 權重並將結果存儲在
coef_
屬性中。如果設置為大於 1 的 int,則一旦看到的樣本總數達到平均值,就會開始求平均值。因此average=10
將在看到 10 個樣本後開始求平均值。
- coef_:ndarray 形狀 (1, n_features)
分配給特征的權重。
- offset_:ndarray 形狀 (1,)
用於從原始分數定義決策函數的偏移量。我們有關係:decision_function = score_samples - 偏移量。
- n_iter_:int
達到停止標準的實際迭代次數。
- t_:int
訓練期間執行的權重更新次數。與
(n_iter_ * n_samples)
相同。- loss_function_:具體
LossFunction
- n_features_in_:int
擬合期間看到的特征數。
- feature_names_in_:ndarray 形狀(
n_features_in_
,) 擬合期間看到的特征名稱。僅當
X
具有全為字符串的函數名稱時才定義。
參數:
屬性:
注意:
該估計器在訓練樣本數量上具有線性複雜性,因此比
sklearn.svm.OneClassSVM
實現更適合具有大量訓練樣本(例如 > 10,000)的數據集。例子:
>>> import numpy as np >>> from sklearn import linear_model >>> X = np.array([[-1, -1], [-2, -1], [1, 1], [2, 1]]) >>> clf = linear_model.SGDOneClassSVM(random_state=42) >>> clf.fit(X) SGDOneClassSVM(random_state=42)
>>> print(clf.predict([[4, 4]])) [1]
相關用法
- Python sklearn SGDRegressor用法及代碼示例
- Python sklearn SGDClassifier用法及代碼示例
- Python sklearn ShrunkCovariance用法及代碼示例
- Python sklearn SelfTrainingClassifier用法及代碼示例
- Python sklearn SelectFromModel用法及代碼示例
- Python sklearn SparsePCA用法及代碼示例
- Python sklearn SpectralEmbedding用法及代碼示例
- Python sklearn SelectFpr用法及代碼示例
- Python sklearn ShuffleSplit用法及代碼示例
- Python sklearn StratifiedGroupKFold用法及代碼示例
- Python sklearn SpectralClustering用法及代碼示例
- Python sklearn Sum用法及代碼示例
- Python sklearn SpectralBiclustering用法及代碼示例
- Python sklearn SVR用法及代碼示例
- Python sklearn SelectKBest用法及代碼示例
- Python sklearn SimpleImputer用法及代碼示例
- Python sklearn StratifiedShuffleSplit用法及代碼示例
- Python sklearn SVC用法及代碼示例
- Python sklearn SequentialFeatureSelector用法及代碼示例
- Python sklearn SplineTransformer用法及代碼示例
- Python sklearn SelectPercentile用法及代碼示例
- Python sklearn SkewedChi2Sampler用法及代碼示例
- Python sklearn SparseCoder用法及代碼示例
- Python sklearn StratifiedKFold用法及代碼示例
- Python sklearn SparseRandomProjection用法及代碼示例
注:本文由純淨天空篩選整理自scikit-learn.org大神的英文原創作品 sklearn.linear_model.SGDOneClassSVM。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。