問題タブ [autoencoder]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
1217 参照

machine-learning - オートエンコーダでスパース項の代わりに正則化項を使用しないのはなぜですか?

Andrew Ng によって紹介された autoencoder に関するこの記事を読みました。そこでは正則化のようなスパリティを使ってコネクションを落としているが、スパースのフォーミュラは正規化とは違う。では、モデル NN やロジスティック回帰のような正則化項を直接使用しない理由を知りたい: (1/2 * m) * Theta^2 ?

0 投票する
5 に答える
6306 参照

python - 密な Tensor Tensorflow からの疎な Tensor (行列)

畳み込みスパース オートエンコーダーを作成しており、値でいっぱいの 4D マトリックス (形状は[samples, N, N, D]) をスパース マトリックスに変換する必要があります。

サンプルごとに、D NxN の特徴マップがあります。各 NxN 機能マップを疎行列に変換し、最大値を 1 に、その他すべてを 0 にマッピングしたいと考えています。

実行時ではなくグラフ宣言中にこれを実行したくありません (結果の疎行列を他のグラフ操作への入力として使用する必要があるため) が、疎行列を構築するためのインデックスを取得する方法がわかりません。

0 投票する
2 に答える
418 参照

python - 畳み込みオートエンコーダーを構築するときの間違った次元

Keras で最初の一歩を踏み出し、レイヤーのサイズに苦労しています。現在、MNIST データセットを使用してトレーニングしたい畳み込みオートエンコーダーを構築しています。残念ながら、寸法を正しく取得できないようで、どこが間違っているのかわかりません。

私のモデルは次の方法で構築されています。

データは次を使用して取得されます。

ご覧のとおり、画像を正規化して白黒で表示し、単純に自動エンコーダーをトレーニングして復元できるようにしようとしています。

以下に、私が得ているエラーを見ることができます:

トレースバック (最新の呼び出しが最後): ファイル "C:/Users//Documents/GitHub/main/research/research_framework/experiment.py", line 46, in callbacks=[EarlyStopping(patience=3)]) ファイル "C: \Users\AppData\Local\Continuum\Anaconda2\lib\site-packages\keras\engine\training.py", line 1047, in fit batch_size=batch_size) ファイル "C:\Users\AppData\Local\Continuum\Anaconda2\ lib\site-packages\keras\engine\training.py", line 978, in _standardize_user_data exception_prefix='model target') ファイル "C:\Users\AppData\Local\Continuum\Anaconda2\lib\site-packages\keras\ engine\training.py", line 111, in standardize_input_data str(array.shape)) 例外: モデル ターゲットをチェックするときのエラー: convolution2d_7 が形状 (None, 8, 32, 1) を持っていると予想されましたが、形状 (60000L, 1L) の配列を取得しました、28L、28L) パラメータの合計: 8273

プロセスは終了コード 1 で終了しました

このエラーを解読するのを手伝ってくれませんか? モデルの構築とこの種の問題への対処について、Keras の Web サイト以外に資料はありますか?

乾杯

0 投票する
1 に答える
405 参照

matlab - matlab でのスパース オートエンコーダーの教師なしトレーニング

私は mathworks で提供されているディープ スパース オートエンコーダー (4 層) のトレーニングの例に従おうとしたため、オートエンコーダーを個別に事前トレーニングしてから、ディープ ネットワークにスタックしました。ただし、train(deepnet, InputDataset) 命令を使用してこのネットワークを微調整しようとすると、トレーニングが即座に停止し、「パフォーマンス目標が達成されました」というメッセージが表示されます。Matlab で教師なしの方法でディープ オートエンコーダー ネットワークをトレーニングおよび微調整する方法はありますか (ラベルは提供されません)?

0 投票する
2 に答える
1067 参照

keras - RNN Variational autoencoder での文字列入出力表現

私は見ています..分子オートエンコーダーを使用すると、化合物の補間と勾配ベースの最適化を行うことができますhttps://arxiv.org/pdf/1610.02415.pdf

この論文は、入力 Smiles 文字列 (分子のテキスト表現) を受け取り、変分エンコーダを使用して 2D 潜在空間にマッピングします。

ヘキサン-3-オール「CCCC(O)CC」のスマイル文字列の例

この論文では、短い文字列をスペースで 120 文字まで埋めています。

この論文では、1D 畳み込みネットワークのスタックを使用して文字列をエンコードし、笑顔文字列の潜在表現にしました。

次に、3 Gated recurrent Units GRU を使用して、潜在空間内の位置を笑顔文字列にマッピングします。

この論文を理解する上で私が抱えている問題は、入力構造と出力構造がどのように見えるかを判断することです。

この論文は、入力と出力の構造について少し曖昧です。1D conv ネットの使用から、入力は次のようなベクトル化された表現であると思われます

出力で紙は言う

RNN デコーダの最後の層は、SMILES 文字列の各位置で可能なすべての文字の確率分布を定義します

したがって、35 の可能なスマイル文字を含む用紙で使用されている 120 の最大スマイル長は、出力が [120x35] 配列であることを意味しますか?

そのロジックを進めることは、入力が代わりに平坦化された[120 * 35]配列であることを示唆しています-オートエンコーダーを念頭に置いてください。

それに関する私の問題は、フラット化された[120 * 35]配列の場合、シーケンス内の次のアトムをカバーするのに十分ではない最大長9を使用する1dConvです

ご協力いただきありがとうございます...

0 投票する
0 に答える
59 参照

python - Autoencoder - 複数のデータ例の場合、コストは低下しますが出力が正しくありません

最近、numpy でオートエンコーダーを実装しました。すべての勾配を数値的にチェックしたところ、それらは正しいように見えます。また、学習率が十分に小さい場合、コスト関数も反復ごとに減少するようです。

問題:

ご存じのとおり、オートエンコーダーは inputを取得し、できるだけx近いものを返そうとします。x

my が行ベクトルの場合はいつでも、x非常にうまく機能します。コスト関数は 0 に減少し、非常に良い結果が得られます。たとえばx = [[ 0.95023264 1. ]]、10000 回の反復後に得られた出力xhat = [[ 0.94972973 0.99932479]]で、コスト関数が約 10^-7

ただし、 myxが行ベクトルでない場合、2 行 2 列の小さな行列であっても、出力は元の x に近くなく、コスト関数は 0 まで減少せず、横ばいになります。

例:

入力がx = [[ 0.37853141 1. ][ 0.59747807 1. ]]の場合、出力はxhat = [[ 0.48882265 0.9985147 ][ 0.48921648 0.99927143]]です。xhat の最初の列が x の最初の列に近くないように見えますが、x の最初の列の平均に近いことがわかります。これは、私が実行したすべてのテストで発生するようです。また、コスト関数は 0.006 あたりで頭打ちになり、0 にはなりません。

なぜこれが起こり、どうすれば修正できますか? 繰り返しますが、導関数は正しいです。これを修正する方法がわかりません。

私のコード

0 投票する
1 に答える
1034 参照

python - Keras fit_generator 生成例外: ジェネレーターの出力はタプル(x, y, sample_weight) または (x, y) である必要があります。見つかりました: [[[[ 0.86666673

非 MNIST、非 Imagenet データのオートエンコーダーを構築しようとしています。https://blog.keras.io/building-autoencoders-in-keras.htmlをベースとして使用し ます。ただし、次のエラーが発生します。

これはオートエンコーダーであるため、私のデータジェネレーターでは、class mode=None を使用しました。私のコードは次のとおりです。