《机器学习理论导引》笔记目录
0 感言
代码调累了,主要还是现在没有找到合适的数据集,就让人很头大,感觉一切都像停滞了一样。希望一切好起来吧。
终于在写完论文处理完大大小小的事情后重新开始进行学习,希望能够忽略一切的影响,全情投入自己想做的事情。这章比较难,笔记也分为上下两部分。
补更感想
感觉这一章复杂度的讲解还是挺难挺抽象的,认识的朋友还有问我为啥最近更得慢的,说来还是因为很多写了一半第二次写的时候还要重温前面的内容。不过感谢组里学长的PPT,做得非常非常细致化,相较于原本就写得挺不错的书的基础上,逻辑层次更为清晰,所以其实我主要还是在学长的PPT的基础上进行复制粘贴整理优化。慢慢理解才是真。
以及阅读进度我也进行了调整,截至开学前,以后每周大概抽两天的时间来进行这种基础的补充和学习,也就大概是更一章左右,然后把更多时间看论文和逐步开始做自己的工作。
3.1 数据分布无关
一些前置概念
- 考虑二分类问题,H 为假设空间,其中假设是 X 到 Y={−1,+1}的映射
- 限制 (restriction)
- 定义:对于数据集 D={x1,...,xm}⊂X,H 在数据集 D 上的限制是从 D 到 {−1,+1}m 的一族映射,其中 h 在 D 上的限制是一个 m 维向量。
H∣D={(h(x1),...,h(xm))∣h∈H}
- 增长函数 (growth function)
ΠH(m)={x1,...,xm}⊂Xmax∣{(h(x1),...,h(xm))}∣h∈H∣
- 意义:一定程度上描述了假设空间 H 的表示能力,反映了它的复杂度
- 联系:增长函数 ΠH(m) 表示假设空间 H,
ΠH(m)=∣D∣=mmax∣H∣D∣
- 对分 (dichotomy)
- 定义:假设空间 H 中的假设对 D 中的样本赋予标记的每种可能结果
- 打散 (shattering)
- 定义:如果假设空间 H 能实现样本集 D 上的所有对分,那么称样本集 D 可以被假设空间 H 打散
图例1.打散的示意图
二分类任务-VC 维
- 定义:假设空间 H 的 VC 维定义为能被 H 打散的最大样本集的大小
VC(H)=max{m:ΠH(m)=2m}
- 等价推论:假设空间 H 的 VC 维等于d
- 存在大小为 d 的样本集 D 能被 H 打散
- 任意大小为 d+1 的样本集 D' 都不能被 H 打散
- 一些简单的示例
- 阈值函数—— VC 维为1
- 定义阈值函数为 ha(x)=sign(I(x<a)−21)
- 设 H 为 R 上的所有阈值函数,即 H={ha:a∈R}
- 易知存在样本大小1的样本集 D 可以被 H 打散
- 对于任意样本大小2的样本集 D={x1,x2},考虑x1<x2,那么 ha(x1)=−1,ha(x2)=+1 的情况无法实现
- 区间函数—— VC 维为2
- 定义区间函数为 ha,b(x)=sign(I(x∈(a,b))−21)
- 令 H 表示所有 R 上区间函数所组成的集合,即 H={ha,b:a,b∈R,a<b}
- 令 D={1,2},易知 H 可以打散 D
- 对于任意样本大小为 3 的样本集 D′={x1,x2,x3},不妨设 x1<x2<x3,那么分类结果 (+1,−1,+1) 不能被任何区间函数实现
- 优势
- 令假设空间 H 为有限集合。对于任意数据集 D,会有 ∣H∣D∣≤∣H∣
- 又因为当 ∣H∣<2∣D∣,H 无法打散 D。因此可得 VC(H)≤log2∣H∣
- 并且有限假设空间的 H 的 VC(H) 通常小于 log2∣H∣,因此使用 VC 维衡量有限假设空间的复杂度更为准确
Sauer引理和Suaer定理
- (Sauer 引理)
若假设空间 H 的 VC 维为 d,则对任意 m∈N 有
ΠH(m)≤i=0∑dCmi
- 证明
- 利用数学归纳法。m=1,d=0 或 m=1,d=1 时引理成立。
- 假设引理在 (m−1,d−1) 和 (m−1,d) 下成立
- 令 D={x1,…,xm},D′={x1,…,xm−1},有限制
H∣D={(h(x1),...,h(xm))∣h∈H}H∣D′={(h(x1),...,h(xm−1))∣h∈H}
- 假设 h∈H 对 xm 的分类结果为+1或者-1,则任何出现在 H∣D′ 的串都会在 H∣D 中出现一次或者两次。令 HD′∣D 表示 H∣D 中出现两次的 H∣D′ 中串组成的集合,即
HD′∣D={(y1,...,ym−1∈H∣D′)∣∃h,h′∈H,(h(xi)=h′(xi)=yi)∧(h(xm)=h′(xm)) i∈[m−1]}
- 因为 HD′∣D 中的串在 H∣D 中出现了两次,但是在 H∣D′ 中仅出现了一次,有
∣H∣D∣=∣HD′∣D∣+∣H∣D′∣
- 因为 D′ 的大小为 m-1,由归纳假设可知
∣H∣D′∣≤ΠH(m−1)≤i=0∑dCm−1i
- 令 Q 表示能被 HD′∣D 打散的集合,由 Q 的定义可知 Q∪{xm} 必能被 H∣D 打散
- 由于 H 的 VC 维为 d,因此 HD′∣D 的 VC 维最大为d-1,所以有
∣HD′∣D∣≤ΠH(m−1)≤i=0∑d−1Cm−1i
∣H∣D∣≤i=0∑dCm−1i+i=0∑d−1Cm−1i=i=0∑d(Cm−1i+Cm−1i−1)=i=0∑dCmi
- (Sauer定理)
若假设空间 H 的 VC 维为 d,则对任意 m≥d 有
ΠH(m)≤(de⋅m)d
- 证明
ΠH(m)≤i=0∑dCmi≤i=0∑dCmi(dm)d−i=(dm)di=0∑dCmi(md)i≤(dm)mi=0∑dCmi(md)i=(dm)d(1+md)m=(dm)d((1+md)dm)d≤(de⋅m)d
多分类任务-Natarajan维
- 定义
- 假设空间中的假设变成了 X 到 Y={0,…,K−1} 的映射
- 打散
- 对于任意给定的集合 D⊂X,若假设空间 H 中存在两个假设 f0,f1:D→Y 满足以下条件
- 对于任意 x∈D,f0(x)=f1(x)
- 对于任意集合 B⊂D 存在 h∈H 使得
∀x∈B,h(x)=f0(x) and ∀x∈D∖B,h(x)=f1(x)
- 则称集合 D 能被假设空间 H 打散
- Natarajan维
- 对于多分类问题的假设空间 H,Natarajan维是能被 H 打散的最大样本集的大小,记为 Natarajan(H)
- 定理 类别数 K=2 时,VC(H)=Natarajan(H)
- 证明
- VC(H)≤Natarajan(H)
- 令 D 表示大小为 VC(H) 且能被 H 二分类打散的集合
- 取多分类问题打散定义中 f0=0,f1=1
- D 能被 H 二分类打散 ⇒ 对于任意集合 B⊂D,存在 hB 使得 x∈B 时 hB(x)=0,x∈D∖B时 hB(x)=1
- 所以 H 能在多分类问题的语境下打散大小为 VC(H) 的 D
- VC(H)≥Natarajan(H)
- 令 D 表示大小为 Natarajan(H) 且在多分类问题中能被 H 打散的集合
- 对于 D 上的任意一种对分 g:D→Y,令 D+={x∈D│g(x)=1},D−={x∈D∣g(x)=0},则我们只需证明存在 h∈H 能实现该对分,即 ∀x∈D,h(x)=g(x)
- 当 K=2 时,f0,f1:D→Y={0,1},令 Diy=x∈D│fi(x)=y,i∈{0,1},y∈Y
- 取多分类问题打散定义中的 B=(D+∩D01)∪(D−∩D00),由多分类问题中的打散定义可知 ∃h∈H,∀x∈B,h(x)=f0(x) and ∀x∈D∖B,h(x)=f1(x)
- 由于 ∀x∈D,f0(x)=f1(x),通过计算可知 ∀x∈B,g(x)=f0(x) and ∀x∈D∖B,g(x)=f1(x)
- 从而有 ∀x∈D,h(x)=g(x),即 H 能二分类打散大小为 Natarajan(H) 的 D。
- 定理 若多分类问题假设空间 H 的 Natarajan维为d,类别数为K,则对于任意的 m∈N,有
ΠH(m)≤mdK2d
- 证明
- 利用数学归纳法。当 m=1,d=0 或 m=1,d=1 时,定理成立。
- 假设定理对 (m−1,d−1) 和 (m−1,d) 成立
- 对于 D={x1,…,xm},Y={0,...,K−1},令
Hk={h∈HD∣∣h(x1)=k} (k∈{0,...,K−1})
- 基于 Hk 可以构造如下集合:
Hij={h∈Hi∣∃h′∈Hj,h(xl)=h′(xl),2≤l≤m} (i=j)Hˉ=H∣D−∪i=jHij
∣H∣D∣≤∣Hˉ∣+∣∪i=jHij∣≤∣Hˉ∣+i=j∑∣Hij∣
- 基于 Hˉ ̅的构造可知 Hˉ ̅在 D−{x1} 上无预测结果相同的假设,且 Natarajan(Hˉ)≤d,根据归纳的前提假设可知
∣Hˉ∣≤ΠHˉ(m)=ΠHˉ(m−1)≤(m−1)dK2d
- 同时,Hij 的Natarajan维最多为d−1,否则 H 的Natarajan维将超过d。同样可以根据 Hij 在 D 上无预测结果相同的假设以及归纳的前提假设,有
∣Hij∣≤ΠHij(m)≤md−1K2(d−1) (i=j)
∣H∣D∣≤∣Hˉ∣+i=j∑∣Hij∣≤ΠHˉ(m−1)+i=j∑ΠHij(m)≤(m−1)dK2d+K2md−1K2(d−1)≤mdK2d
3.2 数据分布相关
Rademacher 复杂度
- 经验误差
- 给定数据集 D={(x1,y1),...,(xm,ym)},h∈H 的经验误差为
E^(h)=m1i=1∑mI(h(xi)=yi)=m1i=1∑m21−yih(xi)=21−2m1i=1∑myih(xi)
h∈Hargminm1i=1∑myih(xi)
- Rademacher 随机变量
- 考虑随机变量 σi,它以 0.5 的概率取值 +1,以 0.5 的概率取值 -1。
- 最小经验误差假设 (考虑随机噪声)
Eσ[h∈Hsupm1i=1∑mσih(xi)]
- 该式与增长函数作用类似,体现了假设空间在数据集 D 上的表示能力,取值范围为 [0,1]
- 当该式取值为1,则意味着对于任意 σ=(σ1,...,σm),σi∈{−1,+1}有
h∈Hsupm1i=1∑mσih(xi)=1
也就是说存在 h∈H 使得 h(xi)=σi,ΠH(m)=2m,H 能打散 D
- 经验 Rademacher 复杂度
- 考虑实值函数空间 F:Z→R,令 Z={z1,...,zm},其中 zi∈Z,那么函数空间 F 关于 𝑍 的经验 Rademacher 复杂度为
RZ(F)=Eσ[f∈Fsupm1i=1∑mσif(zi)]
- 其中 𝑍 是一个给定集合,经验 Rademacher 复杂度衡量了函数空间 F 与随机噪声在 𝑍 上的相关性。
- Rademacher 复杂度
- 函数空间 F 关于 Z 在分布 m 上的 Rademacher 复杂度为
RZ(F)=EZ⊂Z:∣Z∣=m[RZ(F)]
- 将 σi 所服从的均匀分布改成其他分布可以得到一些其他复杂度的定义
Rademacher复杂度——定理
- 定理3.4 令 A⊂Rm 为有限集合且 r=maxx∈A∥x∥ 有
Eσ[m1x∈Asupi=1∑mσixi]≤mr2ln∣A∣
其中 x=(x1;...;xm),σi为 Rademacher 随机变量
- 证明
- 对于任意 t>0使用 Jensen 不等式可得
exp(tEσ[x∈Asupi=1∑mσixi])≤Eσ[exp(tx∈Asupi=1∑mσixi)]=Eσ[x∈Asupexp(ti=1∑mσixi)]≤x∈A∑Eσ[exp(ti=1∑mσixi)]
-
基于 σ1,…,σm 之间的独立性以及 Hoeffding 引理可得
(Hoeffding引理:若 X 为期望为0,且有界的实值随机变量,a≤X≤b,那么对于任意的 t∈R 会有 R[exp(tX)]≤exp(8t2(b−a)2),其中 −∣xi∣≤σixi≤∣xi∣
x∈A∑Eσ[exp(ti=1∑mσixi)]≤x∈A∑i=1∏mEσi[exp(tσixi)]≤x∈A∑i=1∏mexp(8t2(2xi)2)=x∈A∑exp(2t2i=1∑mxi2)≤x∈A∑exp(2t2r2)=∣A∣exp(2t2r2)
即有
exp(tEσ[x∈Asupi=1∑mσixi])≤∣A∣exp(2t2r2)
对两边取对数
Eσ[x∈Asupi=1∑mσixi]≤tln∣A∣+2tr2
当 t=r2ln∣A∣ 时上式右侧取最小值,可得
Eσ[x∈Asupi=1∑mσixi]≤r2ln∣A∣
不等式两边同时除以 m,定理得证
- 推论 假设空间 H 的 Rademacher 复杂度 Rm(H) 与增长函数 ΠH(m) 之间满足
Rm(H)≤m2lnΠH(m)
- 证明
- 对于 D=x1,...,xm,H∣m 为假设空间 H 在 D 上的限制
- 由于 h∈H 的值域为 {−1,+1},可知 H∣m 中的元素为模长 m 的向量
- 由上面的定理 Eσ[m1supx∈A∑i=1mσixi]≤mr2ln∣A∣可得
Rm(H)=ED[Eσ[u∈H∣Dsupm1i=1∑mσiui]]≤ED[mm2ln∣H∣D∣]
- 又因为 ∣H∣D∣≤ΠH(m),有
Rm(H)≤ED[mm2lnΠH(m)]=m2lnΠH(m)
3.3 实例分析
线性超平面
-
线性超平面的假设空间 H 可表示为
{hw,b:hw,b(x)=sign(wTx+b)=sign((i=1∑dwixi)+b)}
b=0 时为齐次线性超平面,而典型线性超平面是缩放 w,b 后满足 minx∣wTx+b∣=1 的超平面
-
定理3.5 Rd 中由齐次线性超平面构成的假设空间 H 的 VC维为 d
-
证明
- 能打散某个大小为 d 的样本集
- 令 e1,...,ed 表示 Rd 中的 d 个单位向量,集合 D={e1,...,ed}
- 对于任意 d 个标记 y1,...,yd,取 wy=(y1,...,yd),则有 wyTei=yi,所以 D 能被齐次线性超平面构成的假设空间打散
- 不能打散任意大小为 d+1 的样本集
- 令集合 D′={x1,...,xd+1} 为 Rd 中任意 d+1 个向量,则必存在不全为 0 的实数 a1,...,ad+1 使得 ∑i=1d+1aixi=0。
- 令 I={i:ai>0},J={j:aj<0},则 I,J 中必定有一个非空
- 假设二者都非空
i∈I∑aixi=j∈J∑∣aj∣xj
采用反证法,假设 D′ 能被 H 打散,则存在向量 w 使得 wTxi>0,i∈I 且 wTxj<0,j∈J,由此可得
0<i∈I∑ai(xiTw)=(i∈I∑aixi)Tw=⎝⎛j∈J∑∣aj∣xj⎠⎞Tw=j∈J∑∣aj∣(xjTw)<0
矛盾,反证成立
-
定理3.6 Rd 中由非齐次线性超平面构成的假设空间 H 的 VC维为 d+1
-
证明
- 由定理 3.5 的证明可知 D={0,e1,...,ed} 能被 H 打散
- 将非齐次线性超平面转化为齐次线性超平面
wTx+b=w′Tx′ (w∈R,x∈Rd,w′∈Rd+1,x′∈Rd+1)w′=(w;b),x′=(x;1)
- 如果 D′={x1,...,xd+2} 能被 Rd 中非齐次线性超平面打散,则 D′′={x1′,...,xd+2′} 能被 Rd+1 中齐次线性超平面打散,与定理3.5矛盾
-
定理3.7 若 ∥x∥≤r,D 为大小为 m 的数据集,则超平面族 H={x↦wTx:∥w∥≤Λ} 的经验 Rademacher复杂度满足
RD^(H)≤mr2Λ2
- 证明
RD^(H)=m1Eσ[supi=1∑mσiwTxi]=m1Eσ[supwTi=1∑mσixi]≤mΛEσ[∥i=1∑mσixi∥]=mΛEσ2∥i=1∑mσixi∥≤mΛEσ∥i=1∑mσixi∥2=mΛEσ[i,j=1∑mσiσj(xiTxj)]=mΛEσ[i,j=1∑mEσ[σiσj](xiTxj)]≤mΛi=1∑m∥xi2∥≤mr2Λ2
支持向量机
- 定理3.8 若 ∥x∥≤r,则超平面族 {x↦sign(wTx):minx∣wTx∣=1∧∥w∥≤Λ} 的 VC维 d满足
d≤r2Λ2
- 证明
- 令 {x1,...,xd} 为能被超平面族打散的集合,则对于任意 y=(y1,...,yd)∈{−1,+1}d 存在 w 使得
yi(wTxi)≥1 (i∈[d])
d≤wTi=1∑dyixi≤∥w∥∥i=1∑dyixi∥≤Λ∥i=1∑dyixi∥
- 上式对任}意 y∈{−1,+1}d 都成立,对其两边按 y1,...,yd 服从 {−1,+1} 独立且均匀的分布取期望可得
d≤ΛEy[∥i=1∑dyixi∥]≤ΛEy[∥i=1∑dyixi∥2]=Λi,j=1∑dEy[yiyj](xiTxj)=Λi=1∑dxiTxi≤Λdr2=Λrd
得证
多层神经网络
- 引理3.2 令 F(1)⊂Y1X,F(2)⊂Y2X 为两个函数族,F=F(1)×F(2) 为它们的笛卡尔积,有
ΠF(m)≤ΠF(1)(m)⋅ΠF(2)(m)
-
证明
- 对于大小为 m 且独立同分布从 X 采样得到的训练集 D⊂X,根据笛卡尔积的定义 (A×B={(x,y)∣x∈A∧y∈B}) 有
∣F∣m∣=∣F∣m(1)∣∣F∣m(2)∣≤Π(F(1))(m)⋅Π(F(2))(m)
-
引理3.3 令 F(1)⊂Y1X,F(2)⊂Y2X 为两个函数族,F=F(1)∘F(2) 为它们的复合函数族,有
ΠF(m)≤ΠF(1)(m)⋅ΠF(2)(m)