なぜオートエンコーダーが必要なのですか?


17

最近、私はオートエンコーダーを研究しています。正しく理解できれば、オートエンコーダーは、入力層が出力層と同一のニューラルネットワークです。そのため、ニューラルネットワークは、入力をゴールデンスタンダードとして使用して出力を予測しようとします。

このモデルの有用性は何ですか?いくつかの出力要素を再構成して、入力要素と可能な限り等しくすることの利点は何ですか?なぜ同じ出発点に到達するためにこの機械をすべて使用する必要があるのですか?

回答:


17

自動エンコーダーには、入力レイヤー、非表示レイヤー、および出力レイヤーがあります。入力は出力と同じになるように強制されるので、興味のある隠れ層です。

隠れ層は、入力の一種のエンコーディングを形成します。「自動エンコーダーの目的は、一連のデータの圧縮された分散表現(エンコード)を学習することです。」入力が100次元ベクトルであり、非表示層に60個のニューロンがある場合、自動エンコーダーアルゴリズムは、入力をエンコードする60次元ベクトルを提供するプロセスで、出力層に100次元ベクトルとして入力を複製します。

したがって、自動エンコーダーの目的は、他の多くの中でも特に次元削減です。


@Madhulikaに感謝、たぶん私は理解しました。このアルゴリズムは次のように機能します。入力層を持ち、入力層と同じ出力層を持つためにニューラルネットワークをトレーニングします。入力層と出力層を比較し、それらが異なる場合、ニューラルネットワークの再トレーニングを続けます。それらが同一になると停止します。終了したら、最後の非表示レイヤーを入力レイヤーの最適な次元削減近似として使用し、必要な目標に使用します。これは正しいです?
ラリー14年

うん、あなたはそれをほぼ正しくしました。:)さらにいくつかの文献を読んでください。
マドゥリカムヘルジー14

5

また、母集団をモデル化して、新しいベクトルを入力するときに、入力からの出力の違いを確認できるようにすることもできます。それらが「かなり」同じである場合、入力が母集団と一致すると仮定できます。それらが「まったく」異なる場合、入力はおそらくモデル化した母集団に属していません。

私はそれを一種の「ニューラルネットワークによる回帰」と見なします。そこでは、データを記述する関数を用意しようとします。その出力は入力と同じです。


3

たぶん、これらの写真はあなたにいくらかの直観を与えます。上記のコメンターが言ったように、自動エンコーダーはトレーニング例からいくつかの高レベルの特徴を抽出しようとします。予測アルゴリズムを使用して、2番目の図の深いNNの各隠しレベルを個別にトレーニングする方法を確認できます。

ここに画像の説明を入力してください

ここに画像の説明を入力してください

写真はロシアのウィキペディアから取られています。


1
写真へのコメントが役立ちます。
ティム
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.