1. 程式人生 > >學習筆記 | 機器學習-周志華 | 3

學習筆記 | 機器學習-周志華 | 3

1.4 歸納偏好

版本空間中的多個假設可能會產生不同的輸出:
對於同一個樣本,產生不同結果。
這時,學習演算法本身的"偏好"就會起到關鍵的作用.

  • 機器學習演算法在學習過程中對某種型別假設的偏好,稱為"歸納偏好" (inductive bias),或簡稱為"偏好"。
  • 任何一個有效的機器學習演算法必有其歸納偏好,否則它將被假設空間中看似在訓練集上"等效"的假設所迷惑,而無法產生確定的學習結果.
  • 歸納偏好的作用在圖1.3 這個迴歸學習圖示中可能更直觀.這裡的每個訓練樣本是因中的一個點 (x , y) , 要學得一個與訓練集一致的模型,相當於找到一條穿過所有訓練樣本點的曲線.

在這裡插入圖片描述

  • 歸納偏好可看作學習演算法自身在一個可能很龐大的假設空間中對假設進行選擇的啟發式或"價值觀".

  • “奧卡姆剃刀” (Occam’s razor)是一種常用的、自然科學研究中最基本的原則,即"若有多個假設與觀察一致,則選最簡單的那個".

  • 歸納偏好對應了學習演算法本身所做出的關於"什麼樣的模型更好"的假設.是否有好的泛化能力(通過對訓練樣本的學習,能更正確地預測測試樣本)等。

  • 為簡單起見,假設樣本空間 X 和假設空間組都是離散的.令 P(hIX,εa)代表演算法εa於訓練資料 X 產生假設 h 的概率, f 代表我們希望學習的真實目標函式 . 'εa 的"訓練集外誤差",即εa在訓練集之外的所有樣本上的誤差(泛化誤差)為
    在這裡插入圖片描述


    tips: 若f均勻分佈,則有一半的f對x的預測與f(x)不一致。
    在這裡插入圖片描述
    也就是說,無論學習演算法εa多聰明、學習演算法εb多笨拙,它們的期望效能竟相同!這就是"沒有免費的午餐"定理 (No Free Lunch Theorem,簡稱 NFL定理) [Wolpert, 1996; Wolpert and Macready, 1995].
    NFL 定理有一個重要前提:所有"問題"出現的機會相同、或所有問題同等重要.

NFL 定理最重要的寓意是讓我們清楚地認識到,脫離具體問題,空泛地談論"什麼學習演算法更好"毫無意義,因為若考慮所有潛在的問題。所有學習演算法都一樣好.要談論演算法的相對優劣,必須要針對具體的學習問題;在某些問題上表現好的學習演算法,在另一些問題上卻可能不盡如人意,學習演算法自身的歸納偏好與問題是否相配,往往會起到決定性的作用.

1.5 發展歷程

  1. 機器學習是人工智慧 (artificial intelligence)研究發展到一定階段的必然產物.

  2. 二十世紀五十年代到七十年代初,人工智慧研究處於推理期 ,那時人們以為只要能賦予機器邏輯推理能力,機器就能具有智慧.這一階段的代表性工作主要有 A. Newell 和 H. Simon 的"邏輯理論家" (Logic Theorist)程式以及此後的"通用問題求解" (General Problem Solving)程式等,這些工作在當時取得了令人振奮的結果.例如"邏輯理論家"程式在 1952 年證明了著名數學家羅素和懷特海的名著《數學原理》中的 38 條定理 7 在 1963 年證明了全部 52條定理,特別值得一提的是,定理 2.85 甚至比羅素和懷特海證明得更巧妙. A.Newell 和 H. Simon 因為這方面的工作獲得了 1975 年圈靈獎.

  3. 然而隨著研究向前發展,人們逐漸認識到,僅具有邏輯推理能力是遠遠實現不了人工智慧的。E. A. Feigenbau日1 等人認為,要使機器具有智慧,就必須設法使機器擁有知識. 在他們的倡導下,從二十世紀七十年代中期開始,人工智慧研究進入了 知識期。在這一時期,大量專家系統問世,在很多應用領域取得了大量果.E.A.Feigenbaum 作為"知識工程"之父在 1994 年獲得圖靈獎.但是,人們逐漸認識到,專家系統面臨"知識工程瓶頸",簡單地說,就是由人來把知識總結出來再教給計算機是相當困難的.於是,一些學者想到,如果機器自己能夠學習知識該多好!

  4. 事實上,圖靈在 1950 年關於圖靈測試的文章中就曾提到了機器學習的可能;二十世紀五十年代初已有機器學習的相關研究,例如 A. Samucl 著名的跳棋程式.五十年代中後期基於神經網路的"連線主義(connectionism) 學習開始出現,代表性工作有 F. Rosenblatt 的感知機 (Perceptron) 、 B. Widrow 的Adaline 等.在六七十年代,基於邏輯表示的"符號主義" (symbolism) 學習技術蓬勃發展,代表性王作有 P. Winston 的"結構學習系統"、R. S. Michalski等人的"基於邏輯的歸納學習系統’,E. B. Hunt 等人的"概念學習系統"等;以決策理論為基礎的學習技術以及強化學習技術等也得到發展,代表性工作有 N. J. Nilson 的"學習機器"等·二十多年後紅極一時的統計學習理論的一些奠基性結果也是在這個時期取得的.

  5. 1980 年夏,在美國卡耐基梅隆大學舉行了第一屆機器學習研討會 (IWML);同年, ((策略分析與資訊系統》連出三期機器學習專輯; 1983 年, Tioga 山版社出版了R. S. Michalski、 J. G. Carbonell 和 T. Mitchell 主編的《機器學習:一種人工智慧途徑)) [Michalski et al., 1983] ,對當時的機器學習研究工作進行了總結; 1986 年 7 第→本機器學習專業期刊 Machine LeαTηing 創刊; 1989 年,人工智慧領域的權威期刊 Artificial Intelligence 出版機器學習專輯,刊發了當時一些比較活躍的研究工作?其內容後來出現在 J. G. Carbonell 主編、 MIT 出版社 1990 年的《機器學習:範型與方法》[Carbonell, 1990] 一書中.總的來看,二十世紀八十年代是機器學習成為一個獨立的學科領域、各種機器學習技術百花初綻的時期.

  6. R. S. Michalski 等人 [Michalski et al., 1983] 把機器學習研究劃分為"從樣例中學習" “在問題求解和規劃中學習” “通過觀察和發現學習” “從指令中學習"等種類; E. A. Feigenbaum 等人在著名的《人工智慧手冊》(第二卷)[Cohen and Feigenbaum , 1983] 中,則把機器學習劃分為"機械學習” “示教學習” “類比學習"和"歸納學習"機械學習亦稱"死記硬背式學習”,即把外界輸入的資訊全部記錄下來,在需要時原封不動地取出來使用.這實際上沒有進行真正的學習, 僅是在進行資訊儲存與檢索;示教學習和類比學習類似於R. S. Michalski 等人所說的"從指令中學習"和"通過觀察和發現學習"歸納學習相當於"從樣例中學習",即從訓練樣例中歸納出學習結果.二十世紀八十年代以來,被研究最多、應用最廣的是"從樣例中學習" (也就是廣義的歸納學習) ,它涵蓋了監督學習、無監督學習等,本書大部分內容均屬此範疇.下面我們對這方面主流技術的演進做一個簡單回顧.

  7. 在二十世紀八十年代,“從樣例中學習"的一大主流是符號主義學習,其代表包括決策樹 (decision tree)和基於邏輯的學習.典型的決策樹學習以資訊理論為基礎,以資訊熵的最小化為目標,直接模擬了人類對概念進行判定的樹形流程.基於邏輯的學習的著名代表是歸納邏輯程式設計 (Inductive LogicProgramming,簡稱 ILP) ,可看作機器學習與邏輯程式設計的交叉,它使用一階邏輯(即謂詞邏輯)來進行知識表示,通過修改和擴充邏輯表示式(例如 Prolog表示式)來完成對資料的歸納.符號主義學習佔據主流地位與整個人工智慧領域的發展歷程是分不開的.前面說過,人工智慧在二十世紀五十到八十年代經歷了"推理期"和"知識期”,在"推理期"人們基於符號知識表示、通過演繹推理技術取得了很大成就,而在"知識期"人們基於符號知識表示、通過獲取和利用領域知識來建立專家系統取得了大量成果,因此,在"學習期"的開始,符號知識表示很自然地受到青睞.事實上,機器學習在二十世紀八十年代正是被視為"解決知識工程瓶頸問題的關鍵"而走上人工智慧主舞臺的.決策樹學習技術由於簡單易用,到今天仍是最常用的機器學習技術之一. ILP 具有很強的知識表示能力,可以較容易地表達出複雜資料關係,而且領域知識通常可方便地通過邏輯表示式進行描述,因此, ILP 不僅可利用領域知識輔助學習,還可通過學習對領域知識進行精化和增強;然而,成也蕭何、敗也蕭何,由於表示能力太強,直接導致學習過程面臨的假設宅間太大、複雜度極高。因此,問題規模稍大就難以有效進行學習,九十年代中期後這方面的研究相對陷入低潮.

  8. 二十世紀九十年代中期之前,“從樣例中學習"的另一主流技術是基於神經網路的連線主義學習.連線主義學習在二十世紀五十年代取得了大發展,因為早期的很多人工智慧研究者對符號表示有特別偏愛。例如圖靈獎得主 E. Simon 曾斷言人工智慧是研究"對智慧行為的符號化建模”,所以當時連線主義的研究未被納入主流人工智慧研究範疇.尤其是連線主義自身也遇到了很大的障礙。正如圖靈獎得主 M. Minsky 豐11 S. Papert 在 1969 年指出, (當時的)神經網路只能處理線性分類,甚至對"異或"這麼簡單的問題都處理小了. 1983 年,J. J. Hopfield 利用神經網路求解"流動推銷員問題"這個著名的 NP 難題取得重大進展,使得連線主義重新受到人們關注. 1986 年, D. E. Rumelhart 等人重新發明了著名的 BP 演算法,產生了深遠影響.與符號主義學習能產生明確的概念表示不同,連線主義學習產生的是"黑箱"模型,因此從知識獲取的角度來看,連線主義學習技術有明顯弱點;然而,由於有 BP 這樣有效的演算法,使得它可以在很多現實問題上發揮作用.事實上, BP 一直是被應用得最廣泛的機器學習演算法之一.連線主義學習的最大侷限是其"試錯性 '; 簡單地說,其學習過程涉及大量引數,而引數的設定缺乏理論指導,主要靠於工"調參",誇張一點說,引數調節上失之毫釐,學習結果可能謬以千里.

  9. 二十世紀九十年代中期"統計學習" (statistical learning) 閃亮登場並迅速佔據主流舞臺,代表性技術是支援向量機 (Support Vector Machine,簡稱SVM) 以及更一般的"核方法" (kernel methods). 這方面的研究早在二十世紀六七十年代就已開始,統計學習理論 [Vapnik, 1998] 在那個時期也已打下了基礎.例如 V. N. Vapnik 在 1963 年提出了"支援向量"概念,他和 A. J. Chervonenkis 在 1968 年提出 VC 維,在 1974 年提出了結構風險最小化原則等.但直到九十年代中期統計學習才開始成為機器學習的主流,一方面是由於有效的支援向量機演算法在九十年代初才被提出,其優越效能到九十年代中期在文字分類應用中才得以顯現;坤一方面,正是在連線主義學習技術的侷限性凸顯之後,人們才把目光轉向了以統計學習理論為直接支撐的統計學習技術.事實上,統計學習與連線主義學習有密切的聯絡.在支援向量機被普遍接受後,核技巧 (kernel trick) 被人們用到了機器學習的幾乎每一個角落,核方法也逐漸成為機器學習的基本內容之一.

  10. 有趣的是, 二十一世紀初,連線主義學習又捲土重來,掀起了以"深度學習"為名的熱潮.所謂深度學習, 狹義地說就是"很多層"的神經網路.在若干測試和競賽上,尤其是涉及語音、影象等複雜物件的應用中,深度學習技術取得了優越效能.以往機器學習技術在應用中要取得好效能,對使用者的要求較高;而深度學習技術涉及的模型複雜度非常高,以至於只要下工夫"調參把引數調節好, 效能往往就好.因此,深度學習雖缺乏嚴格的理論基礎,但它顯著降低了機器學習應用者的門檻,為機器學習技術走向工程實踐帶來了便利.那麼,它為什麼此時才熱起來呢?有兩個基本原因:資料大了、計算能力強了. 深度學習模型擁有大量引數,若資料樣本少,則很容易"過擬合".如此複雜的模型、如此大的資料樣本,若缺乏強力計算裝置,根本無法求解.恰由於人類進入了"大資料時代",深度學習技術煥發又一春.有趣的是,神經網路在二十世紀八十年代中期走紅,與當時Intel x86 系列微處理器與記憶體條技術的廣泛應用所造成的計算能力、資料訪存效率比七十年代有顯著提高不無關聯.深度學習此時的狀況,與彼時的神經網路何其相似.

  11. 需說明的是,機器學習現在已經發展成為一個相當大的學科領域,本節僅是管中窺豹,很多重要技術都沒有談及,耐心的讀者在讀完本書後會有更全面的瞭解.

1.6 應用現狀

  • 在電腦科學的諸多分支學科領域中,無論是多媒體、圖形學,還是網路通訊、軟體工程,乃至體系結構、晶片設計,都能找到機器學習技術的身影,尤其是在計算機視覺、自然語言處理等"計算機應用技術"領域,機器學習已成為最重要的技術進步源泉之一.

1.7 閱讀材料

  • [Mitchell, 1997] 是第一本機器學習專門性教材, [Duda et al., 2001; Alcpaydin, 2004; Flach, 2012] 都是出色的入門讀物. [Hastie et al., 2009] 是很好的進階讀物, [Bishop, 2006] 也很有參考價值。尤其適合於貝葉斯學習偏好者.[Shalev-Shwartz and Ben-David, 2014] 則適合於理論偏好者. [Witten et al,2011] 是基於 WEKA 撰寫的入門讀物有助於初學者通過 WEKA 實踐快速掌握常用機器學習演算法.
  • WEKA 是著名的免費機器學習演算法程式庫,由
    紐西蘭 Wailkato大學研究人員基於 JAVA 開發
    http://www.cs.waikato.ac.nz/ml/weka/
    在這裡插入圖片描述
    在這裡插入圖片描述

在這裡插入圖片描述
在這裡插入圖片描述