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.

(講義ノート)統計的機械学習第3,4回

前回はこちら。📄Arrow icon of a page link(講義ノート)統計的機械学習第2回

前回は真の損失関数LLで、有限の訓練データについてh^\hat{h}が最適であったとき、以下のような式が成り立っていた。h^arg minhHL^n(h)\hat{h} \in \argmin _{h \in \mathcal{H}} \hat{L}_n (h)つまり経験損失を最小化させるものをh^\hat{h}だとすると、少なくとも1δ1 - \delta以上の確率で

L(h^)1n(logH+log(1/δ))L(\hat{h}) \leq \frac{1}{n} (\log |\mathcal{H}| + \log(1 / \delta))

ただし、ここでは、最適なh,L(h)=0\exist h^*, L(h^*)=0が存在しない場合を考える。

h,L(h)0\forall h^*, L(h^*)\neq 0であるときの上限

モデルや仮説の仮定

非常に基礎的なモデルから解析していく。

  • XRd\mathcal{X} \subset \mathbb{R}^dが学習データ
  • Y={+1,1}\mathcal{Y} = \{+1, -1\}がラベルである二値分類。
  • 損失関数はすべて01損失。つまり、損失関数というのは条件を満たさない確率そのものである

仮説は2つの仮定の下で行う。

  • 仮説空間H\mathcal{H}は有限である。

示したいもの

この仮定の下で、h^arg minhHL^n(h)\hat{h} \in \argmin _{h \in \mathcal{H}} \hat{L}_n(h)とする。この時、少なくとも1δ1 - \delta以上の確率で以下の式が成り立つ。

L(h^)L(h)2n(logH+log(2/δ))L(\hat{h}) - L(h^*) \leq \sqrt{\frac{2}{n} (\log |\mathcal{H}| + \log(2 / \delta))}

理想損失を0にするような識別器が存在しないとき、1/n2/n1/n \to 2/nとなり、1/δ2/δ1 / \delta \to 2/\deltaとなっている。

証明

Hoeffding’s Inequality

📄Arrow icon of a page link(講義ノート)乱択アルゴリズム第2回 を参考

Image in a image block

各確率変数が独立で、それぞれ上と下にとる値が定まっている=有界である。

ここで、経験平均と平均の期待値がϵ\epsilonより大きくずれるのは、上限で評価できるというもの。

下の式は、両側のすそを考慮したものである。

証明の方針

今まで通り、L(h^)L(h)L(\hat{h}) - L(h^*)ではなく、すべてのhhについての上限suphHL(h)L^n(h)\sup _{h \in \mathcal{H}} |L(h)-\hat{L}_n(h)|を考える。あるhHh \in \mathcal{H}で成り立つので、Union Boundで示していく感じ。

h\exist hで評価する

あるhhを固定すると、L^n(h)\hat{L}_n(h)nn個の独立な損失関数l((xi,yi),h)l((x_i, y_i), h)の平均であり、LLL^n\hat{L}_nも確率と同等なので、[0,1][0,1]の値をとって有界である。なので、Hoeffdingの不等式を使うことができる。よって、以下のようになる。

Pr[L^n(h)L(h)>ϵ]2exp(2n2ϵ2i=1n12)=2exp(2nϵ2)Pr[|\hat{L}_n(h) - L(h)| > \epsilon] \leq 2 \exp(-\frac{2 n^2 \epsilon ^ 2}{\sum_{i=1}^n 1^2}) = 2 \exp(-2n \epsilon^2)

そこから、hHh \in \mathcal{H}で仮説集合は有限サイズだという仮説なので、以下のようにUniform Convergenceで、集合全部のサイズで抑える形で確率の和というかたちで変形できる。

Pr[suphHL^n(h)L(h)>ϵ2]=Pr[hH,L^n(h)L(h)>ϵ2]hHPr[hHL^n(h)L(h)>ϵ2]H2exp(2n2(ϵ2)2)=H2exp(nϵ22)Pr[\sup_{h \in \mathcal{H}} | \hat{L}_n(h) - L(h) | > \frac{\epsilon}{2}] = Pr[\exist h \in \mathcal{H}, |\hat{L}_n(h) - L(h)| > \frac{\epsilon}{2} ] \\ \sum_{h \in \mathcal{H}} Pr[{h \in \mathcal{H}} | \hat{L}_n(h) - L(h) | > \frac{\epsilon}{2}] \leq |\mathcal{H}| \cdot 2 \exp(-2n^2(\frac{\epsilon}{2})^2) \\ = |\mathcal{H}| \cdot 2 \exp(-\frac{n \epsilon^2}{2})

ここで、以下のようにδ\deltaを置くと、与えられたものを得る。

H2exp(nϵ22)=δϵ=2n(logH+log(2/δ))|\mathcal{H}| \cdot 2 \exp(-\frac{n \epsilon^2}{2}) = \delta \\ \epsilon = \sqrt{\frac{2}{n} (\log |\mathcal{H}| + \log (2 / \delta))}

ここで、前回の授業のように、L(h^)L(h)L(\hat{h}) - L(h^*)suphHL^n(h)L(h)\sup_{h \in \mathcal{H}} | \hat{L}_n(h) - L(h) |で一様収束性を使って評価することができることを使う。

Pr[L(h^)L(h)>ϵ]Pr[suphHL(h)L^n(h)>ϵ2]Pr[L(\hat{h}) - L(h^*) > \epsilon] \leq Pr[\sup_{h \in \mathcal{H}}|L(h) - \hat{L}_n(h)| > \frac{\epsilon}{2}]

ここで不等式を逆にすることで、以下のようになる。先ほど定義したδ\deltaを使う。

Pr[L(h^)L(h)ϵ]>Pr[suphHL(h)L^n(h)ϵ2]>1δPr[L(\hat{h}) - L(h^*) \leq \epsilon] > Pr[\sup_{h \in \mathcal{H}}|L(h) - \hat{L}_n(h)| \leq \frac{\epsilon}{2}] > 1 - \delta

なので、左辺と右辺の評価からして、少なくとも1δ1 - \delta以上の確率で、以下が成り立つ。

L(h^)L(h)2n(logH+log(2/δ))L(\hat{h}) - L(h^*) \leq \sqrt{\frac{2}{n}(\log |\mathcal{H}| + \log(2 / \delta))}

証明したかったのはL(h^)L(h)L(\hat{h}) - L(h ^ *)の差による不等式だが、不等式をそのまま使うと評価できるのはLn(h^)L(h)L_n(\hat{h}) - L(h ^ *)のかたちである。なので最初からϵ/2\epsilon / 2で計算していて、その後変換をした。

大筋

  1. L(h^)L(h)L(\hat{h}) - L(h^*)suphHL^n(h)L(h)\sup_{h \in \mathcal{H}} | \hat{L}_n(h) - L(h) |で一様収束性を使って評価を変える。
  2. sup\supは有限仮説集合であることを利用して、Uniform Convergenceを使って抑える。
  3. Uniform Convergenceの合算する各要素のPr[L^n(h)L(h)>ϵ2]Pr[|\hat{L}_n(h) - L(h)| > \frac {\epsilon}{2}]であるが、この確率をHoeffdingの不等式を用いて評価した。
    1. 前回の理想損失を0にできるhh^*が存在していたときは、毎回のサンプリングでは高々(1ϵ)(1-\epsilon)の確率でしか正解できないということで上界を評価した。
    2. 今回は理想損失を0にできないし、hh^*が理想損失をどれほどに抑えられるともわからない。
    3. ここをもうちょっと掘り下げてみる。

結局L(h)=0L(h^*)=0は何が重要だったか

L(h)=0L(h^*)=0ができる場合は、O(1/n)O(1/n)のオーダで収束するが、できない場合はO(1/n)O(1/\sqrt{n})のオーダで収束する。

L(h)=0L^(h)=0L(h^*)=0 \Rightarrow \hat{L}(h^*) = 0になるので、経験損失が0になるものの中から、適格となるものを選べばよかった。これは結局、高々1ϵ1 - \epsilonの確率でしか正解できない+独立性があるということから、exp(ϵn)\exp(-\epsilon n)で抑えられた。

だがこうとは限らないとき、その条件はないので、L(h)L^(h)>ϵ|L(h) - \hat{L}(h^*)| > \epsilonのような分布のすそについてHoeffdingの不等式で評価するしかない。その結果、必要データが増えてexp(nϵ2)\exp(- n \epsilon^2)となってしまう。

仮説集合が有限ではないとき

前提条件として、Realizabilityのh,L(h)=0\exist h^*, L(h^*) = 0を外したが、今度はH\mathcal{H}が有限集合であるという仮説も外したい。

仮説集合が無限集合となるとき、Union Boundを使うことができなくなる。これの代わりに、McDiarmidの不等式やRademacher複雑度を使っていく。

モデルや仮説の仮定

非常に基礎的なモデルから解析していく。

  • XRd\mathcal{X} \subset \mathbb{R}^dが学習データ
  • Y={+1,1}\mathcal{Y} = \{+1, -1\}がラベルである二値分類。
  • 損失関数はすべて01損失。つまり、損失関数というのは条件を満たさない確率そのものである
    • 後程定義されるMcDirmidの不等式により、[0,1][0,1]でなくても、区間[a,b][a,b]でも問題はない。

追加の仮定は一切なし。

McDiarmid’s Inequality

Image in a image block

関数ff引数が1つだけ違うものの値の変化の絶対値を抑えられる場合に成り立つ不等式。関数を「平均値を出力する関数」とみなせば、Hoeffdingの不等式そのものである。

ここで、関数ffの取りうる値が[a,b][a, b]とすれば、i,ci=ba\forall i, c_i = b-aであるといえる。この時、

exp(2ϵ2i=1nci2)=exp(2ϵ2n(ba)2)=δ,ϵ=(ba)nlog(1/δ)2\exp(- \frac{2 \epsilon ^2}{\sum_{i=1}^n c_i ^ 2}) = \exp(- \frac{2 \epsilon ^2}{n (b-a) ^ 2}) = \delta, \\ \epsilon = (b-a) \sqrt{\frac{n \log (1 / \delta)}{2}}

なお、前と同様に両側で定義すると以下のようになる。

Image in a image block

ここで、片側でもMcDiarmidの不等式は実用的である。なぜなら、f>E[f]+ϵf > \mathbb{E}[f] + \epsilonの確率を評価できるから。

Rademacher複雑度による汎化誤差解析の流れ

nn個の観測データに依存した確率変数G^n=suphHL(h)L^n(h)\hat{G}_n = \sup_{h \in \mathcal{H}} L(h) - \hat{L}_n(h)を定義する。これは理想損失の最適解hhを与えた時の損失と経験損失にhhを与えた時の損失の差である。評価するのはこのG^n=suphHL(h)L^n(h)\hat{G}_n = \sup_{h \in \mathcal{H}} L(h) - \hat{L}_n(h)であり、今まではLn,LL_n, LLLについてのみ計算していた。

片側のMcDirmidの不等式でG^n\hat{G}_nを評価すると、以下のようになる。

G^nE[G^n]+(ba)log(1/δ)2n\hat{G}_n \leq \mathbb{E}[\hat{G}_n] + (b-a) \sqrt{\frac{\log (1 / \delta)}{2n}}

ここで、√の中のnnが分母ではなく分子に来ているが、これはLL自体の取る範囲が[a,b][a,b]であるので、McDiarmidの不等式として毎イテレーション評価するのは、平均をとるための係数1/n1/nで割られたものであるということ。故に、毎イテレーションの間隔はbab-aではなく、(ba)/n(b-a)/nである。

そして、E[G^n]\mathbb{E}[\hat{G}_n]を評価するのが、Rademacher複雑度である。

Rademacher複雑度は以下のように定義される。

Rademacher Complexity

Image in a image block

ここで、σi\sigma_iは独立に生成した確率変数であるので、ランダムなノイズと言える。そんなノイズを正解ラベルとしてそこに適合させることは、モデルの表現力が十分に高ければ可能である

これを踏まえて、ランダムなノイズに対して学習器がうまく適合させられるので、最悪の確率変数のセットを引いたときの、上式の下限は大きくなる。簡単に言うと表現力が高ければ完全にノイズですら学習でき、その結果Rademacher Complexityで大きな値を取る

あらためてRademacher複雑度による解析

示したいものは、以下のものである。Rn(L)R_n(\mathcal{L})がRademacher Complexity。

少なくとも1δ/21-\delta / 2の確率で以下が成り立つ。

G^n=suphH{L^n(h)L(h)}2Rn(L)+(ba)log2/δ2n\hat{G}_n = \sup _{h \in \mathcal{H}} \{ \hat{L}_n (h) - L(h) \} \leq 2 R_n(\mathcal{L}) + (b - a) \sqrt{\frac{\log 2 / \delta}{2n}}

これが成り立てば、L^n(h)L(h)\hat{L}_n(h) - L(h)の評価は

r[L(h^)L(h)ϵ]Pr[suphHL(h)L^N(h)ϵ/2]r[L(\hat{h}) - L(h^*) \leq \epsilon ] \geq Pr[ \sup _{h \in \mathcal{H}} |L(h) - \hat{L}_N(h) | \leq \epsilon / 2]

という式で抑えることができることから、

少なくとも1δ1 - \deltaの確率で以下の式が成り立つ。

L(h^)L(h)4Rn(L)+(ba)2log2/δnL(\hat{h}) - L(h^*) \leq 4 R_n(\mathcal{L}) + (b-a) \sqrt{\frac{2 \log 2 / \delta}{n}}

証明

まず、G^n=suphHL^n(h)L(h)\hat{G}_n = \sup _{h \in \mathcal{H}} \hat{L}_n(h) - L(h)である。

そして、相補的なものとして、G^n=suphHL(h)L^n(h)\hat{G}_n^- = \sup _{h \in \mathcal{H}} L(h) - \hat{L}_n(h)を考える。

Pr[G^n>ϵ2]δ2,Pr[G^n>ϵ2]δ2Pr[\hat{G}_n > \frac{\epsilon}{2}] \leq \frac{\delta}{2}, Pr[\hat{G}_n ^- > \frac{\epsilon}{2}] \leq \frac{\delta}{2}

以上の式が成り立つならば、以下のように合算できる。このように絶対値ついてるものは丁寧に符号を逆転させて外すとやりやすい。

Pr[suphHL(h)L^(h)>ϵ2]=Pr[G^n>ϵ2]+Pr[G^n>ϵ2]δPr[\sup _{h \in \mathcal{H}} |L(h) - \hat{L}(h)| > \frac{\epsilon}{2}] = Pr[\hat{G}_n > \frac{\epsilon}{2}] + Pr[\hat{G}^-_n > \frac{\epsilon}{2}] \leq \delta

ということで、G^n,G^n\hat{G}_n, \hat{G}^-_nについてそれぞれ評価していきたい。

McDirmidの不等式を使いたい。G^n=suphHL^n(h)L(h)\hat{G}_n = \sup _{h \in \mathcal{H}} \hat{L}_n(h) - L(h)について、データZ1,,ZnZ_1, \cdots, Z_nの関数として、1つだけZiZiZ_i \to Z_i ^ \primeにしたとき、G^n\hat{G}_n^\primeになったとする。

これの差の上界はL=1/nl(Zi,h)L=1/n \sum l(Z_i, h)となるので、l(Zi,h)l(Zi,h)l(Z_i, h) - l(Z_i^\prime, h)はたかだか[a,b][a, b]であることから、差の上界は(ba)/n(b-a)/nとなる。

これと、δ/2\delta / 2(2つを合わせるから導入した)というのを使ってMcDirmidの不等式を適用する。すると、1δ/21 - \delta /2以上の確率で、一番下の式が成り立つ。

Pr[G^nE[G^n]>ϵ2]exp(nϵ22(ba)2)G^nE[G^n]+(ba)log1/δ2nPr[\hat{G}_n - \mathbb{E}[\hat{G}_n] > \frac{\epsilon}{2}] \leq \exp(- \frac{n \epsilon ^ 2}{2(b-a)^2}) \\ \hat{G}_n \leq \mathbb{E}[\hat{G}_n] + (b - a)\sqrt{\frac{\log 1 / \delta}{2n}}

次に、E[G^n]\mathbb{E}[\hat{G}_n]をRademacher複雑度で評価する。

すでにあるデータZ1,,ZnZ_1, \cdots, Z_nを使って、L^n(h)=1/ni=1nl(Zi,h)\hat{L}_n(h) = 1/n \sum_{i=1}^n l(Z_i, h)を定義した。

ここで別の独立なデータZ1,,ZnZ_1^\prime, \cdots, Z_n^\primeを用いて、同様に計算したL^n(h)\hat{L}_n ^ \prime(h)も定義できる。

Image in a image block

期待値自体は両方同じである。なので、G^n\hat{G}_nを展開した中身にZZZ \to Z^\primeにした。そして、赤い線の部分で平均した後でsup ≤ supしたものの平均が使われている。

そして、交換した中で、さらに展開してsuphH1ni=1nl(Zi,h)l(Zi,h)\sup_{h \in \mathcal{H}} \frac{1}{n} \sum_{i=1}^n l(Z_i ^ \prime, h) - l(Z_i, h) を得る。期待値の計算に対称性があるので、符号はランダムに決まる→Rademacher変数を導入して書けるぞ!!!

E[suphH1ni=1nl(Zi,h)l(Zi,h)]=E[Eσ[suphH1ni=1nσi{l(Zi,h)l(Zi,h)}]]\mathbb{E}[ \sup_{h \in \mathcal{H}} \frac{1}{n} \sum_{i=1}^n l(Z_i ^ \prime, h) - l(Z_i, h) ] = \\ \mathbb{E} [ \mathbb{E}_\sigma [\sup_{h \in \mathcal{H}} \frac{1}{n} \sum_{i=1}^n \sigma_i \{ l(Z_i ^ \prime, h) - l(Z_i, h) \} ]]

このようにRademacher変数を導入したので、次のように解析を進められる。

Image in a image block

Rademacher変数の部分をそれぞれに分割すると、まったく同じ分布が2つ得られることから、最終的に足すことで上界として2Rn(L)2 R_n(\mathcal{L})が得られる。

よって、ここまでの議論をまとめると、

  • 最適なL(h)=0L(h)=0となるhhがなく
  • 仮説空間H\mathcal{H}が無限集合である

条件下でも、McDirmidの不等式でG^n=suphHL^n(h)L(h)\hat{G}_n = \sup _{h \in \mathcal{H}} \hat{L}_n(h) - L(h)について評価し、Rademacher複雑度によるE[G^n]\mathbb{E}[\hat{G}_n]の評価で抑えるということができる

確率1δ1-\delta以上の確率で、以下が成り立つ。

L(h^)L(h)4Rn(L)+(ba)2log2/δnL(\hat{h}) - L(h^*) \leq 4 R_n(\mathcal{L}) + (b-a) \sqrt{\frac{2 \log 2 / \delta}{n}}

今までとの違い

  • 一番厳しかったのが、L(h)=0L(h)=0が存在し、仮説空間も有限集合である。この時は以下のようになり、一番厳しい評価である。
L(h^)L(h)=L(h^)01n(logH+log(1/δ))L(\hat{h}) - L(h^*) = L(\hat{h}) - 0 \leq \frac{1}{n} (\log |\mathcal{H}| + \log(1 / \delta))
  • 次は、L(h)=0L(h)=0が存在しないが、仮説空間が有限集合であるという前提条件。
L(h^)L(h)2n(logH+log(2/δ))L(\hat{h}) - L(h^*) \leq \sqrt{\frac{2}{n} (\log |\mathcal{H}| + \log(2 / \delta))}
  • 最後はいずれの前提条件も成り立たない場合。
L(h^)L(h)4Rn(L)+(ba)2log2/δnL(\hat{h}) - L(h^*) \leq 4 R_n(\mathcal{L}) + (b-a) \sqrt{\frac{2 \log 2 / \delta}{n}}

どんどん上界としては緩くなっているのがlog\log で見て取れる。