問題タブ [generative-adversarial-network]
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.
python - 畳み込みは、0 ~ 1 の範囲ではなく巨大な値を出力します
画像の 2 チャネルで動作する GAN を開発しています。ネットワークには、0 ~ 1 の範囲で再スケーリングされたイメージ レイヤー データが供給されます。
大まかに以下のように構成されています(グラフ表現がありません、ごめんなさい)
concatenate(multiply(noise_a, l_channel), multiply(noise_b, l_channel))
- nx (
(Conv2D with relu activation)
+batchnorm
)
ステップ1は、次のconv2Dステップに供給される2つのレイヤーを生成します
入力として渡されるすべてのもの (ノイズ、画像チャネル) が 0 ~ 1 の範囲で再スケーリングされることを確認しましたが、ネットワークの出力は膨大な値を生成します (-128 -> 1000+ の範囲)。
出力は 0 ~ 1 の範囲になると予想されます (後で -128、+127 の範囲で再スケーリングされます)。
質問
- 出力範囲が 0 ~ 1 であるという仮定は間違っていますか?
- これを実現するために他に何を確認または修正する必要があるか教えていただけますか?
どんな助けでも大歓迎です。ありがとうございました
image - Generative Adversial Networks、ディスクリミネーターと画像アーティファクトの発散 (PIX2PIX)
私は現在、GAN 構造である Pix2Pix アルゴリズムを実装しようとしていますが、ディスクリミネーターの収束とジェネレーターの出力画像にいくつかの問題があります...
1) 収束問題 :
弁別器がまったく収束していないようです。ジェネレーターの損失を印刷すると、非常にうまく機能しているようです。
しかし、ディスクリミネーターの損失を印刷すると、次のプロットが表示されます。
そのような行動の考えられる理由は何か知っていますか? 弁別器の学習を安定させるにはどうすればよいですか?
2) 色収差
生成された画像にもいくつか問題があります。確かに、私はしばしば色の合計彩度を持っています.印刷されたオブジェクトには、そのような色が1つしかありません:
解決策は、たとえば200ステップごとに弁別器をトレーニングするようです。この場合、次のようなものを取得します。
でも、全然満たされない…。
(正確には、最初の列はジェネレーターの入力、2 番目の列はジェネレーターの出力、3 番目の列はターゲット画像です。今のところ、ネットワークで同じ画像を再現しようとしているだけです...簡単なはず…)
NB : 初期化も色に対して非常に重要な役割を果たしているようです。実際、まったく同じパラメーターを使用して、何千もの手順を経て実際に異なる結果が得られました。
誰かがこれらの現象を説明するアイデアを持っていますか?
あなたの読書とあなたの潜在的な助けに感謝します!
python - GAN のディスクリミネーターとジェネレーターのトレーニングで nan 損失値を取得するのはなぜですか?
いくつかの負の数で構成される gensim ライブラリを使用して、テキスト ベクトルを保存しました。トレーニングに影響はありますか?そうでない場合、最初に弁別器の nan 損失値を取得し、次に特定のトレーニング手順の後に弁別器と発電機の両方の nan 損失値を取得するのはなぜですか?