Rademacher Complexity

Rademacher Complexity

定义: Empirical Rademacher Complexity

假设G是从Z映射到[a,b]的一族函数, S = ( z 1 , . . . , z m ) 是Z中数量固定的样本集合。在集合S上,Empirical Rademacher Complexity of G定义为:

^ S ( G ) = E σ [ sup g G 1 m i = 1 m σ i g ( z i ) ]

这里的 σ = ( σ 1 , . . . σ m ) T 是一个独立一致的随机变量,从 { 1 , + 1 } 中取值。这个东西的意思是函数簇G对于随机噪声S的拟合程度(就是给样本随机的label,看G的拟合程度)。另外如果用向量 g S 表示在样本集S上的预测值,那么3.1可以改写成: ^ S ( G ) = E σ [ sup g G σ g S m ] σ 称为Rademacher Variable。

复杂度更高的函数簇G会得到更高的Empirical Radmacher Complexity的值。如果说G的大小是 2 m ,就是最复杂的模型,这个时候 ^ S ( G ) = 1 ,因为可以满足所有的标签。如果G的大小是1的时候,课程里说是0,但是感觉说的有错误。

Rademacher Complexity就是Empirical Rademacher Complexity的期望。 m ( G ) = E S D m [ ^ S ( G ) ]

Rademacher Complexity的用处是证明模型在真实数据上的表现是可以被训练集上的表现bound住的。

Convergence Bounds:假设F是一簇从Z映射到[0,1]的函数, S = ( z 1 , . . . , z m ) , z i D 是数据集Z上由分布D选出来的样本。定义 E [ f ] E Z D [ f ( z ) ] , E ^ S [ f ] 1 m i = 1 m f ( z i ) ,那么就有至少 1 δ 的概率保证对所有的 f F

E [ f ] E ^ S [ f ] + 2 m ( F ) + O ( ln 1 δ m )


定理的主要内容就是这个不等式,下面就来证明它。

证明的过程需要用到McDiarmid’s Inequality。这个不等式的内容是,如果有一个函数使得 | f ( x 1 , . . . , x i , . . . x m ) f ( x 1 , . . . , x i , . . . , x m ) | c i ,那么就有 P r [ f ( x 1 , . . . x m ) E [ f ( X 1 , . . . , X m ) ] + ϵ ] exp 2 ϵ 2 i m c i 2

也就是说,如果改变函数其中一个参数,函数值改变的范围不超过某个值 c i ,这个值是对应与每个参数的,那么函数值在期望值 ϵ 范围之外的概率小于等于一个值。

第一步:

定义: ϕ ( S ) = sup f ( E [ f ] E ^ S [ f ] ) = sup f ( E [ f ] 1 m i f ( z i ) )

那么就至少有 1 δ 的概率使得 ϕ ( S ) E S ( ϕ ( S ) ) + ln 1 δ 2 m 。由于 f ( z i ) [ 0 , 1 ] ,所以改变任意的 z i z i ,整个损失函数的期望改变不会超过 1 m ,所以将McDiarmid’s Inequality里 ϵ 替换成 ln 1 δ 2 m ,将 c i 替换成 1 m ,就可以得到 P r [ ϕ ( S ) E S ( ϕ ( S ) ) + ln 1 δ 2 m ] δ ,即 P r [ ϕ ( S ) E S ( ϕ ( S ) ) + ln 1 δ 2 m ] > 1 δ

第二步:

定义另外一个数据集: S = ( z 1 , . . . , z m ) D ,那么就有:

E S [ ϕ ( S ) ] = E S [ sup f ( E [ f ] E ^ S [ f ] ) ] = E S [ sup f F ( E S [ E ^ S [ f ] ] E ^ S [ f ] ) ]
,这一步是利用PAC learnability,take the expectation of a finite set over all finite sets then that will be the true expectation of that quantity。

由于 E ^ S [ f ] S 没有关系,所以是可以把 E ^ S [ f ] E ^ S [ f ] 一起放到 E S 中去,即: E S [ ϕ ( S ) ] = E S [ sup f F ( E S [ E ^ S [ f ] E ^ S [ f ] ] ) ] E S , S [ sup f ( E ^ S [ f ] E ^ S [ f ] ) ]

we can now add in an inequality if you’re taking a supreme of an expectation you can get rid of the expectation because the supreme of the argument to the expectation is going to be larger than the expectation because you can think about the expectation as an average. so this gets rid of one of our expectations and now we have a nice difference of two expectations.

第三步:

再定义另外两个集合T和T’,T和T’是S和S’随机交换集合中的样本得到的,所以T和T‘也是在D上独立同分布的,而且有 E ^ S [ f ] E ^ S [ f ] E ^ T [ f ] E ^ T [ f ] 。下面就可以把Rademacher Variable加入到公式中来了。

(1) E ^ T [ f ] E ^ T [ f ] = 1 m { f ( z i ) f ( z i ) w i t h p r o b .5 f ( z i ) f ( z i ) w i t h p r o b .5 = 1 m i σ i ( f ( z i ) f ( z i ) )

这样我们就可以得到:

E S , S [ sup f F ( E ^ S [ f ] E ^ S [ f ] ) ] = E S , S , σ [ sup f F ( i σ i ( f ( z i ) f ( z i ) ) ) ]

原因是S和T是可以互换的,所以就可以把 E ^ T [ f ] E ^ T [ f ] 带入到公式中去,就得到了这个结果

第四步:

E S , S , σ [ sup f F ( i σ i ( f ( z i ) f ( z i ) ) ) ] E S , S , σ [ sup f F ( i σ i f ( z i ) + sup f F i ( σ i ) f ( z i ) ] E S , S , σ [ sup f F ( i σ i f ( z i ) ] + E S , S , σ [ sup f F ( i ( σ i ) f ( z i ) ] = E S , σ [ sup f F ( i σ i f ( z i ) ] + E S , σ [ sup f F ( i ( σ i ) f ( z i ) ] = m ( F ) + m ( F )

第二个不等号是因为期望的线性性质;后面一个等好是由于第一个期望和S不相关,第二个期望和S’不相关;最后一个等号是定义。

然后将这些东西组合起来,可以得到:

ϕ ( S ) = sup f ( E [ f ] E ^ S [ h ] ) E S [ ϕ ( S ) ] + ln 1 δ 2 m , w i t h   p r o b a b i l i t y   1 δ
,

去掉sup之后,不等号依然成立,再加上第二步的东西,得到:

E [ f ] E ^ S [ h ] E S , S [ sup f ( E ^ S [ f ] E ^ S [ f ] ) ] + ln 1 δ 2 m , w i t h   p r o b a b i l i t y   1 δ

再加入第三步的东西,得到:

E [ f ] E ^ S [ h ] E S , S , σ [ sup f F ( i σ i ( f ( z i ) f ( z i ) ) ) ] + ln 1 δ 2 m , w i t h   p r o b a b i l i t y   1 δ
,

然后加上第四步,得到:

E [ f ] E ^ S [ h ] 2 m ( F ) + ln 1 δ 2 m , w i t h   p r o b a b i l i t y   1 δ

其实到这里应该就算已经证明出来了,但是资料里面后面还有一段,还没看懂是做什么用的。

另外,由于 ^ S ( F ) E δ [ sup f 1 m i δ i f ( z i ) ] ,而且 f [ 0 , 1 ] ,使用McDiarmid’s Inequality,得到

S ( F ) m ( F ) + ln 1 δ 2 m

将这两个结合,就可以得到

E [ f ] E ^ S [ f ] + 2 m [ F ] + O ( ln 1 δ m )

原文里面跟号下面的m前面没有2,不知道为什么。

参考:
http://www.cs.colorado.edu/~jbg/teaching/CSCI_5622/06a.pdf
https://www.youtube.com/watch?v=gR9Q8pS03ZE&feature=youtu.be
Foundations of Machine Learning

发布了267 篇原创文章 · 获赞 12 · 访问量 15万+

猜你喜欢

转载自blog.csdn.net/u010734277/article/details/81057938