李 揚 謝邦昌 彭茜茜
[摘要]現今的統計學習雖然已經有了重大的發(fā)展,但是若想把事情完全交給機器完成卻不能得到理想結果,仍需要加入大量的人類智慧。現代統計學習理論是研究利用經驗數據進行機器學習的一般理論,屬于計算機科學、模式識別和應用統計學相交叉與結合的范疇。在科學技術飛速發(fā)展的今天,統計學習理論廣泛吸收和融合相關學科的新理論,不斷開發(fā)應用新技術和新方法,深化和豐富了統計學傳統領域的理論與方法,并拓展了新的領域。
關鍵詞:統計學習 試驗 方法
中圖分類號:C812文獻標識碼:A文章編號:1006-5954(2009)07-058-03
一、引言
統計的發(fā)展可以通過其所解決的問題展現:解決的問題不斷從簡單到復雜,從具體到抽象,這就要求其具有更強的計算能力,不斷的從狹義到廣義演變。傳統統計主要來源于具體的實驗,依賴于經典的參數估計方法,而現代統計學習理論是研究利用經驗數據進行機器學習的一種一般理論,屬于計算機科學、模式識別和應用統計學相交叉與結合的范疇。由于較系統地考慮了有限樣本的情況,統計學習理論與傳統統計學理論相比有更好的實用性。統計學習(Statistics learning)的起源是一系列著名的實驗(如Turing Test等),隨著信息技術的不斷發(fā)展與信息量不斷增大的進程,統計學習(Statistical Learning)理論也在逐步完善以適應新的需求。
現今的統計學習雖然已經有了重大的發(fā)展,但是若想把事情完全交給機器完成卻不能得到理想結果,仍需要加入大量的人類智慧,例如:尋找事物特征、參數選取等等。不過類神經網絡、SVM等技術的革新幫助解決了很多現實中復雜的問題,可以應用在諸多模式識別和回歸估計問題中,并已經在很多實際問題中取得了很好的應用成果。隨著統計學習發(fā)展,我們對統計有越來越高的期望,期望其可以發(fā)揮人類智慧的作用,計算能力再進一步提高,解決更加復雜的現實問題。
二、統計學習的過去和現在
Alan Turing于1950年提出了一個著名的實驗——圖靈測試(“Turing Test”):將一個具有智慧的機器和一個人類,放在一個布幕里面。人分別與機器和人類交談,如果分不出哪一個是機器,哪一個是人類的話,那么機器就具有了人工智能。由此揭開了人工智能(Artificial Intellegence)研究的序幕。在研究中,AI被劃分成Weak AI和Strong AI。Weak AI并不是功能較弱,而是指某個系統只要能表現出人類的智力就好,不管底層系統是否真的有人類的智力。Strong AI則是希望建構出來的系統即使不是用細胞做的,他的架構也卻是和人類相當,真的具有人類智慧。Weak AI可以由機器學習(Machine Learning)來代表。只要給定問題的范圍,訓練的資料(training data),就可以由數據中選擇特征(Feature selection),然后建構數據的模型(Model selection),最后把這個模型當成學習的成果,拿來做預測(Prediction)。
迄今為止,關于機器學習還沒有一種被共同接受的理論框架,其實現方法大致可以分為三種 :第一種是經典的(參數)統計估計方法。包括模式識別、神經網絡等在內;第二種方法是經驗非線性方法,如人工神經網絡(Artificial Neural Networks,ANN);第三種方法是統計學習理論( Statistical Learning Theory或 SLT)。
(一)經典的(參數)統計估計方法
經典的(參數)統計估計方法包括模式識別、神經網絡等在內,現有機器學習方法共同的重要理論基礎之一是統計學。參數方法正是基于傳統統計學,在這種方法中,參數的相關形式是已知的,訓練樣本用來估計參數的值。
但是隨著電腦解決問題的廣泛應用,研究人員試圖研究復雜問題時,發(fā)現了參數體系的缺點。
(1)大規(guī)模多變量問題導致了“維數災難”現象的發(fā)生。研究人員觀察到,增大可考慮因子的數量就需要成指數的增加計算量。因此,在含有幾十個甚至是幾百個變量的實際多維問題中定義一個相當小的函數集,也是一種不切實際的想法。
(2)透過實際數據分析,實際問題的統計成分并不能僅用經典的統計分布函數來描述。實際分布經常是有差別的,為了建構有效的算法,我們必須考慮這種差別。
(3)即使是最簡單的密度估計問題,最大似然方法也不見得是最好的。
總之,這種方法有很大的局限性。首先,它需要已知樣本分布形式,這需要花費很大代價,還有,傳統統計學研究的是樣本數目趨于無窮大時的漸近理論,現有學習方法也多是基于此假設。但在實際問題中,樣本數往往是有限的,因此一些理論上很優(yōu)秀的學習方法實際中表現卻可能不盡如人意。
(二)經驗非線性方法
經驗非線性方法,如人工神經網絡(ANN)。這種方法利用已知樣本建立非線性模型,克服了傳統參數估計方法的困難。但是,這種方法缺乏一種統一的數學理論。
以人工神經網絡為例進行簡單的介紹。人工神經網絡(ANN),一種模仿動物神經網絡行為特征,進行分布式并行信息處理的算法數學模型。這種網絡依靠系統的復雜程度,通過調整內部大量節(jié)點之間相互連接的關系,從而達到處理信息的目的。人工神經網絡具有自學習和自適應的能力,可以通過預先提供的一批相互對應的輸入——輸出數據,分析掌握兩者之間潛在的規(guī)律,最終根據這些規(guī)律,用新的輸入數據來推算輸出結果,這種學習分析的過程被稱為“訓練”。人工神經網絡具有非線性、非局限性、非常定性和非凸性的特點,它是并行分布式系統,采用了與傳統人工智能和信息處理技術完全不同的機理,克服了傳統的基于邏輯符號的人工智能在處理直覺、非結構化信息方面的缺陷,具有自適應、自組織和實時學習的特點。但是,由于在長期發(fā)展過程中,由于人工神經網絡在理論上缺乏實質性進展,所以新的方法,統計學習理論開始受到越來越廣泛的重視。
(三)統計學習理論
統計學習理論( Statistical Learning Theory或 SLT)是一種專門研究小樣本情況下機器學習規(guī)律的理論,是傳統統計學的重要發(fā)展和補充,為研究有限樣本情況下機器學習的理論和方法提供了理論框架,其核心思想是通過控制學習機器的容量實現對推廣能力的控制。該理論針對小樣本統計問題建立了一套新的理論體系,在這種體系下的統計推理規(guī)則不僅考慮了對漸近性能的要求,而且追求在現有有限信息的條件下得到最優(yōu)結果。V.Vapnik等人從六、七十年代開始致力于統計學習理論方面的研究,到九十年代中期,隨著其理論的不斷發(fā)展和成熟,其受到了越來越廣泛的重視。
在提到統計學習理論時不得不說的一個核心概念是VC維。它是描述函數集或學習機器的復雜性或者說是學習能力(Capacity of the machine)的一個重要指標,在此概念基礎上發(fā)展出了一系列關于統計學習的一致性(Consistency)、收斂速度、推廣性能(Generalization Performance)等的重要結論。
在統計學習理論基礎上,一種新的通用學習方法應運而生,支持向量機(Support Vector Machine 或SVM)。支持向量機方法是建立在統計學習理論的VC維理論和結構風險最小原理基礎上的,根據有限的樣本信息在模型的復雜性(即對特定訓練樣本的學習精度,Accuracy)和學習能力(即無錯誤地識別任意樣本的能力)之間尋求最佳折衷,以期獲得最好的推廣能力(Generalization Ability)。支持向量機方法有以下的幾個主要優(yōu)點有:
(1)它是專門針對有限樣本情況的,其目標是得到現有信息下的最優(yōu)解而不僅僅是樣本數趨于無窮大時的最優(yōu)值。
(2)算法最終將轉化成為一個二次型尋優(yōu)問題,從理論上說,得到的將是全局最優(yōu)點,解決了在神經網絡方法中無法避免的局部極值問題。
(3)算法將實際問題通過非線性變換轉換到高維的特征空間(Feature Space),在高維空間中構造線性判別函數來實現原空間中的非線性判別函數,特殊性質能保證機器有較好的推廣能力,同時它巧妙地解決了維數問題,其算法復雜度與樣本維數無關。
在SVM 方法中,只要定義不同的內積函數,就可以實現多項式逼近、貝葉斯分類器、徑向基函數(Radial Basic Function 或RBF)方法、多層感知器網絡等許多現有學習算法。目前,SVM算法在模式識別、回歸估計、概率密度函數估計等方面都有應用。例如,在模式識別方面,對于手寫數字識別、語音識別、人臉圖像識別、文章分類等問題,SVM 算法在精度上已經超過傳統的學習算法或與之不相上下。
由于 SVM方法較好的理論基礎和它在一些領域的應用中表現出來的優(yōu)秀的推廣性能,近年來許多關于 SVM方法的研究,包括算法本身的改進和算法的實際應用,都陸續(xù)提出。盡管SVM算法的性能在許多實際問題的應用中得到了驗證,但是該算法在計算上存在著一些問題,包括訓練算法速度慢、算法復雜而難以實現以及檢測階段運算量大等等。
傳統的利用標準二次型優(yōu)化技術解決對偶問題的方法可能是訓練算法慢的主要原因。首先,SVM方法需要計算和存儲核函數矩陣,當樣本點數目較大時,需要很大的內存,例如,當樣本點數目超過 4000時,存儲核函數矩陣需要多達128兆內存;其次,SVM在二次型尋優(yōu)過程中要進行大量的矩陣運算,多數情況下,尋優(yōu)算法是占用算法時間的主要部分。
SVM方法的訓練運算速度是限制它的應用的主要方面,近年來人們針對方法本身的特點提出了許多算法來解決對偶尋優(yōu)問題。大多數算法的一個共同的思想就是循環(huán)反復運算:將原問題分解成為若干子問題,按照某種反復運算策略,通過反復求解子問題,最終使結果收斂到原問題的最優(yōu)解。根據子問題的劃分和反復運算策略的不同,又可以大致分為兩類。
第一類是所謂的“塊算法”(Chunking algorithm)。“塊算法”基于這樣一個事實,即去掉 Lagrange乘子等于零的訓練樣本不會影響原問題的解。對于給定的訓練樣本集,如果其中的支持向量是已知的,尋優(yōu)算法就可以排除非支持向量,只需對支持向量計算權值(即 Lagrange乘子)即可。
當支持向量的數目遠遠小于訓練樣本數目時,“塊算法”顯然能夠大大提高運算速度。然而,如果支持向量的數目本身就比較多,隨著算法反復運算次數的增多,工作樣本集也會越來越大,算法依舊會變得十分復雜。因此第二類方法把問題分解成為固定樣本數的子問題:工作樣本集的大小固定在算法速度可以容忍的限度內,反復運算過程中只是將剩余樣本中部分“情況最糟的樣本”與工作樣本集中的樣本進行等量交換,即使支持向量的個數超過工作樣本集的大小,也不改變工作樣本集的規(guī)模,而只對支持向量中的一部分進行優(yōu)化。
毫無疑問,固定工作樣本集的算法解決了占用內存的問題,而且限制了子問題規(guī)模的無限增大;但是,從這個意義上來說,固定工作樣本集的算法把解標準二次型的尋優(yōu)問題的時間轉嫁到循環(huán)反復運算上了,它的反復運算次數一般會比“塊算法”多。尤其是 SMO,如果沒有一個好的啟發(fā)式反復運算策略,該算法就是一種盲目爬山法。
基于此,我們提出一種算法思想,希望能夠綜合兩類算法的特點。我們仍舊從最終目標中抽取子問題,借用某種反復運算策略使算法收斂。關鍵的,我們希望一方面子問題規(guī)模不會太小,以免反復運算次數太多,另一方面能借鑒 SMO的思想,利用二次問題的特點,找到子問題的解析解法,或者是近似解,從而不必對每一個子問題都調用尋優(yōu)算法。
此外,由于 SVM方法的性能與實現的上的巨大差異,我們在求解子問題時不一定要得到精確解(解的精確度可以由反復運算來保證),甚至還可以考慮對最終目標求取近似解。這樣,盡管結果的性能會受到影響,但是如果能夠大幅度提高運算速度,它仍不失為一種好方法。
三、統計學習的將來
統計學習在現當代社會已經有了飛速發(fā)展,但其還不能完全滿足人類的需求。在其進一步的發(fā)展過程中,仍需要在機器學習問題、語言意識的學習、人機界面等方面進行改進。在完成一項任務時,人類總是希望機器能夠自主獨立的完成,自己介入的越少越好。這就需要加強機器的文字意識,而不是將所有的信息轉化成數字之后機器才能識別。如果人類比較高層次的認知活動,如語言產生意義、尋找類似物品和抽象化的能力,其背后的神經機制若能夠被發(fā)現,那么我們也可以了解大腦思想的表達方式,人腦和計算機之間可以互相轉換數據,這時候人腦的能力和計算機的計算能力,就可以互補,讓我們計算帕斯卡爾三角形速度更快而沒有負擔。計算機也可以運用人類抽象化的能力,更正確地尋找“類似”的東西,并且是以更快的速度達成抽象化才能解決的問題。
四、結語
傳統的統計學習為統計學習的發(fā)展提供了堅實的理論基礎,現代統計理論無論是在假設還是方法上都有了很大的突破和進展。在科學技術飛速發(fā)展的今天,統計學習理論廣泛吸收和融合相關學科的新理論,不斷開發(fā)應用新技術和新方法,深化和豐富了統計學傳統領域的理論與方法,并拓展了新的領域。相信,統計學習必將會應用于越來越廣泛的領域,解決迫在眉睫的問題,提供更大的便利。
■ 名詞解釋
[1] 人工神經網絡
人工神經網絡是一種應用類似于大腦神經突觸聯接的結構進行信息處理的數學模型,主要依靠系統的復雜程度,通過調整內部大量節(jié)點之間相互連接的關系,從而達到處理信息的目的。
[2] 支持向量機
支持向量機是數據挖掘中的一個新方法,能非常成功地處理回歸問題(時間序列分析)和模式識別(分類問題、判別分析)等諸多問題,并可推廣于預測和綜合評價等領域。
[3] 特征空間
特征空間是相同特征值的特征向量的集合。
[4] 徑向基函數網絡
徑向基函數網絡是一種向前反饋網絡,可以處理不規(guī)則分布的高維數據。
[5]多層感知器網絡
多層感知器網絡是具有多個中間層的網絡系統。
■ 參考文獻
[1] Berry Michael J. A., Linoff Gordon S. “Data Mining Techniques: For Marketing, Sales, and Customer Relationship Management” John Wiley & Sons, Inc., 1997
[2] Guape, F.H.; Owrang, M.M. “Database Mining Discovering New Knowledge and Cooperative Advantage” Information Systems Management, 1995,12, pp.26-31
[3] Usama Fayyad, Gregory Piatetsky-Shapiro, Padhraic Smyth, “The KDD Process for Extracting Useful Knowledge from Volumes of Data” Communications of the ACM, 1996, Vol 39., No.11, pp.27-34
[4] Chung, H. Michael; Gray, Paul; Guest Editors “Special Section: Data Mining” Journal of Management Information Systems, 1999, Vol. 16, pp.11-16
[5] 謝邦昌、李揚,數據挖掘與商業(yè)智能的現狀及未來發(fā)展,統計與信息論壇,2008(5):94-96