1. 程式人生 > >scikit-learn的SVM的SVC引數設定

scikit-learn的SVM的SVC引數設定

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

引數:

C:懲罰引數,預設為1.0。

C越大,對誤分類的懲罰增大,泛化能力弱。C越小,對誤分類的懲罰減小,泛化能力強。

cache_size:核函式快取大小,預設為200(MB)。

class_weight:每個類所佔的權重,不同的類設定不同的懲罰引數

C, 預設為預設(自適應)。

coef0:核函式的常數項,當核函式為poly和sigmoid可用,預設為0.0。

decision_function_shape:處理多分類問題,一對一用ovo,一對多用ovr,預設為ovr。

degree:核函式的維度,當核函式為poly 可用,預設為3。

gamma:核函式的引數,當核函式為rbf、poly和sigmoid可用,預設為auto,自動設定為1/n_features(分類數)。

gamma越大,支援向量越少。gamma值越小,支援向量越多。

kernel:核函式,可選linear、poly、rbf、sigmoid、precomputed,預設為rbf。

max_iter:最大迭代次數,預設為-1(無限制)。

probability:是否採用概率估計,預設為False。

random_state:資料隨機洗牌時的種子值,預設為預設(使用np.random

shrinking:是否採用神祕方法(我是不懂-_-),預設為true。

tol:停止訓練的容許度,預設為0.001。

verbose:允許詳細輸出,多執行緒不建議開啟,預設為False。

主要調整的引數有:C、gamma和kernel。