第一章 統(tǒng)計機器學(xué)習(xí)及監(jiān)督學(xué)習(xí)概論(一)

1.1 統(tǒng)計學(xué)習(xí)

1. 統(tǒng)計學(xué)習(xí)的特點

統(tǒng)計學(xué)習(xí)是關(guān)于計算機基于數(shù)據(jù)構(gòu)建概率模型并運用模型對數(shù)據(jù)進行預(yù)測與分析的一門學(xué)科

統(tǒng)計學(xué)習(xí)的主要特點是:

  1. 統(tǒng)計學(xué)習(xí)以計算機及網(wǎng)絡(luò)為平臺,是建立在計算機及網(wǎng)絡(luò)上的
  2. 統(tǒng)計學(xué)習(xí)以數(shù)據(jù)為研究對象,是數(shù)據(jù)驅(qū)動的學(xué)科
  3. 統(tǒng)計學(xué)習(xí)的目的是對數(shù)據(jù)進行預(yù)測與分析
  4. 統(tǒng)計學(xué)習(xí)以方法為中心,統(tǒng)計學(xué)習(xí)方法構(gòu)建模型并應(yīng)用模型進行預(yù)測與分析
  5. 統(tǒng)計學(xué)習(xí)是概率論、統(tǒng)計學(xué)、計算理論、最優(yōu)化理論及計算機科學(xué)等多個領(lǐng)域的交叉學(xué)科

統(tǒng)計學(xué)習(xí)就是計算機系統(tǒng)通過運用數(shù)據(jù)及統(tǒng)計方法提高系統(tǒng)性能的機器學(xué)習(xí)

2. 統(tǒng)計學(xué)習(xí)的對象

統(tǒng)計學(xué)習(xí)研究的對象是數(shù)據(jù)(data),同時統(tǒng)計學(xué)習(xí)關(guān)于數(shù)據(jù)的基本假設(shè)是同類數(shù)據(jù)具有一定的統(tǒng)計規(guī)律性

我們簡單地認為,需要進行學(xué)習(xí)的數(shù)據(jù)之間是有關(guān)聯(lián)的,比如說一些離散的點,或是一些內(nèi)容相近的文本和圖片

3. 統(tǒng)計學(xué)習(xí)的目的

統(tǒng)計學(xué)習(xí)用于對數(shù)據(jù)的預(yù)測與分析,特別是對未知新數(shù)據(jù)的預(yù)測與分析。對數(shù)據(jù)的預(yù)測與分析是通過構(gòu)建概率統(tǒng)計模型實現(xiàn)的。統(tǒng)計學(xué)習(xí)總的目標就是考慮學(xué)習(xí)什么楊的模型以及如何學(xué)習(xí)模型。

我們使用統(tǒng)計學(xué)習(xí),就是希望能找到一種方法,讓機器學(xué)會這種方法,然后就可以按照我們的想法,去將不同的輸入轉(zhuǎn)化成輸出。

4. 統(tǒng)計學(xué)習(xí)的方法

統(tǒng)計學(xué)習(xí)方法是基于數(shù)據(jù)構(gòu)建概率統(tǒng)計模型從而對數(shù)據(jù)進行預(yù)測與分析。統(tǒng)計學(xué)習(xí)由監(jiān)督學(xué)習(xí)(supervised learning)、無監(jiān)督學(xué)習(xí)(unsupervised learning)和強化學(xué)習(xí)(reinforcement learning)等組成

統(tǒng)計學(xué)習(xí)方法可以概括如下:從給定的、有限的、用于學(xué)習(xí)的訓(xùn)練數(shù)據(jù)集合出發(fā),假設(shè)數(shù)據(jù)是獨立同分布產(chǎn)生的;并且假設(shè)要學(xué)習(xí)的模型屬于某 個函數(shù)的集合,稱為假設(shè)空間 (hypothesis space);應(yīng)用某個評價準則,從假設(shè)空間中選取一個最優(yōu)模型,使它對已知的訓(xùn)練數(shù)據(jù)及未知的測試數(shù)據(jù),在給定的評價準則下有最優(yōu)的預(yù)測;最優(yōu)模型的選取由算法實現(xiàn)。這樣, 統(tǒng)計學(xué)習(xí)方法包括模型的假設(shè)空間、模型選擇的準則以及模型學(xué)習(xí)的算法。稱其為統(tǒng) 計學(xué)習(xí)方法的三要素。

實現(xiàn)統(tǒng)計學(xué)習(xí)方法的步驟如下:

  1. 得到一個有限的訓(xùn)練數(shù)據(jù)集合
  2. 確定包含所有可能的模型的假設(shè)空間,即學(xué)習(xí)模型的集合
  3. 確定模型選擇的準則,即學(xué)習(xí)的策略
  4. 實現(xiàn)求解最優(yōu)模型的算法,即學(xué)習(xí)的算法
  5. 通過學(xué)習(xí)方法選擇最優(yōu)模型
  6. 利用學(xué)習(xí)的最優(yōu)模型對新數(shù)據(jù)進行預(yù)測或者分析

1.2 統(tǒng)計學(xué)習(xí)的分類

1.2.1 基本分類

1. 監(jiān)督學(xué)習(xí)

監(jiān)督學(xué)習(xí)(supervised learning)是指從標注數(shù)據(jù)中學(xué)習(xí)預(yù)測模型的機器學(xué)習(xí)問題。標注數(shù)據(jù)表示輸入輸出的對應(yīng)關(guān)系,預(yù)測模型對給定的輸入產(chǎn)生相應(yīng)的輸出。監(jiān)督學(xué)習(xí)的本質(zhì)是學(xué)習(xí)輸入到輸出的映射的統(tǒng)計規(guī)律。

監(jiān)督學(xué)習(xí)的本質(zhì)可以理解為,通過一些已經(jīng)標注好的數(shù)據(jù),比如說一張圖片上有貓,我把貓給圈出來,然后告訴計算機圈里面的東西叫貓,然后讓機器學(xué)習(xí)圈里面的東西有什么特征。當機器學(xué)習(xí)了很多帶有貓的照片之后,它就會對貓的特征進行大量記錄,當下一次給一個沒有圈出來貓的圖片的時候,機器也能自己圈出來哪里是貓

(1)輸入空間、特征空間和輸出空間

在監(jiān)督學(xué)習(xí)中,將輸入與輸出所有可能取值的集合分別稱為輸入空間與輸出空間。輸入與輸出空間可以是有限元素的集合,也可以是整個歐氏空間。輸入空間與輸出空間可以是同一個空間,也可以是不同的空間;但通常輸出空間遠遠小于輸入空間。

每個具體的輸入是一個實例(instance),通常由特征向量(feature vector)表示。
這時,所有特征向量存在的空間稱為特征空間。特征空間的每一維對應(yīng)于一個特征。

在監(jiān)督學(xué)習(xí)中,將輸入與輸出看作是定義在輸入(特征)空間與輸出空間上的隨機變量的取值。輸入輸出變量用大寫字母表示,習(xí)慣上輸入變量寫作X , 輸出變量寫作Y。輸入輸出變量的取值用小寫字母表示,輸入變量的取值寫作x , 輸出變量的取值寫作y。變量可以是標量或向量,都用相同類型字母表示。除特別聲明外,本書中向量均為列向量。輸入實例x的特征向量記作

x = (x^{(1)},x^{(2)},\dots,x^{(i)},\dots,x^{(n)})^T

監(jiān)督學(xué)習(xí)從訓(xùn)練數(shù)據(jù)集合中學(xué)習(xí)模型,對測試數(shù)據(jù)進行預(yù)測。訓(xùn)練數(shù)據(jù)由輸入(或特征向量)與輸出對組成,訓(xùn)練集通常表示為

T = \{ (x_1,y_1),(x_2,y_2),\dots,(x_N,y_N)\}

測試數(shù)據(jù)也由輸入與輸出對組成。 輸入與輸出對又稱為樣本或樣本點。

每一個輸入的x,都有一個對應(yīng)的輸出y或者叫標簽,拿之前的貓的圖片舉例,輸入的是帶有圈的圖片(當然我們的目的就是希望機器只看圈里面的東西,甚至你可以理解為圈里面的圖片才是輸入x),輸出y是“貓”,表示說圈里面的東西是貓

輸入變量X 和輸出變量Y 有不同的類型,可以是連續(xù)的,也可以是離散的。人們根據(jù)輸入輸出變量的不同類型,對預(yù)測任務(wù)給予不同的名稱:輸入變量與輸出變量均為連續(xù)變量的預(yù)測問題稱為回歸問題;輸出變量為有限個離散變量的預(yù)測問題稱為分類問題;輸入變量與輸出變量均為變量序列的預(yù)測問題稱為標注問題。

像比如說我們要預(yù)測股票未來曲線,那輸入數(shù)據(jù)和輸出數(shù)據(jù)都是股票的曲線變換,而且是連續(xù)的,此時我們稱為這個預(yù)測股票的問題是回歸問題;像前面那個貓圖片,每次都是一張一張的輸入,輸出也是一張一張的,不連續(xù)的輸入輸出,那就是分類問題了

(2)假設(shè)空間

監(jiān)督學(xué)習(xí)的目的在于學(xué)習(xí)一個由輸入到輸出的映射,這一映射由模型來表示。換句話說,學(xué)習(xí)的目的就在于找到最好的這樣的模型。模型屬于由輸入空間到輸出空間的映射的集合,這個集合就是假設(shè)空間(hypothesis space) 。假設(shè)空間的確定意味著學(xué)習(xí)的范圍的確定。

監(jiān)督學(xué)習(xí)的模型可以是概率模型或非概率模型,由條件概率分布P(Y|X) 或決策
函數(shù)Y = f(X) 表示,隨具體學(xué)習(xí)方法而定。對具體的輸入進行相應(yīng)的輸出預(yù)測時,寫作P(y|x)y = f(x) 。

我們進行監(jiān)督學(xué)習(xí)的目的就是希望找到一個可以解決實際問題的條件概率分布或者是決策函數(shù),當然實際情況可能不能完全一致,但訓(xùn)練模型的目的就是不斷地靠近這個最終答案

(3)問題的形式化

監(jiān)督學(xué)習(xí)利用訓(xùn)練數(shù)據(jù)集學(xué)習(xí)一個模型,再用模型對測試樣本集進行預(yù)測。由于在這個過程中需要標注的訓(xùn)練數(shù)據(jù)集,而標注的訓(xùn)練數(shù)據(jù)集往往是人工給出的,所以稱為監(jiān)督學(xué)習(xí)。監(jiān)督學(xué)習(xí)分為學(xué)習(xí)和預(yù)測兩個過程,由學(xué)習(xí)系統(tǒng)與預(yù)測系統(tǒng)完成,可用圖1.1 來描述。


監(jiān)督學(xué)習(xí)分為學(xué)習(xí)和預(yù)測兩個過程, 由學(xué)習(xí)系統(tǒng)與預(yù)測系統(tǒng)完成。在學(xué)習(xí)過程中, 學(xué)習(xí)系統(tǒng)利用給定的訓(xùn)練數(shù)據(jù)集, 通過學(xué)習(xí) (或訓(xùn)練) 得到一個模型, 表示為條件概率分布\hat{P}(Y \mid X) 或決策函數(shù) Y=\hat{f}(X) 。條件概率分布 \hat{P}(Y \mid X) 或決策函數(shù) Y=\hat{f}(X) 描述輸入與輸出隨機變量之間的映射關(guān)系。在預(yù)測過程中, 預(yù)測系統(tǒng)對于給定的測試 樣本集中的輸入 x_{N+1}, 由模型 y_{N+1}=\arg \max {y} \hat{P}\left(y \mid x{N+1}\right)y_{N+1}=\hat{f}\left(x_{N+1}\right) 給出 相應(yīng)的輸出 y_{N+1} 。

學(xué)習(xí)系統(tǒng)(也就是學(xué)習(xí)算法)試圖通過訓(xùn)練數(shù)據(jù)集中的樣本(x_i,y_i) 帶來的信息學(xué)習(xí)模型。具體地說,對輸入x_i,一個具體的模型y = f(x) 可以產(chǎn)生一個輸出f(x_i)而訓(xùn)練數(shù)據(jù)集中對應(yīng)的輸出是y_i。如果這個模型有很好的預(yù)測能力,訓(xùn)練樣本輸出y_i和模型輸出f(x_i)之間的差就應(yīng)該足夠小。學(xué)習(xí)系統(tǒng)通過不斷地嘗試,選取最好的模型,以便對訓(xùn)練數(shù)據(jù)集有足夠好的預(yù)測,同時對未知的測試數(shù)據(jù)集的預(yù)測也有盡可能好的推廣。

簡單來說,拿股票預(yù)測的例子,系統(tǒng)一開始發(fā)現(xiàn),這幾年1月份股票都是漲的,那機器就認為每年1月股票都漲價,但實際的情況是恰好這幾年春節(jié)都是在1月,所以股票漲了。于是當機器再學(xué)習(xí)到可能春節(jié)在2月的時候,機器就發(fā)現(xiàn),之前1月股票一定漲的結(jié)論不適用了,有了偏差,于是它就需要調(diào)整,看看到底是什么導(dǎo)致了股票增長,發(fā)現(xiàn)不是1月就一定漲,而是春節(jié)一定漲,那這樣機器就學(xué)習(xí)到了和實際情況更接近的預(yù)測結(jié)果

2. 無監(jiān)督學(xué)習(xí)

無監(jiān)督學(xué)習(xí)是指從無標注數(shù)據(jù)中學(xué)習(xí)預(yù)測模型的機器學(xué)習(xí)問題。無標注數(shù)據(jù)是自然得到的數(shù)據(jù),預(yù)測模型表示數(shù)據(jù)的類別、轉(zhuǎn)換或概率。無監(jiān)督學(xué)習(xí)的本質(zhì)是學(xué)習(xí)數(shù)據(jù)中的統(tǒng)計規(guī)律或潛在結(jié)構(gòu)。

假設(shè) X是輸入空間, \mathcal{Z} 是隱式結(jié)構(gòu)空間。要學(xué)習(xí)的模型可以表示為函數(shù) z=g(x), 條件概率分布 P(z \mid x), 或者條件概率分布 P(x \mid z) 的形式, 其中 x \in X是輸入, z \in \mathcal{Z}是輸出。包含所有可能的模型的集合稱為假設(shè)空間。無監(jiān)督學(xué)習(xí)旨在從假設(shè)空間中選出在給定評價標準下的最優(yōu)模型。

簡單來說,無監(jiān)督學(xué)習(xí)就是沒有標注的數(shù)據(jù),是一些自然的數(shù)據(jù)。同樣以貓的圖片舉例,現(xiàn)在沒有前面的那些圈了,但是給機器一組含有貓的圖片,機器學(xué)習(xí)完這一組之后,發(fā)現(xiàn)這些帶有貓的圖片之間是有共性的,雖然機器仍然不知道這上面有貓,但是知道這些圖片長得差不多,也就是說下次再給機器一張帶有貓的照片,機器可以把新的照片進行歸類,歸類到剛剛那一堆有貓的照片里邊

3. 強化學(xué)習(xí)

強化學(xué)習(xí)是指智能系統(tǒng)在與環(huán)境的連續(xù)互動中學(xué)習(xí)最優(yōu)行為策略的機器學(xué)習(xí)問題。假設(shè)智能系統(tǒng)與環(huán)境的互動基于馬爾可夫決策過程,智能系統(tǒng)能觀測到的是與環(huán)境互動得到的數(shù)據(jù)序列。強化學(xué)習(xí)的本質(zhì)是學(xué)習(xí)最優(yōu)的序貫決策。

智能系統(tǒng)與環(huán)境的互動如圖1. 3 所示。在每一步t , 智能系統(tǒng)從環(huán)境中觀測到一個
狀態(tài)s_t 與一個獎勵r_t采取一個動作a_t。環(huán)境根據(jù)智能系統(tǒng)選擇的動作,決定下一步t+l 的狀態(tài)s_{t+1}與獎勵r_{t+1}。要學(xué)習(xí)的策略表示為給定的狀態(tài)下采取的動作。智能系統(tǒng)的目標不是短期獎勵的最大化,而是長期累積獎勵的最大化。強化學(xué)習(xí)過程中,系統(tǒng)不斷地試錯,以達到學(xué)習(xí)最優(yōu)策略的目的。

強化學(xué)習(xí)的馬爾可夫決策過程是狀態(tài)、獎勵、動作序列上的隨機過程,由五元組<S,A,P,r,\gamma>組成

  • S是有限狀態(tài)的集合
  • A是有限動作的集合
  • P是狀態(tài)轉(zhuǎn)移概率函數(shù)

P(s'|s,a)=P(s_{t+1}=s'|s_t=s,a_t=a)

  • r是獎勵函數(shù):r(s,a)=E(r_{t+1}|s_t=s,a_t=a)
  • \gamma是衰減系數(shù):\gamma \in [0,1]

策略\pi定義為給定狀態(tài)下動作的函數(shù)a = f(s) 或者條件概率分布P(a|s) 。給定
一個策略\pi,智能系統(tǒng)與環(huán)境互動的行為就已確定(或者是確定性的或者是隨機性
的),價值函數(shù)或狀態(tài)價值函數(shù)定義為策略\pi從某一個狀態(tài)s 開始的長期累積獎勵的數(shù)學(xué)期望:

v_\pi(s)=E_\pi[r_{t+1}+\gamma r_{t+2}+\gamma^2 r_{t+3}+\dots|s_t=s]

動作價值函數(shù)定義為策略\pi從某一個狀態(tài)s 和動作a開始的長期累積獎勵的數(shù)學(xué)期望:

q_\pi(s,a)=E_\pi[r_{t+1}+\gamma r_{t+2}+\gamma^2 r_{t+3}+\dots|s_t=s,a_t=a]

強化學(xué)習(xí)的目標就是在所有可能的策略中選出價值函數(shù)最大的策略\pi^*,而在實際學(xué)習(xí)中往往從具體的策略出發(fā),不斷優(yōu)化己有策略。這里\gamma 表示未來的獎勵會有衰減。

關(guān)于強化學(xué)習(xí)的簡單理解,我想舉掃地機器人的例子。當一個掃地機器人到了一個陌生的房間,它需要做的事情是,第一不撞到障礙物,第二盡可能保證走過的路不再走一遍(地沒必要托兩次對吧),所以當它到了一個新位置的時候,下一時間該往哪里走呢,這個時候就是一個學(xué)習(xí)的過程,比如說往左邊走,但是左邊是一個桌子,往左走就會撞上,那此時的獎勵系數(shù)就會很低很低,再比如說往右走,但是右邊剛剛已經(jīng)走過了,所以獎勵系數(shù)不高,但肯定比往左走高。而強化學(xué)習(xí)就是希望能找到一條路線,該路線做出的選擇的獎勵分數(shù)之和是最高的。因此每一個時間的選擇只和機器人在做選擇的時候所處的位置有關(guān),所以也就意味著機器人不斷通過試錯,最終找到了一條可以完整打掃整個房間的路徑(當然,可能會出現(xiàn)走過重復(fù)的地方)

強化學(xué)習(xí)方法中有基于策略的、基于價值的,這兩者屬于無模型的方法,還有有模型的方法。

有模型的方法試圖直接學(xué)習(xí)馬爾可夫決策過程的模型,包括轉(zhuǎn)移概率函數(shù)P(s'|s,a) 和獎勵函數(shù)r(s,a) 。這樣可以通過模型對環(huán)境的反饋進行預(yù)測,求出價值函數(shù)最大的策略\pi^*

無模型的、基于策略的方法不直接學(xué)習(xí)模型,而是試圖求解最優(yōu)策略\pi^* , 表示為函數(shù)a=f^*(s)或者是條件概率分布P^*(a|s) ,這樣也能達到在環(huán)境中做出最優(yōu)決策的目的。學(xué)習(xí)通常從一個具體策略開始,通過搜索更優(yōu)的策略進行。

對于有模型和無模型的方法,我的理解是,有模型的方法就是走一步看一步,每一步都走的最穩(wěn)妥,最終形成一個好的策略,而無模型的方法就是一開始就想好從頭到尾該怎么走,通過計算,直接算出一條最優(yōu)的策略

4. 半監(jiān)督學(xué)習(xí)與主動學(xué)習(xí)

半監(jiān)督學(xué)習(xí)是指利用標注數(shù)據(jù)和未標注數(shù)據(jù)學(xué)習(xí)預(yù)測模型的機器學(xué)習(xí)問題。通常有少量標注數(shù)據(jù)、大量未標注數(shù)據(jù),因為標注數(shù)據(jù)的構(gòu)建往往需要人工,成本較高,未標注數(shù)據(jù)的收集不需太多成本。半監(jiān)督學(xué)習(xí)旨在利用未標注數(shù)據(jù)中的信息,輔助標注數(shù)據(jù),進行監(jiān)督學(xué)習(xí),以較低的成本達到較好的學(xué)習(xí)效果

主動學(xué)習(xí)是指機器不斷主動給出實例讓教師進行標注,然后利用標注數(shù)據(jù)學(xué)習(xí)預(yù)測模型的機器學(xué)習(xí)問題。通常的監(jiān)督學(xué)習(xí)使用給定的標注數(shù)據(jù),往往是隨機得到的,可以看作是"被動學(xué)習(xí)" , 主動學(xué)習(xí)的目標是找出對學(xué)習(xí)最有幫助的實例讓教師標注,以較小的標注代價,達到較好的學(xué)習(xí)效果。

半監(jiān)督學(xué)習(xí)和主動學(xué)習(xí)更接近監(jiān)督學(xué)習(xí)。

1.2.2 按模型分類 1.2.3 按算法分類 1.2.4 按技巧分類

Skipped, not mentioned

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

友情鏈接更多精彩內(nèi)容