2. 支持向量機(jī)(SVM)和它的運(yùn)算速率問(wèn)題

SVM圖例
SVM Planes

對(duì)于SVM來(lái)說(shuō),數(shù)據(jù)點(diǎn)被視為p維向量福也,而我們?cè)噲D用(p-1)維超平面分開(kāi)這些點(diǎn)麦备,即創(chuàng)造所謂的“線性分割器”孽椰。為此,我們要選擇能夠讓到每邊最近的數(shù)據(jù)點(diǎn)的距離最大化的超平面凛篙。如果存在這樣的超平面黍匾,則稱為最大間隔超平面,而其定義的線性分類器被稱為最大間隔分類器呛梆,或者叫做最佳穩(wěn)定性感知器锐涯。SVM的學(xué)習(xí)策略便是間隔最大化,最終可轉(zhuǎn)化為一個(gè)凸二次規(guī)劃問(wèn)題的求解填物。

(A Support Vector Machine (SVM) is a discriminative classifier formally defined by a separating hyperplane. In other words, given labeled training data (supervised learning), the algorithm outputs an optimal hyperplane which categorizes new examples.)

遇到線性不可分的情況時(shí)纹腌,需要使用Kernal投射到高維霎终。其實(shí)Kernal函數(shù)和SVM可以理解為兩個(gè)不同的東西,SVM只不過(guò)是用到了kernel trick把有些線性不可分的情況變得在高維線性可分(理想上)升薯,任何可以用內(nèi)積計(jì)算距離的分類器或者其他的都可以用kernel trick莱褒。Kernal函數(shù)的好處是把低維空間投影到高維,有些核函數(shù)投影到有限維涎劈,比如多項(xiàng)式核广凸,有些投影到無(wú)窮維,比如RBF蛛枚。但這只是增大的線性可分的可能性炮障,并不能保證。所以還要進(jìn)入松弛系數(shù)(slash coefficients) 如果形象的理解坤候,就是如果你有N個(gè)點(diǎn),如果N個(gè)點(diǎn)分布在N維空間里企蹭,那他們肯定是線性可分的(比如2個(gè)點(diǎn)在平面上)白筹。所以SVM用kenel的目的就在于此。

參考資料:

http://blog.csdn.net/v_july_v/article/details/7624837

http://docs.opencv.org/2.4/doc/tutorials/ml/introduction_to_svm/introduction_to_svm.html

===========================

一個(gè)郵件識(shí)別谅摄,在Python中運(yùn)用SVM徒河。運(yùn)用了幾個(gè)不同的kernal:linear, poly,?rbf,sigmoid送漠,修改了幾次數(shù)據(jù)集大小顽照。

1、1%集闽寡,clf = SVC(kernel="linear"):88%正確率代兵,16秒

2、20%集爷狈,clf = SVC(kernel="linear"):95%正確率植影,64秒

3、全集涎永,clf = SVC(kernel="linear"):98%正確率思币,308秒

1、1%集羡微,clf = SVC(kernel="rbf"):62%正確率谷饿,1.8秒

2、20%集妈倔,clf = SVC(kernel="linear"):49%正確率博投,13秒

3、20%集启涯,clf = SVC(kernel="rbf", C = 1000): ?94%正確率贬堵,11秒

4晒哄、20%集方灾,clf = SVC(kernel="rbf", C = 10000): ?95%正確率,8秒

5、全集纸淮,clf = SVC(kernel="rbf", C = 10000): ?99%正確率

在計(jì)算效率方面,SVM是通過(guò)QP來(lái)求解的比默√褡埽基于libsvm的實(shí)現(xiàn)時(shí)間復(fù)雜度在O(d * n^2) ~ O(d * n^3)之間,變化取決于如何使用cache. 所以如果我們內(nèi)存足夠的話那么可以調(diào)大cache_size來(lái)加快計(jì)算速度宏所。其中d表示feature大小酥艳,如果數(shù)據(jù)集合比較稀疏的話,那么可以認(rèn)為d是non-zero的feature平均數(shù)量爬骤。libsvm處理數(shù)據(jù)集合大小最好不要超過(guò)10k. 相比之下充石,liblinear的效率則要好得多,可以很容易訓(xùn)練million級(jí)別的數(shù)據(jù)集合霞玄。

kernel函數(shù)支持1.linear 2. polynomial 3. rbf 4. sigmoid(tanh). 對(duì)于unbalanced的問(wèn)題骤铃,sklearn實(shí)現(xiàn)允許指定 1.class_weight 2.sample_weight. 其中class_weight表示每個(gè)class對(duì)應(yīng)的權(quán)重,這個(gè)在構(gòu)造classifier時(shí)候就需要設(shè)置坷剧。如果不確定的話就設(shè)置成為'auto'惰爬。sample_weight則表示每個(gè)實(shí)例對(duì)應(yīng)的權(quán)重,這個(gè)可以在調(diào)用訓(xùn)練方法fit的時(shí)候傳入惫企。另外一個(gè)比較重要的參數(shù)是C(懲罰代價(jià)),通常來(lái)說(shuō)設(shè)置成為1.0就夠了撕瞧。但是如果數(shù)據(jù)中太多噪音的話那么最好減小一些。

參數(shù)方面狞尔,可使用GridCV丛版,一種幾乎能自動(dòng)查找最優(yōu)參數(shù)調(diào)整的優(yōu)秀 sklearn 工具。

===========================

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末沪么,一起剝皮案震驚了整個(gè)濱河市硼婿,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌禽车,老刑警劉巖寇漫,帶你破解...
    沈念sama閱讀 222,378評(píng)論 6 516
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異殉摔,居然都是意外死亡州胳,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,970評(píng)論 3 399
  • 文/潘曉璐 我一進(jìn)店門逸月,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)栓撞,“玉大人,你說(shuō)我怎么就攤上這事∪肯妫” “怎么了瓢颅?”我有些...
    開(kāi)封第一講書人閱讀 168,983評(píng)論 0 362
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)弛说。 經(jīng)常有香客問(wèn)我挽懦,道長(zhǎng),這世上最難降的妖魔是什么木人? 我笑而不...
    開(kāi)封第一講書人閱讀 59,938評(píng)論 1 299
  • 正文 為了忘掉前任信柿,我火速辦了婚禮,結(jié)果婚禮上醒第,老公的妹妹穿的比我還像新娘渔嚷。我一直安慰自己,他們只是感情好稠曼,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,955評(píng)論 6 398
  • 文/花漫 我一把揭開(kāi)白布形病。 她就那樣靜靜地躺著,像睡著了一般霞幅。 火紅的嫁衣襯著肌膚如雪窒朋。 梳的紋絲不亂的頭發(fā)上,一...
    開(kāi)封第一講書人閱讀 52,549評(píng)論 1 312
  • 那天蝗岖,我揣著相機(jī)與錄音,去河邊找鬼榔至。 笑死抵赢,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的唧取。 我是一名探鬼主播铅鲤,決...
    沈念sama閱讀 41,063評(píng)論 3 422
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼枫弟!你這毒婦竟也來(lái)了邢享?” 一聲冷哼從身側(cè)響起,我...
    開(kāi)封第一講書人閱讀 39,991評(píng)論 0 277
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤淡诗,失蹤者是張志新(化名)和其女友劉穎骇塘,沒(méi)想到半個(gè)月后,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體韩容,經(jīng)...
    沈念sama閱讀 46,522評(píng)論 1 319
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡款违,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,604評(píng)論 3 342
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了群凶。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片插爹。...
    茶點(diǎn)故事閱讀 40,742評(píng)論 1 353
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出赠尾,到底是詐尸還是另有隱情力穗,我是刑警寧澤,帶...
    沈念sama閱讀 36,413評(píng)論 5 351
  • 正文 年R本政府宣布气嫁,位于F島的核電站当窗,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏杉编。R本人自食惡果不足惜超全,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 42,094評(píng)論 3 335
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望邓馒。 院中可真熱鬧嘶朱,春花似錦、人聲如沸光酣。這莊子的主人今日做“春日...
    開(kāi)封第一講書人閱讀 32,572評(píng)論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)救军。三九已至财异,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間唱遭,已是汗流浹背戳寸。 一陣腳步聲響...
    開(kāi)封第一講書人閱讀 33,671評(píng)論 1 274
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留拷泽,地道東北人疫鹊。 一個(gè)月前我還...
    沈念sama閱讀 49,159評(píng)論 3 378
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像司致,于是被迫代替她去往敵國(guó)和親拆吆。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,747評(píng)論 2 361

推薦閱讀更多精彩內(nèi)容