sklearn.svm.SVC參數說明


摘自:https://blog.csdn.net/szlcw1/article/details/52336824

 

 

本身這個函數也是基於libsvm實現的,所以在參數設置上有很多相似的地方。(PS: libsvm中的二次規划問題的解決算法是SMO)。
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=None,random_state=None)

參數:

l  C:C-SVC的懲罰參數C?默認值是1.0

C越大,相當於懲罰松弛變量,希望松弛變量接近0,即對誤分類的懲罰增大,趨向於對訓練集全分對的情況,這樣對訓練集測試時准確率很高,但泛化能力弱。C值小,對誤分類的懲罰減小,允許容錯,將他們當成噪聲點,泛化能力較強。

l  kernel :核函數,默認是rbf,可以是‘linear’, ‘poly’, ‘rbf’, ‘sigmoid’, ‘precomputed’ 

    0 – 線性:u'v

    1 – 多項式:(gamma*u'*v + coef0)^degree

    2 – RBF函數:exp(-gamma|u-v|^2)

    3 –sigmoid:tanh(gamma*u'*v + coef0)

l  degree :多項式poly函數的維度,默認是3,選擇其他核函數時會被忽略。

l  gamma : ‘rbf’,‘poly’ 和‘sigmoid’的核函數參數。默認是’auto’,則會選擇1/n_features

l  coef0 :核函數的常數項。對於‘poly’和 ‘sigmoid’有用。

l  probability :是否采用概率估計?.默認為False

l  shrinking :是否采用shrinking heuristic方法,默認為true

l  tol :停止訓練的誤差值大小,默認為1e-3

l  cache_size :核函數cache緩存大小,默認為200

l  class_weight :類別的權重,字典形式傳遞。設置第幾類的參數C為weight*C(C-SVC中的C)

l  verbose :允許冗余輸出?

l  max_iter :最大迭代次數。-1為無限制。

l  decision_function_shape :‘ovo’, ‘ovr’ or None, default=None3

l  random_state :數據洗牌時的種子值,int值

主要調節的參數有:C、kernel、degree、gamma、coef0。


免責聲明!

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



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