タグ付けされた質問 「autoencoders」

独自の入力を再構築するようにトレーニングされたフィードフォワードニューラルネットワーク。通常、隠れ層の1つは「ボトルネック」であり、エンコーダー->デコーダーの解釈につながります。

4
畳み込みニューラルネットワーク、制限付きボルツマンマシン、および自動エンコーダーの違いは何ですか?
最近、私はディープラーニングについて読んでいますが、用語(またはテクノロジー)について混乱しています。違いは何ですか 畳み込みニューラルネットワーク(CNN)、 制限付きボルツマンマシン(RBM)および 自動エンコーダー?



4
スパースコーディングとオートエンコーダーの違いは何ですか?
スパースコーディングは、入力ベクトル(<-なぜこれが必要なのか)を表すために、基底ベクトルの過剰なセットを学習することと定義されます。スパースコーディングとオートエンコーダーの違いは何ですか?スパースコーディングとオートエンコーダを使用するのはいつですか?


3
TensorflowでPCAを超えるオートエンコーダーを構築する
ニューラルネットワークでデータの次元数を削減するヒントンとサラクーディノフ、サイエンス 2006は、ディープオートエンコーダーの使用による非線形PCAを提案しました。Tensorflowを使用してPCAオートエンコーダーを何度も構築およびトレーニングしようとしましたが、線形PCAよりも良い結果を得ることができませんでした。 オートエンコーダを効率的にトレーニングするにはどうすればよいですか? (@amoebaによる後の編集:この質問の元のバージョンには、正しく動作しなかったPython Tensorflowコードが含まれていました。編集履歴で見つけることができます。)

2
変分オートエンコーダーでのKLD損失と再構成損失の重み付け方法
VAEで見たほぼすべてのコード例で、損失関数は次のように定義されています(これはtensorflowコードですが、theano、torchなどでも同様です。これはconvnetでも見られますが、あまり関係ありません) 、単に合計が引き継がれる軸に影響します): # latent space loss. KL divergence between latent space distribution and unit gaussian, for each batch. # first half of eq 10. in https://arxiv.org/abs/1312.6114 kl_loss = -0.5 * tf.reduce_sum(1 + log_sigma_sq - tf.square(mu) - tf.exp(log_sigma_sq), axis=1) # reconstruction error, using pixel-wise L2 loss, for each batch rec_loss = …

1
変分オートエンコーダーとは何ですか?また、どの学習タスクに使用されますか?
ごとに 、このと、この答えは、オートエンコーダは、次元削減のためのニューラルネットワークを使用する技術であるように見えます。さらに、変分オートエンコーダー(「従来の」オートエンコーダーとの主な違い/利点)、およびこれらのアルゴリズムが使用される主な学習タスクも知りたいと思います。

2
オートエンコーダーは意味のある機能を学習できません
次の2つのような50,000個の画像があります。 データのグラフを表します。これらの画像から特徴を抽出したかったので、Theano(deeplearning.net)が提供するオートエンコーダコードを使用しました。 問題は、これらのオートエンコーダーが機能を学習していないようです。私はRBMを試しましたが、それは同じです。 MNISTデータセットは素晴らしい機能を提供しますが、私のデータは何ももたらさないようです。以下に例を示します。 MNISTで作成されたフィルター: データをトレーニングして作成したフィルター: 隠れ層サイズとトレーニングエポックのさまざまな組み合わせを使用しましたが、結果は常に同じです。 なぜ機能しないのですか?自動エンコーダーがこれらの画像から特徴を抽出できないのはなぜですか? 編集: 同様の問題を抱えている人のために。解決策は本当にシンプルで、原因は本当に馬鹿げていました。RGBエンコーディングのピクセル値を0〜1の範囲の浮動小数点数に再スケーリングするのを忘れました。 値を再スケーリングすることで問題が解決しました。

3
スタック型畳み込みオートエンコーダのアーキテクチャは何ですか?
だから私は畳み込みネットを使って人間の画像の事前訓練をしようとしています。論文(Paper1とPaper2)とこのstackoverflowリンクを読みましたが、ネットの構造を理解しているかどうかはわかりません(論文で明確に定義されていません)。 質問: 入力に続いてノイズレイヤー、コンバーレイヤー、プーリングレイヤーの順に入力することができます-その後-出力を与える前にプールを解除します(これは入力イメージと同じです)? 複数(135,240)の画像があるとします。32(12,21)カーネルを使用し、続いて(2,2)プーリングを使用すると、32(62、110)の機能マップになります。ここで、プールを解除して32(124、220)の機能マップを取得し、それらをフラット化しますか?(135,240)出力レイヤーを与える前に? 複数のこのようなコンボプールレイヤーがある場合、スタックされたノイズ除去オートエンコーダーのように、それらを1つずつトレーニングする必要がありますか?または-input-conv-pool-conv-pool-conv-pool-output(出力は入力と同じです)のようなものを持つことができますか?その場合、プーリング、デプールはどのように管理されるべきですか?出力前に最後のプール層でのみプール解除する必要がありますか?そして再び-そのプール解除のサイズ変更要因は何でしょうか?機能マップを入力の形状に戻すつもりですか? conv-pool-depoolレイヤーごとにノイズレイヤーを導入する必要がありますか? そして、微調整するとき-デプール層を削除し、残りは同じままにする必要がありますか?または、ノイズ層とプール解除層の両方を削除する必要があります 画像の事前トレーニングを行うために、このようなスタック型畳み込み自動エンコーダーのアーキテクチャを詳しく説明したURL /ペーパーを教えてください。

1
オートエンコーダーの損失関数
私はビットオートエンコーダを実験しており、テンソルフローを使用して、MNISTデータセットを再構築しようとするモデルを作成しました。 私のネットワークは非常に単純です:X、e1、e2、d1、Y、ここでe1とe2はエンコード層、d2とYはデコード層です(そしてYは再構築された出力です)。 Xには784個、e1には100個、e2には50個、d1には再び100個、Y 784には再びあります。 シグモイドをレイヤーe1、e2、d1、およびYのアクティベーション関数として使用しています。入力は[0,1]であり、出力もそうである必要があります。 さて、クロスエントロピーを損失関数として使用してみましたが、出力は常にブロブであり、Xからe1への重みは常にゼロ値の行列に収束することに気付きました。 一方、損失関数として二乗平均誤差を使用すると、適切な結果が得られ、入力を再構築できるようになりました。 どうしてこんなことに?値を確率として解釈することができ、したがってクロスエントロピーを使用できると思いましたが、明らかに何か間違っています。

4
オートエンコーダではなく、バリエーションオートエンコーダを使用する必要があるのはいつですか?
変分オートエンコーダーと通常の(決定論的)オートエンコーダーの基本構造とそれらの背後にある数学を理解していますが、あるタイプのオートエンコーダーを他のタイプよりもいつ、なぜ好むのでしょうか?私が考えることができるのは、変分オートエンコーダーの潜在変数の事前分布だけで、潜在変数をサンプリングしてから新しいイメージを構築できることです。決定論的オートエンコーダに対する変分オートエンコーダの確率論はどのような利点がありますか?

3
なぜオートエンコーダーが必要なのですか?
最近、私はオートエンコーダーを研究しています。正しく理解できれば、オートエンコーダーは、入力層が出力層と同一のニューラルネットワークです。そのため、ニューラルネットワークは、入力をゴールデンスタンダードとして使用して出力を予測しようとします。 このモデルの有用性は何ですか?いくつかの出力要素を再構成して、入力要素と可能な限り等しくすることの利点は何ですか?なぜ同じ出発点に到達するためにこの機械をすべて使用する必要があるのですか?

1
機械学習モデルの「容量」とは何ですか?
Carl DoerschによるVariational Autoencodersに関するこのチュートリアルを勉強しています。2ページ目には、次のように記載されています。 このようなフレームワークの中で最も人気のあるものの1つは、このチュートリアルの主題であるVariational Autoencoder [1、3]です。このモデルの前提条件は弱く、逆伝播によるトレーニングは高速です。VAEは概算を行いますが、この概算によって導入されるエラーは、大容量モデルを考えると間違いなく小さいものです。これらの特徴は人気の急速な上昇に貢献しています。 私は過去に、大容量モデルに関するこの種の主張を読みましたが、それについて明確な定義を見つけられないようです。私はこの関連するスタックオーバーフローの質問も見つけましたが、私にとっては答えは非常に満足できません。 モデルの容量の定義はありますか?測定できますか?

1
スタックオートエンコーダーと2層ニューラルネットワークのトレーニングに違いはありますか?
2層スタックオートエンコーダと2層ニューラルネットワークを構築するためのアルゴリズムを書いているとしましょう。それらは同じものですか、違いですか? 私が理解しているのは、スタックされたオートエンコーダーを構築するとき、レイヤーごとに構築するということです。ニューラルネットワークの場合、ネットワーク内のすべてのパラメーターを初期化し、各データポイントに対してネットワークを通過させて損失(例:真正距離)を計算し、逆伝播を行います。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.