LoginSignup
3
4

More than 5 years have passed since last update.

【論文シリーズ】積層ノイズ除去自己符号化器

Posted at

原文

ノイズ除去積層自己符号化器:局所的なノイズ除去基準を利用した深層ネットワークにおける有用な特徴量の学習(Stacked denoising autoencoders: Learning useful representations in a deep network with a local denoising criterion)
Pascal Vincent (2010)

1. 要約

  • 岡谷青本5.7.2項の元論文(詳細記述)
  • 自己符号化器の入力値にノイズ(corrupted input)を付加し、出力層へ再構成させる。
  • 結果的には、ノイズを除去する機構の学習にもつながり、対照モデルに比べ、頑健性が増す。
  • SVMのような浅層の識別器にも適用できる。

2. 骨子の理論

~ノイズの種類~
・ガウシアンノイズ→標準正規分布に基づく乱数を入力値に加える
・マスキングノイズ(MN)→入力要素のうち、一部をマスキングして、自己符号化器が使えないようにする
・ソルト&ペッパーノイズ(SP)→入力値のうち、一部を最大値か最小値(たいてい0と1)のいずれかに変換する(白黒画像のような2値データを扱うときに有効)

自己符号化器の評価関数は、ノイズ(corruption)の場合も内包したモデリングになる。まず、二乗誤差関数を評価する場合。

L_{2,\alpha}({\bf x},{\bf z}) = \alpha\Bigl(\sum_{j\in J(\tilde{\bf x})}({\bf x}_j - {\bf z}_j)^2\Bigr) + \beta\Bigl(\sum_{j\notin J(\tilde{\bf x})}({\bf x}_j - {\bf z}_j)^2\Bigr)

$J(\tilde{\bf x})$はノイズ項の集合を表す。
交差エントロピーを評価関数に置く場合は、次のようになる。

L_{{\bf H},\alpha}({\bf x},{\bf z}) = \alpha\Bigl(-\sum_{j\in J(\tilde{\bf x})}[{\bf x}_j\log{\bf z}_j - (1-{\bf x}_j)\log(1-{\bf z}_j)]\Bigr) + \beta\Bigl(-\sum_{j\notin J(\tilde{\bf x})}[{\bf x}_j\log{\bf z}_j - (1-{\bf x}_j)\log(1-{\bf z}_j)]\Bigr)

αおよびβは、設定パラメータである。
SDAEの模式図を下に記す。この図では、マスキングノイズの様子を図示している。

151126141544_3.JPG

3. モデル適用例

①順伝播型NN、DBNとの比較
MNISTに色んな脚色を施したサンプルを用意して、性能を比較した。
期待通り、3層SDAEのパフォーマンスが最も良かった。

151126141544_4.JPG

②テストデータのノイズ量との関係
ノイズが少ない領域では、積層の数に応じて識別能力が高くなった。しかし、ノイズの程度が大きくなるほど積層による効果の差分がなくなっていった。

151126141544_5.JPG

③SVMのようなNN以外の識別器との併用について
結論を言うと、パフォーマンスの向上が確認された。

151126141544_6.JPG

3
4
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
4