1. 程式人生 > >統計學習方法 | 概論

統計學習方法 | 概論

01 起

前段時間把Python的Pandas、Numpy、matplotlib、seaborn包拿來反覆練習了一番,對於資料的觀察、處理、清洗以及視覺化有了一定的認識。

隨著練習的深入,一個問題在我心中逐漸形成:

一份資料的價值,通過清洗、多維度視覺化就完全可以被展現出來了麼?

還不夠,還遠遠不夠!

於是我開始感受到知識儲備的匱乏了。

還好前面有老司機帶路,於是我琢磨著從理論基礎入手,結合實操快速提升資料探勘能力。

接下來的兩到三個月,我會集中精力攻破李航的《統計學習方法》,本書共11章,計劃1周1-2章(視章節情況而定),其中對於資料探勘有幫助的知識,我會分享出來,與大家共勉~~

02 三要素

不要被“統計學習”的名字誤導,它不只是統計學,它的全名是“統計機器學習”,是計算機系統通過運用資料及統計方法提高系統性能的機器學習。

統計學習三要素:

  1. 模型-在監督學習過程中,模型就是所要學習的條件概率分佈P(Y|X)或決策函式y=f(X),是一個假設空間
  2. 策略-從假設空間中選取最優模型的過程,是將損失函式(期望風險、經驗風險)最小化的策略
  3. 演算法-學習模型的具體計算方法,是求解最優化問題的演算法

確定了模型、策略、演算法三要素,統計學習方法也就確定了,後面的所有章節,其實都是在探究具體問題的三要素。

03 模型的評估和選擇

選擇模型,就是在選擇假設空間,選擇假設空間,就是在選擇輸入變數個數以及與輸出變數可能的關係模型集合。

過擬合

我們選擇的輸入變數越多,那麼對於已知資料的預測結果可能越準確,但是對於未知資料預測的準確性卻會隨著輸入變數個數的增加而呈先增加後減少的結果,這就是過擬合

學習時選擇的模型所包含的引數太多,以至於出現這一模型對已知資料預測得很好,但對未知資料預測得很差的現象。

模型選擇

為了防止過擬合,模型選擇時,不僅要考慮對已知資料的預測能力,還要考慮對未知資料的預測能力(泛化能力)。

防止過擬合,常用的方法有正則化和交叉驗證。

泛化能力

泛化能力是由學習方法學習得到的模型對於未知資料的預測能力,期望風險越小,泛化能力越強。

那麼兩種學習方法的優劣用什麼指標來衡量呢?

答案是泛化誤差上界,它指的是泛化誤差概率的上限。

兩類模型

機器學習中的監督學習,主要有兩類模型劃分:

  1. 生成模型-由資料學習聯合概率分佈(概率密度函式)P(X,Y),然後求出條件概率分佈P(Y|X)作為預測的模型,即生成模型。

  2. 判別模型- 由資料直接學習決策函式f(X)或條件概率分佈P(Y|X)作為預測的模型,即判別模型

生成模型 vs 判別模型

相比於判別方法,生成方法可以還原出聯合概率分佈P(X,Y);學習收斂速度更快;存在隱變數時也可以使用生成方法學習;

相比於生成方法,判別方法直接學習的時條件概率或決策函式,直接面對預測,往往學習的準確率更高;可以對資料進行各種程度上的抽象、定義特徵等,簡化學習問題

生成模型,更關心給定輸入X產生輸出Y的生成關係; 判別模型,更關心給定輸入X,應該預測什麼樣的輸出Y。

04 監督學習解決的三類代表性問題

分類問題(classify)

定義: 當輸出變數Y是有限個離散值時,預測問題便成為分類問題,此時的輸入變數X可以時離散也可以是連續的。

過程: 學習-根據已知的訓練資料集,利用有效的學習方法學習一個分類器(分類模型、分類決策函式) 分類-利用學習的分類器對新的輸入例項進行分類

標註問題(tagging)

定義: 學習一個模型,使它能夠對觀測序列給出標記序列作為預測。

過程: 學習-基於訓練資料集構建一個模型,表示為條件概率分佈 標註-按照學習到的條件概率分佈模型, 對新的輸入觀測序列找到相應的輸出標記序列

迴歸問題(regression)

定義: 用於預測輸入變數和輸出變數之間的關係,特別是當輸入變數的值發生變化時,輸出變數的值隨之發生的變化。

過程: 學習-基於訓練資料構建一個模型Y=f(X) 預測-對新的輸入x,根據學習到的模型確定相應地輸出

05 總結

本文總結了《統計學習方法》第一章內容,圍繞統計學習三要素——模型、策略、演算法,進行概念普及,後面的章節都會基於這三要素進行學習。

下週我會分享關於機器學習元老方法-感知機,以及常用方法-k近鄰法的有關知識點,敬請期待~~