1. 程式人生 > >西瓜書學習筆記——(1)緒論

西瓜書學習筆記——(1)緒論

這裡寫圖片描述

前言

之前由於機器學習,人工智慧,資料分析大火,為了順應時代,於是找了幾個國外的視訊網站看了點相關的講解,但由於本人英語水平有限,看起來太吃力,而且當時也沒有Python的基礎,聽得暈頭轉向的。然後就買了兩本書,打算進行系統性的學習。其中一本就是這本被大力推薦的西瓜書。剛拿到書,翻了一下,全是數學公式,好吧,這西瓜有點難啃,丟一邊先學python。

現在python馬馬虎虎了,打算啃西瓜了。

引言

機器學習是這樣一門學科,它致力於研究如何通過計算的手段,利用經驗來改善系統自身的效能。

這裡寫圖片描述

經驗就是資料,而機器學習就是讓計算機從資料中產生出模型的演算法,即學習演算法。有了學習演算法,我們就可以基於這些資料產生相應的模型。

基本術語

要進行機器學習,就先要有資料。

這裡寫圖片描述

  • 資料集(data set):記錄的集合
  • 示例(instance)或樣本(sample):每一條記錄都是關於一個事件或物件的描述
  • 屬性(attribute)或特徵(feature):反映事件或物件在某方面的表現或性質的事項,例如色澤,根蒂
  • 屬性值(attribute value):屬性上的取值,例如淺白

這裡寫圖片描述

  • 樣本空間(sample space)或屬性空間(attribute space)或輸入空間:屬性張成的空間。如色澤、根蒂、敲聲張成的用於描述西瓜的三維空間,每個西瓜都能在這個空間找到自己的座標位置。
  • 特徵向量(feature vector):空間中的每個示例

這裡寫圖片描述

D={x1,x2,...,xm} 表示包含 m 個示例的資料集

這裡寫圖片描述

每個示例有d個屬性描述(如上面西瓜資料使用了3個屬性),則每個示例xi=(xi1;xi2;....;xid)d維樣本空間X中的一個向量,xiX,其中xijxi在第j個屬性上的取值

這裡寫圖片描述

  • 學習(learning)或訓練(training):從資料中學得模型的過程,這個過程通過執行每個學習演算法來完成
  • 訓練資料(training data):訓練過程中使用的資料
  • 訓練樣本(training sample):訓練資料中的每一個樣本
  • 訓練集(traing set):訓練樣本的集合
  • 假設(hypothesis):學得模型對應了關於資料的某種潛在規律
  • 真相(ground-truth):資料的潛在規律

為了建立預測的模型,光有前面的示例資料是不行的,還需要得到訓練樣本的結果資訊。

這裡寫圖片描述

  • 標記(label):示例的結果資訊
  • 樣例(example):擁有標記資訊的示例

(xi,yi)表示第i個樣例,其中yiY是示例xi的標記

  • 標記空間(label space)或輸出空間:所有標記的集合,Y

  • 分類(classification)學習任務:預測的是離散值,如好瓜,壞瓜

    • 二分類(binary classification)任務:任務只有兩個分類,通常另Y={1,+1}
      • 正類(positive class)
      • 反類(negative class)
    • 多分類(multi-class classfication)任務:任務有多個類別,|Y|>2
  • 迴歸(regression)學習任務:預測的是連續值,如西瓜成熟度0.95, 9.37,Y=R,R
  • 測試(testing):學得模型後,使用其進行預測的過程
  • 測試樣本(testing sample):被測試的樣本

這裡寫圖片描述

  • 聚類(clustering):對訓練集中的資料進行分組
  • 簇(cluster):聚類所分的組
  • 測試(testing):學得模型後,使用其進行預測的過程
  • 測試樣本(testing sample):被測試的樣本
  • 監督學習(supervised learning):訓練資料擁有標記資訊的學習任務,迴歸、分類
  • 無監督學習(unsupervised learning):訓練資料無標記資訊的學習任務,聚類
  • 泛化(generalization):學得模型適用於新樣本的能力

假設空間

  • 歸納(induction):從特殊到一般的泛化過程,即從具體的事實歸結出一般性規律
  • 演繹(deduction):從一般到特殊的特化過程,即從基礎原理推演出具體狀況

我們可以把學習過程看做一個在所有假設組成的空間中進行搜尋的過程,搜尋目標是找到與訓練集匹配的假設,即能夠將訓練集中的瓜正確判斷正確的假設。假設的表示一旦確定,假設空間極其規模大小就確定了。

顯示問題中我們常面臨很大的假設空間,但學習過程是基於有限樣本訓練集進行的,因此,可能有多個假設與訓練集一致,即存在著一個與訓練集一致的假設集合,我們稱之為版本空間(version space)。

歸納偏好

歸納偏好(inductive bias):機器學習演算法在學習過程中對某種型別假設的偏好。任何一個有效的機器學習演算法必須有其歸納偏好,否則它將被假設空間中刊社在訓練集上等效的假設所迷惑,而無法產生確定的學習結果。

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

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

無論學習演算法La 多聰明、學習演算法Lb 多笨拙,他們的期望效能相同。

學習演算法自身的歸納偏好與問題是否相配,往往會起到決定性作用。

發展歷程

機器學習是人工智慧研究發展到一定階段的必然產物。

年代 時期 理論 代表作
1950~1970 推理期 賦予機器邏輯推理能力,機器就具有智慧 “邏輯理論家”程式
1970 知識期 要使機器具有智慧,就必須設法使機器擁有知識 知識工程
1980 學習期 機器自己學習知識 歸納邏輯程式設計(ILP)

機器學習分類:

  • 從樣例中學習
  • 在問題求解和規劃中學習
  • 通過觀察和發現學習
  • 從指令中學習

從樣例中學習主流:

  • 符號主義學習
    • 決策樹:以資訊理論為基礎,以資訊熵的最小化為目標,直接模擬了人類對概念進行判定的樹形流程。
    • 基於邏輯的學習:著名代表是歸納邏輯程式設計(ILP),可看做機器學習與邏輯程式設計的交叉,它使用一階邏輯(謂詞邏輯)來進行知識表示,通過修改和擴充邏輯表示式來完成對資料的歸納。
  • 基於神經網路的連線主義學習
    • 深度學習,狹義的說就是“很多層”的神經網路
  • 統計學習
    • 支援向量機(Support Vector Machine,簡稱SVM)