論文要約: Dropout: A Simple Way to Prevent Neural Networks from Overfitting

Dropout: A Simple Way to Prevent Neural Networks from Overfitting

jmlr.org

ライセンス CC BY 4.0 Deed | Attribution 4.0 International | Creative Commons

図表は元論文から引用

Abstract

目的:

過学習の問題を解決し、大規模ニューラルネットワークの効率を向上させる。

方法:

レーニング中にランダムにユニットをドロップすることで、ネットワークの過度な共適応を防ぐ。

結果:

視覚、音声認識、文書分類、計算生物学のタスクで最先端の結果を達成。

結論:

Dropoutは過学習を削減し、他の正則化方法よりも優れた改善を提供する。

 

Introduction

    •    深層ニューラルネットワークは、多数の非線形隠れ層を含むことで、入力と出力の間の複雑な関係を学習できる非常に表現力豊かなモデルです。しかし、限られた訓練データでは、これらの複雑な関係の多くがサンプリングノイズの結果となり、訓練セットには存在しても実際のテストデータには存在しないことがある。
    •    この問題は過学習につながり、過学習を減少させる多くの方法が開発されている。これには、検証セットのパフォーマンスが悪化し始めたら直ちに訓練を停止する、L1やL2正則化のような様々な重みペナルティを導入する、及びソフトウェイト共有などが含まれる。
    •    理論的には、無限の計算能力があれば、固定サイズのモデルを「正則化」する最良の方法は、パラメータの全ての可能な設定の予測を、訓練データに基づいた事後確率で重み付けして平均することである。これは、単純または小さなモデルに対してはかなりよく近似できる場合がありますが、より少ない計算でベイズのゴールドスタンダードの性能に近づけることを目指している。
    •    大規模なニューラルネットワークでは、多くの別々に訓練されたネットの出力を平均するという明白なアイデアは、実現が厳しいほどに計算量が多い。複数のモデルを組み合わせることは、個々のモデルが互いに異なる場合に最も有効だが、ニューラルネットモデルを異なるものとするには、異なるアーキテクチャを持つか、異なるデータで訓練する必要がある。

   •  多様なアーキテクチャを訓練することは困難であり、各アーキテクチャの最適なハイパーパラメータを見つけることは困難な作業であり、大規模ネットワークの訓練には多大な計算が必要である。

 

Dropout

    •    Dropoutは、過学習を防ぎ、効率的に指数関数的に多くの異なるニューラルネットワークアーキテクチャを近似的に組み合わせる方法を提供する技術です。この手法では、ニューラルネットワーク内のユニット(隠れ層と可視層の両方)をランダムに「ドロップアウト」(一時的に除外)する。

    •    各ユニットは固定確率pで保持され、この確率は検証セットを使用して選択されるか、または多くのネットワークとタスクで最適に近いとされる0.5に設定される。入力ユニットについては、保持確率は通常1に近い方が最適である。
    •    ニューラルネットワークにDropoutを適用することは、それから「間引きされた」ネットワークをサンプリングすることに相当する。nユニットを持つニューラルネットは、2^n個の可能な間引きされたニューラルネットワークの集合と見なすことができ、これらのネットワークはすべて重みを共有する。
    •    トレーニング中、各トレーニングケースごとに新しい間引きされたネットワークがサンプリングされ、訓練される。したがって、Dropoutを使用してニューラルネットワークを訓練することは、2^n個の細らされたネットワークのコレクションを、広範な重み共有で訓練することと同じである。
    •    テスト時には、指数関数的に多くの間引きされたモデルからの予測を明示的に平均化することは実現不可能だが、実践でうまく機能する非常にシンプルな近似平均化方法がある。それは、トレーニング中にユニットが保持される確率pで出力重みを乗算することで、トレーニング時とテスト時の期待出力を同じにすることである。

・本論文では、ドロップアウトの概念をフィードフォワードニューラルネットワークに限定せず、ボルツマンマシンなどのグラフィカルモデルにも適用可能であることを紹介している。特に、ドロップアウト制限ボルツマンマシン(RBM)モデルを標準の制限ボルツマンマシンと比較し、特定の点でドロップアウトRBMが標準RBMより優れていることを実験で示している。

 

Motivation

- ドロップアウトの動機の一つは、進化における性の役割に関する理論から来ている。性的生殖は、親の遺伝子を半分ずつ組み合わせ、ごく少量の突然変異を加えて子孫を生産する過程である。対照的に、無性生殖は親の遺伝子のわずかに変異したコピーで子孫を作る。無性生殖が個体の適応を最適化する上で優れているように思われるが、性的生殖は高等生物の進化の途中で採用されている。
- 性的生殖の優位性を説明する一つの可能性は、自然選択の基準が個々の適応性ではなく、遺伝子の混ざりやすさにあるかもしれない。遺伝子セットが他のランダムな遺伝子セットと上手く機能する能力は、それをより頑健にする。遺伝子は、常に大量のパートナーが存在するわけではないため、単独であるいは少数の他の遺伝子と協力して何か有用なことをすることを学ばなければならない。
- 性的生殖の役割は、新しい有用な遺伝子が集団全体に広がることを可能にするだけでなく、新しい遺伝子が個々の適応性を高めるチャンスを減らす複雑な共適応を減少させることである。
- 同様に、ドロップアウトで訓練されたニューラルネットワーク内の各隠れユニットは、ランダムに選択された他のユニットのサンプルと共に働くことを学ぶ必要がある。これは各隠れユニットをより頑健にし、他の隠れユニットに依存せずに独自の有用な特徴を作り出すようになる。

 

- ドロップアウトは、隠れユニットにノイズを加えることでニューラルネットワーク正則化する方法として解釈できる。以前から、デノイジングオートエンコーダ(DAEs)の文脈でユニットの状態にノイズを加えるアイデアがVincentらによって使用されていた。ここでは、オートエンコーダの入力ユニットにノイズを加え、ネットワークがノイズのない入力を再構築するように訓練される。
- 著者らの研究は、ドロップアウトが隠れ層にも効果的に適用でき、モデル平均化の形として解釈できることを示している。さらに、ノイズの追加が教師なし特徴学習だけでなく、教師あり学習問題にも拡張できることも示している。実際、この方法はボルツマンマシンなどの他のニューロンベースのアーキテクチャにも適用できる。
- ドロップアウトは、ノイズ分布の下で損失関数を確率的に最小化する技術と見なすことができる。これは、期待損失関数を最小化することと見なすことができる。GlobersonとRoweis(2006)、Dekel et al.(2010)の先行研究は、敵がどのユニットをドロップするかを選択できる設定で損失が最小化される代替設定を探求している。ここでは、ノイズ分布ではなく、ドロップできるユニットの最大数が固定されている。しかし、この作業でも隠れユニットを持つモデルは探求されていない。

 

Model Description

-ドロップアウトニューラルネットワークモデルは、L個の隠れ層を持つニューラルネットワークに対して定義される。
-各層 l において、入力ベクトル  z^(l) 、出力ベクトル y^(l) 、重み W^(l) 、バイアス b^(l)  が存在する。標準的なニューラルネットワークでは、次の層への入力は前の層の出力、重み、バイアスを用いて計算される。

-ドロップアウトを適用する場合、各層の各ユニットがランダムにドロップアウト(除外)されるかどうかがベルヌーイ分布に従って決定され、選択されたユニットの出力が次の層への入力に使用される。これにより、ネットワークは訓練中にさまざまなサブネットワークを模倣する。

-ここで「∗」は要素ごとの積を表す。任意の層 l において、r^(l)  は独立したベルヌーイ乱数変数のベクトルであり、各要素は1になる確率 p を持つ。このベクトルはサンプリングされ、その層の出力 y^(l)  と要素ごとに乗算され、間引きされた出力 を作成する。
-間引きされた出力は次の層への入力として使用される。このプロセスは各層で適用され、より大きなネットワークからサブネットワークをサンプリングすることに相当する。学習においては、損失関数の導関数がサブネットワークを通して逆伝播される。テスト時には、重みは   としてスケーリングされる。これにより得られるニューラルネットワークは、ドロップアウトなしで使用される。

 

. Learning Dropout Nets

-ドロップアウトニューラルネットワークは、標準的なニューラルネットと同様に、確率的勾配降下法を用いて訓練することができる。唯一の違いは、ミニバッチ内の各訓練ケースに対して、ユニットをドロップアウトすることで細らされたネットワークをサンプリングする点である。
-この間引いたネットワーク上でのみ、その訓練ケースに対する順伝播と逆伝播が行われる。各パラメータに対する勾配は、ミニバッチ内の訓練ケースごとに平均される。パラメータを使用しない訓練ケースは、そのパラメータに対してゼロの勾配を寄与する。
-モーメンタム、焼きなまし学習率、L2重み減衰など、確率的勾配降下法を改善するために多くの方法が使用されてきた。これらはドロップアウトニューラルネットワークにも有用であることがわかった。
-特にドロップアウトに有用な正則化の形態の一つとして、各隠れユニットへの入力重みベクトルのノルムを固定定数 c で上限することが挙げられる。つまり、任意の隠れユニットに入射する重みベクトル w に対して、ニューラルネットワークは  の制約の下で最適化される。この制約は、w がそれを超えた場合に、w を半径 c の球の表面に射影することによって最適化中に課される。これは最大ノルム正則化とも呼ばれ、任意の重みのノルムが取り得る最大値が c であることを意味する。

Unsupervised Pretraining 

-ニューラルネットワークは、RBM(Hinton and Salakhutdinov, 2006)、オートエンコーダ(Vincent et al., 2010)やディープボルツマンマシン(Salakhutdinov and Hinton, 2009)のスタックを用いて事前学習することができる。事前学習は、ラベルのないデータを利用する有効な方法である。
-これらの技術を用いて事前学習されたネットは、ドロップアウトを適用してファインチューニングすることができる。事前学習のプロセス自体に変更はない。ただし、事前学習から得られた重みは 1/p の係数でスケールアップする必要がある※1。これにより、ランダムドロップアウト時の任意のユニットからの期待出力が、事前学習時の出力と同じになることを保証する。
-当初はドロップアウトの確率的な性質が、事前学習で得た重みの情報を損なうのではないかと心配されていた。これは、ファインチューニング時に使用される学習率が、ランダムに初期化されたネットワークの最良の学習率に匹敵する場合に発生した。しかし、より小さい学習率が選択された場合、事前学習で得た重みの情報が保持されるようであり、ファインチューニング時にドロップアウトを使用しない場合と比較して、最終的な汎化誤差の面で改善が得られた。

※1 事前学習にドロップアウトを用いない場合の話だと思われる。

 

Experimental Results 

-分類問題において、異なるドメインのデータセットドロップアウトニューラルネットワークを訓練した。ドロップアウトを使用しないニューラルネットワークと比較して、すべてのデータセットで汎化性能が向上したことがわかった。
-使用されたデータセットは以下の通りである。

  • MNIST(手書き数字の標準的なトイデータセット)、
  • TIMIT(クリーンな音声認識のための標準的な音声ベンチマーク)、
  • CIFAR-10およびCIFAR-100(小さな自然画像)、
  • Street View House Numbers(SVHN)データセットGoogle Street Viewによって収集された家の番号の画像)、
  • ImageNet(大規模な自然画像コレクション)、
  • Reuters-RCV1(ロイター通信社の新聞記事のコレクション)、
  • Alternative Splicingデータセット(代替遺伝子スプライシングを予測するためのRNA特徴)。

-ドロップアウトニューラルネットの改善に一般的な技術であり、特定のアプリケーションドメインに特化していないことを示すために、多様なデータセットを選択した。このセクションでは、ドロップアウトの効果を示すいくつかの重要な結果を提示している。

MNIST

MNISTデータセットは、28×28ピクセルの手書き数字画像から構成される。タスクは、画像を10の数字クラスに分類することである。ドロップアウトと他の技術のパフォーマンスを比較すると、ドロップアウトや教師なし事前学習を使用しない順序不変設定での最良のニューラルネットワークは約1.60%の誤差を達成する(Simard et al., 2003)。ドロップアウトを使用すると、誤差は1.35%に減少する。ロジスティックユニットを修正線形ユニット(ReLUs)(Jarrett et al., 2009)に置き換えると、さらに誤差が1.25%に減少する。最大ノルム正則化を追加すると、再びそれを1.06%に減少させる。ネットワークのサイズを大きくすると、より良い結果が得られる。2層で各層に8192ユニットを持つニューラルネットは、0.95%の誤差にまで下がる。このネットワークは6500万以上のパラメータを持ち、60000のサイズのデータセットで訓練されている。このサイズのネットワークを標準的な正則化方法と早期停止を用いて良い汎化誤差で訓練することは非常に難しい。一方、ドロップアウトは、この場合でも過学習を防ぐ。早期停止すら必要としない。Goodfellow et al. (2013)は、ReLUユニットをmaxoutユニットに置き換えることで、結果をさらに0.94%に改善できることを示した。すべてのドロップアウトネットは、隠れユニットに対してp = 0.5、入力ユニットに対してp = 0.8を使用している。

・RBMのスタックやディープボルツマンマシンで事前学習されたドロップアウトネットも、表2に示されているように改善をもたらす。DBMで事前学習されたドロップアウトネットは、順序不変設定でこれまでに報告された中で最良の性能である0.79%のテスト誤差を達成する。
・2次元の空間情報を使用し、標準訓練セットからの画像の歪んだバージョンで訓練セットを拡張することで、より良い結果を得ることが可能である。より興味深いデータセットにおいて、その設定でドロップアウトの有効性を示す。
ドロップアウトの堅牢性をテストするために、すべてのハイパーパラメータ(pを含む)を固定したまま、多様なアーキテクチャのネットワークで分類実験が行われた。図4は、訓練が進行するにつれてこれら異なるアーキテクチャで得られたテスト誤差率を示している。ドロップアウトを使用した場合と使用しない場合で訓練された同じアーキテクチャは、2つの別々の軌跡のクラスタによって見られるように、大きく異なるテスト誤差を持つ。ドロップアウトは、各アーキテクチャに特化して調整されたハイパーパラメータを使用せずに、すべてのアーキテクチャにわたって大幅な改善をもたらす。

Street View House Numbers

・Street View House Numbers (SVHN) データセットは、Google Street Viewによって収集された家の番号のカラー画像から構成される。このデータセットの画像の例を下図が示している。実験で使用されるデータセットの部分は、家の番号の中の数字に大まかに中心を合わせた32×32のカラー画像である。タスクは、その数字を特定することである。


・このデータセットに対して、ドロップアウトを畳み込みニューラルネットワークに適用した(LeCun et al., 1989)。見つかった最良のアーキテクチャは、3つの畳み込み層の後に2つの完全に接続された隠れ層が続くものであった。すべての隠れユニットはReLUsであった。各畳み込み層の後には最大プーリング層が続いた。
・ネットワークのすべての層にドロップアウトが適用され、隠れユニットを保持する確率はネットワークの異なる層(入力から畳み込み層へ、完全に接続された層へ)に対してp = (0.9, 0.75, 0.75, 0.5, 0.5, 0.5)であった。畳み込み層と完全に接続された層の両方で、重みに対して最大ノルム正則化が使用された。表3は、異なる方法によって得られた結果を比較している。畳み込みネットが他の方法よりも優れていることがわかる。ドロップアウトを使用しない最良の性能を持つ畳み込みネットは、誤差率が3.95%であった。完全に接続された層にのみドロップアウトを追加すると、誤差は3.02%に減少する。畳み込み層にもドロップアウトを追加すると、さらに誤差は2.55%に減少する。maxoutユニットを使用することで、さらに大きな利得が得られる。
・畳み込み層にドロップアウトを追加することによって得られる性能の追加的な向上(3.02%から2.55%への減少)は注目に値する。畳み込み層はパラメータが多くないため、過学習は問題ではなく、したがってドロップアウトはあまり効果がないと考えられがちであるが、下層のドロップアウトは、それが高い完全に接続された層にノイズの多い入力を提供し、それらが過学習するのを防ぐために依然として役立つ。

 

CIFAR-10 and CIFAR-100

・CIFAR-10とCIFAR-100データセットは、それぞれ10カテゴリーと100カテゴリーから引き出された32×32のカラー画像で構成されている(下図)

 

・表4は、これらのデータセットにおける異なる方法によって得られた誤差率を示している。データ拡張を行わない場合、Snoek et al. (2012)はベイジアンハイパーパラメータ最適化を使用してCIFAR-10で14.98%の誤差率を達成した。完全に接続された層でドロップアウトを使用することで、それを14.32%に減少させ、すべての層にドロップアウトを追加することでさらに誤差を12.61%に減少させた。Goodfellow et al. (2013)は、ReLUユニットをmaxoutユニットに置き換えることで、誤差がさらに11.68%に減少することを示した。CIFAR-100では、ドロップアウトは誤差を43.48%から37.20%に減少させ、これは大きな改善である。どちらのデータセットにもデータ拡張は使用されていない(入力ドロップアウトを除く)。

ImageNet

・ImageNetは、約22,000カテゴリーに属する1500万枚以上の高解像度画像で構成されるデータセットである。2010年から、Pascal Visual Object Challengeの一環として、ImageNet Large-Scale Visual Recognition Challenge (ILSVRC)と呼ばれる年次競技会が開催されている。このチャレンジでは、各1000カテゴリーにおよそ1000枚の画像が含まれるImageNetのサブセットが使用される。カテゴリー数が非常に多いため、一般に2つのエラー率、トップ1エラー率とトップ5エラー率が報告される。トップ5エラー率は、テスト画像の正しいラベルがモデルによって最も可能性が高いと考えられる5つのラベルの中にない割合である。図6は、いくつかのテスト画像に対するモデルの予測を示している。


・ILSVRC-2010は、テストセットのラベルが利用可能なILSVRCの唯一のバージョンであるため、実験の大部分はこのデータセットで実施された。表5は、異なる方法の性能を比較している。畳み込みネットワークとドロップアウトを使用したものは、他の方法よりも大きなマージンで優れている。アーキテクチャと実装の詳細は、Krizhevsky et al. (2012)で詳細に記述されている。畳み込みネットとドロップアウトを基にしたモデルは、ILSVRC-2012競技を優勝した。

・テストセットのラベルが利用可能でないため、最終提出のテストセットの結果を報告し、モデルの異なるバリエーションに対する検証セットの結果を含める。表6は、競技からの結果を示している。標準的な視覚特徴に基づく最良の方法が約26%のトップ5エラー率を達成する一方で、畳み込みネットとドロップアウトを使用したものは約16%のテストエラーを達成し、これは驚異的な差である。図6は、モデルによる予測の例をいくつか示している。モデルは、最良の推測が正しくない場合でも、非常に妥当な予測を行っていることがわかる。

Results on TIMIT

音声認識タスクにドロップアウトを適用した。使用したTIMITデータセットは、アメリカ英語の8つの主要方言をカバーする680人の話者からの、制御されたノイズフリー環境で読まれた10の音声学的に豊かな文から成る録音を含む。ドロップアウトニューラルネットワークは、21のログフィルタバンクフレームのウィンドウを訓練し、中央のフレームのラベルを予測するために訓練された。話者依存の操作は行われなかった。
・6層ネットは電話誤差率23.4%を達成し、ドロップアウトを使用するとそれが21.8%に改善された。事前学習された重みから始めてドロップアウトネットを訓練した場合、RBMのスタックで事前学習された4層ネットは電話誤差率22.7%を達成し、ドロップアウトを使用するとこれが19.7%に減少した。同様に、8層ネットでは誤差が20.5%から19.7%に減少した。

Results on a Text Data Set

テキストドメインでのドロップアウトの有用性をテストするために、ドキュメントクラス分類器を訓練するためにドロップアウトネットワークを使用した。使用したのは、Reutersからの800,000以上のニュース記事のコレクションであるReuters-RCV1データセットのサブセットである。これらの記事は様々なトピックをカバーしている。タスクは、ドキュメントのバッグ・オブ・ワーズ表現を取り、50の互いに排他的なトピックに分類することである。ドロップアウトを使用しない最良のニューラルネットは誤差率31.05%を得たが、ドロップアウトを追加することで誤差率が29.62%に減少した。視覚と音声データセットに対する改善と比較して、改善ははるかに小さかった。

 

Comparison with Bayesian Neural Networks

ドロップアウトは、共有された重みを持つ指数関数的に多くのモデルの等加重平均を行う方法と見なすことができる。一方、ベイジアンニューラルネットワークは、ニューラルネットワークの構造とパラメータの空間にわたるモデル平均を適切に行う方法である。ドロップアウトでは各モデルが等しく重み付けされるが、ベイジアンニューラルネットワークでは、事前知識とモデルがデータにどれだけ適合しているかを考慮して各モデルを重み付けする。これはより正確なアプローチである。ベイジアンニューラルネットは、医療診断、遺伝学、薬物発見、その他の計算生物学アプリケーションなど、データが不足しているドメインでの問題を解決するのに非常に有用である。しかし、ベイジアンニューラルネットを訓練し、非常に大きなネットワークサイズにスケールするのは困難である。加えて、テスト時に多くの大きなネットから予測を得ることはコストがかかる。一方、ドロップアウトニューラルネットは、訓練とテスト時の使用がはるかに迅速である。このセクションでは、ベイジアンニューラルネットドロップアウトニューラルネットを、ベイジアンニューラルネットワークがよく機能することが知られている小規模なデータセットで比較した実験を報告する。目的は、ドロップアウトベイジアンニューラルネットに比べてどれだけ損失があるかを分析することである。
・使用したデータセットは遺伝学のドメインから来ており、RNA特徴に基づいて代替スプライシングの発生を予測するタスクである。評価指標はCode Qualityで、目標と予測された確率分布間の負のKLダイバージェンスの尺度である(高い方が良い)。表8は、このデータセットにおける異なるモデルの性能をまとめている。訓練セットのサイズが小さいため、過学習を防ぐことがこのデータセットの課題である。過学習を防ぐ一つの方法は、PCAを使用して入力次元を削減することである。その後、SVMやロジスティック回帰などの標準的な技術を使用できる。しかし、ドロップアウトを使用することで、次元削減を行わずに過学習を防ぐことができた。ドロップアウトネットは、ベイジアンネットワークの数十ユニットに比べて非常に大きい(数千の隠れユニット)ことが示されている。これはドロップアウトが強力な正則化効果を持つことを示してい

 Comparison with Standard Regularizers 

ニューラルネットワークにおける過学習を防ぐために、いくつかの正則化方法が提案されている。これにはL2重み減衰(一般的にはティホノフ正則化(Tikhonov, 1943))、ラッソ(Tibshirani, 1996)、KLスパース性、最大ノルム正則化が含まれる。ドロップアウトは、ニューラルネットワーク正則化する別の方法と見なすことができる。このセクションでは、MNISTデータセットを使用して、ドロップアウトをこれらの正則化方法のいくつかと比較する。
・同じネットワークアーキテクチャ(784-1024-1024-2048-10)にReLUを用いて、異なる正則化を使用して確率的勾配降下法で訓練された。表9は結果を示している。各種正則化に関連する異なるハイパーパラメータ(減衰定数、目標スパース性、ドロップアウト率、最大ノルムの上限)の値は、検証セットを使用して得られた。ドロップアウトを最大ノルム正則化と組み合わせると、最も低い汎化誤差が得られることがわかった。

Salient Features

ドロップアウトニューラルネットワークに与える影響を詳細に検討する。

 Effect on Features

・標準的なニューラルネットワークでは、各パラメータが受け取る導関数は、最終的な損失関数をどのように減少させるべきかを指示するが、これは他のすべてのユニットが何をしているかに基づいている。そのため、ユニットは他のユニットの間違いを修正する方法で変化するかもしれない。これにより、複雑な共適応が生じる。これは、これらの共適応が未知のデータに一般化しないため、過学習につながる。我々は、各隠れユニットについて、ドロップアウトが他の隠れユニットの存在を信頼できないものにすることで共適応を防ぐと仮定する。したがって、隠れユニットは自身の間違いを修正するために他の特定のユニットに依存することはできない。それは、他の隠れユニットによって提供される様々な異なるコンテキストでうまく機能しなければならない。この効果を直接観察するために、ドロップアウトの有無に関わらず、視覚タスクで訓練されたニューラルネットワークによって学習された最初のレベルの特徴を見る。
・図7aは、ドロップアウトなしで256の修正線形ユニットを持つ単一の隠れ層を持つオートエンコーダーがMNISTで学習した特徴を示している。図7bは、隠れ層でp=0.5のドロップアウトを使用した同一のオートエンコーダーが学習した特徴を示している。両方のオートエンコーダーは類似のテスト再構築誤差を持っていた。しかし、図7aに示された特徴が良い再構築を生み出すために共適応していることが明らかである。各隠れユニット自体は意味のある特徴を検出しているようには見えない。一方、図7bでは、隠れユニットは画像の異なる部分にあるエッジ、ストローク、スポットを検出しているように見える。これは、ドロップアウトが共適応を分断することを示しており、これが一般化誤差を低減させる主な理由である可能性が高い。

 Effect on Sparsity

ドロップアウトを行うことの副作用として、隠れユニットの活性化がスパースになることがわかった。これは、スパース性を誘導する正則化項が存在しない場合でも同様である。したがって、ドロップアウトは自動的にスパースな表現を導く。この効果を観察するために、前セクションで訓練されたオートエンコーダーを取り、テストセットから無作為に取ったミニバッチ上での隠れユニットの活性化のスパース性を見る。図8aと図8bは、2つのモデルのスパース性を比較している。良いスパースモデルでは、任意のデータケースに対して高い活性化を持つユニットが少数であるべきである。さらに、データケース全体での任意のユニットの平均活性化も低いべきである。これら両方の特性を評価するために、各モデルについて2つのヒストグラムをプロットする。各モデルの左側のヒストグラムは、ミニバッチ全体での隠れユニットの平均活性化の分布を示している。右側のヒストグラムは、隠れユニットの活性化の分布を示している。
・活性化のヒストグラムを比較すると、図8bにおいては、図8aと比較して高い活性化を持つ隠れユニットが少ないことが、ドロップアウトを使用しないネットのためのゼロから遠い顕著な質量によって見ることができる。ドロップアウトネットの平均活性化も小さい。ドロップアウトなしのオートエンコーダーの隠れユニットの全体的な平均活性化は約2.0に近いが、ドロップアウトを使用すると約0.7に減少する。

ドロップアウトには、ネットワーク内でユニットを保持する確率 p という調整可能なハイパーパラメータがある。このセクションでは、このハイパーパラメータを変化させたときの効果を探る。比較は2つの状況で行われる。隠れユニットの数を一定に保つ。
ドロップアウト後に保持されると予想される隠れユニットの数が一定になるように、隠れユニットの数を変更する。

・最初のケースでは、異なる量のドロップアウトを使用して同じネットワークアーキテクチャを訓練する。784-2048-2048-2048-10のアーキテクチャを使用し、入力ドロップアウトは使用しない。図9aは、p の関数として得られたテストエラーを示している。アーキテクチャを一定に保つ場合、小さい p は訓練中に非常に少数のユニットがオンになることを意味する。これがアンダーフィッティングにつながったことが見て取れる、なぜなら訓練エラーも高いからである。p が増加するにつれてエラーが減少し、0.4≤p≤0.8 の間でフラットになり、p が1に近づくにつれて再び増加することがわかる。

・もう一つの興味深い設定は、pn が一定に保持される第二のケースであり、ここで 
n は特定の層の隠れユニットの数である。これは、小さい p を持つネットワークは多くの隠れユニットを持つことを意味する。したがって、ドロップアウトを適用した後、異なるアーキテクチャ間で存在するユニットの予想数が同じになる。しかし、テストネットワークは異なるサイズになる。実験では、最初の2つの隠れ層に対して pn=256、最後の隠れ層に対して pn=512 を設定した。図9bは、p の関数として得られたテストエラーを示している。小さい p の値に対するエラーの大きさが図9aと比べて大幅に減少していることが注目される(p=0.1 では2.7%から1.7%に落ちた)。pn のこの選択に対して、
p が約0.6に近い値が最も良い性能を発揮するようであるが、通常のデフォルト値である0.5も最適に近い。

Effect of Data Set Size 

・良い正則化手法の一つの試験は、小さなデータセットで訓練された大量のパラメータを持つモデルから良い一般化誤差を得られるようにすることである。このセクションでは、フィードフォワードネットワークでドロップアウトを使用した場合のデータセットサイズを変更する効果を探る。標準的な方法で訓練された巨大なニューラルネットワークは、小さなデータセットで大量に過学習する。ドロップアウトが助けになるかどうかを見るために、MNISTで分類実験を行い、ネットワークに与えるデータの量を変える。
・実験の結果は図10に示されている。ネットワークには、MNIST訓練セットから無作為に選ばれた100、500、1K、5K、10K、50Kのサイズのデータセットが与えられた。すべてのデータセットに対して同じネットワークアーキテクチャ(784-1024-1024-2048-10)が使用された。すべての隠れ層でp=0.5、入力層でp=0.8のドロップアウトが行われた。極めて小さいデータセット(100、500)では、ドロップアウトが改善をもたらさないことが観察される。モデルはドロップアウトから来る全てのノイズにもかかわらず、訓練データに過学習するのに十分なパラメータを持っている。データセットのサイズが増加するにつれて、ドロップアウトからの利得が増加し、ある点まで上がった後で減少する。これは、与えられたアーキテクチャドロップアウト率に対して、ノイズにもかかわらず記憶されないほど十分に大きく、しかし過学習が問題にならないほど大きくもない、ある量のデータに対応する「最適な点」が存在することを示唆している。

 

Monte-Carlo Model Averaging vs. Weight Scaling

・効率的なテスト時処理は、訓練済みニューラルネットワークの重みをスケールダウンすることで、近似モデルの組み合わせを行う方法である。一方、各テストケースに対してドロップアウトを用いて複数のニューラルネットをサンプリングし、その予測を平均化する方法は、より正確だがコストが高い。

・k個のニューラルネットワークの予測を平均化することで分類を行う実験では、k=50で近似方法と同等の性能を示すことがわかった。その後、モンテカルロ法は近似法よりも若干優れているが、その差は標準偏差の範囲内である。これは重みスケーリング法が真のモデル平均のかなり良い近似であることを示唆している。

 

Dropout Restricted Boltzmann Machines

フィードフォワードニューラルネットワーク以外にも、ドロップアウトは制限ボルツマンマシン(RBM)に適用することができる。このセクションでは、このモデルを正式に説明し、その主要な特性を示すいくつかの結果を示す。
モデルの説明:可視ユニット  と隠れユニット   を持つRBMを考える。以下の確率分布を定義する:

ドロップアウトRBMは、二値ランダム変数のベクトルr∈{0,1} F  で拡張されたRBMである。各ランダム変数 rj  は、他と独立して確率 p で値1を取る。rj  が値1を取る場合、隠れユニット hj  はモデルに保持され、そうでない場合はモデルからドロップされる。ドロップアウトRBMによって定義される結合分布は以下のように表現できる:

 

r に条件付けされた {v,h} 上の分布は、RBMが課す分布と同じであるが、rj =0 の単位は 
h から除外される。したがって、ドロップアウトRBMモデルは、共有された重みを持つ指数関数的に多くのRBMの混合と見なすことができ、それぞれが h の異なるサブセットを使用している。

Learning Dropout RBMs

・制限ボルツマンマシン(RBM)用に開発された学習アルゴリズム、例えばコントラスティブ・ダイバージェンス(Hinton et al., 2006)は、ドロップアウトRBMの学習に直接適用することができる。唯一の違いは、最初に r がサンプリングされ、保持される隠れユニットのみが訓練に使用されることである。ドロップアウトニューラルネットワークと同様に、各訓練ケースごとに異なる r が各ミニバッチでサンプリングされる。実験では、ドロップアウトRBMの訓練にCD-1を使用する。

Effect on Features

フィードフォワードネットワークにおけるドロップアウトは、共適応を減少させることで特徴の品質を向上させた。このセクションでは、この効果がドロップアウトRBMにも転移するかを探る。図12aは、256個の隠れユニットを持つ二値RBMによって学習された特徴を示し、図12bは同じ数の隠れユニットを持つドロップアウトRBMによって学習された特徴を示す。ドロップアウトRBMによって学習された特徴は、標準RBMの鋭く定義されたストロークのような特徴と比較して、より粗い特徴を捉えているように質的に異なるように見える。ドロップアウトRBMには、標準RBMに比べて死んだユニットが非常に少ないように見える。

Effect on Sparsity

・次に、ドロップアウトRBMの訓練が隠れユニットの活性化のスパース性にどのような効果を持つかを調査する。図13aは、RBMの訓練後のテストミニバッチでの隠れユニット活性化とその平均のヒストグラムを示し、図13bはドロップアウトRBMについて同じものを示す。ヒストグラムは、追加のスパース性を誘発する正則化項が存在しない場合でも、ドロップアウトRBMが標準RBMよりもはるかにスパースな表現を学習することを明確に示している。

 Marginalizing Dropout

ドロップアウトは、ニューラルネットワーク内の隠れユニットの状態にノイズを加える方法と見なすことができる。このセクションでは、このノイズを周辺化することで生じるモデルのクラスを探る。これらのモデルは、ドロップアウト決定論的バージョンと見なすことができる。標準の(「モンテカルロ」)ドロップアウトとは対照的に、これらのモデルはランダムビットを必要とせず、周辺化された損失関数の勾配を得ることが可能である。このセクションでは、これらのモデルを簡単に探る。
・テスト時の特徴削除に対して堅牢なモデルを学習しようとする決定論アルゴリズムが提案されている(Globerson and Roweis, 2006)。デノイジングオートエンコーダの文脈での周辺化が以前に探られている(Chen et al., 2012)。線形回帰の文脈でのドロップアウトノイズの周辺化については、Srivastava (2013)で議論されている。Wang and Manning (2013)は、トレーニングをスピードアップするためにドロップアウトの周辺化を探った。van der Maaten et al. (2013)は、異なる入力ノイズ分布とこのノイズの周辺化によって得られる正則化項を調査した。Wager et al. (2013)は、ドロップアウトが適応型正則化器として見ることができる方法を説明している。

 

Linear Regression

最初に、線形回帰の古典的な問題にドロップアウトを適用する非常に単純なケースを探る。をNデータポイントのデータ行列、  を目標ベクトルとする。線形回帰は、を最小化する   を見つけようとする:

入力 X がドロップアウトされ、任意の入力次元が確率 p で保持される場合、入力は 
R∗X として表現できる。ここで、Rはベルヌーイ(p)に従いである。
ノイズを周辺化すると、目的関数は次のようになる:

これは次に簡約される:


ここで、。したがって、線形回帰におけるドロップアウトは、期待値において、特定の形の Γ を持つリッジ回帰と同等である。この形の Γ は、データの i 次元の標準偏差によって重みコストをスケールする。特定のデータ次元が大きく変動する場合、正則化器はその重みをより強く圧縮しようとする。

 

Logistic Regression and Deep Networks

ロジスティック回帰や深層ニューラルネットでは、周辺化されたモデルの閉形式を得ることは困難である。しかし、Wang and Manning (2013)は、ロジスティック回帰にドロップアウトを適用した文脈で、対応する周辺化モデルを近似的に訓練することができることを示した。妥当な仮定の下で、ロジスティックユニットへの入力と周辺化モデルの勾配の分布はガウス分布である。その平均と分散は効率的に計算することができる。この近似的な周辺化は、訓練時間と一般化性能の点でモンテカルロドロップアウトを上回る。
しかし、この技術に関わる仮定は、より多くの層が追加されるにつれて次第に弱くなる。したがって、結果は深いネットワークに直接適用できない。

 

Multiplicative Gaussian Noise

ドロップアウトは、隠れ活性化に確率 p で値1を取り、それ以外の場合は0を取るベルヌーイ分布のランダム変数を乗算することを含む。このアイデアは、活性化に他の分布から抽出されたランダム変数を乗算することによって一般化することができる。最近、N(1, 1)から抽出されたランダム変数を乗算することが、ベルヌーイノイズを使用するのと同じくらい、あるいはそれ以上にうまく機能することが発見された。この新しい形式のドロップアウトは、ユニットの活性化に等しい標準偏差を持つゼロ平均のガウス分布ランダム変数を加えることに相当する。つまり、各隠れ活性化 hi  はhi +hi r に摂動される。ここで r∼N(0,1)、または同等に h i r′ここでr′ ~N(1,1)。これを r′ ∼N(1,σ^2 ) に一般化することができる。ここで σ は、標準の(ベルヌーイ)ドロップアウトの 
p のように、調整する追加のハイパーパラメータとなる。活性化の期待値は変わらないため、テスト時に重みスケーリングは必要ない。

・本論文では、訓練時に確率 p でユニットを保持し、テスト時にそれらを p の係数でスケールダウンする方法としてドロップアウトを説明した。同じ効果を達成する別の方法は、訓練時に保持された活性化を 1/p でスケールアップし、テスト時に重みを変更しないことである。これらの方法は、学習率と各層の重みの初期化を適切にスケーリングすることで等価である。

・したがって、ドロップアウトは hi  にベルヌーイランダム変数 rb  を乗算することと見なすことができる。ここで rb  は確率 p で値1/p を取り、それ以外の場合は0を取る。乗法的ガウスノイズの場合、σ^2 =(1−p)/p を設定すると、hi  に乗算されるランダム変数 rg  が得られる。ここでE[rg] ]=1 および Var[rg]]=(1−p)/p である。したがって、両方の形式のドロップアウトは、乗算されるランダム変数が同じ平均と分散を持つように設定することができる。しかし、これらの一次および二次モーメントが与えられた場合、
rg  は最高のエントロピーを持ち、rb  は最低のエントロピーを持つ。これらの両極端はうまく機能するが、表10に示された予備的な実験結果は、高エントロピーのケースがわずかに優れている可能性があることを示唆している。各層におけるガウスモデルの σ の値は、ベルヌーイモデルの対応する層の p を使用して (1−p)/p  に設定された。

 Conclusion

ドロップアウトは、過学習を軽減することでニューラルネットワークの性能を向上させる技術である。標準的なバックプロパゲーション学習では、訓練データには有効だが未知のデータには一般化しない脆弱な共適応が形成される。ランダムなドロップアウトは、特定の隠れユニットの存在を信頼できないものにすることで、これらの共適応を分断する。この技術は、物体分類、数字認識、音声認識、文書分類、計算生物学データの分析を含む幅広いアプリケーションドメインニューラルネットの性能を向上させることが見出された。これは、ドロップアウトが一般的な技術であり、特定のドメインに特化していないことを示唆している。ドロップアウトを使用する方法は、SVHN、ImageNet、CIFAR-100、MNISTで最先端の結果を達成している。ドロップアウトは、他のデータセットでも標準的なニューラルネットの性能を大幅に向上させた。
・このアイデアは、制限ボルツマンマシン(RBM)やその他のグラフィカルモデルに拡張することができる。ドロップアウトの中心的な考え方は、容易に過学習する大きなモデルを取り、それから小さなサブモデルを繰り返しサンプリングして訓練することである。RBMはこの枠組みに容易に適合する。ドロップアウトRBMを開発し、それらが望ましい特性を持つことを実証的に示した。ドロップアウトの欠点の一つは、訓練時間が増加することである。ドロップアウトネットワークは、同じアーキテクチャの標準的なニューラルネットワークと比較して、訓練に2〜3倍長くかかることが多い。この増加の主な原因は、パラメータ更新が非常にノイズが多いことである。各訓練ケースは、事実上異なるランダムアーキテクチャを訓練しようとしている。したがって、計算されている勾配は、テスト時に使用される最終アーキテクチャの勾配ではない。そのため、訓練に時間がかかるのは驚くべきことではない。しかし、この確率性が過学習を防ぐ可能性が高い。これは、過学習と訓練時間のトレードオフを生み出す。より多くの訓練時間をかけることで、高いドロップアウトを使用し、過学習を少なくすることができる。しかし、確率性なしでドロップアウトのいくつかの利点を得る方法の一つは、ノイズを周辺化して、期待値でドロップアウト手順と同じことをする正則化器を得ることである。線形回帰の場合、この正則化器はL2正則化の修正形である。より複雑なモデルでは、同等の正則化器を得る方法は明らかではない。ドロップアウトの高速化は、将来の研究の興味深い方向性である。

 

おまけ