Site cover image

Site icon imageSen(Qian)’s Memo

This website is Donglin Qian (Torin Sen)’s memo, especially about machine learning papers and competitive programming.

Rademacher Complexityと一様大数の法則

参考書一覧

  • Foundations of Machine Learning
  • 統計的学習理論(MLPシリーズ)

VC Dimension

モデル=仮説集合 Hℋが存在し、その中で識別器=仮説 h ∈ Hh ∈ ℋが存在し、これが二値分類をする。データ xxに対して、ラベル yyがあり、これに分類器 h(x)h(\mathbf{x})の出力ができるだけ合致することが望ましく、それが学習である。モデル Hℋのなかで、1通りの yyに対応できることを+1として、その個数を ΠH(x1, ⋯, xn)Π _ℋ(x_1, ⋯, x_n)とおく。ここで、パラメタは連続値であるので理論上は無限通りのℋのパラメタの取り方が存在するが、同じラベル付けyは1通りとまとめる。

データが nn個存在するとして、 2n2^nパターンのラベルの付き方が存在する。これについて、 nnが小さければΠH(x1, ⋯, xn)=2nΠ _ℋ(x_1, ⋯, x_n) = 2^nが成り立つ。すなわち、ありうるすべてのラベルの付け方 yyに対して、パラメタを調節すれば必ずそれを実現する識別器 h ∈ Hh ∈ ℋが存在するということである。

nnが増加していくにあたり、この等式が満たされなくなる=表現力が足りなくなる。この時の最大の nnをVC次元という。

Rademacher Complexity

ラデマッハ複雑度とは、ランダムなノイズに対して学習させるとき、モデルがどれほど追随できるか、という量である。大きいほど表現力が高いモデルである。

ラデマッハ変数という、1/2の確率で+1, 1/2の確率で-1を取る確率変数 σσを考える。厳密には mm個の訓練データ xi\mathbf{x}_iが存在するときのラデマッハ複雑度は以下のように定義する。gは学習器であり、Gは学習器の集合=モデル。

R^(G)=Eσ[sup⁡g∈G1mσig(xi)]=Eσ[sup⁡g∈GσTgxm] \mathcal{\hat{R}}(G) = \mathbb{E} _{\boldsymbol{\sigma}} [ \sup _{g \in G} \frac{1}{m} \sigma _i g(\mathbf{x} _i)] \\\\ = \mathbb{E} _{\boldsymbol{\sigma}} [ \sup _{g \in G} \frac{\boldsymbol{\sigma} ^ T \mathbf{g} _\mathbf{x}}{m} ] 

ここで、有限個 mm個の訓練データで得られた経験的なラデマッハ複雑度は、訓練データを増やした時には、理想的な分布から得られたときと同じ値になる。つまり、不偏推定量。

R(G)=lim⁡m→∞R^(G)\mathcal{R}(G) = \lim _{m \to \infty} \mathcal{\hat{R}}(G)

Taragrandの補題

R(G)ℛ(G)のなかで、 G → ϕ(G)G → ϕ(G)と写像の合成となったときに使える補題。

ϕ : R → Rϕ : ℝ → ℝであり、リプシッツ連続であるとする。この時、リプシッツ定数 LLであるとして、以下の不等式が成り立つ。

R(ϕ(G)) ≤ LR(G)ℛ(ϕ(G)) ≤ Lℛ(G)

証明を書く気力はなかった。

McDiarmidの不等式

Pr(f(X1,⋯ ,XN)−E[f(X1,⋯ ,XN)]≥ϵ)≤exp⁡(−2ϵ2∑i=1Nci2)Pr( f(X _1, \cdots, X _N) - \mathbb{E} [ f(X _1, \cdots, X _N) ] \geq \epsilon) \leq \exp( -\frac{2 \epsilon ^ 2}{\sum _{i = 1} ^ N c _i ^ 2})

cic_iは次の条件を満たす。 XiX _iを同じく分布に従う別の確率変数 YYに変えた時、 ffの取る値との差の上界にあたる。

ci = sup⁡Y∣f(X1, ⋯, Xi − 1, Xi, Xi + 1, ⋯, Xn)− f(X1, ⋯, Xi − 1, Y, Xi + 1, ⋯, Xn)∣c_i = \sup _Y {|f(X_1, ⋯, X_{i − 1}, X_i, X_{i + 1}, ⋯, X_n) − f(X_1, ⋯, X_{i − 1}, Y, X_{i + 1}, ⋯, X_n)|}

ここで、 ffが NN変数関数であるが、とりわけ xi\mathbf{x} _iを引数に取って、識別器による経験平均 ∑i=1Ng(xi)\sum _{i = 1} ^ N g(\mathbf{x} _i)である場合を考える。そして、 ∀x, g(x) ∈ [a, b]∀\mathbf{x}, g(\mathbf{x}) ∈ [a, b]と識別器の関数の上界が決まっているのであれば、この式は次のように書くことができる。

Pr(∑i=1Ng(xi)−E[g(x)]≥ϵ)≤exp⁡(−2ϵ2N(b−a)2)Pr( \sum _{i = 1} ^ N g(\mathbf{x} _i) - \mathbb{E} [ g(\mathbf{x}) ] \geq \epsilon) \leq \exp( -\frac{2 \epsilon ^ 2 N }{ (b - a) ^ 2})

そして、一般的には 1 − δ1 − δ以上の確率で○○が成り立つ、という形なので、それに式変形する。

δ=exp⁡(−2ϵ2N(b−a)2)log⁡δ=−2ϵ2N(b−a)2(b−a)2log⁡(1/δ)=2ϵ2N(b−a)22Nlog⁡(1/δ)=ϵ2(b−a)log⁡(1/δ)2N=ϵ\delta = \exp( -\frac{2 \epsilon ^ 2 N}{(b - a) ^ 2}) \\\\ \log \delta = - \frac{2 \epsilon ^ 2 N }{(b - a) ^ 2} \\\\ (b - a) ^ 2 \log (1 / \delta) = 2 \epsilon ^ 2 N \\\\ \frac{(b - a) ^ 2}{2N} \log (1 / \delta) = \epsilon ^ 2 \\\\ (b - a) \sqrt{\frac{\log (1 / \delta)}{2N}} = \epsilon

このことから、 ∀δ, 1 − δ∀δ, 1 − δ以上の確率で、下式が成り立つ。

∑i=1Ng(xi)−E[g(x)]≤(b−a)log⁡(1/δ)2N\sum _{i = 1} ^ N g(\mathbf{x} _i) - \mathbb{E} [ g(\mathbf{x}) ] \leq (b - a) \sqrt{\frac{\log (1 / \delta)}{2N}}

特に、写す空間が[0, 1]である場合は、以下のように更に略して書ける。

∑i=1Ng(xi)−E[g(x)]≤log⁡(1/δ)2N\sum _{i = 1} ^ N g(\mathbf{x} _i) - \mathbb{E} [ g(\mathbf{x}) ] \leq \sqrt{\frac{\log (1 / \delta)}{2N}}

一様大数の法則

次に重要な定理として、ラデマッハ複雑度を用いた二値分類識別器 g ∈ 𝒢g ∈ 𝒢の期待値を上から抑えられ、不偏推定量からたかだかどれほどずれるのかを評価できる。これは一様大数の法則と呼ばれている。 ggは集合 𝒵 → [a,b]𝒵 → [a,b]への写像。なお、 ∀Z ∈ 𝒵∀Z ∈ 𝒵に所属している。また、 ZiZ_iはそれぞれ ZZと独立同分布に従う。 ∀δ, 1 − δ∀δ, 1 − δ以上の確率で以下の式が成り立つ。

sup⁡g∈G{E[g(Z)]−∑i=1Ng(Zi)}≤2RN(G)+(b−a)log⁡(1/δ)2N\sup _{g \in \mathcal{G}} \lbrace \mathbb{E} [g(Z)] - \sum _{i = 1} ^ N g(Z _i) \rbrace \leq 2 \mathcal{R} _N (\mathcal{G}) + (b - a) \sqrt{\frac{\log(1 / \delta)}{2N}}

これを絶対誤差で評価した版は以下である。

sup⁡g∈G{∣E[g(Z)]−∑i=1Ng(Zi)∣}≤2RN(G)+(b−a)log⁡(2/δ)2N\sup _{g \in \mathcal{G}} \lbrace | \mathbb{E} [g(Z)] - \sum _{i = 1} ^ N g(Z _i) | \rbrace \leq 2 \mathcal{R} _N (\mathcal{G}) + (b - a) \sqrt{\frac{\log(2 / \delta)}{2N}}
証明

A(z1,⋯ ,zn)=sup⁡g∈G{E[g(Z)]−1N∑i=1Ng(zi)}A(z _1, \cdots, z _n) = \sup _{g \in \mathcal{G}} \lbrace \mathbb{E} [ g(Z) ] - \frac{1}{N} \sum _{i = 1} ^ N g(z _i) \rbraceとする。

ここで、 ZnZ_nが Z′Z ^ \primeとなるとする(同様に𝒵に従う値)。この時、1つだけ変更したとき、上界は以下のようになる。中でのsupは、外の符号が負なので、一番外に出すと最小値のinfになる。infに関しては ffでなくても、 ggにするとinfじゃなくなって少し大きくなるので、符号は≤となれる。

A(z1,⋯ ,zn)−A(z1,⋯ ,z′)=sup⁡g∈G{E[g(Z)]−1n∑i=1ng(zi)−inf⁡f∈G{E[f(Z)]−1n∑i=1n−1f(zi)−1nf(z′)}}=sup⁡g∈Ginf⁡f∈G{E[g(Z)]−1n∑i=1ng(zi)−E[f(Z)]+∑i=1n−1f(zi)+1nf(z′)}≤sup⁡g∈G{E(g(Z))−1n∑i=1ng(zi)−E[g(Z)]−1n∑i=1n−1g(zi)+1ng(z′)}=sup⁡g∈G{g(z′)−g(zn)n}=b−anA(z _1, \cdots, z _n) - A(z _1, \cdots, z ^ \prime) = \sup _{g \in \mathcal{G}} \lbrace \mathbb{E} [g(Z)] - \frac{1}{n} \sum _{i = 1} ^ n g(z _i) - \inf _{f \in \mathcal{G}} \lbrace \mathbb{E} [f(Z)] - \frac{1}{n} \sum _{i = 1} ^ {n - 1} f(z _i) - \frac{1}{n} f(z ^ \prime) \rbrace \rbrace \\\\ = \sup _{g \in \mathcal{G}} \inf _{f \in \mathcal{G}} \lbrace \mathbb{E} [g(Z)] - \frac{1}{n} \sum _{i = 1} ^ n g(z _i) - \mathbb{E} [f(Z)] + \sum _{i = 1} ^ {n - 1} f(z _i) + \frac{1}{n} f(z ^ \prime) \rbrace \\\\ \leq \sup _{g \in \mathcal{G}} \lbrace \mathbb{E} (g(Z)) - \frac{1}{n} \sum _{i = 1} ^ n g(z _i) - \mathbb{E} [ g(Z) ] - \frac{1}{n} \sum _{i = 1} ^ {n - 1} g(z _i) + \frac{1}{n} g(z ^ \prime) \rbrace \\\\ = \sup _{g \in \mathcal{G}} \lbrace \frac{g(z ^ \prime) - g(z _n)}{n} \rbrace = \frac{b - a}{n}

これにより、マルチンゲールは (b − a)/n(b − a)/nとなる。これはどの iiに対しても成り立ち、しかも A(z1,⋯ ,z′)−A(z1,⋯ ,z′)≤b−anA(z _1, \cdots, z ^ \prime) - A(z _1, \cdots, z ^ \prime) \leq \frac{b - a}{n}も成り立つので、全体で言うと

∣g(z′)−g(zn)n∣≤b−an|\frac{g(z ^ \prime) - g(z _n)}{n}| \leq \frac{b - a}{n}

このことから、先ほどのMcDiarmidの不等式を用いると以下のような集中不等式を得られる。 ∀δ, 1 − δ∀δ, 1 − δ以上の確率で、以下が成り立つ。A自体に対して不等式を適用しているということに注目。 A(z1,⋯ ,zn)=sup⁡g∈GE[g(Z)]−1n∑i=1ng(zi)A(z _1, \cdots, z _n) = \sup _{g \in \mathcal{G}} \mathbb{E} [g(Z)] - \frac{1}{n} \sum _{i = 1} ^ n g(z _i)であり、この中の ggに対してMcDiarmidの不等式を適用するのではない!なお、普通に ggで不等式を使うと、 𝔼[g]𝔼[g]の評価ができなくなるので、このような評価できるかたちで不等式を使った。

A(Z1,⋯ ,Zn)−E[A]≤(b−a)log⁡(1/δ)2nA(Z _1, \cdots, Z _n) - \mathbb{E} [A] \leq (b - a) \sqrt{\frac{\log(1 / \delta)}{2n}}

次に、 Z1, ⋯, ZnZ_1, ⋯, Z_nのみならず、 Z1′, ⋯, Zn′Z_1 ^ ′, ⋯, Z_n^′も 𝒵𝒵に従う確率変数とする。これを使えば、 𝔼[g]𝔼[g]を nn個の確率変数に分割できる。つぎに、期待値を外に出すことで、≤の形を作れる。

A(Z1,⋯ ,Zn)=sup⁡g∈G{E[g(Z)]−1n∑i=1ng(Zi)}=sup⁡g∈G{EZ1′,⋯ ,Zn′[1n∑i=1ng(Zi′)]−1n∑i=1ng(Zi)}≤EZ1′,⋯ ,Zn′[sup⁡g∈G{1n∑i=1ng(Zi′)−1n∑i=1ng(Zi)}]=EZ1′,⋯ ,Zn′[∑i=1nsup⁡g∈G{1n(g(Zi′)−g(Zi))}]A(Z _1, \cdots, Z _n) = \sup _{g \in \mathcal{G}} \lbrace \mathbb{E} [ g(Z) ] - \frac{1}{n} \sum _{i = 1} ^ n g(Z _i) \rbrace \\\\ = \sup _{g \in \mathcal{G}} \lbrace \mathbb{E} _{Z _1 ^ \prime, \cdots, Z _n ^ \prime} [\frac{1}{n} \sum _{i = 1} ^ n g(Z _i ^ \prime)] -\frac{1}{n} \sum _{i = 1} ^ n g(Z _i) \rbrace \\\\ \leq \mathbb{E} _{Z _1 ^ \prime, \cdots, Z _n ^ \prime} [ \sup _{g \in \mathcal{G}} \lbrace \frac{1}{n} \sum _{i = 1} ^ n g(Z _i ^ \prime) - \frac{1}{n} \sum _{i = 1} ^ n g(Z _i) \rbrace ] \\\\ = \mathbb{E} _{Z _1 ^ \prime, \cdots, Z _n ^ \prime} [ \sum _{i = 1} ^ n \sup _{g \in \mathcal{G}} \lbrace \frac{1}{n} (g(Z _i ^ \prime) - g(Z _i) )\rbrace ]

ここで、対称性により、 g(Zi) − g(Zi′)g(Z_i) − g(Z_i^′)も g(Zi′) − g(Zi)g(Z_i^′) − g(Z_i)も同じ分布を持っている(同じ 𝒵𝒵から来ているし、 ggも1つである)。だから、符号を自由にflipさせてもいいということになる!符号を自由にflipさせるというのならば、まさにラデマッハ変数じゃないか!あとは三角不等式で評価すればラデマッハ複雑度が出てくる!

E[A(z1,⋯ ,zn)]=EZ1,⋯ ,Zn[sup⁡g∈G{E[g(Z)]−1n∑i=1ng(zi)}]≤EZ1,⋯ ,Zn[EZ1′,⋯ ,Zn′[sup⁡g∈G{1n(g(Zi′)−g(Zi))}]]≤Eσ1,⋯ ,σn[EZ1,⋯ ,Zn[EZ1′,⋯ ,Zn′[sup⁡g∈G{σin(g(Zi′)−g(Zi))}]]]=EZ1,⋯ ,Zn[EZ1′,⋯ ,Zn′[Eσ1,⋯ ,σn[sup⁡g∈G{σin(g(Zi′)−g(Zi))}]]]≤EZ1′,⋯ ,Zn′[Eσ1,⋯ ,σn[sup⁡g∈G{σing(Zi′)}]]+EZ1,⋯ ,Zn[Eσ1,⋯ ,σn[sup⁡g∈G{−σing(Zi)}]]≤Rn(G)+Rn(G)=2Rn(G)\mathbb{E} [ A(z _1, \cdots, z _n) ] = \mathbb{E} _{Z _1, \cdots, Z _n} [ \sup _{g \in \mathcal{G}} \lbrace \mathbb{E} [ g(Z) ] - \frac{1}{n} \sum _{i = 1} ^ n g(z _i) \rbrace ] \\\\ \leq \mathbb{E} _{Z _1, \cdots, Z _n} [ \mathbb{E} _{Z _1 ^ \prime, \cdots, Z _n ^ \prime} [ \sup _{g \in \mathcal{G}} \lbrace \frac{1}{n} (g(Z _i ^ \prime) - g(Z _i) )\rbrace ] ] \\\\ \leq \mathbb{E} _{\sigma _1, \cdots, \sigma _n} [\mathbb{E} _{Z _1, \cdots, Z _n} [ \mathbb{E} _{Z _1 ^ \prime, \cdots, Z _n ^ \prime} [ \sup _{g \in \mathcal{G}} \lbrace \frac{\sigma _i}{n} (g(Z _i ^ \prime) - g(Z _i) )\rbrace ] ] ] \\\\ = \mathbb{E} _{Z _1, \cdots, Z _n} [ \mathbb{E} _{Z _1 ^ \prime, \cdots, Z _n ^ \prime} [ \mathbb{E} _{\sigma _1, \cdots, \sigma _n} [\sup _{g \in \mathcal{G}} \lbrace \frac{\sigma _i}{n} (g(Z _i ^ \prime) - g(Z _i) )\rbrace ] ] ] \\\\ \leq \mathbb{E} _{Z _1 ^ \prime, \cdots, Z _n ^ \prime} [ \mathbb{E} _{\sigma _1, \cdots, \sigma _n} [\sup _{g \in \mathcal{G}} \lbrace \frac{\sigma _i}{n} g(Z _i ^ \prime) \rbrace ] ] + \mathbb{E} _{Z _1, \cdots, Z _n} [\mathbb{E} _{\sigma _1, \cdots, \sigma _n} [\sup _{g \in \mathcal{G}} \lbrace \frac{-\sigma _i}{n} g(Z _i )\rbrace ] ] \\\\ \leq \mathcal{R} _n(\mathcal{G}) + \mathcal{R} _n(\mathcal{G}) = 2 \mathcal{R} _n(\mathcal{G})

このように、上から評価できた!

これを使えば、先ほどのMcDiarmidの不等式から以下の結果が得られる。これこそが、一様大数の法則。

A(Z1,⋯ ,Zn)=sup⁡g∈G{E[g(Z)]−∑i=1ng(Zi)}≤2Rn(G)+(b−a)log⁡(1/δ)2nA(Z _1, \cdots, Z _n) = \sup _{g \in \mathcal{G}} \lbrace \mathbb{E} [g(Z)] - \sum _{i = 1} ^ n g(Z _i) \rbrace \leq 2 \mathcal{R} _n (\mathcal{G}) + (b - a) \sqrt{\frac{\log(1 / \delta)}{2n}}

絶対値版に対しては、ここまでの議論で δδとしていたものを δ/2δ/2に置き換えると、以下の2つの式が得られる。いずれも ∀δ, 1 − δ/2∀δ, 1 − δ/2以上の確率で成立する。

sup⁡g∈G{E[g(Z)]−∑i=1ng(Zi)}≤sup⁡g∈G{∣E[g(Z)]−∑i=1ng(Zi)∣}≤2Rn(G)+(b−a)log⁡(1/δ)2nsup⁡g∈G{∑i=1ng(Zi)−E[g(Z)]}≤sup⁡g∈G{∣E[g(Z)]−∑i=1ng(Zi)∣}≤2Rn(G)+(b−a)log⁡(1/δ)2n\sup _{g \in \mathcal{G}} \lbrace \mathbb{E} [g(Z)] - \sum _{i = 1} ^ n g(Z _i) \rbrace \leq \sup _{g \in \mathcal{G}} \lbrace |\mathbb{E} [g(Z)] - \sum _{i = 1} ^ n g(Z _i)| \rbrace \leq 2 \mathcal{R} _n (\mathcal{G}) + (b - a) \sqrt{\frac{\log(1 / \delta)}{2n}} \\\\ \sup _{g \in \mathcal{G}} \lbrace \sum _{i = 1} ^ n g(Z _i) - \mathbb{E} [g(Z)] \rbrace \leq \sup _{g \in \mathcal{G}} \lbrace |\mathbb{E} [g(Z)] - \sum _{i = 1} ^ n g(Z _i)| \rbrace \leq 2 \mathcal{R} _n (\mathcal{G}) + (b - a) \sqrt{\frac{\log(1 / \delta)}{2n}}

この2つの式を足し合わせる事で、2で割ると (1 − δ/2)2 = 1 − δ + (δ2/4) ≥ 1 − δ(1 − δ/2)^2 = 1 − δ + (δ^2/4) ≥ 1 − δ以上の確率で、

sup⁡g∈G{∣E[g(Z)]−∑i=1ng(Zi)∣}≤2Rn(G)+(b−a)log⁡(1/δ)2n \sup _{g \in \mathcal{G}} \lbrace |\mathbb{E} [g(Z)] - \sum _{i = 1} ^ n g(Z _i)| \rbrace \leq 2 \mathcal{R} _n (\mathcal{G}) + (b - a) \sqrt{\frac{\log(1 / \delta)}{2n}}