PAC學習框架【latex原稿】
阿新 • • 發佈:2018-12-10
\documentclass[a4paper,11pt]{ctexart} \title{PAC學習框架} \author{itnerd} \date{\today} \usepackage{algorithm} \usepackage{algorithmic} \usepackage{geometry} \usepackage{cite} \usepackage{latexsym} \usepackage{amsmath} \usepackage{amsfonts} \newtheorem{definition}{定義} \newtheorem{theorm}{定理} \newtheorem{proof}{證明} \CTEXsetup[name={第,節}]{section} \CTEXsetup[beforeskip = {20bp plus 1ex minus 0.2ex}]{section} \CTEXsetup[afterskip = {6bp plus 0.2ex}]{section} \CTEXsetup[format = {\zihao{4}\bfseries}]{section} \CTEXsetup[name={第,小節}]{subsection} \CTEXsetup[beforeskip = {12bp plus 1ex minus 0.2ex}]{subsection} \CTEXsetup[afterskip = {6bp plus 0.2ex}]{subsection} \CTEXsetup[format = {\fontsize{13bp}{15.6bp}\selectfont\bfseries}]{subsection} \CTEXsetup[beforeskip = {12bp plus 1ex minus 0.2ex}]{subsubsection} \CTEXsetup[afterskip = {6bp plus 0.2ex}]{subsubsection} \CTEXsetup[format = {\zihao{-4}\bfseries}]{subsubsection} \geometry{ a4paper, hmargin = 2.6cm, top = 2.92cm, bottom = 3.03cm, headheight = 0.45cm, headsep = 0.55cm, footskip = 1.05cm } \begin{document} \maketitle \pagestyle{plain} \section{PAC學習模型} 首先,我們需要引入一些記號和定義。記輸入空間為 $\mathcal{X}$, 包含所有可能的樣本。記所有的標籤或者目標值為 $\mathcal{Y}$,假定我們考慮二分類問題,則有$\mathcal{Y} = \{0,1\}$。一個\textbf{概念} $c:\mathcal{X} \rightarrow \mathcal{Y}$ 是指一個從$\mathcal{X}$到$\mathcal{Y}$的對映,既然$\mathcal{Y} = \{0,1\}$,我們可以用輸入空間$\mathcal{X}$中對應目標值為1的集合來定義$c$。例如,一個概念可能是某個三角形區域中的點集或者是其指示函式,那麼我們可以簡單地說我們要學習的概念是一個三角形。一個\textbf{概念類}是我們希望學到的所有可能概念的集合,記為$C$,例如平面中的所有三角形。 學習者考慮某些固定的可能概念集合$H$,稱為\textbf{假設集},它和真實的概念類$C$可能不同。樣本集合$S=(x_1,x_2,\dots,x_m)$ 從未知分佈$D$中獨立同分布(i.i.d.)取樣得到,並由真實概念$c$賦予標籤$(c(x_1),c(x_2),\dots,c(x_m))$。學習者的目標為:利用帶標籤的樣本$S$,從假設集$H$中選出一個假設函式$h_S$,使其相對於真實概念$c$具有最小泛化誤差。泛化誤差$R(h)$定義如下: \begin{definition} \textbf{泛化誤差}\\ 給定假設函式 $h \in H$,目標概念$c \in C$,某個潛在的分佈$D$,$h$的泛化誤差定義為: \begin{equation} R(h) = \Pr_{x\sim D}[h(x)\neq c(x)] = \mathop{\rm{E}}_{x\sim D}[\mathbf{1}_{h(x)\neq c(x)}]. \end{equation} \end{definition} 由於分佈$D$和真實概念$c$對學習者而言都是未知的,通常取而代之地計算如下定義的經驗誤差: \begin{definition} \textbf{經驗誤差}\\ 給定假設函式 $h \in H$,目標概念$c \in C$,樣本集合$S=(x_1,x_2,\dots,x_m)$,$h$的經驗誤差定義為: \begin{equation} \hat{R}(h) = \frac{1}{m}\sum_{i=1}^{m}\mathbf{1}_{h(x_i)\neq c(x_i)}. \end{equation} \end{definition} 經驗誤差就是樣本集合上的平均誤差。事實上,對於某個固定的假設$h$,其在獨立同分布(i.i.d)取樣的樣本集合上的經驗誤差的期望等於真實誤差,即 \begin{equation} E[\hat{R}(h)] = R(h) \end{equation} 因為根據期望的線性性質和樣本由獨立同分布取樣的性質,可得 \begin{align*} \mathop{\rm{E}}_{S\sim D^m}[\hat{R}(h)] &= \frac{1}{m}\sum_{i=1}^{m} \mathop{\rm{E}}_{S\sim D^m}[\mathbf{1}_{h(x_i)\neq c(x_i)}]\\ &= \frac{1}{m}\sum_{i=1}^{m} \mathop{\rm{E}}_{S\sim D^m}[\mathbf{1}_{h(x)\neq c(x)}], \forall x \in S.\\ &= \mathop{\rm{E}}_{S\sim D^m}[\mathbf{1}_{h(x)\neq c(x)}] \\ &= \mathop{\rm{E}}_{S\sim D}[\mathbf{1}_{h(x)\neq c(x)}] \\ &= R(h). \end{align*} 下面來介紹(PAC)\textbf{可能近似正確學習}框架。 \begin{definition} \textbf{可能近似正確學習}\\ 一個概念類C是 \textbf{PAC-可學習} 的,如果存在多項式函式$poly(\cdot,\cdot,\cdot,\cdot)$,使得對於所有 $\epsilon,\delta>0$, X 上的任意分佈 D,以及任意目標概念 $c \in C$,只要訓練樣本數 $m\geq poly(1/\epsilon,1/\delta,n,size(c))$,由某個演算法 A 訓練得到的假設函式 $h_S$ 滿足: \begin{equation} \Pr_{S\sim D^m} [R(h_s)\leq \epsilon] \geq 1-\delta. \end{equation} 更進一步,如果$\mathcal{A}$在多項式時間 $poly(1/\epsilon,1/\delta,n,size(c))$ 內完成,則稱$C$是\textbf{有效PAC可學習}的。稱演算法$\mathcal{A}$為針對概念類C的一個\textbf{PAC學習演算法}。 \end{definition} 對於上述定義,有幾點值得強調:首先,PAC學習框架和資料的具體分佈是無關的,因為定義中沒有對資料分佈$D$做任何假設;其次,要求用於訓練和測試的樣本是從真實分佈中獨立同分布取樣得到的,這是保證學習結果具有泛化能力的必要條件;最後,PAC學習框架討論的是某個概念類的可學習性而不是某個單獨的概念。 通常對於非平凡的學習任務,直接設計一個PAC學習演算法是困難的,但是找到如下定義稍弱一點的學習演算法一般是比較容易的,這在整合學習中較為常用。 \begin{definition} \textbf{弱學習}\\ 一個概念類C是 \textbf{弱PAC可學習} 的,如果存在$\gamma>0$和多項式函式$poly(\cdot,\cdot,\cdot,\cdot)$,使得對於所有 $\epsilon,\delta>0$,輸入空間 X 的任意分佈 D,以及任意目標概念 $c\in C$,只要訓練樣本數 $m\geq poly(1/\epsilon,1/\delta,n,size(c))$,由某個演算法 A 訓練得到的假設函式 $h_S$ 滿足: \begin{equation} \Pr_{S\sim D^m} [R(h_s)\leq \frac{1}{2}-\gamma] \geq 1-\delta. \end{equation} 稱演算法A為針對概念類C的一個\textbf{弱學習演算法},由弱學習演算法返回的假設函式h稱為\textbf{基分類器}。 \end{definition} \section{有限假設集的泛化界} 如果某個假設函式$h_S$使得訓練誤差為0,則稱它是一致的。 \subsection{一致情形} \begin{theorm} 記 $H$ 為從$\mathcal{X}$對映到$\mathcal{Y}$的一個有限的函式集合,演算法$\mathcal{A}$ 對於任意概念$c \in H$ 和獨立同分布取樣的樣本集 $S$ 都能返回一個一致的假設函式 $h_S$,即 $\hat{R}(h_S) = 0$。那麼對任意 $\epsilon,\delta >0$,不等式 $\Pr_{S\sim D^m}[R(h_S) \leq \epsilon] \geq 1-\delta$ 成立,如果 \begin{equation} m \geq \frac{1}{\epsilon}\big( log|H| + log\frac{1}{\delta} \big). \end{equation} 上述樣本複雜度的結果等價於關於泛化界的陳述:對任意$\epsilon,\delta>0$,依概率至少為 $1-\delta$, \begin{equation} R(h_S) \leq \frac{1}{m} \big( log|H| + log\frac{1}{\delta} \big) . \end{equation} \end{theorm} \subsection{不一致情形} \begin{theorm} 記 $H$ 為一個有限假設集,對任意$\epsilon,\delta>0$,依概率至少為 $1-\delta$, \begin{equation} \forall h\in H, R(h) \leq \hat{R}(h) + \sqrt{\frac{log|H| + log\frac{2}{\delta}}{2m}} . \end{equation} \end{theorm} 因此,對於有限假設集 $H$, \begin{equation*} R(h) \leq \hat{R}(h) + \mathcal{O}\bigg(\sqrt{\frac{log|H|}{2m}}\bigg) . \end{equation*} 由上式可以看出,在不一致情形中,通過學習的到的假設函式 $h$ 的真實誤差由兩部分組成:經驗誤差和演算法複雜度。它們間存在一個利弊權衡的過程:演算法越複雜,經驗誤差可能越小,但在上式中的第二項可能增加。此外,可以直觀地來看,當假設集$H$固定時,如果樣本數越多,真實誤差和經驗誤差的差值越小。但和一致情形相比,所需要的樣本數是它的平方量級。 \end{document} ```