SVM
算法
支持向量機(jī)(Support Vector
Machine)是Cortes和Vapnik于1995年首先提出的,,它在解決小樣本,、非線性及高維模式識(shí)別中表現(xiàn)出許多特有的優(yōu)勢(shì),并能夠推廣應(yīng)用到
函數(shù)擬合等其他機(jī)器學(xué)習(xí)問(wèn)題中[10],。
支持向量機(jī)方法是建立在統(tǒng)計(jì)學(xué)習(xí)理論的VC 維理論和結(jié)構(gòu)風(fēng)險(xiǎn)最小原理基礎(chǔ)上的,,根據(jù)有限的樣本信息在模型的復(fù)雜性
(即對(duì)特定訓(xùn)練樣本的學(xué)習(xí)精度,Accuracy)和學(xué)習(xí)能力(即無(wú)錯(cuò)誤地識(shí)別任意樣本的能力)之間尋求最佳折衷,,以期獲得最好的推廣能力[14](或稱
泛化能力),。
SVM 方法有很堅(jiān)實(shí)的理論基礎(chǔ),,SVM 訓(xùn)練的本質(zhì)是解決一個(gè)二次規(guī)劃問(wèn)題(Quadruple
Programming,指目標(biāo)函數(shù)為二次函數(shù),,約束條件為線性約束的最優(yōu)化問(wèn)題),,得到的是全局最優(yōu)解,這使它有著其他統(tǒng)計(jì)學(xué)習(xí)技術(shù)難以比擬的優(yōu)越性,。
SVM 分類器的文本分類效果很好,,是最好的分類器之一。同時(shí)使用核
函數(shù)將原始的樣本空間向高維空間進(jìn)行變換,,能夠解決原始樣本線性不可分的問(wèn)題,。其缺點(diǎn)是核函數(shù)的選擇缺乏指導(dǎo),難以針對(duì)具體問(wèn)題選擇最佳的
核函數(shù),;另外SVM 訓(xùn)練速度極大地受到訓(xùn)練集規(guī)模的影響,,計(jì)算開銷比較大,針對(duì)SVM
的訓(xùn)練速度問(wèn)題,,研究者提出了很多改進(jìn)方法,,包括Chunking 方法、Osuna 算法,、SMO 算法和交互SVM 等等[14],。
SVM分類器的優(yōu)點(diǎn)在于通用性較好,且分類精度高,、分類速度快,、分類速度與訓(xùn)練樣本個(gè)數(shù)無(wú)關(guān),在查準(zhǔn)和查全率方面都優(yōu)于kNN及樸素貝葉斯方法[8],。
與其它算法相比,,SVM算法的理論基礎(chǔ)較為復(fù)雜,但應(yīng)用前景很廣,,我打算專門寫一個(gè)系列的文章,,詳細(xì)的討論SVM算法,stay tuned,!
介紹過(guò)了幾
個(gè)很具代表性的算法之后,,不妨用國(guó)內(nèi)外的幾組實(shí)驗(yàn)數(shù)據(jù)來(lái)比較一下他們的優(yōu)劣。
在中文語(yǔ)料上的試驗(yàn),,文獻(xiàn)[6]使用了復(fù)旦大學(xué)自然語(yǔ)言處理實(shí)驗(yàn)室提供的基準(zhǔn)語(yǔ)料對(duì)當(dāng)前的基于詞向量空間文本模型的幾種分類算法進(jìn)行了測(cè)試,,這一基準(zhǔn)語(yǔ)料
分為20個(gè)類別,共有9804篇訓(xùn)練文檔,,以及9833篇測(cè)試文檔,。在經(jīng)過(guò)統(tǒng)一的分詞處理、噪聲詞消除等預(yù)處理之后,,各個(gè)分類方法的性能指標(biāo)如下,。
其中F1
測(cè)度是一種綜合了查準(zhǔn)率與召回率的指標(biāo),,只有當(dāng)兩個(gè)值均比較大的時(shí)候,對(duì)應(yīng)的F1測(cè)度才比較大,,因此是比單一的查準(zhǔn)或召回率更加具有代表性的指標(biāo),。
由比較結(jié)果不難看出,SVM和kNN明顯優(yōu)于樸素貝葉斯方法(但他們也都優(yōu)于Rocchio方法,,這種方法已經(jīng)很少再參加評(píng)測(cè)了),。
在英文語(yǔ)料上,路透社的Reuters-21578
“ModApt´e”是比較常用的測(cè)試集,,在這個(gè)測(cè)試集上的測(cè)試由很多人做過(guò),,Sebastiani在文獻(xiàn)[23]中做了總結(jié),相關(guān)算法的結(jié)果摘錄如下:
分類算法 在Reuters-21578 “ModApt´e”上的F1測(cè)度 Rocchio 0.776 樸素貝葉斯 0.795 kNN 0.823 SVM 0.864
僅以F1測(cè)度來(lái)看,,kNN是相當(dāng)接近SVM算法的,,但F1只反映了分類效果(即分類分得準(zhǔn)不準(zhǔn)),而沒(méi)有考慮性能(即分類分得快不快),。綜合而論,,SVM
是效果和性能均不錯(cuò)的算法。
前面也提到
過(guò),,訓(xùn)練階段的最終產(chǎn)物就是分類器,,分類階段僅僅是使用這些分類器對(duì)新來(lái)的文檔分類而已,沒(méi)有過(guò)多可說(shuō)的東西,。
下一章節(jié)是對(duì)到目前為止出現(xiàn)過(guò)的概念的列表及簡(jiǎn)單的解釋,,也會(huì)引入一些后面會(huì)用到的概念。再之后會(huì)談及分類問(wèn)題本身的分類(繞口),,中英文分類問(wèn)題的相似
與不同之處以及幾種特征提取算法的概述和比較,,路漫漫……