本文簡要介紹python語言中 sklearn.svm.LinearSVR
的用法。
用法:
class sklearn.svm.LinearSVR(*, epsilon=0.0, tol=0.0001, C=1.0, loss='epsilon_insensitive', fit_intercept=True, intercept_scaling=1.0, dual=True, verbose=0, random_state=None, max_iter=1000)
線性支持向量回歸。
與參數 kernel='linear' 的 SVR 類似,但根據 liblinear 而不是 libsvm 實現,因此它在選擇懲罰和損失函數方掩碼有更大的靈活性,並且應該更好地擴展到大量樣本。
此類支持密集和稀疏輸入。
在用戶指南中閱讀更多信息。
- epsilon:浮點數,默認=0.0
epsilon-insensitive 損失函數中的 Epsilon 參數。請注意,此參數的值取決於目標變量 y 的規模。如果不確定,請設置
epsilon=0
。- tol:浮點數,默認=1e-4
停止標準的公差。
- C:浮點數,默認=1.0
正則化參數。正則化的強度與 C 成反比。必須嚴格為正。
- loss:{‘epsilon_insensitive’, ‘squared_epsilon_insensitive’},默認='epsilon_insensitive'
指定損失函數。 epsilon-insensitive 損失(標準 SVR)是 L1 損失,而平方 epsilon-insensitive 損失(‘squared_epsilon_insensitive’)是 L2 損失。
- fit_intercept:布爾,默認=真
是否計算此模型的截距。如果設置為 false,則不會在計算中使用截距(即數據預計已經居中)。
- intercept_scaling:浮點數,默認=1.0
當 self.fit_intercept 為 True 時,實例向量 x 變為 [x, self.intercept_scaling],即在實例向量上附加一個常數值等於 intercept_scaling 的 “synthetic” 特征。截距變為intercept_scaling * 合成特征權重 注意!合成特征權重像所有其他特征一樣受到 l1/l2 正則化。為了減少正則化對合成特征權重(因此對截距)的影響,必須增加intercept_scaling。
- dual:布爾,默認=真
選擇算法來解決對偶或原始優化問題。當 n_samples > n_features 時首選 dual=False。
- verbose:整數,默認=0
啟用詳細輸出。請注意,此設置利用了 liblinear 中的 per-process 運行時設置,如果啟用,該設置可能無法在多線程上下文中正常工作。
- random_state:int、RandomState 實例或無,默認=無
控製用於打亂數據的偽隨機數生成。傳遞 int 以在多個函數調用之間實現可重現的輸出。請參閱術語表。
- max_iter:整數,默認=1000
要運行的最大迭代次數。
- coef_:ndarray of shape (n_features) if n_classes == 2 else (n_classes, n_features)
分配給特征的權重(原始問題中的係數)。
coef_
是從raw_coef_
派生的隻讀屬性,它遵循 liblinear 的內部存儲器布局。- intercept_:ndarray of shape (1) if n_classes == 2 else (n_classes)
決策函數中的常數。
- n_features_in_:int
擬合期間看到的特征數。
- feature_names_in_:ndarray 形狀(
n_features_in_
,) 擬合期間看到的特征名稱。僅當
X
具有全為字符串的函數名稱時才定義。- n_iter_:int
在所有類中運行的最大迭代次數。
參數:
屬性:
例子:
>>> from sklearn.svm import LinearSVR >>> from sklearn.pipeline import make_pipeline >>> from sklearn.preprocessing import StandardScaler >>> from sklearn.datasets import make_regression >>> X, y = make_regression(n_features=4, random_state=0) >>> regr = make_pipeline(StandardScaler(), ... LinearSVR(random_state=0, tol=1e-5)) >>> regr.fit(X, y) Pipeline(steps=[('standardscaler', StandardScaler()), ('linearsvr', LinearSVR(random_state=0, tol=1e-05))])
>>> print(regr.named_steps['linearsvr'].coef_) [18.582... 27.023... 44.357... 64.522...] >>> print(regr.named_steps['linearsvr'].intercept_) [-4...] >>> print(regr.predict([[0, 0, 0, 0]])) [-2.384...]
相關用法
- Python sklearn LinearSVC用法及代碼示例
- Python sklearn LinearDiscriminantAnalysis用法及代碼示例
- Python sklearn LinearRegression用法及代碼示例
- Python sklearn LarsCV用法及代碼示例
- Python sklearn Lars用法及代碼示例
- Python sklearn LocalOutlierFactor.kneighbors_graph用法及代碼示例
- Python sklearn LeavePOut用法及代碼示例
- Python sklearn Lasso用法及代碼示例
- Python sklearn LabelPropagation用法及代碼示例
- Python sklearn LassoLars用法及代碼示例
- Python sklearn LeaveOneOut用法及代碼示例
- Python sklearn LogisticRegression用法及代碼示例
- Python sklearn LassoLarsIC用法及代碼示例
- Python sklearn LocallyLinearEmbedding用法及代碼示例
- Python sklearn LedoitWolf用法及代碼示例
- Python sklearn LassoCV.path用法及代碼示例
- Python sklearn LogisticRegressionCV用法及代碼示例
- Python sklearn LassoCV用法及代碼示例
- Python sklearn LabelSpreading用法及代碼示例
- Python sklearn LabelEncoder用法及代碼示例
- Python sklearn LocalOutlierFactor.kneighbors用法及代碼示例
- Python sklearn LabelBinarizer用法及代碼示例
- Python sklearn LassoLarsCV用法及代碼示例
- Python sklearn LatentDirichletAllocation用法及代碼示例
- Python sklearn Lasso.path用法及代碼示例
注:本文由純淨天空篩選整理自scikit-learn.org大神的英文原創作品 sklearn.svm.LinearSVR。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。