SVM(支持向量机)综述
第一部分?? 引言
?
基于數據的機器學習是現代智能技術中的重要方面, 研究從觀測數據(樣本) 出發尋找規律, 利用這些規律對未來數據或無法觀測的數據進行預測. 包括模式識別、神經網絡等在內, 現有機器學習方法共同的重要理論基礎之一是統計學. 傳統統計學研究的是樣本數目趨于無窮大時的漸近理論, 現有學習方法也多是基于此假設. 但在實際問題中, 樣本數往往是有限的, 因此一些理論上很優秀的學習方法實際中表現卻可能不盡人意.與傳統統計學相比, 統計學習理論(Statistical Learning Theory,SLT) 是一種專門研究小樣本情況下機器學習規律的理論. Vapnik 等人從六、七十年代開始致力于此方面研究, 到九十年代中期, 隨著其理論的不斷發展和成熟, 也由于神經網絡等學習方法在理論上缺乏實質性進展, 統計學習理論開始受到越來越廣泛的重視.統計學習理論是建立在一套較堅實的理論基礎之上的, 為解決有限樣本學習問題提供了一個統一的框架. 它能將很多現有方法納入其中, 有望幫助解決許多原來難以解決的問題(比如神經網絡結構選擇問題、局部極小點問題等) ; 同時, 在這一理論基礎上發展了一種新的通用學習方法——支持向量機(Support Vector Machine,SVM ) , 它已初步表現出很多優于已有方法的性能. 一些學者認為, SLT和SVM 正在成為繼神經網絡研究之后新的研究熱點, 并將有力地推動機器學習理論和技術的發展
我國早在八十年代末就有學者注意到統計學習理論的基礎成果, 但之后較少研究,目前只有少部分學者認識到這個重要的研究方向. 本文重點研究的多分類支持向量機至今還沒有突破性進展。
?
?
第二部分? 數據挖掘常用分類技術、算法
?
?
1、分類數據挖掘常用技術
分類作為數據挖掘中一項非常重要的任務,目前在商業上應用最多。分類的目的是學會一個分類函數或分類模型(也常常稱作分類器),該模型能把數據庫中的數據項映射到給定類別中的某一個,從而可以用于預測。目前,分類方法的研究成果較多,判別方法的好壞可以從三個方面進行:1)預測準確度(對非樣本數據的判別準確度);2)計算復雜度(方法實現時對時間和空間的復雜度);3)模式的簡潔度(在同樣效果情況下,希望決策樹小或規則少)。
??? 近年來,對數據挖掘中分類算法的研究是該領域中一個熱點,對不同分類方法都有許多對比研究成果。沒有一個分類方法在對所有數據集上進行分類學習均是最優的。目前在數據挖掘軟件中運用的最早也是最多的分類算法是神經網絡,它具有對非線性數據快速建模的能力,通過對訓練集的反復學習來調節自身的網絡結構和連接權值,并對未知的數據進行分類和預測。但是,神經網絡從某種意義上說是一種啟發式的學習機,本身有很大經驗的成分,為了克服傳統神經網絡方面不可避免的難題,Vapnik提出了一種新的神經網絡――支持向量機,并隨后提出了基于結構風險最小化思想的統計學習理論,正式奠定了SVM的理論基礎,鑒于SVM扎實的理論基礎
?
2、數據挖掘分類算法
(1)、判別分析
線性判別,KNN,Bayes判別,多元回歸分析,Rocchio法,距離函數法,支持向量機,勢函數法
(2)、機器學習
ID3決策樹,AQ11算法,Rough Sets
(3)、神經網絡
(4)、支持向量機
?
?
?
第三部分? 支持向量機
?
1、支持向量機概述
?
V. Vapnik提出的支持向量機理論因其堅實的理論基礎和諸多良好特性在近年獲得了廣泛的關注。已經有許多事實證明,作為支持向量機最基本思想之一的結構化風險最小化原則(Structural Risk Minimization, SRM )要優于傳統的經驗風險最小化原則(Empirical Risk Minimization, ERM)。不同于ERM試圖最小化訓練集上的誤差的做法,SRM試圖最小化VC維的上界,從而使其學習機獲得了更好的推廣性能,這恰恰是統計學習理論最重要的目標之一。支持向量機的主要應用領域有模式識別、函數逼近和概率密度估計等等,本文的討論重點是使用支持向量機進行多分類的問題。
?
?
2、支持向量機相關討論:
(1)SVM的優勢:
由于支持向量機方法是建立在統計學習理論的VC維理論和結構風險最小原理基礎上的,根據有限的樣本信息在模型的復雜性(即對特定訓練樣本的學習精度,Accuracy)和學習能力(即無錯誤地識別任意樣本的能力)之間尋求最佳折衷,以期獲得最好的推廣能力(Generalizatin Ability)。支持向量機方法的幾個主要優點是
可以解決小樣本情況下的機器學習問題
可以提高泛化性能
可以解決高維問題
可以解決非線性問題
可以避免神經網絡結構選擇和局部極小點問題
?
(2)SVM的研究熱點
目前,SVM算法在很多領域都有應用。例如,在模式識別方面,對于手寫數字識別、語音識別、人臉圖像識別、文章分類等問題,SVM算法在精度上已經超過傳統的學習算法或與之不相上下。SVM主要有如下幾個研究熱點:
模式識別
回歸估計
概率密度估計
?
(3)SVM的主要核函數
多項式核: (gamma*u’*v + coef0)^degree
徑向基核(RBF): exp(-gamma*|u-v|^2)
Sigmoid 核: tanh(gamma*u’*v + coef0)
?
(4)SVM的應用
文本分類,人臉識別
三維物體識別,遙感圖像分析
函數逼近,時間序列預測
數據壓縮,優化SVM算法
SVM改進方法(多分類擴展,用于多現實中的多分類問題)
SVM硬件實現
?
(5)SVM的難點
如何在非監督模式識別問題中應用統計學習理論(SLT)
如何用理論或實驗的方法計算VC維
經驗風險和實際風險之間的關系稱之為推廣性的界,但是當(h/n)>0.37時(h—VC維,n—樣本數),推廣性的界是松弛的,如何尋找一個更好地反映學習機器能力的參數和得到更緊的界
實現結構風險最小化(SRM)時,如何選擇函數子集結構
?
(6)應用中的問題
用支持向量機進行數據挖掘,除了上面討論的一些關鍵點之外,主要需要解決下面的一些問題:
(1)傳統支持向量機是做二元分類的,如何擴展為多類分類,比如預測金融風險,如果風險級別為高和低兩類,用傳統SVM可以很好地解決,但如果加一個或者幾個風險級別,那么就需要擴展成多分類支持向量機,這方面的研究做了很多,應用還很少
(2)海量數據的計算性能問題,這是很多數據挖掘算法都會面臨的問題,SVM目前在這方面要做的研究還很多。
?
?
總結
以上是生活随笔為你收集整理的SVM(支持向量机)综述的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 数据挖掘的一个完整过程
- 下一篇: Web挖掘技术