1 - 統計學習方法概論

1 統計學習

statistical learning: 基於數據構建概率統計模型並運用模型對數據進行預測與分析的一門學科。統計學習也稱統計機器學習(statistical machine learning)。現在,當人們提及機器學習時,往往是指統計機器學習

一些要點:

  • 統計學習包括:監督學習(surpervised learning)非監督學習(unsuprvised learning)半監督學習(semi-supervised learning)強化學習(reinforcement learning)。本書主要討論監督學習。

  • 統計學習三要素:模型(model)、策略(strategy)、算法(algorithm)

  • 監督學習主要用於:分類、標註、迴歸等問題。這也是本書的主要討論內容。這些問題在自然語言處理、信息檢索、文本數據挖掘等領域有廣泛應用。

2 監督學習

學習一個模型,使之能夠對任意給定的輸入,對其相應的輸出做一個很好的預測。

2.1 輸入空間、輸出空間、特徵空間

  • 輸入與輸出的所有可能取值的集合分別稱爲輸入空間輸出空間
  • 每個輸入是一個instance,通常由特徵向量(feature vector)表示。
  • 所有特徵向量存在的空間稱爲特徵空間(feature space)
  • 除特別聲明外,本書所有向量均爲列向量。
  • 根據變量類型的不同對問題進行分類:
    • 輸入變量與輸出變量均連續:迴歸問題
    • 輸出變量離散:分類問題
    • 輸入變量與輸出變量均離散:標註問題

2.2 聯合概率分佈

監督學習基本假設:輸入與輸出的隨機變量X和Y服從聯合概率分佈P(X,Y)。

  • 也就是說統計學習假設數據存在一定的統計規律(否則對數據的分析就沒有意義)
  • P(X,Y)表示 分佈函數,或分佈密度函數。
  • 雖然存在聯合概率分佈,但其具體定義是未知的,訓練數據測試數據被看做是依聯合概率分佈P(X,Y)獨立同分布產生的。

2.3 假設空間

統計學的的模型屬於由輸入空間到輸出空間的映射的集合,這個集合就是假設空間(hypothesis space), 也就是模型的學習範圍。

監督學習可以是概率模型或者非概率模型。概率模型條件概率分佈*P(Y|X)表示,非概率模型決策函數*(decision function) Y = f(X) 表示。

3 統計學習三要素

方法 = 模型 + 策略 + 算法

3.1 模型

模型就是要學習的條件概率或者決策函數。假設空間包含所有可能的概率分佈或決策函數。

3.2 策略

按什麼樣的準則學習和選擇模型? 本質上是要在假設空間中選擇最優模型。

3.2.1 損失函數和風險函數

常用損失函數(loss function)、代價函數(cost function)來度量預測錯誤的程度。常用損失函數:

  • 0-1損失函數
    L(Y,f(X))={1,Yf(X)0,Y=f(X)
  • 平方損失函數
    L(Y,f(X))=(Yf(X))2
  • 絕對損失函數
    L(Y,f(X))=|yf(X)|
  • 對數損失函數
    L(Y,P(Y|X))=logP(Y|X)

損失函數越小,那麼模型就越好。由於(X,Y)服從聯合概率分佈P(X,Y),所以損失函數的期望是:

Rexp(f)=Ep[L(Y,f(X))]=L(y,f(x))P(x,y)dxdy

這是理論上模型f(X)關於聯合分佈P(X,Y)的平均意義下的損失,稱爲風險函數(risk function)或者期望損失(expected loss)。

學習的目的就是要選擇期望風險最小的模型。由於聯合分佈P(X,Y)未知,所以Rexp 無法計算。事實上,如果知道了聯合概率分佈,那麼就可以直接得到條件概率分佈P(X,Y),就不需要學習了。這樣,二者就形成了矛盾,一方面計算期望風險需要用到聯合概率分佈,另一方面聯合概率分佈又未知,所以監督學習成爲一個病態問題(ill-formed problem)。

我們通常用經驗風險(empirical risk)或經驗損失(empirical loss)來替代期望損失。

Remp=1Ni=1NL(yi,f(xi))

經驗風險是模型關於訓練樣本集的平均損失,期望風險是模型關於期望分佈的期望損失

根據大數定律,當樣本容量N趨於無窮時,經驗風險趨於期望風險。然而,現實情況下,當訓練樣本有限時,就需要對經驗風險進行校正,這就涉及到監督學習的兩個基本策略:經驗風險最小化結構風險最小化

3.2.2 經驗風險最小化與結構風險最小化

經驗風險最小化(empirical risk minimization, ERM)認爲:經驗風險最小的模型是最優模型。當樣本容量足夠大的時候,經驗風險最小化能保證有很好的學習效果。如極大似然估計(maximum likelihood estimation)就是經驗風險最小化的一個例子,當模型是條件概率分佈,損失函數是對數損失函數時,經驗風險最小化就等價於極大似然估計。

但是,當樣本容量很小時,經驗風險最小化學習的效果未必花很好,反而會產生過擬合現象。

結構風險最小化(structural risk minimization, SRM)是爲了防止過擬合而提出來的策略,結構風險最小化等價於正則化(regularization)。結構風險在經驗風險上加上表示模型複雜度的正則化項(regularizer)或罰項(penalty term)。結構風險小的模型往往對訓練數據和測試數據都有較好的預測。

貝葉斯估計中的最大後驗概率估計(maximum posterior probability estimation)就是結構風險最小化的例子。當模型是條件概率分佈、損失函數是對數損失函數、模型複雜度由模型先驗概率表示時,結構風險最小化就等價於最大後驗概率估計。

結構風險最小化策略認爲結構風險最小的模型就是最優的模型。

這樣,監督學習問題就變成了經驗風險或結構風險函數的優化問題。

4 模型評估與模型選擇

4.1 訓練誤差與測試誤差

訓練誤差(training error)對可以判斷給定的問題是不是一個容易學習的問題是有意義的,但本質上不重要。
測試誤差(test error)反映了學習方法對未知的測試數據集的預測能力。
通常將學習方法對未知數據的預測能力稱爲泛化能力

4.2 過擬合與模型選擇

過擬合是指學習時選擇的模型所含的參數過多,以至於出現這一模型對已知數據預測的很好,但對位置數據預測的很差的現象。

兩種常見的模型選擇方法:正則化交叉驗證

5 正則化與交叉驗證

5.1 正則化

正則化是結構風險最小化策略的實現,是在經驗風險上加一個正則化項(或罰項)。正則化項一般是模型複雜度的單調遞增函數,模型越複雜,正則化值越大。

正則化項一般具有以下形式:

min1Ni=1NL(yi,f(xi))+λJ(f)

其中,第一項爲經驗風險,第二項爲正則化項,λ0

正則化項可以取不同的形式。如在迴歸問題中,損失函數是平方損失,正則化項可以是參數向量的L2 範數:

L(w)=1Ni=1N(f(xi;w)yi)2+λ2w2

這裏,w 表示參數向量w的L2 範數。

正則化項也可以是參數向量的L1 範數:

L(w)=1Ni=1N(f(xi;w)yi)2+λw1

這裏,w1 表示參數向量w的L1 範數。

5.2 交叉驗證

如果樣本充足,進行模型選擇的一種簡單方法是隨機的將數據集分成三部分,分別爲訓練集(training set)、驗證集(validation set)、測試集(test set)。訓練集用於訓練模型,驗證集用於模型選擇,測試集用於最終對學習方法的評估。

但是,實際情況下經常會出現數據不充足的情況。爲了選擇好的模型,可以採用交叉驗證方法。交叉驗證的基本想法是重複使用數據;把給定的數據進行切分,將切分的數據集組合爲訓練集和測試集,在此基礎上反覆地進行訓練、測試以及模型選擇。

5.2.1 簡單交叉驗證

隨機將數據集分成訓練集和測試集兩部分;
然後用訓練集在各種條件下訓練模型,從而得到不同的模型;
在測試集上評價各個模型的測試誤差,選出測試誤差最小的模型。

5.2.2 S折交叉與驗證(應用最爲廣泛)

首先隨機將數據分爲S個互不相交的大小相同的子集;
然後利用S-1個子集的數據訓練模型,利用剩餘的子集測試模型;
將這一過程對可能的S種選擇重複進行;
最後選出S次評測中平均測試誤差最小的模型。

5.2.3 留一交叉驗證

S折交叉驗證的特殊情形,S=N,往往在缺乏數據的情況下使用。

6 泛化能力

學習方法的泛化能力(generalization ability)是指由該學習方法學習到的模型對未知數據的預測能力,是學習方法本質上最重要的性質。

現實中採用最多的方法是通過測試誤差來評價學習方法的泛化能力。

7 生成模型與判別模型

監督學習可分爲生成方法(generative approach)和判別方法(discriminative approach),學習到的模型稱爲生成模型和判別模型。

生成方法由數據學習聯合概率分佈P(X,Y),然後求出條件概率分佈P(Y|X)作爲預測的模型,即生成模型。

P(Y|X)=P(X,Y)P(X)

這樣的方法之所以稱爲生成方法,是因爲模型表示了給定輸入X產生輸出Y的生成關係

典型的生成模型有:樸素貝葉斯法和隱馬爾可夫模型。

判別方法由數據直接學習決策函數作爲預測模型,判別方法關心的是對給定的輸入X,應該預測什麼樣的輸出

典型的判別模型有:k緊鄰法、感知機、決策樹、邏輯斯蒂迴歸模型、最大熵模型、支持向量機、提升方法、條件隨機場。

優缺點:

  • 生成方法:

    • **可以還原出聯合概率分佈**P(X,Y),而判別方法則不能;
    • 學習收斂速度更快,即當樣本容量增加的時候,學到的模型可以更快的收斂;
    • 當存在隱變量的時候,仍可以用生成方法學習,而判別方法就不能用。
  • 判別方法:

    • 直接學習的是條件概率或決策函數,準確率更高
    • 由於直接學習條件概率或決策函數,可以對數據進行各種程度上的抽象、定義特徵並使用特徵,因此可以簡化學習問題

8 分類問題

評價方法:準確率,召回率,F1
常用統計學習方法:

  • k臨近法
  • 感知機
  • 樸素貝葉斯
  • 決策樹
  • 決策列表
  • 邏輯斯蒂迴歸模型
  • 支持向量機
  • 提升方法
  • 貝葉斯網絡
  • 神經網絡
  • Winnow

9 標註問題(tagging)

分類問題的推廣,是更復雜的結構預測問題的簡單形式。輸入是一個觀測序列,輸出是一個標記序列或狀態序列,目的在於學習一個模型,使它能夠對觀測序列給出標記序列作爲預測。

評價方法:與分類問題類似
常用統計學習方法:

  • 隱馬爾可夫模型
  • 條件隨機場

標註問題在信息抽取、自然語言處理等領域被廣泛應用,是這些領域的基本問題。

10 迴歸模型

用於預測輸入變量與輸出變量之間的關係。
迴歸問題最常用的損失函數是平方損失函數,在此情況下,迴歸問題可以由著名的最小二乘法求解。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章