sklearn中SVC和SVR的參數說明


SVC

轉載於:機器學習筆記(3)-sklearn支持向量機SVM–Spytensor

官方源碼

sklearn.svm.SVC(C=1.0, kernel='rbf', degree=3, gamma='auto', coef0=0.0, shrinking=True, 
                probability=False, tol=0.001, cache_size=200, class_weight=None, 
                verbose=False, max_iter=-1, decision_function_shape='ovr', 
                random_state=None)

參數解析

參數 含義 數據類型
C 表示錯誤項的懲罰系數C越大,即對分錯樣本的懲罰程度越大,因此在訓練樣本中准確率越高,但是泛化能力降低;相反,減小C的話,容許訓練樣本中有一些誤分類錯誤樣本,泛化能力強。對於訓練樣本帶有噪聲的情況,一般采用后者,把訓練樣本集中錯誤分類的樣本作為噪聲。 float參數 默認值為1.0
kernel 該參數用於選擇模型所使用的核函數,算法中常用的核函數有:-- linear:線性核函數-- poly:多項式核函數–rbf:徑像核函數/高斯核–sigmod:sigmod核函數–precomputed:核矩陣,該矩陣表示自己事先計算好的,輸入后算法內部將使用你提供的矩陣進行計算 str參數 默認為‘rbf’
degree 該參數只對’kernel=poly’(多項式核函數)有用,是指多項式核函數的階數n,如果給的核函數參數是其他核函數,則會自動忽略該參數。 int型參數 默認為3
gamma 該參數為核函數系數,只對‘rbf’,‘poly’,‘sigmod’有效。如果gamma設置為auto,代表其值為樣本特征數的倒數,即1/n_features,也有其他值可設定。 float參數 默認為auto
coef0 該參數表示核函數中的獨立項,只有對‘poly’和‘sigmod’核函數有用,是指其中的參數c。 float參數 默認為0.0
probability 該參數表示是否啟用概率估計。 這必須在調用fit()之前啟用,並且會使fit()方法速度變慢。 bool參數 默認為False
shrinkintol 該參數表示是否選用啟發式收縮方式。 bool參數 默認為True
tol svm停止訓練的誤差精度,也即閾值。 float參數 默認為1e^-3
cache_size 該參數表示指定訓練所需要的內存,以MB為單位,默認為200MB。 float參數 默認為200
class_weight 該參數表示給每個類別分別設置不同的懲罰參數C,如果沒有給,則會給所有類別都給C=1,即前面參數指出的參數C。如果給定參數‘balance’,則使用y的值自動調整與輸入數據中的類頻率成反比的權重。 字典類型或者‘balance’字符串。默認為None
verbose 該參數表示是否啟用詳細輸出。此設置利用libsvm中的每個進程運行時設置,如果啟用,可能無法在多線程上下文中正常工作。一般情況都設為False,不用管它。 bool參數 默認為False
max_iter 該參數表示最大迭代次數,如果設置為-1則表示不受限制。 int參數 默認為-1
random_state 該參數表示在混洗數據時所使用的偽隨機數發生器的種子,如果選int,則為隨機數生成器種子;如果選RandomState instance,則為隨機數生成器;如果選None,則隨機數生成器使用的是np.random int,RandomState instance ,None 默認為None

函數

函數 作用
svc.decision_function(X) 樣本X到分離超平面的距離
svc.fit(X, y[, sample_weight]) 根據給定的訓練數據擬合SVM模型。
svc.get_params([deep]) 獲取此估算器的參數並以字典行書儲存,默認deep=True,以分類iris數據集為例,得到的參數如下
svc.predict(X) 根據測試數據集進行預測
svc.score(X, y[, sample_weight]) 返回給定測試數據和標簽的平均精確度
svc.predict_log_proba(X_test),svc.predict_proba(X_test) 當sklearn.svm.SVC(probability=True)時,才會有這兩個值,分別得到樣本的對數概率以及普通概率。

屬性

屬性 含義
svc.coef_[0] 權重
svc.intercept_ bias,偏差

SVR

參考:sklearn線性回歸,支持向量機SVR回歸,隨機森林回歸,神經網絡回歸參數解釋及示例
sklearn.svm.SVR的參數介紹

官方源碼

sklearn.svm.SVR(kernel ='rbf',degree = 3,gamma ='auto_deprecated',coef0 = 0.0,
        tol = 0.001,C = 1.0,epsilon = 0.1,shrinking = True,cache_size = 200,        
        verbose = False,max_iter = -1

參數解析

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM