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


Python sklearn NuSVR用法及代碼示例


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

用法:

class sklearn.svm.NuSVR(*, nu=0.5, C=1.0, kernel='rbf', degree=3, gamma='scale', coef0=0.0, shrinking=True, tol=0.001, cache_size=200, verbose=False, max_iter=- 1)

Nu 支持向量回歸。

與 NuSVC 類似,對於回歸,使用參數 nu 來控製支持向量的數量。但是,與 NuSVC 不同,這裏 nu 替換 C,這裏 nu 替換了epsilon-SVR 的參數 epsilon。

該實現基於 libsvm。

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

參數

nu浮點數,默認=0.5

訓練誤差分數的上限和支持向量分數的下限。應該在 (0, 1] 區間內。默認取 0.5。

C浮點數,默認=1.0

誤差項的懲罰參數 C。

kernel{‘linear’, ‘poly’, ‘rbf’, ‘sigmoid’, ‘precomputed’} 或可調用,默認='rbf'

指定要在算法中使用的內核類型。如果沒有給出,將使用‘rbf’。如果給定了可調用對象,則它用於預先計算內核矩陣。

degree整數,默認=3

多項式核函數的度數 (‘poly’)。被所有其他內核忽略。

gamma{‘scale’, ‘auto’} 或浮點數,默認='scale'

‘rbf’, ‘poly’ 和 ‘sigmoid’ 的核係數。

  • 如果gamma='scale'(默認)被傳遞,那麽它使用 1 /(n_features * X.var()) 作為伽瑪值,
  • 如果‘auto’,使用 1 /n_features。
coef0浮點數,默認=0.0

核函數中的獨立項。僅在‘poly’和‘sigmoid’中有意義。

shrinking布爾,默認=真

是否使用收縮啟發式。請參閱用戶指南。

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

停止標準的容差。

cache_size浮點數,默認=200

指定內核緩存的大小(以 MB 為單位)。

verbose布爾,默認=假

啟用詳細輸出。請注意,此設置利用了 libsvm 中的 per-process 運行時設置,如果啟用,該設置可能無法在多線程上下文中正常工作。

max_iter整數,默認=-1

求解器內迭代的硬限製,或 -1 表示無限製。

屬性

class_weight_ndarray 形狀 (n_classes,)

每個類的參數 C 的乘數。根據class_weight 參數計算。

coef_ndarray 形狀 (1, n_features)

kernel="linear" 時分配給特征的權重。

dual_coef_ndarray 形狀 (1, n_SV)

決策函數中支持向量的係數。

fit_status_int

如果正確安裝,則為 0,否則為 1(將發出警告)

intercept_ndarray 形狀 (1,)

決策函數中的常數。

n_features_in_int

擬合期間看到的特征數。

feature_names_in_ndarray 形狀(n_features_in_,)

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

n_support_ndarray 形狀 (n_classes,), dtype=int32

每個類的支持向量數。

shape_fit_int 形狀的元組 (n_dimensions_of_X,)

訓練向量 X 的數組維度。

support_ndarray 形狀 (n_SV,)

支持向量的索引。

support_vectors_ndarray 形狀(n_SV,n_features)

支持向量。

參考

1

LIBSVM:支持向量機庫

2

普拉特,約翰 (1999)。 “支持向量機的概率輸出以及與正則化似然方法的比較。”

例子

>>> from sklearn.svm import NuSVR
>>> from sklearn.pipeline import make_pipeline
>>> from sklearn.preprocessing import StandardScaler
>>> import numpy as np
>>> n_samples, n_features = 10, 5
>>> np.random.seed(0)
>>> y = np.random.randn(n_samples)
>>> X = np.random.randn(n_samples, n_features)
>>> regr = make_pipeline(StandardScaler(), NuSVR(C=1.0, nu=0.1))
>>> regr.fit(X, y)
Pipeline(steps=[('standardscaler', StandardScaler()),
                ('nusvr', NuSVR(nu=0.1))])

相關用法


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