日本搞逼视频_黄色一级片免费在线观看_色99久久_性明星video另类hd_欧美77_综合在线视频

國內最全IT社區平臺 聯系我們 | 收藏本站
阿里云優惠2
您當前位置:首頁 > php開源 > 綜合技術 > [Python] 機器學習庫 Scikit-learn之SVM

[Python] 機器學習庫 Scikit-learn之SVM

來源:程序員人生   發布時間:2015-06-04 08:11:56 閱讀次數:14473次

0. SVM簡介

SVM是最經常使用的分類器之1,其可以用來做分類,回歸和異常檢測。
其模型定義和學習以下:
原始問題:

minw,b,ζ12wTw+Cni=1ζi

subject to yi(wT?(xi)+b)1?ζi,

ζi0,i=1,...,n

對偶問題:

minα12αTQα?eTα

subject to yTα=0

0αiC,i=1,...,n

決策函數:

sgn(ni=1yiαiK(xi,x)+ρ)

其中 e 是全為1的向量, C>0 是上邊界, Qn × n 半正定矩陣, QijK(xi,xj)=?(xi)T?(xj) 是核, 訓練數據通過 ?被映照到高緯空間中.

svm的優點:

  1. 在高緯空間的有效性。
  2. 在特點維度高于樣本維度的情況下,仍然有效。
  3. 它的決策函數只使用訓練數據的1部份,通常把這1部份數據稱之為支持向量,所以它是比較節省內存的。
  4. 可以提供各種各樣的核函數來擴大SVM的功能。

SVM的缺點:

  1. 如果特點的維度遠大于樣本的數目,那末性能將大大的下降。
  2. SVM不直接提供幾率估計。

1. SVM用來做分類:

SVC, NuSVC,LinearSVC

這3類都能用來做多類分類,SVC 和 NuSVC 類似,但是在1些參數上有所不同,LinearSVC 則是另外1種svm的實現,它是線性核。
這里寫圖片描述

輸入:

SVC, NuSVC 和LinearSVC的輸入訓練數據:[n_samples, n_features] ,標簽數據:[n_samples],標簽可以是整數或是字符串都可以。

#訓練svm: >>> from sklearn import svm >>> X = [[0, 0], [1, 1]] >>> y = [0, 1] >>> clf = svm.SVC() >>> clf.fit(X, y) ` #測試svm` >>> clf.predict([[2., 2.]

成員變量:

由于svm模型只需要用到訓練數據中的1部份,也就是支持向量的部份。
support_vectors_:寄存模型的支持向量。
support_ :寄存模型的支持向量的索引。
n_support: 寄存模型每類的支持向量的數目。

多類分類

原始的svm只能支持2類的分類,而多類分類是通過量次2分類來實現的,具體有兩種方式,即1對11對多兩種方式。
SVC 和 NuSVC是采取1對1的方式,如果 n_class 是總的種別的數目,那末共需要訓練n_class * (n_class - 1) / 2 個不同的2分類器。

#獲得分類器的數目: X = [[0], [1], [2], [3]] Y = [0, 1, 2, 3] clf = svm.SVC() clf.fit(X, Y) dec = clf.decision_function([[1]]) print dec.shape[1]

不同的是, LinearSVC 是采取1對多的方式來進行多分類,具體來講,有 n_class 個種別就訓練n_class 個分類器,明顯,在了種別數目比較多的情況下,這樣更節省空間和時間。

不平衡數據:

SVC實現了不平衡訓練數據集上的處理,通過設置class_weight參數來給每一個種別設置不同的權重,具體的使用還得看文檔。

2. SVM用來做回歸

SVM分類器可以很自然的被擴大用來做回歸,被稱之為支持向量回歸
SVR跟SVC1樣,模型只斟酌支持向量的數據,那些原理分界邊際的點將被忽視。
跟SVC類似,其也有3個類來顯示它,對應的是: SVR, NuSVR , LinearSVR,

>>> from sklearn import svm >>> X = [[0, 0], [2, 2]] >>> y = [0.5, 2.5] >>> clf = svm.SVR() >>> clf.fit(X, y) SVR(C=1.0, cache_size=200, coef0=0.0, degree=3, epsilon=0.1, gamma=0.0, kernel='rbf', max_iter=-1, shrinking=True, tol=0.001, verbose=False) >>> clf.predict([[1, 1]]) array([ 1.5])

3. 密度估計,異常檢測

種別:OneClassSVM 來實現異常檢測,這是1種無監督的方法,它的訓練數據只需要X,而無需Y

4. 復雜度分析

SVM是1個2次計劃問題(QP問題),其實重訓練數據集合中分離出支持向量的數據點,在基于libsvm的實現中,其復雜度介于: O(nfeatures×n2samples)O(nfeatures×n3samples) 之間。

5. 核函數

? 線性核: ?x,x?.

? 多項式核: (γ?x,x?+r)

生活不易,碼農辛苦
如果您覺得本網站對您的學習有所幫助,可以手機掃描二維碼進行捐贈
程序員人生
------分隔線----------------------------
分享到:
------分隔線----------------------------
關閉
程序員人生
主站蜘蛛池模板: 国产精品毛片一区二区在线看 | 精久久久久 | 欧美日韩精品一区二区三区 | 免费黄色在线看 | 欧美综合77777色婷婷 | 国产精品久久久久久久久久免 | 欧美福利一区二区 | 99久久精品视频免费 | 成人黄色免费大片 | 国产精品久久久久久久免费大片 | 国内精品久久久 | 国产猛男猛女超爽免费视频 | 久久久久久久一区二区三区 | 免费观看成人 | 色偷偷青青草 | 欧洲另类| 天堂成人国产精品一区 | 欧美黑人巨大久久久精品一区小蓝 | 欧美亚洲日本 | 在线一区二区三区 | 国产精品高清在线 | 看全色黄大色黄女片爽在线看 | 玖玖视频网 | 久久久久久久久网站 | 久久最新网址 | 草碰在线视频 | 欧美ⅹxxxxxx | 中久免费中文 | 日韩系列在线 | 国产成人影院 | 欧美日韩精品在线 | www.av免费观看 | 欧美精品一区三区 | 久久国产亚洲 | 日韩欧美在线观看视频网站 | 性色av一区二区三区 | 国产一区二区三区电影在线观看 | 欧美一级淫片丝袜脚交 | 一区二区三区久久 | 日韩1区| 日韩久久久精品 |