日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

机器学习综述

發布時間:2023/12/13 编程问答 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 机器学习综述 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

機器學習綜述


摘要

? ? 本文主要參考中科院自動化研究所復雜系統與智能科學實驗室王玨研究員《關于機器學習的討論》,討論機器學習的描述,理論基礎,發展歷史以及研究現狀。

關鍵字:機器學習,科學依據,發展脈絡

?

0引言

?

? ? 20世紀90年代初,當時的美國副總統提出了一個重要的計劃——國家信息基本設施計劃(NationalInformation Infrastructure,NII)。這個計劃的技術含義包含了四個方面的內容:

? ? (1)不分時間與地域,可以方便地獲得信息。

? ? (2)不分時間與地域,可以有效地利用信息。

? ? (3)不分時間與地域,可以有效地利用軟硬件資源。

? ? (4)保證信息安全。

? ? 本文主要討論解決“信息有效利用”問題,其本質是:如何根據用戶的特定需求從海量數據中建立模型或發現有用的知識。對計算機科學來說,這就是機器學習。

? ? 計算機科學,特別是人工智能的研究者一般公認Simon對學習的論述:“如果一個系統能夠通過執行某個過程改進它的性能,這就是學習。”這是一個相當廣泛的說明, 其要點是“系統”, 它涵蓋了計算系統、控制系統以及人系統等, 對這些不同系統的學習, 顯然屬于不同的科學領域。即使計算系統, 由于目標不同, 也分為了“從有限觀察概括特定問題世界模型的機器學習”、“發現觀測數據中暗含的各種關系的數據分析”,以及“從觀測數據挖掘有用知識的數據挖掘”等不同分支。由于這些分支發展的各種方法的共同目標都是“從大量無序的信息到簡潔有序的知識”,因此,它們都可以理解為Simon 意義下的“過程”,也就都是“學習”。

1???機器學習描述

? ? 本文將討論限制在“從有限觀察概括特定問題世界模型的機器學習”與“從有限觀察發現觀測數據中暗含的各種關系的數據分析”的方法上, 并統稱其為機器學習。

? ? 我們描述機器學習如下:

? ? 令W是給定世界的有限或無限的所有觀測對象的集合, 由于我們觀察能力的限制, 我們只能獲得這個世界的一個有限的子集Q W, 稱為樣本集。機器學習就是根據這個樣本集, 推算這個世界的模型, 使它對這個世界(盡可能地)為真。

這個描述隱含了三個需要解決的問題:

? ? (1) 一致: 假設世界W與樣本集Q有相同的性質。例如,如果學習過程基于統計原理,獨立同分布( i. i. d )就是一類一致條件。

? ? (2) 劃分: 將樣本集放到n維空間,尋找一個定義在這個空間上的決策分界面(等價關系),使得問題決定的不同對象分在不相交的區域。

? ? (3) 泛化: 泛化能力是這個模型對世界為真程度的指標。從有限樣本集合, 計算一個模型,使得這個指標最大(最小)。

? ? 這些問題對觀測數據提出了相當嚴厲的條件,首先需要人們根據一致假設采集數據,由此構成機器學習算法需要的樣本集; 其次, 需要尋找一個空間, 表示這個問題; 最后, 模型的泛化指標需要滿足一致假設, 并能夠指導算法設計。這些條件限制了機器學習的應用范圍。

2???機器學習的發展歷史

?

2.1???機器學習與人工智能

? ? 機器學習是人工智能研究的核心內容。它的應用已遍及人工智能的各個分支,如專家系統、自動推理、自然語言理解、模式識別、計算機視覺、智能機器人等領域。

? ? 人工智能涉及到諸如意識(consciousness)、自我(self)、心靈(mind)(包括無意識的精神(unconscious_mind))等等問題。人唯一了解的智能是人本身的智能,這是普遍認同的觀點。但是我們對我們自身智能的理解都非常有限,對構成人的智能的必要元素也了解有限,所以就很難定義什么是“人工”制造的“智能”了。因此人工智能的研究往往涉及對人的智能本身的研究。其它關于動物或其它人造系統的智能也普遍被認為是人工智能相關的研究課題。下圖展示了人工智能的發展路線:

?

? ? 機器學習是人工智能研究發展到一定階段的必然產物。從 20 世紀50 年代到 70 年代初,人工智能研究處于“推理期”,人們認為只要給機器賦予邏輯推理能力,機器就能具有智能。這一階段的代表性工作主要有 A. Newell 和 H. Simon 的“邏輯理論家”程序以及此后的“通用問題求解”程序等,這些工作在當時取得了令人振奮的成果。例如,“邏輯理論家”程序在 1952 年證明了著名數學家羅素和懷特海的名著《數學原理》中的 38 條定理,在1963年證明了全部的52 條定理,而且定理 2.85甚至比羅素和懷特海證明得更巧妙。A. Newell和 H. Simon因此獲得了 1975 年圖靈獎。然而,隨著研究向前發展,人們逐漸認識到,僅具有邏輯推理能力是遠遠實現不了人工智能的。E.A. Feigenbaum等人認為,要使機器具有智能,就必須設法使機器擁有知識。在他們的倡導下,20 世紀 70 年代中期開始,人工智能進入了“知識期”。在這一時期,大量專家系統問世,在很多領域做出了巨大貢獻。E.A. Feigenbaum 作為“知識工程”之父在 1994 年獲得了圖靈獎。但是,專家系統面臨“知識工程瓶頸”,簡單地說,就是由人來把知識總結出來再教給計算機是相當困難的。于是,一些學者想到,如果機器自己能夠學習知識該多好!實際上,圖靈在1950年提出圖靈測試的文章中,就已經提到了機器學習的可能,而20世紀50年代其實已經開始有機器學習相關的研究工作,主要集中在基于神經網絡的連接主義學習方面,代表性工作主要有 F. Rosenblatt 的感知機、B. Widrow 的 Adaline 等。在 20 世紀 6、70 年代,多種學習技術得到了初步發展,例如以決策理論為基礎的統計學習技術以及強化學習技術等,代表性工作主要有 A.L. Samuel 的跳棋程序以及 N.J. Nilson 的“學習機器”等,20 多年后紅極一時的統計學習理論的一些重要結果也是在這個時期取得的。在這一時期,基于邏輯或圖結構表示的符號學習技術也開始出現,代表性工作有 P. Winston的“結構學習系統”、R.S. Michalski等人的“基于邏輯的歸納學習系統”、E.B. Hunt 等人的“概念學習系統”等。1980 年夏天,在美國卡內基梅隆大學舉行了第一屆機器學習研討會;同年,《策略分析與信息系統》連出三期機器學習專輯;1983年,Tioga出版社出版了R.S. Michalski、J.G. Carbonell和T.M. Mitchell主編的《機器學習:一種人工智能途徑》,書中匯集了 20 位學者撰寫的 16 篇文章,對當時的機器學習研究工作進行了總結,產生了很大反響;1986 年,《Machine Learning》創刊;1989 年,《Artificial Intelligence》出版了機器學習專輯,刊發了一些當時比較活躍的研究工作,其內容后來出現在J.G. Carbonell主編、MIT出版社 1990 年出版的《機器學習:風范與方法》一書中。總的來看,20 世紀 80 年代是機器學習成為一個獨立的學科領域并開始快速發展、各種機器學習技術百花齊放的時期。R.S. Michalski等人中把機器學習研究劃分成“從例子中學習”、“在問題求解和規劃中學習”、“通過觀察和發現學習”、“從指令中學習”等范疇;而 E.A. Feigenbaum在著名的《人工智能手冊》中,則把機器學習技術劃分為四大類,即“機械學習”、“示教學習”、“類比學習”、“歸納學習”。

2.2??? 機器學習的理論基礎

? ? 機器學習的科學基礎之一是神經科學, 然而, 對機器學習進展產生重要影響的是以下三個發現, 分別是:

? ? (1) James關于神經元是相互連接的發現。

? ? (2) McCulloch 與Pitts 關于神經元工作方式是“興奮”和“抑制”的發現。

? ? (3) Hebb 的學習律(神經元相互連接強度的變化)。

? ? 其中, McCulloch 與Pitts 的發現對近代信息科學產生了巨大的影響。對機器學習, 這項成果給出了近代機器學習的基本模型, 加上指導改變連接神經元之間權值的Hebb學習律,成為目前大多數流行的機器學習算法的基礎。

? ? 1954年, Barlow 與Hebb 在研究視覺感知學習時,分別提出了不同假設: Barlow 倡導單細胞學說, 假設從初級階段而來的輸入集中到具有專一性響應特點的單細胞, 并使用這個神經單細胞來表象視覺客體。這個考慮暗示, 神經細胞可能具有較復雜的結構; 而Hebb主張視覺客體是由相互關聯的神經細胞集合體來表象, 并稱其為ensemble。在神經科學的研究中, 盡管這兩個假設均有生物學證據的支持, 但是, 這個爭論至今沒有生物學的定論。這個生物學的現實, 為我們計算機科學家留下了想象的空間, 由于在機器學習中一直存在著兩種相互補充的不同研究路線, 這兩個假設對機器學習研究有重要的啟示作用。

? ? 在機器學習劃分的研究中, 基于這兩個假設, 可以清晰地將機器學習發展歷程總結為: 以感知機、BP與SVM 等為一類;以樣條理論、k-近鄰、Madalin e、符號機器學習、集群機器學習與流形機器學習等為另一類。

? ? 在McCulloch 與Pitts 模型的基礎上, 1957 年, Rosenblatt 首先提出了感知機算法,這是第一個具有重要學術意義的機器學習算法。這個思想發展的坎坷歷程, 正是機器學習研究發展歷史的真實寫照。感知機算法主要貢獻是: 首先, 借用最簡單的McCulloch與Pitts模型作為神經細胞模型; 然后,根據Hebb集群的考慮, 將多個這樣的神經細胞模型根據特定規則集群起來,形成神經網絡, 并將其轉變為下述機器學習問題: 計算一個超平面, 將在空間上不同類別標號的點劃分到不同區域。在優化理論的基礎上, Rosenblatt 說明, 如果一個樣本集合是線性可分, 則這個算法一定可以以任何精度收斂。由此導致的問題是, 對線性不可分問題如何處理。

? ? 1969年,Minsky 與Paper出版了對機器學習研究具有深遠影響的著作Perceptron(《感知機》)。目前, 人們一般的認識是, 由于這本著作中提出了XOR 問題, 從而扼殺了感知機的研究方向。然而, 在這本著作中對機器學習研究提出的基本思想, 至今還是正確的, 其思想的核心是兩條:

? ? (1) 算法能力: 只能解決線性問題的算法是不夠的, 需要能夠解決非線性問題的算法。

? ? (2) 計算復雜性: 只能解決玩具世界問題的算法是沒有意義的, 需要能夠解決實際世界問題的算法。

? ? 在1986 年, Rumelhart 等人的BP 算法解決了XOR 問題, 沉寂近二十年的感知機研究方向重新獲得認可,人們自此重新開始關注這個研究方向, 這是Rumelhart等人的重要貢獻。

? ? 在20 世紀60 年代的另一個重要研究成果來自Widrow。1960 年,Widrow 推出了Madaline 模型, 在算法上,對線性不可分問題, 其本質是放棄劃分樣本集的決策分界面連續且光滑的條件, 代之分段的平面。從近代的觀點來看, 這項研究與感知機的神經科學假設的主要區別是: 它是確認Barlow 假設中神經細胞具有較復雜結構的思想,由此,將線性模型(例如, 感知機)考慮為神經細胞模型( 而不是簡單的McCulloch與Pitts模型) ,然后, 再基于Hebb 神經元集合體假設, 將這些局部模型集群為對問題世界的表征, 由此解決線性不可分問題。但是, 這項研究遠不如感知機著名, 其原因是: 其一, 盡管Madaline可以解決線性不可分問題, 但是, 其解答可能是平凡的; 其二,Widrow 沒有給出其理論基礎, 事實上,其理論基礎遠比感知機復雜, 直到1990 年, Schapire根據Valiant 的“概率近似正確(PAC)”理論證明了“弱可學習定理”之后, 才真正引起人們的重視。

? ? 進一步比較機器學習中兩個不同路線的神經科學啟示是有趣的: 對機器學習來說, 它們最顯著的差別是對神經細胞模型的假設, 例如, 感知機是以最簡單的McCulloch與Pitts 模型作為神經細胞模型, 而Madaline 是以問題世界的局部模型作為神經細胞模型,兩種方法都需要根據Hebb 思想集群。因此, 對機器學習研究, 兩個神經科學的啟示是互補的。但是, 兩者還有區別: 前者強調模型的整體性, 這與Barlow“表征客體的單一細胞論”一致, 因此, 我們稱其為Barlow 路線; 而后者則強調對世界的表征需要多個神經細胞集群, 這與Hebb“表征客體的多細胞論”一致, 我們稱其為Hebb 路線。鑒于整體模型與局部模型之間在計算上有本質差別, 盡管根據Barlow 與Hebb 假設區分機器學習的方法。

? ? 在這一節的最后, 將1989 年Carbonell對機器學習以后十年的展望與十年后Diet terich 的展望作一個對比, 可能是有趣的, 我們希望以此說明機器學習研究由于面臨問題的改變所發生的變遷(表1) 。

?

3? 統計機器學習

? ? 統計機器學習是近幾年被廣泛應用的機器學習方法,事實上,這是一類相當廣泛的方法。更為廣義地說, 這是一類方法學。當我們獲得一組對問題世界的觀測數據, 如果我們不能或者沒有必要對其建立嚴格物理模型,我們可以使用數學的方法, 從這組數據推算問題世界的數學模型, 這類模型一般沒有對問題世界的物理解釋, 但是, 在輸入輸出之間的關系上反映了問題世界的實際, 這就是“黑箱”原理。一般來說,“黑箱”原理是基于統計方法的(假設問題世界滿足一種統計分布) , 統計機器學習本質上就是“黑箱”原理的延續。與感知機時代不同, 由于這類機器學習科學基礎是感知機的延續, 因此,神經科學基礎不是近代統計機器學習關注的主要問題, 數學方法成為研究的焦點。

?

3.1???統計機器學習概述

? ? 統計機器學習方法的基本假設是同類數據具有一定的統計規律性。其目標是從假設空間(也即模型空間,從輸入空間到輸出空間的映射函數空間)中尋找一個最優的模型。

通過對統計機器學習目標的描述,我們可以發現統計機器學習方法主要研究三個問題:

? ? (1)模型假設:這個問題解決的是如何將樣本從輸入空間轉化到輸出空間的,它往往是一個后驗概率或者是一個映射函數。

? ? (2)模型選擇:模型所在空間也就是假設空間,往往包含無窮多個滿足假設的可選模型,如何從假設空間中選擇一個最優模型,應該采用怎樣的選擇標準?這就是模型選擇應該解決的問題。一般采用損失函數來制定模型選擇策略,將模型選擇轉化為一個最優化問題來求解。常用的損失函數包括0-1損失、平方誤差損失、絕對損失、對數損失等等。通常我們也會在損失函數中加上正則化項,從而降低模型的復雜性,提高模型的泛化能力,拒絕Overfitting。

? ? (3)學習算法:學習算法是用來解決最優化問題的方法。在給定損失函數后,如何快速找到損失函數約定條件下的最優解就是學習算法需要解決的問題。常用的學習算法包括梯度下降、擬牛頓法等等。

統計機器學習方法的三個問題都是非常值得研究的,對于模型假設這個問題,如果模型都選擇錯誤,無論后面如何選擇模型,也都難以反映數據集的正確分布。因此,首先需要選擇對模型做出正確假設,如何選擇模型的假設空間是一個學問,除掉交叉驗證的方法之外還有不少其他方法。模型選擇的關鍵在于如何設計損失函數,而損失函數通常包括損失項和正則化項,不同的模型選擇策略通常選出的模型也非常不同,從而導致模型的預測效果也大大不同。學習算法比較定式,不同的學習算法不僅學習的效率不同,而且學習出來的效果也不一樣。

?

3.2???統計機器學習的理論基礎

? ? 機器學習早期研究的特點是以劃分為主要研究課題, 這個考慮一直延續到Vapnik 在20 世紀70 年代發展的關于有限樣本統計理論, 并于20 世紀80 年代末流傳到西方之后,在泛化能力意義下指導算法設計才成為人們關注的主要問題, 這是本文需要進一步討論的問題。

? ? 盡管以Open 問題驅動的BP 算法研究大大推動了感知機研究方向的發展, 然而, 近十年計算機科學與技術的快速發展,使得人們獲得數據的能力大大提高, BP 這類算法已不能完全適應這種需求, 同時,Minsky 的算法設計原則愈顯重要。

? ? 然而,沿著Barlow 路線的機器學習研究并沒有終止,自1992年開始,Vapnik 將有限樣本統計理論介紹給全世界, 并出版了統計機器學習理論的著作盡管這部著作更多地是從科學、哲學上討論了機器學習的諸多問題, 但是, 其暗示的算法設計思想對以后機器學習算法研究產生了重要的影響。

? ? Vapnik 的研究主要涉及機器學習中兩個相互關聯的問題, 泛化問題與表示問題。前者包含兩個方面的內容: 其一, 有限樣本集合的統計理論; 其二, 概率近似正確的泛化描述。而后者則主要集中在核函數, 由此, 將算法設計建立在線性優化理論之上。

? ? Valiant的“概率近似正確”學習的考慮在機器學習的發展中扮演了一個重要的角色。1984 年,Valiant 提出了機器學習的一個重要考慮, 他建議評價機器學習算法應該以“概率近似正確(PAC)”為基礎,而不是以傳統模式識別理論中以概率為1 成立為基礎,由此, 他引入了類似在數學分析中的ε-δ語言來描述PAC, 這個考慮對近代機器學習研究產生了重要的影響。首先, 統計機器學習理論中泛化不等式的推導均以這個假設為基礎;其次, 基于這個考慮的“弱可學習理論”,為研究基于Hebb 路線的學習算法設計奠定了理論基礎, 并產生被廣泛應用的集群機器學習理念( ensemble )。


3.3???統計機器學習的研究現狀

?

3.3.1SVM與Deep Learning的競爭

??? 當前統計學習領域最熱門方法主要有deep learning和SVM(supportvector machine),它們是統計學習的代表方法。

??? 可以認為神經網絡與支持向量機都源自于感知機(Perceptron)。感知機是由Rosenblatt發明的線性分類模型(1958年)。感知機對線性分類有效,但現實中的分類問題通常是非線性的。

??? 神經網絡與支持向量機(包含核方法)都是非線性分類模型。1986年,Rummelhart與McClelland發明了神經網絡的學習算法Back Propagation。后來,Vapnik等人于1992年提出了支持向量機。神經網絡是多層(通常是三層)的非線性模型,支持向量機利用核技巧把非線性問題轉換成線性問題。

??? 神經網絡與支持向量機一直處于“競爭”關系。SVM應用核函數的展開定理,無需知道非線性映射的顯式表達式;由于是在高維特征空間中建立線性學習機,所以與線性模型相比,不但幾乎不增加計算的復雜性,而且在某種程度上避免了“維數災難”。而早先的神經網絡算法比較容易過訓練,大量的經驗參數需要設置;訓練速度比較慢,在層次比較少(小于等于3)的情況下效果并不比其它方法更優。

??? 神經網絡研究領域領軍者Hinton在2006年提出了神經網絡Deep Learning算法,使神經網絡的能力大大提高,向支持向量機發出挑戰。Deep Learning假設神經網絡是多層的,首先用RestrictedBoltzmann Machine(非監督學習)學習網絡的結構,然后再通過Back Propagation(監督學習)學習網絡的權值。

?

3.3.2 支持向量機SVM

??? SVM方法是通過一個非線性映射p,把樣本空間映射到一個高維乃至無窮維的特征空間中(Hilber空間),使得在原來的樣本空間中非線性可分的問題轉化為在特征空間中的線性可分的問題。升維,就是把樣本向高維空間做映射,一般情況下這會增加計算的復雜性,甚至會引起“維數災難”,因而人們很少問津。但是作為分類、回歸等問題來說,很可能在低維樣本空間無法線性處理的樣本集,在高維特征空間中卻可以通過一個線性超平面實現線性劃分(或回歸)。一般的升維都會帶來計算的復雜化,SVM方法巧妙地解決了這個難題:應用核函數的展開定理,就不需要知道非線性映射的顯式表達式;由于是在高維特征 空間中建立線性學習機,所以與線性模型相比,不但幾乎不增加計算的復雜性,而且在某種程度上避免了“維數災難”.這一切要歸功于核函數的展開和計算理論.

選擇不同的核函數,可以生成不同的SVM,常用的核函數有以下4種:

? ? ⑴? 性核函數K(x,y)=x·y;

??? ⑵多項式核函數K(x,y)=[(x·y)+1]d;

? ? ⑵? 向基函數K(x,y)=exp(-|x-y|^2/d^2)

? ? ⑶? 層神經網絡核函數K(x,y)=tanh(a(x·y)+b).

?

3.3.2.1?? SVM有如下主要幾個特點:

??? (1)非線性映射是SVM方法的理論基礎,SVM利用內積核函數代替向高維空間的非線性映射;

??? (2)對特征空間劃分的最優超平面是SVM的目標,最大化分類邊際的思想是SVM方法的核心;

? ? (3)支持向量是SVM的訓練結果,在SVM分類決策中起決定作用的是支持向量。(4)SVM 是一種有堅實理論基礎的新穎的小樣本學習方法。它基本上不涉及概率測度及大數定律等,因此不同于現有的統計方法。從本質上看,它避開了從歸納到演繹的傳統過程,實現了高效的從訓練樣本到預報樣本的“轉導推理”,大大簡化了通常的分類和回歸等問題。

??? (5)SVM 的最終決策函數只由少數的支持向量所確定,計算的復雜性取決于支持向量的數目,而不是樣本空間的維數,這在某種意義上避免了“維數災難”。

??? (6)少數支持向量決定了最終結果,這不但可以幫助我們抓住關鍵樣本、“剔除”大量冗余樣本,而且注定了該方法不但算法簡單,而且具有較好的“魯棒”性。這種“魯棒”性主要體現在:

??? ①增、刪非支持向量樣本對模型沒有影響;

??? ②支持向量樣本集具有一定的魯棒性;

??? ③有些成功的應用中,SVM 方法對核的選取不敏感

?

3.3.2.2?? SVM的兩個不足:

??? (1) SVM算法對大規模訓練樣本難以實施

??? 由 于SVM是借助二次規劃來求解支持向量,而求解二次規劃將涉及m階矩陣的計算(m為樣本的個數),當m數目很大時該矩陣的存儲和計算將耗費大量的機器內存 和運算時間。針對以上問題的主要改進有有J.Platt的SMO算法、T.Joachims的SVM、C.J.C.Burges等的PCGC、張學工的 CSVM以及O.L.Mangasarian等的SOR算法。

??? (2) 用SVM解決多分類問題存在困難

??? 經典的支持向量機算法只給出了二類分類的算法,而在數據挖掘的實際應用中,一般要解決多類的分類問題。可以通過多個二類支持向量機的組合來解決。主要有一對多組合模式、一對一組合模式和SVM決策樹;再就是通過構造多個分類器的組合來解決。主要原理是克服SVM固有的缺點,結合其他算法的優勢,解決多類問題的分類精度。如:與粗集理論結合,形成一種優勢互補的多類問題的組合分類器。

?

3.3.2 DeepLearning

??? DeepLearning本身算是MachineLearning的一個分支,簡單可以理解為Neural Network的發展。大約二三十年前,Neural Network曾經是ML領域特別火熱的一個方向,但是后來確慢慢淡出了,原因包括以下幾個方面:

? ? (1)????比較容易過訓練,參數比較難確定;

? ? (2)????訓練速度比較慢,在層次比較少(小于等于3)的情況下效果并不比其它方法更優;

所以中間有大約20多年的時間,神經網絡被關注很少,這段時間基本上由SVM和Boosting算法主導。但是,Hinton堅持下來并最終(和Bengio、Yann.lecun等)提成了一個實際可行的Deep Learning框架。

?

3.3.3.1?? Deep Learning與傳統的神經網絡異同

? ? Deep Learning與傳統的神經網絡的相同在于Deep Learning采用了神經網絡相似的分層結構,系統由包括輸入層、隱層(多層)、輸出層組成的多層網絡,只有相鄰層節點之間有連接,同一層以及跨層節點之間相互無連接,每一層可以看作是一個Logistic Regression模型;這種分層結構,是比較接近人類大腦的結構的。

而為了克服神經網絡訓練中的問題,DL采用了與神經網絡很不同的訓練機制。傳統神經網絡中,采用的是Back Propagation的方式進行,簡單來講就是采用迭代的算法來訓練整個網絡,隨機設定初值,計算當前網絡的輸出,然后根據當前輸出和label之間的 差去改變前面各層的參數,直到收斂(整體是一個梯度下降法)。而DeepLearning整體上是一個Layer-Wise的訓練機制。這樣做的原因是因為,如果采用Back Propagation的機制,對于一個Deep Network(7層以上),殘差傳播到最前面的層已經變得太小,出現所謂的Gradient Diffusion。

?

3.3.3.2?? Deep Learning訓練過程

? ? (1)采用無標定數據(有標定數據也可)分層訓練各層參數,這一步可以看作是一個無監督訓練過程,是和傳統神經網絡區別最大的部分(這個過程可以看作是feature learning過程):具體的,先用無標定數據訓練第一層,訓練時可以采用auto-encoder來學習第一層的參數(這一層可以看作是得到一個使得輸出和輸入差別最小的三層神經網絡的隱層),由于模型capacity的限制以及稀疏性約束,使得得到的模型能夠學習到數據本身的結構,從而得到比輸入更具有表示能力的特征;在學習得到第n-1層后,將n-1層的輸出作為第n層的輸入,訓練第n層,由此分別得到各層的參數;這里面需要重點理解auto-encoder以及sparse的機制的原理和作用。可以參考這篇文章。

? ? (2)基于第一步得到的各層參數進一步fine-tune整個多層模型的參數,這一步是一個有監督訓練過程;第一步類似神經網絡的隨機初始化初值過程,由于DL 的第一步不是隨機初始化,而是通過學習輸入數據的結構得到的,因而這個初值更接近全局最優,從而能夠取得更好的效果;所以deep learning效果好很大程度上歸功于第一步的feature learning過程。

? ? 總之,deep learning能夠得到更好地表示數據的feature,同時由于模型的層次、參數很多,capacity足夠,因此,模型有能力表示大規模數據,所以對于圖像、語音這種特征不明顯(需要手工設計且很多沒有直觀物理含義)的問題,能夠在大規模訓練數據上取得更好的效果。此外,從模式識別特征和分類器的角 度,deep learning框架將feature和分類器結合到一個框架中,用數據去學習feature,在使用中減少了手工設計feature的巨大工作量(這是目前工業界工程師付出努力最多的方面),因此,不僅僅效果可以更好,而且,使用起來也有很多方便之處。

?

4??集群機器學習

?

4.1 弱可學習定理

? ? 1990 年, Schapire 證明了一個有趣的定理: 如果一個概念是弱可學習的, 充要條件是它是強可學習的。這個定理的證明是構造性的, 證明過程暗示了弱分類器的思想。所謂弱分類器就是比隨機猜想稍好的分類器, 這意味著, 如果我們可以設計這樣一組弱分類器, 并將它們集群起來, 就可以成為一個強分類器, 這就是集群機器學習。由于弱分類器包含“比隨機猜想稍好”的條件, 從而, 避免了對Madaline 平凡解的批評。另外, 由于Schapire 定理的證明基于PAC的弱可學習理論, 因此, 這種方法又具有泛化理論的支持。這樣, 自Widrow 提出Madaline近30 年之后, 人們終于獲得了基于Hebb 路線下的機器學習算法設計的理論基礎。這個學習理念立即獲得人們的廣泛關注, 其原因不言自明,弱分類器的設計總比強分類器設計容易, 特別是對線性不可分問題更是如此。由此,Madaline 與感知機一樣, 成為機器學習最重要的經典。

4.2?? 經典算法

? ? Boosting 是一種用來提高學習算法準確度的方法, 這種方法通過構造一個預測函數系列, 然后以一定的方式將它們組合成一個預測函數, 達到把一弱學習算法提升為強學習算法的目的。1989 年Schapire 提出了第一個可證明的多項式時間Boosting 算法, 對這個問題作出了肯定的回答。一年后,Freund 設計了一個高效得多的通過重取樣或過濾運作的Boosting- by-Majority 算法。這個算法盡管在某種意義上是優化的, 但卻有一些實踐上的缺陷。1995 年Freund 和Schapire介紹了通過調整權重而運作的AdaBoost 算法解決了早期Boosting算法很多實踐上的困難。

? ? AdaBoost 是Boosting 家族中的基礎算法。Boosting家族中的大部分擴展( 算法) 都由它得來,對AdaBoost 的分析結論也適用于其它的Boosting。下面簡要地介紹一下它的思想。

? ? AdaBoost 算法的主要思想是給定一弱學習算法和訓練集( x1, y1) , , , ( xn, yn ) 。這里xi 為一向量, yi 對于分類問題為一類別標志, 對于回歸問題為一數值。初始化時對每一個訓練例賦相等的權重1/ n , 然后用該學習算法對訓練集訓練t 輪, 每次訓練后, 對訓練失敗的訓練例賦以較大的權重, 也就是讓學習算法在后續的學習中集中對比較難的訓練例進行學習, 從而得到一個預測函數序列h1, , , ht ,其中hj 也有一定的權重, 預測效果好的預測函數權重較大, 反之較小。最終的預測函數H 對分類問題采用有權重的投票方式, 對回歸問題采用加權平均的方法對新示例進行判別。

? ? Boosting 算法是一種基于其他機器學習算法之上的用來提高算法精度和性能的方法。當用于回歸分析時, 不需要構造一個擬合精度高、預測能力好的回歸算法, 只要一個效果只比隨機猜測略好的粗糙算法即可, 稱之為基礎算法。通過不斷地調用這個基礎算法就可以獲得一個擬合和預測誤差都相當好的組合回歸模型。Boosting 算法可以應用于任何的基礎回歸算法, 無論是線性回歸、神經網絡、還是SVM 方法, 都可以有效地提高精度。因此, Boosting可以被視為一種通用的增強基礎算法性能的回歸分析算法。

? ? Bagging(Bootstrap Aggregating) 又被稱為自舉聚合, 是Breiman 提出的與Boosting 相似的技術。[ 11]Bagging 技術的主要思想是給定一弱學習算法和一訓練集( x 1, y1), , ( xn , yn ) 。讓該學習算法訓練多輪, 每輪的訓練集由從初始的訓練集中隨機取出的n 個訓練例組成, 初始訓練例在某輪訓練集中可以出現多次或根本不出現。訓練之后可得到一個預測函數序列: h1, , , ht , 最終的預測函數H 對分類問題采用投票方式, 對回歸問題采用簡單平均。

? ? Bagging 與Boosting 的區別在于Bagging 的訓練集的選擇是隨機的, 各輪訓練集之間相互獨立, 而Boosting的訓練集的選擇不是獨立的, 各輪訓練集的選擇與前面各輪的學習結果有關; Bagging 的各個預測函數沒有權重, 可以并行生成, 而Boosting 是有權重的, 只能依次順序生成; Boosting 往往從一些弱的學習器開始, 組合形成一個集成學習器, 從而給出一個好的學習結果, 而Bagging學習效果的好壞往往取決于集成學習器中每個學習器的相關性和各個學習器的學習效果。對于神經網絡這類極為耗時的學習方法, Bagging 可通過并行訓練節省大量時間開銷。

?

5??符號機器學習

? ? 自1969 年Minsky 出版Perceptron(《感知機》)一書以后, 感知機的研究方向被終止,到1986 年Rumelhart 等發表BP 算法, 近20 年間, 機器學習研究者在做什么事情呢? 這段時間正是基于符號處理的人工智能的黃金時期, 由于專家系統研究的推動, 符號機器學習得到發展, 事實上, 這類研究方法除了建立在符號的基礎上之外, 從學習的機理來看, 如果將學習結果考慮為規則, 每個規則將是一個分類器, 盡管這些分類器中有些不一定滿足弱分類器的條件, 但是, 它應該是Hebb 路線的延續。

? ? 符號機器學習的最大優點是歸納的解答與歸納的過程是可解釋的, 換句話說, 數據集合中的每個觀測(樣本或對象)對用戶都是透明的, 它在解答以及計算過程中所扮演的角色, 用戶都是可以顯現了解的。然而, 它的缺陷同樣突出, 就是泛化能力。由于學習結果是符號表述, 因此, 只可能取“真”與“假”, 這樣大大減低了對具有一定噪音數據的分析能力, 需要其他技術來補充: 其一, 觀測世界的數據到符號域的映射, 其二, 不確定推理機制。但是, 這兩種方法與符號機器學習方法本身并沒有必然的關系。

? ? 近幾年, 由于數據挖掘的提出, 符號機器學習原理有了新的用途, 這就是符號數據分析, 在數據挖掘中稱為數據描述, 以便與數據預測類型的任務相區別(從任務來說, 這類任務與機器學習是一致的)。

? ? 與機器學習的目標不同, 數據分析不是以所有用戶具有相同需求為假設, 相反, 強調不同用戶具有不同的需求。另外, 數據分析強調, 分析結果是為用戶提供可閱讀的參考文本, 決策將依賴人的洞察。如何根據用戶的特定需求將觀測數據集合變換為簡潔的、可為用戶理解的表示成為關鍵。這是符號機器學習的另一個可以考慮的應用領域。由于符號機器學習在泛化能力上的欠缺, 這也是它在與基于統計的機器學習方法競爭中避免遭到淘汰的出路。

?

6??增強機器學習方法

? ? 增強機器學習( reinfo rcementlearning )的本質是對變化的環境的適應。應該說,這是一種“古老”的機器學習思想.在1948年, Wiener的著作“控制論”中,就討論了這個問題,而在以后的控制理論的研究中,這發展成為重要的研究課題—— 自適應控制。由于控制理論研究這個問題的焦點在于控制品質,且其使用的數學工具是微分方程,因此,對非線性問題,使用計算機進行數值求解存在著本質性的困難。這是這類機器學習長期未得到計算機科學家注意的原因。

? ? 直到20世紀70年代, Holland在討論進化計算時,需要考慮控制物種群體的染色體數量,以便淘汰對變化環境不適應的個體,為此,提出使用桶隊算法解決這個問題。桶隊算法在Holland提出的分類器系統中扮演著對變換環境適應的角色。

? ? 以后,在20世紀90年代初, Sutton提出將這類機器學習建立在Markov 過程上,并稱其為增強機器學習方法。這個方法是根據環境變化對系統的刺激,并作為系統輸入,然后,利用基于統計的方法優化轉移概率,并使系統適應新的環境。

? ? 一般地說,增強機器學習應該屬于無教師學習,但是,如果考慮環境就是教師,這類機器學習也可以認為是一類特殊有教師的機器學習,與一般有教師機器學習的區別在于: 教師是環境,且是變化的環境。這意味著,不像傳統意義下的有教師學習,教師教授的知識不是事先給定的,而是采用更靈活方法,在問題求解的過程中獲得的。

?

7??總結

? ? 本文從機器學習的起源,發展依據,歷史上的重要事件角度討論了機器學習發展脈絡。通過“對神經細胞模型假設的差別”將機器學習領域劃分為兩大支系——強調模型的整體性,基于Barlow“表征客體的單一細胞論”的Barlow路線;強調對世界的表征需要多個神經細胞集群,基于Hebb“表征客體的多細胞論”的Hebb路線。這一劃分可以清晰地將機器學習發展歷程總結為:以感知機、BP與SVM等為一類的Barlow路線;以樣條理論、k-緊鄰、Madaline、符號機器學習,集群機器學習與流行機器學習等為一類的Hebb路線。

? ? 其中,又重點關注了目前發展良好的統計機器學習與集群學習。討論了SVM與神經網絡的關系與優缺點,以及將弱學習算法提升為強學習算法的Boosting算法。

? ? 本文提倡研究者需要重視這樣一個問題:我們探討機器學習在理念、理論、與技術上發展的各種方法所遵循的假設,是否能夠適應當前任務的需要?如果問題是否定的,那么,我們是修補這些已被普遍認可的理念、理論與方法(打補丁),以適應當前的需要,還是從根本上清理原有假設,提出新的假設,從而發展新的理念、理論和方法?這是一個需要仔細分析已有理論與方法,并權衡各種利弊才能決定的事情。綜上所述,討論機器學習發展脈絡,以從這個脈絡發現有趣的經驗和教訓,對回答這個問題是重要的,這必須考慮機器學習發展的科學依據,歷史上的重要事件,以及理論研究中的重要結論。這就是我們本文的討論集中在動機和理論的原因。

本文轉自:

http://blog.csdn.net/solomon1558/article/details/40798401



總結

以上是生活随笔為你收集整理的机器学习综述的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。