1. c : float引數,預設值為1.0
2. kernel : str引數,預設為『rbf』
演算法中提供的核函式型別,可選引數有:
除了上面限定的核函式外,還可以給出自己定義的核函式,內部就是用自己定義的核函式來計算核矩陣。
3. degree : int型,預設為3
4. gamma :float引數,預設為auto
5. coef0 : float引數,預設值為0
6. probability : bool引數,預設為false
7. shrinking : bool引數,預設為ture
8. tol :float引數,預設為1e^-3
9. cache_size : float引數,預設為200
10. class_weight : 字典型別或者是balance字串,預設為none
11. verbose : bool引數,預設為false
12. max_iter : int引數,預設為-1
13. random_state :int引數,預設為none
14. fit()方法 :
15. predict()方法 :
基於以上的訓練,對**樣本t進行類別**,因此只需要接收乙個測試集t,該函式返回乙個陣列表示各測試樣本的類別。
16. 屬性有哪些
1. tp fp tn fn
2. 精確率(precision)
3. 召回率(recall)
4. 準確率
5. 特異性(specificity)
6. 用f1值綜合評估精確率和召回率
1. 計算分割超平面
b=clf_svc.intercept_
w=clf_svc.coef_
2. 檢視決策函式:decision_function中每一列的值代表距離各類別的距離
3. predict()函式:返回乙個陣列表示各測試樣本的類別
1. from random import shuffle #引入隨機函式
shuffle(data) #隨機打亂資料
2. data = data.as_matrix()
讀取excel資料訓練模型時,需要將**轉換成陣列,as_matrix()可將dataframe資料轉換成陣列。
替代函式:dataframe.values獲取的是dataframe中的資料,形式為陣列array。
data_train = data[:int(0.8*len(data)),:] #選取前80%為訓練資料
data_test = data[int(0.8*len(data)):,:] #選取後20%為測試資料
又稱為可能性**或者錯誤矩陣。一種特定矩陣用來呈現演算法效能的視覺化效果,通常是監督學習,非監督學習通常用匹配矩陣(matching matrix)。
每一列代表**值,每一行代表的是實際的類別。
可以非常容易的表明多個類別是否有混淆(也就是乙個class被**成另乙個class)。
所有正確的**結果都在對角線上。
如上圖所示,class 0類共有59個例項,其中3個錯分為class 3,1個錯分為class 7,5個錯分為class 9。所以說 class 0 和class 9可能存在混淆。
是由fp,fn,tp,tn組成的兩行兩列的**。它允許我們做出更多的分析,而不僅僅是侷限在正確率。
準確率對於分類器的效能來說,並不是乙個好的衡量指標,因為如果資料集不平衡(每一類的資料樣本數量相差太大),很可能出現誤導性的結果。
SVM引數介紹
svm模型有兩個非常重要的引數c與gamma。其中 c是懲罰係數,即對誤差的寬容度。c越高,說明越不能容忍出現誤差,容易過擬合。c越小,容易欠擬合。c過大或過小,泛化能力變差 gamma是選擇rbf函式作為kernel後,該函式自帶的乙個引數。隱含地決定了資料對映到新的特徵空間後的分布,gamma越...
SVM引數優化
匯入包 from sklearn.svm import svc from sklearn.model selection import gridsearchcv將svm的c值和gamma調參,c值範圍為2 5 2 5到215 21 5,gamma值範圍為2 15 2 15到2 3 23.lmh sv...
SVM的引數說明
sklearn中svm,svm主要有linearsvc nusvc和svc三種方法。linearsvc penalty l2 loss squared hinge dual true,tol 0.0001,c 1.0,multi class ovr fit intercept true,interc...