本文主要參考中科院自動化研究所復(fù)雜系統(tǒng)與智能科學(xué)實(shí)驗(yàn)室王玨研究員《關(guān)于機(jī)器學(xué)習(xí)的討論》,討論機(jī)器學(xué)習(xí)的描述,理論基礎(chǔ),發(fā)展歷史以及研究現(xiàn)狀。
0引言
20世紀(jì)90年代初,當(dāng)時(shí)的美國副總統(tǒng)提出了一個(gè)重要的計(jì)劃——國家信息基本設(shè)施計(jì)劃(NationalInformation Infrastructure,NII)。這個(gè)計(jì)劃的技術(shù)含義包含了四個(gè)方面的內(nèi)容:
(1)不分時(shí)間與地域,可以方便地獲得信息。
(2)不分時(shí)間與地域,可以有效地利用信息。
(3)不分時(shí)間與地域,可以有效地利用軟硬件資源。
(4)保證信息安全。
本文主要討論解決“信息有效利用”問題,其本質(zhì)是:如何根據(jù)用戶的特定需求從海量數(shù)據(jù)中建立模型或發(fā)現(xiàn)有用的知識。對計(jì)算機(jī)科學(xué)來說,這就是機(jī)器學(xué)習(xí)。
計(jì)算機(jī)科學(xué),特別是人工智能的研究者一般公認(rèn)Simon對學(xué)習(xí)的論述:“如果一個(gè)系統(tǒng)能夠通過執(zhí)行某個(gè)過程改進(jìn)它的性能,這就是學(xué)習(xí)。”這是一個(gè)相當(dāng)廣泛的說明, 其要點(diǎn)是“系統(tǒng)”, 它涵蓋了計(jì)算系統(tǒng)、控制系統(tǒng)以及人系統(tǒng)等, 對這些不同系統(tǒng)的學(xué)習(xí), 顯然屬于不同的科學(xué)領(lǐng)域。即使計(jì)算系統(tǒng), 由于目標(biāo)不同, 也分為了“從有限觀察概括特定問題世界模型的機(jī)器學(xué)習(xí)”、“發(fā)現(xiàn)觀測數(shù)據(jù)中暗含的各種關(guān)系的數(shù)據(jù)分析”,以及“從觀測數(shù)據(jù)挖掘有用知識的數(shù)據(jù)挖掘”等不同分支。由于這些分支發(fā)展的各種方法的共同目標(biāo)都是“從大量無序的信息到簡潔有序的知識”,因此,它們都可以理解為Simon 意義下的“過程”,也就都是“學(xué)習(xí)”。
1 機(jī)器學(xué)習(xí)描述
本文將討論限制在“從有限觀察概括特定問題世界模型的機(jī)器學(xué)習(xí)”與“從有限觀察發(fā)現(xiàn)觀測數(shù)據(jù)中暗含的各種關(guān)系的數(shù)據(jù)分析”的方法上, 并統(tǒng)稱其為機(jī)器學(xué)習(xí)。
我們描述機(jī)器學(xué)習(xí)如下:
令W是給定世界的有限或無限的所有觀測對象的集合, 由于我們觀察能力的限制, 我們只能獲得這個(gè)世界的一個(gè)有限的子集Q W, 稱為樣本集。機(jī)器學(xué)習(xí)就是根據(jù)這個(gè)樣本集, 推算這個(gè)世界的模型, 使它對這個(gè)世界(盡可能地)為真。
這個(gè)描述隱含了三個(gè)需要解決的問題:
(1) 一致: 假設(shè)世界W與樣本集Q有相同的性質(zhì)。例如,如果學(xué)習(xí)過程基于統(tǒng)計(jì)原理,獨(dú)立同分布( i. i. d )就是一類一致條件。
(2) 劃分: 將樣本集放到n維空間,尋找一個(gè)定義在這個(gè)空間上的決策分界面(等價(jià)關(guān)系),使得問題決定的不同對象分在不相交的區(qū)域。
(3) 泛化: 泛化能力是這個(gè)模型對世界為真程度的指標(biāo)。從有限樣本集合, 計(jì)算一個(gè)模型,使得這個(gè)指標(biāo)最大(最小)。
這些問題對觀測數(shù)據(jù)提出了相當(dāng)嚴(yán)厲的條件,首先需要人們根據(jù)一致假設(shè)采集數(shù)據(jù),由此構(gòu)成機(jī)器學(xué)習(xí)算法需要的樣本集; 其次, 需要尋找一個(gè)空間, 表示這個(gè)問題; 最后, 模型的泛化指標(biāo)需要滿足一致假設(shè), 并能夠指導(dǎo)算法設(shè)計(jì)。這些條件限制了機(jī)器學(xué)習(xí)的應(yīng)用范圍。
2 機(jī)器學(xué)習(xí)的發(fā)展歷史
2.1 機(jī)器學(xué)習(xí)與人工智能
機(jī)器學(xué)習(xí)是人工智能研究的核心內(nèi)容。它的應(yīng)用已遍及人工智能的各個(gè)分支,如專家系統(tǒng)、自動推理、自然語言理解、模式識別、計(jì)算機(jī)視覺、智能機(jī)器人等領(lǐng)域。
人工智能涉及到諸如意識(consciousness)、自我(self)、心靈(mind)(包括無意識的精神(unconscious_mind))等等問題。人唯一了解的智能是人本身的智能,這是普遍認(rèn)同的觀點(diǎn)。但是我們對我們自身智能的理解都非常有限,對構(gòu)成人的智能的必要元素也了解有限,所以就很難定義什么是“人工”制造的“智能”了。因此人工智能的研究往往涉及對人的智能本身的研究。其它關(guān)于動物或其它人造系統(tǒng)的智能也普遍被認(rèn)為是人工智能相關(guān)的研究課題。下圖展示了人工智能的發(fā)展路線:
機(jī)器學(xué)習(xí)是人工智能研究發(fā)展到一定階段的必然產(chǎn)物。從 20 世紀(jì)50 年代到 70 年代初,人工智能研究處于“推理期”,人們認(rèn)為只要給機(jī)器賦予邏輯推理能力,機(jī)器就能具有智能。這一階段的代表性工作主要有 A. Newell 和 H. Simon 的“邏輯理論家”程序以及此后的“通用問題求解”程序等,這些工作在當(dāng)時(shí)取得了令人振奮的成果。例如,“邏輯理論家”程序在 1952 年證明了著名數(shù)學(xué)家羅素和懷特海的名著《數(shù)學(xué)原理》中的 38 條定理,在1963年證明了全部的52 條定理,而且定理 2.85甚至比羅素和懷特海證明得更巧妙。A. Newell和 H. Simon因此獲得了 1975 年圖靈獎。然而,隨著研究向前發(fā)展,人們逐漸認(rèn)識到,僅具有邏輯推理能力是遠(yuǎn)遠(yuǎn)實(shí)現(xiàn)不了人工智能的。E.A. Feigenbaum等人認(rèn)為,要使機(jī)器具有智能,就必須設(shè)法使機(jī)器擁有知識。在他們的倡導(dǎo)下,20 世紀(jì) 70 年代中期開始,人工智能進(jìn)入了“知識期”。在這一時(shí)期,大量專家系統(tǒng)問世,在很多領(lǐng)域做出了巨大貢獻(xiàn)。E.A. Feigenbaum 作為“知識工程”之父在 1994 年獲得了圖靈獎。但是,專家系統(tǒng)面臨“知識工程瓶頸”,簡單地說,就是由人來把知識總結(jié)出來再教給計(jì)算機(jī)是相當(dāng)困難的。于是,一些學(xué)者想到,如果機(jī)器自己能夠?qū)W習(xí)知識該多好!實(shí)際上,圖靈在1950年提出圖靈測試的文章中,就已經(jīng)提到了機(jī)器學(xué)習(xí)的可能,而20世紀(jì)50年代其實(shí)已經(jīng)開始有機(jī)器學(xué)習(xí)相關(guān)的研究工作,主要集中在基于神經(jīng)網(wǎng)絡(luò)的連接主義學(xué)習(xí)方面,代表性工作主要有 F. Rosenblatt 的感知機(jī)、B. Widrow 的 Adaline 等。在 20 世紀(jì) 6、70 年代,多種學(xué)習(xí)技術(shù)得到了初步發(fā)展,例如以決策理論為基礎(chǔ)的統(tǒng)計(jì)學(xué)習(xí)技術(shù)以及強(qiáng)化學(xué)習(xí)技術(shù)等,代表性工作主要有 A.L. Samuel 的跳棋程序以及 N.J. Nilson 的“學(xué)習(xí)機(jī)器”等,20 多年后紅極一時(shí)的統(tǒng)計(jì)學(xué)習(xí)理論的一些重要結(jié)果也是在這個(gè)時(shí)期取得的。在這一時(shí)期,基于邏輯或圖結(jié)構(gòu)表示的符號學(xué)習(xí)技術(shù)也開始出現(xiàn),代表性工作有 P. Winston的“結(jié)構(gòu)學(xué)習(xí)系統(tǒng)”、R.S. Michalski等人的“基于邏輯的歸納學(xué)習(xí)系統(tǒng)”、E.B. Hunt 等人的“概念學(xué)習(xí)系統(tǒng)”等。1980 年夏天,在美國卡內(nèi)基梅隆大學(xué)舉行了第一屆機(jī)器學(xué)習(xí)研討會;同年,《策略分析與信息系統(tǒng)》連出三期機(jī)器學(xué)習(xí)專輯;1983年,Tioga出版社出版了R.S. Michalski、J.G. Carbonell和T.M. Mitchell主編的《機(jī)器學(xué)習(xí):一種人工智能途徑》,書中匯集了 20 位學(xué)者撰寫的 16 篇文章,對當(dāng)時(shí)的機(jī)器學(xué)習(xí)研究工作進(jìn)行了總結(jié),產(chǎn)生了很大反響;1986 年,《Machine Learning》創(chuàng)刊;1989 年,《Artificial Intelligence》出版了機(jī)器學(xué)習(xí)專輯,刊發(fā)了一些當(dāng)時(shí)比較活躍的研究工作,其內(nèi)容后來出現(xiàn)在J.G. Carbonell主編、MIT出版社 1990 年出版的《機(jī)器學(xué)習(xí):風(fēng)范與方法》一書中。總的來看,20 世紀(jì) 80 年代是機(jī)器學(xué)習(xí)成為一個(gè)獨(dú)立的學(xué)科領(lǐng)域并開始快速發(fā)展、各種機(jī)器學(xué)習(xí)技術(shù)百花齊放的時(shí)期。R.S. Michalski等人中把機(jī)器學(xué)習(xí)研究劃分成“從例子中學(xué)習(xí)”、“在問題求解和規(guī)劃中學(xué)習(xí)”、“通過觀察和發(fā)現(xiàn)學(xué)習(xí)”、“從指令中學(xué)習(xí)”等范疇;而 E.A. Feigenbaum在著名的《人工智能手冊》中,則把機(jī)器學(xué)習(xí)技術(shù)劃分為四大類,即“機(jī)械學(xué)習(xí)”、“示教學(xué)習(xí)”、“類比學(xué)習(xí)”、“歸納學(xué)習(xí)”。
2.2 機(jī)器學(xué)習(xí)的理論基礎(chǔ)
機(jī)器學(xué)習(xí)的科學(xué)基礎(chǔ)之一是神經(jīng)科學(xué), 然而, 對機(jī)器學(xué)習(xí)進(jìn)展產(chǎn)生重要影響的是以下三個(gè)發(fā)現(xiàn), 分別是:
(1) James關(guān)于神經(jīng)元是相互連接的發(fā)現(xiàn)。
(2) McCulloch 與Pitts 關(guān)于神經(jīng)元工作方式是“興奮”和“抑制”的發(fā)現(xiàn)。
(3) Hebb 的學(xué)習(xí)律(神經(jīng)元相互連接強(qiáng)度的變化)。
其中, McCulloch 與Pitts 的發(fā)現(xiàn)對近代信息科學(xué)產(chǎn)生了巨大的影響。對機(jī)器學(xué)習(xí), 這項(xiàng)成果給出了近代機(jī)器學(xué)習(xí)的基本模型, 加上指導(dǎo)改變連接神經(jīng)元之間權(quán)值的Hebb學(xué)習(xí)律,成為目前大多數(shù)流行的機(jī)器學(xué)習(xí)算法的基礎(chǔ)。
1954年, Barlow 與Hebb 在研究視覺感知學(xué)習(xí)時(shí),分別提出了不同假設(shè): Barlow 倡導(dǎo)單細(xì)胞學(xué)說, 假設(shè)從初級階段而來的輸入集中到具有專一性響應(yīng)特點(diǎn)的單細(xì)胞, 并使用這個(gè)神經(jīng)單細(xì)胞來表象視覺客體。這個(gè)考慮暗示, 神經(jīng)細(xì)胞可能具有較復(fù)雜的結(jié)構(gòu); 而Hebb主張視覺客體是由相互關(guān)聯(lián)的神經(jīng)細(xì)胞集合體來表象, 并稱其為ensemble。在神經(jīng)科學(xué)的研究中, 盡管這兩個(gè)假設(shè)均有生物學(xué)證據(jù)的支持, 但是, 這個(gè)爭論至今沒有生物學(xué)的定論。這個(gè)生物學(xué)的現(xiàn)實(shí), 為我們計(jì)算機(jī)科學(xué)家留下了想象的空間, 由于在機(jī)器學(xué)習(xí)中一直存在著兩種相互補(bǔ)充的不同研究路線, 這兩個(gè)假設(shè)對機(jī)器學(xué)習(xí)研究有重要的啟示作用。
在機(jī)器學(xué)習(xí)劃分的研究中, 基于這兩個(gè)假設(shè), 可以清晰地將機(jī)器學(xué)習(xí)發(fā)展歷程總結(jié)為: 以感知機(jī)、BP與SVM 等為一類;以樣條理論、k-近鄰、Madalin e、符號機(jī)器學(xué)習(xí)、集群機(jī)器學(xué)習(xí)與流形機(jī)器學(xué)習(xí)等為另一類。
在McCulloch 與Pitts 模型的基礎(chǔ)上, 1957 年, Rosenblatt 首先提出了感知機(jī)算法,這是第一個(gè)具有重要學(xué)術(shù)意義的機(jī)器學(xué)習(xí)算法。這個(gè)思想發(fā)展的坎坷歷程, 正是機(jī)器學(xué)習(xí)研究發(fā)展歷史的真實(shí)寫照。感知機(jī)算法主要貢獻(xiàn)是: 首先, 借用最簡單的McCulloch與Pitts模型作為神經(jīng)細(xì)胞模型; 然后,根據(jù)Hebb集群的考慮, 將多個(gè)這樣的神經(jīng)細(xì)胞模型根據(jù)特定規(guī)則集群起來,形成神經(jīng)網(wǎng)絡(luò), 并將其轉(zhuǎn)變?yōu)橄率鰴C(jī)器學(xué)習(xí)問題: 計(jì)算一個(gè)超平面, 將在空間上不同類別標(biāo)號的點(diǎn)劃分到不同區(qū)域。在優(yōu)化理論的基礎(chǔ)上, Rosenblatt 說明, 如果一個(gè)樣本集合是線性可分, 則這個(gè)算法一定可以以任何精度收斂。由此導(dǎo)致的問題是, 對線性不可分問題如何處理。
1969年,Minsky 與Paper出版了對機(jī)器學(xué)習(xí)研究具有深遠(yuǎn)影響的著作Perceptron(《感知機(jī)》)。目前, 人們一般的認(rèn)識是, 由于這本著作中提出了XOR 問題, 從而扼殺了感知機(jī)的研究方向。然而, 在這本著作中對機(jī)器學(xué)習(xí)研究提出的基本思想, 至今還是正確的, 其思想的核心是兩條:
(1) 算法能力: 只能解決線性問題的算法是不夠的, 需要能夠解決非線性問題的算法。
(2) 計(jì)算復(fù)雜性: 只能解決玩具世界問題的算法是沒有意義的, 需要能夠解決實(shí)際世界問題的算法。
在1986 年, Rumelhart 等人的BP 算法解決了XOR 問題, 沉寂近二十年的感知機(jī)研究方向重新獲得認(rèn)可,人們自此重新開始關(guān)注這個(gè)研究方向, 這是Rumelhart等人的重要貢獻(xiàn)。
在20 世紀(jì)60 年代的另一個(gè)重要研究成果來自Widrow。1960 年,Widrow 推出了Madaline 模型, 在算法上,對線性不可分問題, 其本質(zhì)是放棄劃分樣本集的決策分界面連續(xù)且光滑的條件, 代之分段的平面。從近代的觀點(diǎn)來看, 這項(xiàng)研究與感知機(jī)的神經(jīng)科學(xué)假設(shè)的主要區(qū)別是: 它是確認(rèn)Barlow 假設(shè)中神經(jīng)細(xì)胞具有較復(fù)雜結(jié)構(gòu)的思想,由此,將線性模型(例如, 感知機(jī))考慮為神經(jīng)細(xì)胞模型( 而不是簡單的McCulloch與Pitts模型) ,然后, 再基于Hebb 神經(jīng)元集合體假設(shè), 將這些局部模型集群為對問題世界的表征, 由此解決線性不可分問題。但是, 這項(xiàng)研究遠(yuǎn)不如感知機(jī)著名, 其原因是: 其一, 盡管Madaline可以解決線性不可分問題, 但是, 其解答可能是平凡的; 其二,Widrow 沒有給出其理論基礎(chǔ), 事實(shí)上,其理論基礎(chǔ)遠(yuǎn)比感知機(jī)復(fù)雜, 直到1990 年, Schapire根據(jù)Valiant 的“概率近似正確(PAC)”理論證明了“弱可學(xué)習(xí)定理”之后, 才真正引起人們的重視。
進(jìn)一步比較機(jī)器學(xué)習(xí)中兩個(gè)不同路線的神經(jīng)科學(xué)啟示是有趣的: 對機(jī)器學(xué)習(xí)來說, 它們最顯著的差別是對神經(jīng)細(xì)胞模型的假設(shè), 例如, 感知機(jī)是以最簡單的McCulloch與Pitts 模型作為神經(jīng)細(xì)胞模型, 而Madaline 是以問題世界的局部模型作為神經(jīng)細(xì)胞模型,兩種方法都需要根據(jù)Hebb 思想集群。因此, 對機(jī)器學(xué)習(xí)研究, 兩個(gè)神經(jīng)科學(xué)的啟示是互補(bǔ)的。但是, 兩者還有區(qū)別: 前者強(qiáng)調(diào)模型的整體性, 這與Barlow“表征客體的單一細(xì)胞論”一致, 因此, 我們稱其為Barlow 路線; 而后者則強(qiáng)調(diào)對世界的表征需要多個(gè)神經(jīng)細(xì)胞集群, 這與Hebb“表征客體的多細(xì)胞論”一致, 我們稱其為Hebb 路線。鑒于整體模型與局部模型之間在計(jì)算上有本質(zhì)差別, 盡管根據(jù)Barlow 與Hebb 假設(shè)區(qū)分機(jī)器學(xué)習(xí)的方法。
在這一節(jié)的最后, 將1989 年Carbonell對機(jī)器學(xué)習(xí)以后十年的展望與十年后Diet terich 的展望作一個(gè)對比, 可能是有趣的, 我們希望以此說明機(jī)器學(xué)習(xí)研究由于面臨問題的改變所發(fā)生的變遷(表1) 。
3 統(tǒng)計(jì)機(jī)器學(xué)習(xí)
統(tǒng)計(jì)機(jī)器學(xué)習(xí)是近幾年被廣泛應(yīng)用的機(jī)器學(xué)習(xí)方法,事實(shí)上,這是一類相當(dāng)廣泛的方法。更為廣義地說, 這是一類方法學(xué)。當(dāng)我們獲得一組對問題世界的觀測數(shù)據(jù), 如果我們不能或者沒有必要對其建立嚴(yán)格物理模型,我們可以使用數(shù)學(xué)的方法, 從這組數(shù)據(jù)推算問題世界的數(shù)學(xué)模型, 這類模型一般沒有對問題世界的物理解釋, 但是, 在輸入輸出之間的關(guān)系上反映了問題世界的實(shí)際, 這就是“黑箱”原理。一般來說,“黑箱”原理是基于統(tǒng)計(jì)方法的(假設(shè)問題世界滿足一種統(tǒng)計(jì)分布) , 統(tǒng)計(jì)機(jī)器學(xué)習(xí)本質(zhì)上就是“黑箱”原理的延續(xù)。與感知機(jī)時(shí)代不同, 由于這類機(jī)器學(xué)習(xí)科學(xué)基礎(chǔ)是感知機(jī)的延續(xù), 因此,神經(jīng)科學(xué)基礎(chǔ)不是近代統(tǒng)計(jì)機(jī)器學(xué)習(xí)關(guān)注的主要問題, 數(shù)學(xué)方法成為研究的焦點(diǎn)。
3.1 統(tǒng)計(jì)機(jī)器學(xué)習(xí)概述
統(tǒng)計(jì)機(jī)器學(xué)習(xí)方法的基本假設(shè)是同類數(shù)據(jù)具有一定的統(tǒng)計(jì)規(guī)律性。其目標(biāo)是從假設(shè)空間(也即模型空間,從輸入空間到輸出空間的映射函數(shù)空間)中尋找一個(gè)最優(yōu)的模型。
通過對統(tǒng)計(jì)機(jī)器學(xué)習(xí)目標(biāo)的描述,我們可以發(fā)現(xiàn)統(tǒng)計(jì)機(jī)器學(xué)習(xí)方法主要研究三個(gè)問題:
(1)模型假設(shè):這個(gè)問題解決的是如何將樣本從輸入空間轉(zhuǎn)化到輸出空間的,它往往是一個(gè)后驗(yàn)概率或者是一個(gè)映射函數(shù)。
(2)模型選擇:模型所在空間也就是假設(shè)空間,往往包含無窮多個(gè)滿足假設(shè)的可選模型,如何從假設(shè)空間中選擇一個(gè)最優(yōu)模型,應(yīng)該采用怎樣的選擇標(biāo)準(zhǔn)?這就是模型選擇應(yīng)該解決的問題。一般采用損失函數(shù)來制定模型選擇策略,將模型選擇轉(zhuǎn)化為一個(gè)最優(yōu)化問題來求解。常用的損失函數(shù)包括0-1損失、平方誤差損失、絕對損失、對數(shù)損失等等。通常我們也會在損失函數(shù)中加上正則化項(xiàng),從而降低模型的復(fù)雜性,提高模型的泛化能力,拒絕Overfitting。
(3)學(xué)習(xí)算法:學(xué)習(xí)算法是用來解決最優(yōu)化問題的方法。在給定損失函數(shù)后,如何快速找到損失函數(shù)約定條件下的最優(yōu)解就是學(xué)習(xí)算法需要解決的問題。常用的學(xué)習(xí)算法包括梯度下降、擬牛頓法等等。
統(tǒng)計(jì)機(jī)器學(xué)習(xí)方法的三個(gè)問題都是非常值得研究的,對于模型假設(shè)這個(gè)問題,如果模型都選擇錯誤,無論后面如何選擇模型,也都難以反映數(shù)據(jù)集的正確分布。因此,首先需要選擇對模型做出正確假設(shè),如何選擇模型的假設(shè)空間是一個(gè)學(xué)問,除掉交叉驗(yàn)證的方法之外還有不少其他方法。模型選擇的關(guān)鍵在于如何設(shè)計(jì)損失函數(shù),而損失函數(shù)通常包括損失項(xiàng)和正則化項(xiàng),不同的模型選擇策略通常選出的模型也非常不同,從而導(dǎo)致模型的預(yù)測效果也大大不同。學(xué)習(xí)算法比較定式,不同的學(xué)習(xí)算法不僅學(xué)習(xí)的效率不同,而且學(xué)習(xí)出來的效果也不一樣。
3.2 統(tǒng)計(jì)機(jī)器學(xué)習(xí)的理論基礎(chǔ)
機(jī)器學(xué)習(xí)早期研究的特點(diǎn)是以劃分為主要研究課題, 這個(gè)考慮一直延續(xù)到Vapnik 在20 世紀(jì)70 年代發(fā)展的關(guān)于有限樣本統(tǒng)計(jì)理論, 并于20 世紀(jì)80 年代末流傳到西方之后,在泛化能力意義下指導(dǎo)算法設(shè)計(jì)才成為人們關(guān)注的主要問題, 這是本文需要進(jìn)一步討論的問題。
盡管以O(shè)pen 問題驅(qū)動的BP 算法研究大大推動了感知機(jī)研究方向的發(fā)展, 然而, 近十年計(jì)算機(jī)科學(xué)與技術(shù)的快速發(fā)展,使得人們獲得數(shù)據(jù)的能力大大提高, BP 這類算法已不能完全適應(yīng)這種需求, 同時(shí),Minsky 的算法設(shè)計(jì)原則愈顯重要。
然而,沿著Barlow 路線的機(jī)器學(xué)習(xí)研究并沒有終止,自1992年開始,Vapnik 將有限樣本統(tǒng)計(jì)理論介紹給全世界, 并出版了統(tǒng)計(jì)機(jī)器學(xué)習(xí)理論的著作盡管這部著作更多地是從科學(xué)、哲學(xué)上討論了機(jī)器學(xué)習(xí)的諸多問題, 但是, 其暗示的算法設(shè)計(jì)思想對以后機(jī)器學(xué)習(xí)算法研究產(chǎn)生了重要的影響。
Vapnik 的研究主要涉及機(jī)器學(xué)習(xí)中兩個(gè)相互關(guān)聯(lián)的問題, 泛化問題與表示問題。前者包含兩個(gè)方面的內(nèi)容: 其一, 有限樣本集合的統(tǒng)計(jì)理論; 其二, 概率近似正確的泛化描述。而后者則主要集中在核函數(shù), 由此, 將算法設(shè)計(jì)建立在線性優(yōu)化理論之上。
Valiant的“概率近似正確”學(xué)習(xí)的考慮在機(jī)器學(xué)習(xí)的發(fā)展中扮演了一個(gè)重要的角色。1984 年,Valiant 提出了機(jī)器學(xué)習(xí)的一個(gè)重要考慮, 他建議評價(jià)機(jī)器學(xué)習(xí)算法應(yīng)該以“概率近似正確(PAC)”為基礎(chǔ),而不是以傳統(tǒng)模式識別理論中以概率為1 成立為基礎(chǔ),由此, 他引入了類似在數(shù)學(xué)分析中的ε-δ語言來描述PAC, 這個(gè)考慮對近代機(jī)器學(xué)習(xí)研究產(chǎn)生了重要的影響。首先, 統(tǒng)計(jì)機(jī)器學(xué)習(xí)理論中泛化不等式的推導(dǎo)均以這個(gè)假設(shè)為基礎(chǔ);其次, 基于這個(gè)考慮的“弱可學(xué)習(xí)理論”,為研究基于Hebb 路線的學(xué)習(xí)算法設(shè)計(jì)奠定了理論基礎(chǔ), 并產(chǎn)生被廣泛應(yīng)用的集群機(jī)器學(xué)習(xí)理念( ensemble )。
3.3 統(tǒng)計(jì)機(jī)器學(xué)習(xí)的研究現(xiàn)狀
3.3.1SVM與Deep Learning的競爭
當(dāng)前統(tǒng)計(jì)學(xué)習(xí)領(lǐng)域最熱門方法主要有deep learning和SVM(supportvector machine),它們是統(tǒng)計(jì)學(xué)習(xí)的代表方法。
可以認(rèn)為神經(jīng)網(wǎng)絡(luò)與支持向量機(jī)都源自于感知機(jī)(Perceptron)。感知機(jī)是由Rosenblatt發(fā)明的線性分類模型(1958年)。感知機(jī)對線性分類有效,但現(xiàn)實(shí)中的分類問題通常是非線性的。
神經(jīng)網(wǎng)絡(luò)與支持向量機(jī)(包含核方法)都是非線性分類模型。1986年,Rummelhart與McClelland發(fā)明了神經(jīng)網(wǎng)絡(luò)的學(xué)習(xí)算法Back Propagation。后來,Vapnik等人于1992年提出了支持向量機(jī)。神經(jīng)網(wǎng)絡(luò)是多層(通常是三層)的非線性模型,支持向量機(jī)利用核技巧把非線性問題轉(zhuǎn)換成線性問題。
神經(jīng)網(wǎng)絡(luò)與支持向量機(jī)一直處于“競爭”關(guān)系。SVM應(yīng)用核函數(shù)的展開定理,無需知道非線性映射的顯式表達(dá)式;由于是在高維特征空間中建立線性學(xué)習(xí)機(jī),所以與線性模型相比,不但幾乎不增加計(jì)算的復(fù)雜性,而且在某種程度上避免了“維數(shù)災(zāi)難”。而早先的神經(jīng)網(wǎng)絡(luò)算法比較容易過訓(xùn)練,大量的經(jīng)驗(yàn)參數(shù)需要設(shè)置;訓(xùn)練速度比較慢,在層次比較少(小于等于3)的情況下效果并不比其它方法更優(yōu)。
神經(jīng)網(wǎng)絡(luò)研究領(lǐng)域領(lǐng)軍者Hinton在2006年提出了神經(jīng)網(wǎng)絡(luò)Deep Learning算法,使神經(jīng)網(wǎng)絡(luò)的能力大大提高,向支持向量機(jī)發(fā)出挑戰(zhàn)。Deep Learning假設(shè)神經(jīng)網(wǎng)絡(luò)是多層的,首先用RestrictedBoltzmann Machine(非監(jiān)督學(xué)習(xí))學(xué)習(xí)網(wǎng)絡(luò)的結(jié)構(gòu),然后再通過Back Propagation(監(jiān)督學(xué)習(xí))學(xué)習(xí)網(wǎng)絡(luò)的權(quán)值。
3.3.2 支持向量機(jī)SVM
SVM方法是通過一個(gè)非線性映射p,把樣本空間映射到一個(gè)高維乃至無窮維的特征空間中(Hilber空間),使得在原來的樣本空間中非線性可分的問題轉(zhuǎn)化為在特征空間中的線性可分的問題。升維,就是把樣本向高維空間做映射,一般情況下這會增加計(jì)算的復(fù)雜性,甚至?xí)稹熬S數(shù)災(zāi)難”,因而人們很少問津。但是作為分類、回歸等問題來說,很可能在低維樣本空間無法線性處理的樣本集,在高維特征空間中卻可以通過一個(gè)線性超平面實(shí)現(xiàn)線性劃分(或回歸)。一般的升維都會帶來計(jì)算的復(fù)雜化,SVM方法巧妙地解決了這個(gè)難題:應(yīng)用核函數(shù)的展開定理,就不需要知道非線性映射的顯式表達(dá)式;由于是在高維特征 空間中建立線性學(xué)習(xí)機(jī),所以與線性模型相比,不但幾乎不增加計(jì)算的復(fù)雜性,而且在某種程度上避免了“維數(shù)災(zāi)難”.這一切要?dú)w功于核函數(shù)的展開和計(jì)算理論.
選擇不同的核函數(shù),可以生成不同的SVM,常用的核函數(shù)有以下4種:
⑴ 性核函數(shù)K(x,y)=x·y;
⑵多項(xiàng)式核函數(shù)K(x,y)=[(x·y)+1]d;
⑵ 向基函數(shù)K(x,y)=exp(-|x-y|^2/d^2)
⑶ 層神經(jīng)網(wǎng)絡(luò)核函數(shù)K(x,y)=tanh(a(x·y)+b).
3.3.2.1 SVM有如下主要幾個(gè)特點(diǎn):
(1)非線性映射是SVM方法的理論基礎(chǔ),SVM利用內(nèi)積核函數(shù)代替向高維空間的非線性映射;
(2)對特征空間劃分的最優(yōu)超平面是SVM的目標(biāo),最大化分類邊際的思想是SVM方法的核心;
(3)支持向量是SVM的訓(xùn)練結(jié)果,在SVM分類決策中起決定作用的是支持向量。(4)SVM 是一種有堅(jiān)實(shí)理論基礎(chǔ)的新穎的小樣本學(xué)習(xí)方法。它基本上不涉及概率測度及大數(shù)定律等,因此不同于現(xiàn)有的統(tǒng)計(jì)方法。從本質(zhì)上看,它避開了從歸納到演繹的傳統(tǒng)過程,實(shí)現(xiàn)了高效的從訓(xùn)練樣本到預(yù)報(bào)樣本的“轉(zhuǎn)導(dǎo)推理”,大大簡化了通常的分類和回歸等問題。
(5)SVM 的最終決策函數(shù)只由少數(shù)的支持向量所確定,計(jì)算的復(fù)雜性取決于支持向量的數(shù)目,而不是樣本空間的維數(shù),這在某種意義上避免了“維數(shù)災(zāi)難”。
(6)少數(shù)支持向量決定了最終結(jié)果,這不但可以幫助我們抓住關(guān)鍵樣本、“剔除”大量冗余樣本,而且注定了該方法不但算法簡單,而且具有較好的“魯棒”性。這種“魯棒”性主要體現(xiàn)在:
①增、刪非支持向量樣本對模型沒有影響;
②支持向量樣本集具有一定的魯棒性;
③有些成功的應(yīng)用中,SVM 方法對核的選取不敏感
3.3.2.2 SVM的兩個(gè)不足:
(1) SVM算法對大規(guī)模訓(xùn)練樣本難以實(shí)施
由 于SVM是借助二次規(guī)劃來求解支持向量,而求解二次規(guī)劃將涉及m階矩陣的計(jì)算(m為樣本的個(gè)數(shù)),當(dāng)m數(shù)目很大時(shí)該矩陣的存儲和計(jì)算將耗費(fèi)大量的機(jī)器內(nèi)存 和運(yùn)算時(shí)間。針對以上問題的主要改進(jìn)有有J.Platt的SMO算法、T.Joachims的SVM、C.J.C.Burges等的PCGC、張學(xué)工的 CSVM以及O.L.Mangasarian等的SOR算法。
(2) 用SVM解決多分類問題存在困難
經(jīng)典的支持向量機(jī)算法只給出了二類分類的算法,而在數(shù)據(jù)挖掘的實(shí)際應(yīng)用中,一般要解決多類的分類問題??梢酝ㄟ^多個(gè)二類支持向量機(jī)的組合來解決。主要有一對多組合模式、一對一組合模式和SVM決策樹;再就是通過構(gòu)造多個(gè)分類器的組合來解決。主要原理是克服SVM固有的缺點(diǎn),結(jié)合其他算法的優(yōu)勢,解決多類問題的分類精度。如:與粗集理論結(jié)合,形成一種優(yōu)勢互補(bǔ)的多類問題的組合分類器。
3.3.2 DeepLearning
DeepLearning本身算是MachineLearning的一個(gè)分支,簡單可以理解為Neural Network的發(fā)展。大約二三十年前,Neural Network曾經(jīng)是ML領(lǐng)域特別火熱的一個(gè)方向,但是后來確慢慢淡出了,原因包括以下幾個(gè)方面:
(1) 比較容易過訓(xùn)練,參數(shù)比較難確定;
(2) 訓(xùn)練速度比較慢,在層次比較少(小于等于3)的情況下效果并不比其它方法更優(yōu);
所以中間有大約20多年的時(shí)間,神經(jīng)網(wǎng)絡(luò)被關(guān)注很少,這段時(shí)間基本上由SVM和Boosting算法主導(dǎo)。但是,Hinton堅(jiān)持下來并最終(和Bengio、Yann.lecun等)提成了一個(gè)實(shí)際可行的Deep Learning框架。
3.3.3.1 Deep Learning與傳統(tǒng)的神經(jīng)網(wǎng)絡(luò)異同
Deep Learning與傳統(tǒng)的神經(jīng)網(wǎng)絡(luò)的相同在于Deep Learning采用了神經(jīng)網(wǎng)絡(luò)相似的分層結(jié)構(gòu),系統(tǒng)由包括輸入層、隱層(多層)、輸出層組成的多層網(wǎng)絡(luò),只有相鄰層節(jié)點(diǎn)之間有連接,同一層以及跨層節(jié)點(diǎn)之間相互無連接,每一層可以看作是一個(gè)Logistic Regression模型;這種分層結(jié)構(gòu),是比較接近人類大腦的結(jié)構(gòu)的。
而為了克服神經(jīng)網(wǎng)絡(luò)訓(xùn)練中的問題,DL采用了與神經(jīng)網(wǎng)絡(luò)很不同的訓(xùn)練機(jī)制。傳統(tǒng)神經(jīng)網(wǎng)絡(luò)中,采用的是Back Propagation的方式進(jìn)行,簡單來講就是采用迭代的算法來訓(xùn)練整個(gè)網(wǎng)絡(luò),隨機(jī)設(shè)定初值,計(jì)算當(dāng)前網(wǎng)絡(luò)的輸出,然后根據(jù)當(dāng)前輸出和label之間的 差去改變前面各層的參數(shù),直到收斂(整體是一個(gè)梯度下降法)。而DeepLearning整體上是一個(gè)Layer-Wise的訓(xùn)練機(jī)制。這樣做的原因是因?yàn)椋绻捎肂ack Propagation的機(jī)制,對于一個(gè)Deep Network(7層以上),殘差傳播到最前面的層已經(jīng)變得太小,出現(xiàn)所謂的Gradient Diffusion。
3.3.3.2 Deep Learning訓(xùn)練過程
(1)采用無標(biāo)定數(shù)據(jù)(有標(biāo)定數(shù)據(jù)也可)分層訓(xùn)練各層參數(shù),這一步可以看作是一個(gè)無監(jiān)督訓(xùn)練過程,是和傳統(tǒng)神經(jīng)網(wǎng)絡(luò)區(qū)別最大的部分(這個(gè)過程可以看作是feature learning過程):具體的,先用無標(biāo)定數(shù)據(jù)訓(xùn)練第一層,訓(xùn)練時(shí)可以采用auto-encoder來學(xué)習(xí)第一層的參數(shù)(這一層可以看作是得到一個(gè)使得輸出和輸入差別最小的三層神經(jīng)網(wǎng)絡(luò)的隱層),由于模型capacity的限制以及稀疏性約束,使得得到的模型能夠?qū)W習(xí)到數(shù)據(jù)本身的結(jié)構(gòu),從而得到比輸入更具有表示能力的特征;在學(xué)習(xí)得到第n-1層后,將n-1層的輸出作為第n層的輸入,訓(xùn)練第n層,由此分別得到各層的參數(shù);這里面需要重點(diǎn)理解auto-encoder以及sparse的機(jī)制的原理和作用??梢詤⒖歼@篇文章。
(2)基于第一步得到的各層參數(shù)進(jìn)一步fine-tune整個(gè)多層模型的參數(shù),這一步是一個(gè)有監(jiān)督訓(xùn)練過程;第一步類似神經(jīng)網(wǎng)絡(luò)的隨機(jī)初始化初值過程,由于DL 的第一步不是隨機(jī)初始化,而是通過學(xué)習(xí)輸入數(shù)據(jù)的結(jié)構(gòu)得到的,因而這個(gè)初值更接近全局最優(yōu),從而能夠取得更好的效果;所以deep learning效果好很大程度上歸功于第一步的feature learning過程。
總之,deep learning能夠得到更好地表示數(shù)據(jù)的feature,同時(shí)由于模型的層次、參數(shù)很多,capacity足夠,因此,模型有能力表示大規(guī)模數(shù)據(jù),所以對于圖像、語音這種特征不明顯(需要手工設(shè)計(jì)且很多沒有直觀物理含義)的問題,能夠在大規(guī)模訓(xùn)練數(shù)據(jù)上取得更好的效果。此外,從模式識別特征和分類器的角 度,deep learning框架將feature和分類器結(jié)合到一個(gè)框架中,用數(shù)據(jù)去學(xué)習(xí)feature,在使用中減少了手工設(shè)計(jì)feature的巨大工作量(這是目前工業(yè)界工程師付出努力最多的方面),因此,不僅僅效果可以更好,而且,使用起來也有很多方便之處。
4 集群機(jī)器學(xué)習(xí)
4.1 弱可學(xué)習(xí)定理
1990 年, Schapire 證明了一個(gè)有趣的定理: 如果一個(gè)概念是弱可學(xué)習(xí)的, 充要條件是它是強(qiáng)可學(xué)習(xí)的。這個(gè)定理的證明是構(gòu)造性的, 證明過程暗示了弱分類器的思想。所謂弱分類器就是比隨機(jī)猜想稍好的分類器, 這意味著, 如果我們可以設(shè)計(jì)這樣一組弱分類器, 并將它們集群起來, 就可以成為一個(gè)強(qiáng)分類器, 這就是集群機(jī)器學(xué)習(xí)。由于弱分類器包含“比隨機(jī)猜想稍好”的條件, 從而, 避免了對Madaline 平凡解的批評。另外, 由于Schapire 定理的證明基于PAC的弱可學(xué)習(xí)理論, 因此, 這種方法又具有泛化理論的支持。這樣, 自Widrow 提出Madaline近30 年之后, 人們終于獲得了基于Hebb 路線下的機(jī)器學(xué)習(xí)算法設(shè)計(jì)的理論基礎(chǔ)。這個(gè)學(xué)習(xí)理念立即獲得人們的廣泛關(guān)注, 其原因不言自明,弱分類器的設(shè)計(jì)總比強(qiáng)分類器設(shè)計(jì)容易, 特別是對線性不可分問題更是如此。由此,Madaline 與感知機(jī)一樣, 成為機(jī)器學(xué)習(xí)最重要的經(jīng)典。
4.2 經(jīng)典算法
Boosting 是一種用來提高學(xué)習(xí)算法準(zhǔn)確度的方法, 這種方法通過構(gòu)造一個(gè)預(yù)測函數(shù)系列, 然后以一定的方式將它們組合成一個(gè)預(yù)測函數(shù), 達(dá)到把一弱學(xué)習(xí)算法提升為強(qiáng)學(xué)習(xí)算法的目的。1989 年Schapire 提出了第一個(gè)可證明的多項(xiàng)式時(shí)間Boosting 算法, 對這個(gè)問題作出了肯定的回答。一年后,Freund 設(shè)計(jì)了一個(gè)高效得多的通過重取樣或過濾運(yùn)作的Boosting- by-Majority 算法。這個(gè)算法盡管在某種意義上是優(yōu)化的, 但卻有一些實(shí)踐上的缺陷。1995 年Freund 和Schapire介紹了通過調(diào)整權(quán)重而運(yùn)作的AdaBoost 算法解決了早期Boosting算法很多實(shí)踐上的困難。
AdaBoost 是Boosting 家族中的基礎(chǔ)算法。Boosting家族中的大部分?jǐn)U展( 算法) 都由它得來,對AdaBoost 的分析結(jié)論也適用于其它的Boosting。下面簡要地介紹一下它的思想。
AdaBoost 算法的主要思想是給定一弱學(xué)習(xí)算法和訓(xùn)練集( x1, y1) , , , ( xn, yn ) 。這里xi 為一向量, yi 對于分類問題為一類別標(biāo)志, 對于回歸問題為一數(shù)值。初始化時(shí)對每一個(gè)訓(xùn)練例賦相等的權(quán)重1/ n , 然后用該學(xué)習(xí)算法對訓(xùn)練集訓(xùn)練t 輪, 每次訓(xùn)練后, 對訓(xùn)練失敗的訓(xùn)練例賦以較大的權(quán)重, 也就是讓學(xué)習(xí)算法在后續(xù)的學(xué)習(xí)中集中對比較難的訓(xùn)練例進(jìn)行學(xué)習(xí), 從而得到一個(gè)預(yù)測函數(shù)序列h1, , , ht ,其中hj 也有一定的權(quán)重, 預(yù)測效果好的預(yù)測函數(shù)權(quán)重較大, 反之較小。最終的預(yù)測函數(shù)H 對分類問題采用有權(quán)重的投票方式, 對回歸問題采用加權(quán)平均的方法對新示例進(jìn)行判別。
Boosting 算法是一種基于其他機(jī)器學(xué)習(xí)算法之上的用來提高算法精度和性能的方法。當(dāng)用于回歸分析時(shí), 不需要構(gòu)造一個(gè)擬合精度高、預(yù)測能力好的回歸算法, 只要一個(gè)效果只比隨機(jī)猜測略好的粗糙算法即可, 稱之為基礎(chǔ)算法。通過不斷地調(diào)用這個(gè)基礎(chǔ)算法就可以獲得一個(gè)擬合和預(yù)測誤差都相當(dāng)好的組合回歸模型。Boosting 算法可以應(yīng)用于任何的基礎(chǔ)回歸算法, 無論是線性回歸、神經(jīng)網(wǎng)絡(luò)、還是SVM 方法, 都可以有效地提高精度。因此, Boosting可以被視為一種通用的增強(qiáng)基礎(chǔ)算法性能的回歸分析算法。
Bagging(Bootstrap Aggregating) 又被稱為自舉聚合, 是Breiman 提出的與Boosting 相似的技術(shù)。[ 11]Bagging 技術(shù)的主要思想是給定一弱學(xué)習(xí)算法和一訓(xùn)練集( x 1, y1), , ( xn , yn ) 。讓該學(xué)習(xí)算法訓(xùn)練多輪, 每輪的訓(xùn)練集由從初始的訓(xùn)練集中隨機(jī)取出的n 個(gè)訓(xùn)練例組成, 初始訓(xùn)練例在某輪訓(xùn)練集中可以出現(xiàn)多次或根本不出現(xiàn)。訓(xùn)練之后可得到一個(gè)預(yù)測函數(shù)序列: h1, , , ht , 最終的預(yù)測函數(shù)H 對分類問題采用投票方式, 對回歸問題采用簡單平均。
Bagging 與Boosting 的區(qū)別在于Bagging 的訓(xùn)練集的選擇是隨機(jī)的, 各輪訓(xùn)練集之間相互獨(dú)立, 而Boosting的訓(xùn)練集的選擇不是獨(dú)立的, 各輪訓(xùn)練集的選擇與前面各輪的學(xué)習(xí)結(jié)果有關(guān); Bagging 的各個(gè)預(yù)測函數(shù)沒有權(quán)重, 可以并行生成, 而Boosting 是有權(quán)重的, 只能依次順序生成; Boosting 往往從一些弱的學(xué)習(xí)器開始, 組合形成一個(gè)集成學(xué)習(xí)器, 從而給出一個(gè)好的學(xué)習(xí)結(jié)果, 而Bagging學(xué)習(xí)效果的好壞往往取決于集成學(xué)習(xí)器中每個(gè)學(xué)習(xí)器的相關(guān)性和各個(gè)學(xué)習(xí)器的學(xué)習(xí)效果。對于神經(jīng)網(wǎng)絡(luò)這類極為耗時(shí)的學(xué)習(xí)方法, Bagging 可通過并行訓(xùn)練節(jié)省大量時(shí)間開銷。
5 符號機(jī)器學(xué)習(xí)
自1969 年Minsky 出版Perceptron(《感知機(jī)》)一書以后, 感知機(jī)的研究方向被終止,到1986 年Rumelhart 等發(fā)表BP 算法, 近20 年間, 機(jī)器學(xué)習(xí)研究者在做什么事情呢? 這段時(shí)間正是基于符號處理的人工智能的黃金時(shí)期, 由于專家系統(tǒng)研究的推動, 符號機(jī)器學(xué)習(xí)得到發(fā)展, 事實(shí)上, 這類研究方法除了建立在符號的基礎(chǔ)上之外, 從學(xué)習(xí)的機(jī)理來看, 如果將學(xué)習(xí)結(jié)果考慮為規(guī)則, 每個(gè)規(guī)則將是一個(gè)分類器, 盡管這些分類器中有些不一定滿足弱分類器的條件, 但是, 它應(yīng)該是Hebb 路線的延續(xù)。
符號機(jī)器學(xué)習(xí)的最大優(yōu)點(diǎn)是歸納的解答與歸納的過程是可解釋的, 換句話說, 數(shù)據(jù)集合中的每個(gè)觀測(樣本或?qū)ο?對用戶都是透明的, 它在解答以及計(jì)算過程中所扮演的角色, 用戶都是可以顯現(xiàn)了解的。然而, 它的缺陷同樣突出, 就是泛化能力。由于學(xué)習(xí)結(jié)果是符號表述, 因此, 只可能取“真”與“假”, 這樣大大減低了對具有一定噪音數(shù)據(jù)的分析能力, 需要其他技術(shù)來補(bǔ)充: 其一, 觀測世界的數(shù)據(jù)到符號域的映射, 其二, 不確定推理機(jī)制。但是, 這兩種方法與符號機(jī)器學(xué)習(xí)方法本身并沒有必然的關(guān)系。
近幾年, 由于數(shù)據(jù)挖掘的提出, 符號機(jī)器學(xué)習(xí)原理有了新的用途, 這就是符號數(shù)據(jù)分析, 在數(shù)據(jù)挖掘中稱為數(shù)據(jù)描述, 以便與數(shù)據(jù)預(yù)測類型的任務(wù)相區(qū)別(從任務(wù)來說, 這類任務(wù)與機(jī)器學(xué)習(xí)是一致的)。
與機(jī)器學(xué)習(xí)的目標(biāo)不同, 數(shù)據(jù)分析不是以所有用戶具有相同需求為假設(shè), 相反, 強(qiáng)調(diào)不同用戶具有不同的需求。另外, 數(shù)據(jù)分析強(qiáng)調(diào), 分析結(jié)果是為用戶提供可閱讀的參考文本, 決策將依賴人的洞察。如何根據(jù)用戶的特定需求將觀測數(shù)據(jù)集合變換為簡潔的、可為用戶理解的表示成為關(guān)鍵。這是符號機(jī)器學(xué)習(xí)的另一個(gè)可以考慮的應(yīng)用領(lǐng)域。由于符號機(jī)器學(xué)習(xí)在泛化能力上的欠缺, 這也是它在與基于統(tǒng)計(jì)的機(jī)器學(xué)習(xí)方法競爭中避免遭到淘汰的出路。
6 增強(qiáng)機(jī)器學(xué)習(xí)方法
增強(qiáng)機(jī)器學(xué)習(xí)( reinfo rcementlearning )的本質(zhì)是對變化的環(huán)境的適應(yīng)。應(yīng)該說,這是一種“古老”的機(jī)器學(xué)習(xí)思想.在1948年, Wiener的著作“控制論”中,就討論了這個(gè)問題,而在以后的控制理論的研究中,這發(fā)展成為重要的研究課題—— 自適應(yīng)控制。由于控制理論研究這個(gè)問題的焦點(diǎn)在于控制品質(zhì),且其使用的數(shù)學(xué)工具是微分方程,因此,對非線性問題,使用計(jì)算機(jī)進(jìn)行數(shù)值求解存在著本質(zhì)性的困難。這是這類機(jī)器學(xué)習(xí)長期未得到計(jì)算機(jī)科學(xué)家注意的原因。
直到20世紀(jì)70年代, Holland在討論進(jìn)化計(jì)算時(shí),需要考慮控制物種群體的染色體數(shù)量,以便淘汰對變化環(huán)境不適應(yīng)的個(gè)體,為此,提出使用桶隊(duì)算法解決這個(gè)問題。桶隊(duì)算法在Holland提出的分類器系統(tǒng)中扮演著對變換環(huán)境適應(yīng)的角色。
以后,在20世紀(jì)90年代初, Sutton提出將這類機(jī)器學(xué)習(xí)建立在Markov 過程上,并稱其為增強(qiáng)機(jī)器學(xué)習(xí)方法。這個(gè)方法是根據(jù)環(huán)境變化對系統(tǒng)的刺激,并作為系統(tǒng)輸入,然后,利用基于統(tǒng)計(jì)的方法優(yōu)化轉(zhuǎn)移概率,并使系統(tǒng)適應(yīng)新的環(huán)境。
一般地說,增強(qiáng)機(jī)器學(xué)習(xí)應(yīng)該屬于無教師學(xué)習(xí),但是,如果考慮環(huán)境就是教師,這類機(jī)器學(xué)習(xí)也可以認(rèn)為是一類特殊有教師的機(jī)器學(xué)習(xí),與一般有教師機(jī)器學(xué)習(xí)的區(qū)別在于: 教師是環(huán)境,且是變化的環(huán)境。這意味著,不像傳統(tǒng)意義下的有教師學(xué)習(xí),教師教授的知識不是事先給定的,而是采用更靈活方法,在問題求解的過程中獲得的。
7 總結(jié)
本文從機(jī)器學(xué)習(xí)的起源,發(fā)展依據(jù),歷史上的重要事件角度討論了機(jī)器學(xué)習(xí)發(fā)展脈絡(luò)。通過“對神經(jīng)細(xì)胞模型假設(shè)的差別”將機(jī)器學(xué)習(xí)領(lǐng)域劃分為兩大支系——強(qiáng)調(diào)模型的整體性,基于Barlow“表征客體的單一細(xì)胞論”的Barlow路線;強(qiáng)調(diào)對世界的表征需要多個(gè)神經(jīng)細(xì)胞集群,基于Hebb“表征客體的多細(xì)胞論”的Hebb路線。這一劃分可以清晰地將機(jī)器學(xué)習(xí)發(fā)展歷程總結(jié)為:以感知機(jī)、BP與SVM等為一類的Barlow路線;以樣條理論、k-緊鄰、Madaline、符號機(jī)器學(xué)習(xí),集群機(jī)器學(xué)習(xí)與流行機(jī)器學(xué)習(xí)等為一類的Hebb路線。
其中,又重點(diǎn)關(guān)注了目前發(fā)展良好的統(tǒng)計(jì)機(jī)器學(xué)習(xí)與集群學(xué)習(xí)。討論了SVM與神經(jīng)網(wǎng)絡(luò)的關(guān)系與優(yōu)缺點(diǎn),以及將弱學(xué)習(xí)算法提升為強(qiáng)學(xué)習(xí)算法的Boosting算法。
本文提倡研究者需要重視這樣一個(gè)問題:我們探討機(jī)器學(xué)習(xí)在理念、理論、與技術(shù)上發(fā)展的各種方法所遵循的假設(shè),是否能夠適應(yīng)當(dāng)前任務(wù)的需要?如果問題是否定的,那么,我們是修補(bǔ)這些已被普遍認(rèn)可的理念、理論與方法(打補(bǔ)丁),以適應(yīng)當(dāng)前的需要,還是從根本上清理原有假設(shè),提出新的假設(shè),從而發(fā)展新的理念、理論和方法?這是一個(gè)需要仔細(xì)分析已有理論與方法,并權(quán)衡各種利弊才能決定的事情。綜上所述,討論機(jī)器學(xué)習(xí)發(fā)展脈絡(luò),以從這個(gè)脈絡(luò)發(fā)現(xiàn)有趣的經(jīng)驗(yàn)和教訓(xùn),對回答這個(gè)問題是重要的,這必須考慮機(jī)器學(xué)習(xí)發(fā)展的科學(xué)依據(jù),歷史上的重要事件,以及理論研究中的重要結(jié)論。這就是我們本文的討論集中在動機(jī)和理論的原因。
評論
查看更多