ニューラルネットワークによるデータの次元削減(Reducing the Dimensionality of Data with Neural Networks)(3)
トロント大学ヒントン(G. E. Hinton)教授のReducing the Dimensionality of Data with Neural Networksの和訳です。
我々の事前訓練アルゴリズムによって我々が深いネットワークを効率的に微調整することができることを証明するために、2次元上のランダムに選ばれた3点から作られた「カーブ」の画像から成る合成データ集合について、非常に深い自動エンコーダを我々は訓練した*1。このデータ集合について、真に固有の次元は既知で、画素の明暗度とそれらを生成するのに用いた6個の数の間の関係は高度に非線型である。画素の明暗度は0から1の間にあり、ガウス分布からかけ離れているので、我々はオートエンコーダ内にロジスティック出力ユニットを用い、学習の微調整ステージはクロス・エントロピー誤差 , を最小化した。ここでは画素の明暗度であり、は、その再建における明暗度である。
そのオートエンコーダはサイズ(28×28) -400-200-100-50-25-6の層を持つエンコーダと、それに対照的なデコーダから成る。コード層の6個のユニットは線形で他のユニットはロジスティックであった。このネットワークは20,000枚の画像について訓練され、10,000枚の新しい画像でテストした。このオートエンコーダは、個々の784画素画像を、ほぼ完全な再建を可能にする6個の実数に変換する仕方を発見した (Fig. 2A)。
- テストデータ集合からのカーブのランダムなサンプル
- 6次元のディープ・オートエンコーダが作成した再建
- 6成分を用いる「ロジスティック主成分分析」*2による再建
- 18成分を用いるロジスティック主成分分析による再建
- 18成分を用いる標準主成分分析による再建
下4つの列における1画像あたり平均2乗誤差は、1.44, 7.64, 2.45, 5.90。
(B)上から下へ
- 個々のクラスからのランダムなテスト画像
- 30次元オートエンコーダによる再建
- 30次元ロジスティック主成分分析による再建
- 30次元標準主成分分析による再建。
下3つの列における1画像あたり平均2乗誤差は、3.00, 8.01, 13.87。
(C) 上から下へ
- テストデータ集合からのランダムなサンプル
- 30次元オートエンコーダによる再建
- 30次元主成分分析による再建
平均2乗誤差は126と135。
主成分分析による再建はずっと悪かった。事前訓練なしでは、引き延ばした微調整*3の後でさえ、まさに深いオートエンコーダは常に訓練データの平均を再現している。データとコードの間に1つの隠れた層を持つ、より浅いオートエンコーダは事前訓練なしに学習出来るが、事前学習はその総訓練時間を非常に短縮する*4。パラメータの数が同じ場合、深いオートエンコーダは浅いエンコーダより、テストデータについて低い再建誤差をもたらすが、パラメータの数が増加するにつれてこの利点は消えていく *5。
次に、我々は784-1000-500-250-30 オートエンコーダを用いて、MNIST訓練集合内の全ての手書き数字のためのコードを抽出した*6。事前訓練と微調整に我々が用いたMtlabコードはScience Onlineの教材で利用可能である。ここでも、コード層にある30個の線形ユニットを除いて全てのユニットはロジスティックであった。60,000枚の全ての訓練画像について微調整したのち、オートエンコーダは10,000枚の新しい画像でテストされ、主成分分析が行ったよりずっと良い再建を生成した(図2B)。2次元オートエンコーダは、最初の2つの主成分で行ったよりも良いデータの可視化を生み出した(図3)。
図3
(A) 60,000枚の訓練画像全ての主要な2つの成分を求めることで生成された個々のクラスの500個の数字についての2次元コード。
(B) 784-1000-500-250-2オートエンコーダによって見つけられた2次元コード。別の視覚化については、Science Onlineの教材を参照。
我々はまた、線形ニュ力ユニットを持つ625-2000-1000-500-30オートエンコーダを用いて、オリベッティ顔データ集合*7から取り出したグレースケール画像についての30次元コードも発見した。オートエンコーダは明らかに主成分分析より性能が優れている(図2C)。