『日経Robotics デジタル版(電子版)』のサービス開始を記念して、特別に誰でも閲覧できるようにしています。
ニューラルネットワークは学習データ数と同程度かそれ以上に多くのパラメータを持ちながら、なぜ過学習せず汎化するかはこれまで未解決問題だった。このようなパラメータ数の方が学習データ数(制約数)より多い場合を過剰パラメータ(Over-parameterized)表現と呼ぶ。
一般にモデルはパラメータ数が必要な数より多く、表現力が強すぎる場合、ノイズ由来の誤ったパターンを学習してしまい、訓練データではうまくいくが、テストデータではうまくいかない過学習と呼ばれる現象を起こす。
これを防ぐため、学習時にモデルの表現力を抑える正則化を適用することが一般的である。重みのノルムに罰則項を付けたり、使うパラメータ数を最小限にするなどだ(Boostingなど)。しかしニューラルネットワークは学習時にそのような正則化(例えばDropout、Weight Decayやノイズを導出するバッチ正規化)を明示的に適用しなくても過学習しにくいことが分かっている。

それではニューラルネットワーク(NN)の表現力がないのかというとそうではない。
実際、学習データのラベルをランダムに変えて作った訓練データに対してニューラルネットワークを学習させても、訓練誤差を0にすることができる1)。さらにネットワークの幅が大きくパラメータ数が多ければ多いほど学習が容易であり汎化性能が上がることが分かっている。一方で幅を無限大にして得られるNeural Tangent Kernelを使ったNNよりも通常の有限の幅のNNの方が精度が高いことも分かっている2)。
DNNがなぜ汎化するかを説明する理論
この過剰パラメータ表現のニューラルネットワークがなぜ汎化するかを説明する理論として、米MITのJonathan Frankle氏らは“宝くじ仮説"(Lottery Ticket Hypothesis)3)を提唱した。この論文はICLR 2019のベストペーパーに選ばれている。これについて説明する。
宝くじ仮説は「ランダムに初期化された密なニューラルネットワークは、うまく学習できるように偶然初期化されたサブネットワークを含んでおり、そのサブネットワークを取り出してそれだけを同じ初期値から学習したら元のニューラルネットワークと同じ精度に同じ学習回数で到達できる」という仮説である。ランダムに初期化された大きなニューラルネットワークは無数の異なる初期値の組み合わせを持つサブネットワーク(くじ)を含んでおり、そのほんの一部がうまく学習できるサブネットワーク(当たりくじ)であるという仮説である。うまく学習するにはネットワークの構造だけでなく、初期値も重要である。そして良い初期値の組み合わせをたまたま引き当てたサブネットワークが当たりくじとなり、それが他のサブネットワークよりも速く学習が進み他のサブネットワークの活性は抑制されていく。そして、ネットワークが大きくなるほど、サブネットワークの数は指数的に大きくなり、良い当たりくじが含まれる可能性が高くなる。そのため、大きなネットワークほどパラメータ数が多くなるにかかわらず汎化するというものである。
この宝くじ仮説を証明するために、彼らは次のような実験を行った。始めにニューラルネットを通常の方法で学習した後に、重みの絶対値が小さいp%(例えば80%)の枝を取り除く。次に、残ったネットワークを、その学習時に使った初期値に戻して再度学習し、精度を評価した。すると、元のネットワークの学習とほぼ同じ学習曲線を描き、近い精度を達成した。それに対し、同様にして枝を除いた後に、その学習に使った初期値とは別の初期値で初期化し再度学習した場合、そのネットワークは大きな精度低下がみられた。ここから、ネットワーク構造だけでなく、初期値の組み合わせが重要であること、またネットワーク全体の性能はその良い初期値を引いたサブネットワークと同じであることが示された。ニューラルネットワークは無数のサブネットワーク候補を同時に効率的に探索し、良いネットワークを見つけているといえる。
この宝くじ仮説は大きなニューラルネットワーク、例えばResNetなどでは成り立たないと最初は報告されていたが、完全な初期値ではなく少し学習が進んだ値からスタートすると同じような現象が起こることが分かった。不要な枝を除いた際の変化が初期値の段階では大き過ぎるため学習が安定しないが、少し学習が進むと枝を除いても学習が安定するためだと考えられる4)。
仮説を指示する理論も登場
この仮説は実験結果に基づいたものだけだったが、その仮説を支持する理論が登場している5)。この理論の提唱者らはMLPからなる教師ネットワークと生徒ネットワークの2つを用意し、教師ネットワークの出力を正解として生徒ネットワークがそれを真似るように学習する問題設定を考えた。教師ネットワークは本来は未知であるデータの生成過程とみなすことができる。教師ネットワークと生徒ネットワークは必ずしも同じノード数、パラメータ数を持つとは限らない。
この学習ダイナミクスを解析すると、生徒ネットワークが教師ネットワークの出力を真似られるようになるにつれ、教師ネットワークの各ノードの振る舞いを生徒ネットワークの各ノードが真似るようになることがわかった。最終出力を一致させるようにするというフィードバックがあるだけで、隠れ層の各ノードが対応するようになるのである。ここでノードの振る舞いとは、どういった入力に対して活性値が非ゼロになるかという領域のことである。さらに生徒ネットワークの方がノード数、パラメータ数が多い過剰パラメータ設定の場合、教師ネットワークのそれぞれのノードに初期値の時点で最も似ているノードがそのノードの振る舞いを真似るようになり、対応するノードが無い生徒ネットワークのノードの出力枝の重みは0に抑制されていくこともわかった。最も模倣するのがうまくいっているノードが、それよりうまくいっていないノードの活動を抑える、いわゆるWinner-Take-Allのような現象が起きていることもわかった。
実際のニューラルネットワークが学習する対象は必ずしも、他のニューラルネットワークの出力ではなく、自然現象であったり人の活動の結果だったりする。しかし、それらの学習対象のデータ生成過程がニューラルネットワークと同じような構成性や階層性を備えている場合は、その生成過程はニューラルネットワークで近似することができる。そして、その近似を最小限の大きさを持ったニューラルネットワークで模倣することができるため過学習せず汎化すると説明できる。
また、汎化するような解はフラットな解、つまり多くの方向にパラメータを動かしても訓練誤差がほぼ変わらないような解であると考えられている6)。これも宝くじをひいて他のサブネットワークが抑制されているような状況では多くのパラメータを変えても出力結果が変わらないような状況になっているためだと説明できる。
人の脳の発達過程では最初に多くのシナプスが発生した後にそれらが枝刈りされていくことが分かっている。これも宝くじ仮説と同様、それぞれの個体や環境に合った非常に運の良い初期値を引いたサブネットワークを探すプロセスなのかもしれない。学習時の効率の観点からいうと、最初から有望なサブネットワークを抜き出しそれだけを学習させたくなるが、それを実現できるか、最初から当たりくじを引けるのかは未解決問題である。
2)S. Arora et al.,“On Exact Computation with an Infinitely Wide Neural Net,” https://arxiv.org/pdf/1904.11955.pdf
3)J. Frankle et al.,“The Lottery Ticket Hypothesis: Finding Sparse, Trainable Neural Networks,” ICLR 2019, https://arxiv.org/pdf/1803.03635.pdf
4)J. Frankle et. al.,“Stabilizing the Lottery Ticket Hypothesis,” https://arxiv.org/pdf/1903.01611.pdf
5)Y. Tian et. al.,“Luck Matters: Understanding Training Dynamics of Deep ReLU Networks,” https://arxiv.org/pdf/1905.13405.pdf
6)N. Keskar et al., “On Large-Batch Training for Deep Learning: Generalization Gap and Sharp Minima,” ICLR 2017, https://arxiv.org/pdf/1609.04836.pdf
Preferred Networks 取締役副社長
