日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

机器学习之PAC学习框架

發布時間:2024/3/12 编程问答 42 豆豆
生活随笔 收集整理的這篇文章主要介紹了 机器学习之PAC学习框架 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

??當大家通過示例設計并分析算法的時候,有沒有可能對以下幾個問題產生疑慮:

  • 什么樣的算法能夠有效地學習數據特征?
  • 學習起來的困難是什么?
  • 用多少示例去訓練算法才能叫成功的訓練算法?
  • 存在普遍的模型去學習嗎?

??這篇文章就通過介紹PAC學習框架來解決這些問題。PAC學習框架(Probably Approximately Correct (PAC) learning framework)就是從能夠將算法訓練成功的樣本數量的角度出發,定義了一系列的可學習概念。例如,學習算法的樣本復雜度(sample complexity),時間空間復雜度等等,都是一些決定算法執行時間效率或者花銷等方面的概念。

??接下來,我將講述PAC學習框架,然后在假設集有限的情況下給出了該框架下的一般學習保證,既適用于假設集包含要學習的概念的一致情況,也適用于相反的不一致情況。

一、PAC學習模型

??首先介紹一些關于進入PAC學習框架的數學概念,在以后的博文更新中也有可能會用到。

??用X\mathcal{X}X表示所有可能的示例集合,有的時候也指的是輸入空間(input space)。用Y\mathcal{Y}Y來表示樣本所有可能的標簽或目標值的集合。由于二分類在生活中和機器學習中是最常見的,所以只討論Y\mathcal{Y}Y被簡化為二分類(兩個標簽)的情況,即Y={0,1}\mathcal{Y} =\{0,1\}Y={0,1}。以后如果有多分類再將二分類問題推廣到一般的情況。

??先定義一個概念 cccX\mathcal{X}XY\mathcal{Y}Y的映射用X→Y\mathcal{X}\rightarrow\mathcal{Y}XY來表示。則ccc可以用來表示X\mathcal{X}X的子集。在下面的例子中,我們可以將要學習的概念等價地引用為從X\mathcal{X}X{0,1}\{0,1\}{0,1}的映射,或者X\mathcal{X}X子集的映射。概念類是我們希望學習的一組概念,用ccc表示。例如,它可以是世界上所有西瓜的集合,但我們需要學習的就是某些特定的西瓜,并不是全部,即X\mathcal{X}X子集。

??機器學習中的一個重要問題就是預測樣本分布問題,這就需要在僅有的樣本中,預測新的樣本與已有樣本必須是獨立同分布(i.i.d.i.i.d.i.i.d.)的關系,即所有的樣本均在同一個未知的分布DDD。學習者需要考慮的情況就是能夠找到X→Y\mathcal{X}\rightarrow\mathcal{Y}XY,就是要找到能最好的能夠映射的算法模型,這些模型的集合稱為假設集( hypothesis set),但這個假設集可能和概念ccc不一致。如果收到一個來自分布DDD的樣本集S=(x1,....,xm)S = (x_1,....,x_m)S=(x1?,....,xm?)和標簽(c(x1),.....,c(xm)))(c(x_1),.....,c(x_m)))(c(x1?),.....,c(xm?))),其中c∈Cc\in CcC是基于一個具體的目標概念來學習的。該任務是根據概念ccc在使用有標簽的樣本下找到具有最小泛化誤差的假設集hS∈Hh_S\in HhS?H。下面將會介紹一下用R(h)R(h)R(h)來表示的假設集hs∈Hh_s\in Hhs?H的泛化誤差的含義。

定義1:泛化誤差(generalization error)

??在分布DDD下的假設集hs∈Hh_s\in Hhs?H(目標概念ccc)下的泛化誤差(hhh的風險)是:

R(h)=Pr?x~D[h(x)≠c(x)]=Ex~D[1h(x)≠c(x)]R(h)=\Pr_{x\sim D}[h(x)\ne c(x)]=\mathop{E}\limits_{x\sim D}[1_{h(x)\ne c(x)}]R(h)=xDPr?[h(x)?=c(x)]=xDE?[1h(x)?=c(x)?]其中1w1_w1w?是指示函數,不等式成立返回值為111,不等式不成立返回000

??由于分布DDD和目標概念ccc都是未知的,所以我們無法直接獲得假設集的泛化誤差。所以我們可以在有標簽的樣本集SSS上測量假設集的經驗誤差。

定義2:經驗誤差( empirical error)

??在分布DDD下的假設集hs∈Hh_s\in Hhs?H(目標概念ccc)下的經驗誤差(hhh的經驗風險)是:
R^(h)=1m∑i=1m1h(x)≠c(x)\widehat R(h)=\frac{1}{m}\sum_{i=1}^{m}1_{h(x)\ne c(x)}R(h)=m1?i=1m?1h(x)?=c(x)?

??顯然,經驗風險就是樣本集SSS的平均誤差,樣本的泛化誤差就是在分布DDD上的經驗誤差的期望

R(h)=E[R^(h)]R(h)=E[\widehat R(h)]R(h)=E[R(h)]

??所以,我們將會有如下的推導公式:

ES~Dm[R^(h)]=1m∑i=1mEx~Dm[1h(xi)≠c(xi)]=1m∑i=1mEx~Dm[1h(x)≠c(x)]\mathop{E}\limits_{S\sim D^m}[\widehat R(h)]=\frac{1}{m}\sum_{i=1}^{m}\mathop{E}\limits_{x\sim D^m}[1_{h(x_i)\ne c(x_i)}]=\frac{1}{m}\sum_{i=1}^{m}\mathop{E}\limits_{x\sim D^m}[1_{h(x)\ne c(x)}]SDmE?[R(h)]=m1?i=1m?xDmE?[1h(xi?)?=c(xi?)?]=m1?i=1m?xDmE?[1h(x)?=c(x)?]

這對于樣本集SSS中的任意xxx均成立。因此,

ES~Dm[R^(h)]=ES~Dm[1h(x)≠c(x)]=Ex~D[1h(x)≠c(x)]=R(h)\mathop{E}\limits_{S\sim D^m}[\widehat R(h)]=\mathop{E}\limits_{S\sim D^m}[1_{h(x)\ne c(x)}]=\mathop{E}\limits_{x\sim D}[1_{h(x)\ne c(x)}]=R(h)SDmE?[R(h)]=SDmE?[1h(x)?=c(x)?]=xDE?[1h(x)?=c(x)?]=R(h)

??下面開始介紹概率近似正確(PAC)學習框架。對于任意一個x∈Xx\in \mathcal{X}xX的時間運行消耗上限近似為O(n)O(n)O(n)

定義3:PAC可學習

??對于一個概念ccc可稱為是PAC可學習,如果對于任何一個?>0\epsilon>0?>0δ>0\delta>0δ>0均存在一個算法A\mathcal{A}A和一個多項式函數ploy(?,?,?,?)ploy(\cdot,\cdot,\cdot,\cdot)ploy(?,?,?,?)對于X\mathcal{X}X上的分布DDD和任何目標概念c∈Cc\in CcC,則當m≥ploy(1?,1δ,n,size(c))m\ge ploy(\frac 1\epsilon,\frac 1\delta,n,size(c))mploy(?1?,δ1?,n,size(c))

Pr?S~Dm[R(hS)≤?]≥1?δ\Pr_{S\sim D^m}[R(h_S)\le\epsilon]\ge1-\deltaSDmPr?[R(hS?)?]1?δ

如果像這種算法A\mathcal{A}A存在的話,我們就稱叫做在CCC上的PAC學習算法。也就是說在樣本SSS的假設集hhh上的泛化誤差小于?\epsilon?的概率是大于等于1?δ1-\delta1?δ的,也就是保證了算法模型在很大情況下下會出現很小的泛化誤差。

??關于PAC定義的幾個關鍵點需要強調一下。首先,PAC框架是一個無分布的模型:沒有對從中抽取示例的分布DDD做任何特定的假設。其次,用于定義誤差的訓練樣本和測試樣本必須來自相同的分布DDD。這是泛化在大多數情況下成為可能的必要條件。最后,PAC框架處理概念類CCC的可學習性問題,而不是特定概念。注意,對于算法來說,概念類CCC是已知的,但是對我們來說目標概念c∈Cc∈CcC當然是未知的。

二、有限假設集的保證——一致情況

??在這一部分,對于假設集的候選項∣H∣|H|H是有限的情況下,我們提出一個樣本復雜度邊界,即泛化邊界。考慮到一致性假設,我們將假設目標概念cccHHH中。

定理1:學習邊界——有限假設集HHH的一致情況

??HHH是有限假設集X\mathcal{X}XY\mathcal{Y}Y的映射。A\mathcal{A}A是對于任何目標概念c∈Hc\in HcH的一個算法并且獨立同分布的樣本SSS返回了一個一致性假設hSh_ShS?R^(hS)=0\widehat{R}(h_S)=0R(hS?)=0。對任何一個?,δ>0\epsilon,\delta>0?,δ>0,不等式Pr?S~Dm[R(hS)≤?]≥1?δ\Pr_{S\sim D^m}[R(h_S)\le\epsilon]\ge1-\deltaPrSDm?[R(hS?)?]1?δ均成立,如果:

m≥1?(log∣H∣+log1δ)m\ge\frac{1}{\epsilon}(log|H|+log\frac{1}{\delta})m?1?(logH+logδ1?)

此樣本復雜度的結果導致了允許下面這個描述泛化邊界的這個等價的語句成立:對于任意的?,δ>0\epsilon,\delta>0?,δ>0,有至少1?δ1-\delta1?δ的概率,

R(hS)≤1m(log∣H∣+log1δ)R(h_S)\le\frac{1}{m}(log|H|+log\frac{1}{\delta})R(hS?)m1?(logH+logδ1?)

關于定理的證明過程后續再補。

三、有限假設集的保證——不一致情況

??在大多數情況下,假設集HHH可能不存在和帶標簽樣本的一致性。事實上,這是實踐中的典型案例,學習問題可能有些困難,或者概念類比學習算法使用的假設集更復雜。然而,在訓練樣本上不一致的假設和少量的錯誤可能是有用的,正如我們將看到的,可以受益于某些假設下的有利保證。本節針對這種不一致的情況和有限的假設集,給出了精確的學習保證。

??下述公式將使用Hoeffding不等式,是與單一假設集的泛化誤差和經驗誤差有所關聯。

推論1:

??對于?>0\epsilon>0?>0,讓SSS表示大小為mmm獨立同分布的樣本集。則對于任何一個假設集hhhX→{0,1}X\to\{0,1\}X{0,1},以下不等式成立:

Pr?S~Dm[R^(h)?R(h)≥?]≤exp(?2m?2)\Pr_{S\sim D^m}[\widehat{R}(h)-R(h)\ge\epsilon]\le exp(-2m\epsilon^2)SDmPr?[R(h)?R(h)?]exp(?2m?2)
Pr?S~Dm[R^(h)?R(h)≤??]≤exp(?2m?2)\Pr_{S\sim D^m}[\widehat{R}(h)-R(h)\le-\epsilon]\le exp(-2m\epsilon^2)SDmPr?[R(h)?R(h)??]exp(?2m?2)

有上述兩個公式可以合并為:

Pr?S~Dm[∣R^(h)?R(h)∣≥?]≤2exp(?2m?2)\Pr_{S\sim D^m}[|\widehat{R}(h)-R(h)|\ge\epsilon]\le 2exp(-2m\epsilon^2)SDmPr?[R(h)?R(h)?]2exp(?2m?2)

具體的證明過程需要用到霍夫丁不等式,霍夫丁不等式的原型是

??設Sm=∑i=1mXiS_m=\sum_{i=1}^{m}X_iSm?=i=1m?Xi?是獨立隨機變量X1,X2,......XmX_1,X_2,......X_mX1?,X2?,......Xm?之和,Xi∈[ai,bi]X_i\in[a_i,b_i]Xi?[ai?,bi?],則對任意的t>0t>0t>0,以下不等式成立:
P(Sm?ESm≥t)=exp{?2t2∑i=1m(bi?ai)2}P(S_m-ES_m\ge t)=exp\{\frac{-2t^2}{\sum_{i=1}^{m}(b_i-a_i)^2}\}P(Sm??ESm?t)=exp{i=1m?(bi??ai?)2?2t2?}
P(ESm?Sm≥t)=exp{?2t2∑i=1m(bi?ai)2}P(ES_m-S_m\ge t)=exp\{\frac{-2t^2}{\sum_{i=1}^{m}(b_i-a_i)^2}\}P(ESm??Sm?t)=exp{i=1m?(bi??ai?)2?2t2?}

將霍夫丁不等式中的量進行替換,就可得到推論中的式子。

推論2:泛化邊界——單一假設

??對于一個假設集hhhX→{0,1}X\to\{0,1\}X{0,1}。對任意的δ>0\delta>0δ>0,以下不等式至少以1?δ1-\delta1?δ的概率成立:

R(h)≤R^(h)+log2δ2mR(h)\le\widehat{R}(h)+\sqrt{\frac{log\frac{2}{\delta}}{2m}}R(h)R(h)+2mlogδ2???

定理2:學習邊界——有限HHH的一致情況

??讓HHH是一個有限假設集。對任意的δ>0\delta>0δ>0,有至少1?δ1-\delta1?δ的概率下述不等式成立:

?h∈H,R(h)≤R^(h)+log∣H∣+log2δ2m\forall h\in H,R(h)\le\widehat{R}(h)+\sqrt{\frac{log|H|+log\frac{2}{\delta}}{2m}} ?hH,R(h)R(h)+2mlogH+logδ2???

??證明:讓h1,....h∣H∣h_1,....h_{|H|}h1?,....hH?HHH中的元素。對每一個假設使用聯合邊界和推論2得:

Pr?[?h∈H∣R^(h)?R(h)∣>?]=Pr?[(∣R^(h1)?R(h1)∣>?)∨...∨∣R^(h∣H∣)?R(h∣H∣)∣>?]≤∑h∈HPr?[∣R^(h)?R(h)∣>?]≤2∣H∣exp(?2m?2)\begin{aligned} \Pr[\exists h\in H|\widehat{R}(h)-R(h)|>\epsilon] &=\Pr[(|\widehat{R}(h_1)-R(h_1)|>\epsilon)\lor...\lor|\widehat{R}(h_{|H|})-R(h_{|H|})|>\epsilon] \\ &\le\sum_{h\in H}\Pr[|\widehat{R}(h)-R(h)|>\epsilon] \\ & \le2|H|exp(-2m\epsilon^2) \end{aligned}Pr[?hHR(h)?R(h)>?]?=Pr[(R(h1?)?R(h1?)>?)...R(hH?)?R(hH?)>?]hH?Pr[R(h)?R(h)>?]2Hexp(?2m?2)?

將上述不等式最右邊令成δ\deltaδ,再反解?\epsilon?即可得到定理2的公式。

??因此,對于一個有限假設集HHH

R(h)≤R^(h)+O(log2∣H∣m)R(h)\le\widehat{R}(h)+O(\sqrt{\frac{{log}_2|H|}{m}})R(h)R(h)+O(mlog2?H??)

??由上述公式可得:當樣本數量mmm越大的時,算法模型的泛化誤差就會越小,模型的泛化能力就會越強。注意,這個界限意味著在減少經驗誤差和控制假設集的大小之間尋求一種平衡:較大的假設集會受到不等式右邊第二項的懲罰,但可以幫助減少經驗誤差,即第一項。但對于相同的經驗錯誤,使用一個更小的假設集會更好一些。這可以引用奧卡姆剃刀原理來詮釋。奧卡姆是以神學家威廉·奧卡姆的名字命名的:如果沒有必要,就不應該假定多元性。也就是說,最簡單的解釋是最好的。在這種情況下,該公式可以表示為:在其他條件相同的情況下,更簡單(更小)的假設集泛化誤差更小,模型更好

??關于PAC學習框架的內容暫且寫到這里,博主用LaTeX\LaTeXLATE?X手敲數學公式不容易,希望大家留下贊再走,下一篇更新VC維和Rademarcher復雜度。

總結

以上是生活随笔為你收集整理的机器学习之PAC学习框架的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。