机器学习理论: PAC学习
(這篇文章是本人學(xué)習(xí)機(jī)器學(xué)習(xí)課程CS685后的一些總結(jié)。如有任何錯(cuò)誤,歡迎指出)
?
1. 基本概念定義
????? 當(dāng)我們利用機(jī)器學(xué)習(xí)構(gòu)建模型時(shí),我們獲得訓(xùn)練集,然后利用算法從訓(xùn)練集中學(xué)習(xí)到模型,接著就可以用該模型進(jìn)行各種預(yù)測。為什么這是可行的呢? 想要弄清楚為什么可行,我們定義一下東西:(這些用英語寫的都是因?yàn)楸救瞬恢涝趺捶g最準(zhǔn)確,干脆不翻譯了)
???? Domain set: 指的是特征所有可取值的集合。一般來說是一個(gè)向量。
???? Label set: 指的是所有標(biāo)簽的集合。接下來我們討論的二分類問題,即label set里面只有0,1兩種情況。
???? 訓(xùn)練樣本 S: 即我們平時(shí)說的訓(xùn)練集。S = {(x1,y1),(x2,y2),......(xn,yn)}。Trainning sample是我們已知的一切信息,除此之外我們什么都不知道。并且假設(shè)所有的數(shù)據(jù)都是滿足分布D,并且由標(biāo)簽函數(shù)f進(jìn)行貼標(biāo)簽。即f(x)就是x的真實(shí)標(biāo)簽。
????? Learner output: 一個(gè)函數(shù)h, h: X -> Y。也就是最后要學(xué)習(xí)得到的一個(gè)預(yù)測器。
????? H: hypothesis class。即所有的可能的預(yù)測器組成的集合。
????? 以上就是我們要定義的一些東西。所以機(jī)器學(xué)習(xí)要做的就是獲得training sample,利用這些數(shù)據(jù)去學(xué)習(xí)從而從H空間里面去挑選出最好的預(yù)測器h。
?
2. Empirical risk minimization
????? 現(xiàn)在假設(shè)我們從滿足分布D的數(shù)據(jù)中取出了一定數(shù)量的訓(xùn)練樣本,目標(biāo)是要找到h:X->Y。因?yàn)椴恢罃?shù)據(jù)的分布D具體是怎么樣的,所以無法獲取到整體數(shù)據(jù)的真實(shí)誤差。在這里能夠利用的只有經(jīng)驗(yàn)誤差。因此定義經(jīng)驗(yàn)誤差概念如下:
????????????????????????????????????????????????????????????
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ?????????
?
????? 其中m是訓(xùn)練樣本的個(gè)數(shù)。由于無法獲得真實(shí)誤差,通過學(xué)習(xí)得到一個(gè)預(yù)測器h使得經(jīng)驗(yàn)誤差最小是合理的。因?yàn)橛?xùn)練樣本是從所有的服從分布D樣本集里挑出來的,所以大概率訓(xùn)練樣本會反映出所有滿足分布D的樣本的一些特性。因此學(xué)習(xí)的目標(biāo)變?yōu)閺腍中找到一個(gè)預(yù)測器h,從而使得()最小。也就是我們說的Empirical risk minimization。
?
3.Empirical risk minimization with inductive bias
????? Empirical risk minimization有一個(gè)很明顯的問題就是會發(fā)生overfitting。因?yàn)槟苁?)最小的預(yù)測器h屬于H,因此是可以被學(xué)習(xí)得到的。而許多的這些預(yù)測器泛化能力很差,對于新取的樣本很有可能無法正確預(yù)測。導(dǎo)致這種問題的原因是我們沒有對hypothesis class H做任何的限制。
???? 因此為了避免overfitting,我們需要人為的引入一些限制,使得學(xué)習(xí)時(shí)偏向于選擇某一些類型的預(yù)測器。我們稱這些限制為inductive bias。
???? 比如我們進(jìn)行線性回歸算法的時(shí)候,我們已經(jīng)假定了算法的形式是Y=wX+b。這樣我們進(jìn)行學(xué)習(xí)時(shí)不會得到其他類型的預(yù)測器h。這就是引入的歸納偏置。
???? Empirical risk minimization with inductive bias的定義如下,注意這里的H是引入了inductive bias的假說集:
????????????????????????????????????????????????????????????????????????
4.ERMH分析
?????? 我們可以分析在ERMH學(xué)習(xí)規(guī)則的性能如何。我們定義,即能使經(jīng)驗(yàn)誤差最小化的預(yù)測器的集合。現(xiàn)在規(guī)定兩個(gè)assumption:
?????? 1.The realizability assumption。簡單的說就是在H中存在預(yù)測器,使得() = 0。
?????? 2.The i.i.d. assumption。我們說過訓(xùn)練樣本是從滿足分布D的數(shù)據(jù)集中拿出來的,那么訓(xùn)練集中的樣本根據(jù)分布D獨(dú)立且相同地分布。可以看出來當(dāng)訓(xùn)練集越大,越能夠反映出分布D以及函數(shù)f。
????? 由于從H中找到使經(jīng)驗(yàn)誤差最小的預(yù)測器是很難的一件事,所以要做的是盡量去逼近。因此引入?yún)?shù),如果? ,則認(rèn)為h是一個(gè)成功的預(yù)測器。我們再定義以下兩個(gè)集合:
???????????????????????????????
?????????????????????????????????? 失敗的預(yù)測器:?
?????????????????????????????????? 不好的訓(xùn)練樣本:
????? 可以看到M集是由一些能使預(yù)測器h在訓(xùn)練樣本S上無誤差,但是泛化能力很差的樣本。其中表示真實(shí)誤差,也可以理解為測試誤差。大概可以理解為:
???? 由The realizability assumption可以知道存在預(yù)測器h,其() = 0。
???? 而如果一個(gè)訓(xùn)練集S使我們的學(xué)習(xí)算法計(jì)算得到預(yù)測器,那么這個(gè)樣本。這是因?yàn)樘暨x預(yù)測器h時(shí)是盡量挑選使經(jīng)驗(yàn)誤差最小的那個(gè)那個(gè)預(yù)測器。所以被挑選出來的預(yù)測器() = 0。
? ?? 所以。 因此可以計(jì)算得到:(A是指學(xué)習(xí)算法,A: S -> h,通過樣本計(jì)算得到預(yù)測器。)
?????????????????????????????????????????????????????????????????????
??? 即我們通過樣本S學(xué)習(xí)到失敗的預(yù)測器的概率小于S是不好的訓(xùn)練樣本的概率。
?
???? 其中(m為樣本集的尺大小)。 因?yàn)?) = 0,那么訓(xùn)練集中的每一個(gè)S都要能被預(yù)測器成功預(yù)測。由于,所以預(yù)測器能夠正確預(yù)測的區(qū)域小于。我們一共取m個(gè)樣本,所以。
??????????????????????????????????????????
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
???? 我們可以看出如果m趨向于無窮大,即訓(xùn)練樣本的大小趨向于無窮時(shí),訓(xùn)練樣本是不好的樣本的概率為0,所以我們得到失敗的預(yù)測器的概率也為0。這就是為什么我們希望訓(xùn)練集越大越好。
?
5. PAC學(xué)習(xí)
?????我們用符號代替公式? 的有右半部分。因此表示我們?nèi)萑痰恼`差,表示我們失敗的概率。m表示訓(xùn)練集的大小m。通過計(jì)算可以得到。
????? 這就表明只要訓(xùn)練集樣本數(shù)大于m這個(gè)公式,我們就有的概率(Probably)學(xué)習(xí)到誤差在(Approximately)之內(nèi)的預(yù)測器。這就是我們說的PAC學(xué)習(xí)。
??? PAC學(xué)習(xí)更具體的定義請參照其他書籍。
?
?
??
總結(jié)
以上是生活随笔為你收集整理的机器学习理论: PAC学习的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【总线】一文看懂 UART 通信协议
- 下一篇: 互斥事件的概念和公式_2014-2015