Generative Adversarial Networksで巨大なデータセットを生成できますか


14

私は、トレーニングのためにディープニューラルネットワークに入力するのに十分なデータセット(画像)を見つけることができなかった問題を扱っています。

私は、スコット・リードらによって発行された論文「Generative Adversarial Text to Image Synthesis」にとても触発されました。生成的敵対ネットワークについて。

私はそれを知りたいのですが、利用可能な小さなデータセットをGANモデルへの入力として使用し、より深いネットワークモデルに対処するためにはるかに大きなデータセットを生成できますか?

それで十分でしょうか?


非画像データセットにGANを使用できますか?
モハメドEL-KADDOURY

@ MohamedEL-KADDOURYはい、もちろん、音声arxiv.org/abs/1802.04208、テキストarxiv.org/abs/1801.07736などで
Alwyn Mathew

回答:


9

これにより、直接的なデータ収集の努力をはるかに超えることはほとんどありません。

現在のGAN出力の品質(2017年時点)は十分に高くありません。GANによって生成される画像は一般的に小さく、異常/曖昧な詳細と奇妙な歪みが含まれる場合があります。リンクされた論文では、文から、システムによって生成された画像は、主題与えられた色の信じられるブロックを持っているが、文なしでそれらのほとんどは、として認識されない期待する何をプライミング任意の特定の対象。

文章から画像を生成するよりも野心的ではないGAN(上記の私の批判にもかかわらず、本当に驚くべき偉業IMO)は、写真に近い画像を生成するはずです。しかし、それらの範囲はより狭くなり、おそらくあなたの希望する画像タイプは含まれません。また、通常、出力サイズは小さく、たとえば64x64または128x128 *であり、元のグラウンドトゥルース写真がはるかに望ましいほど十分な歪みとあいまいさが残っています。

GAN自体は利用可能なトレーニングライブラリによって制限されています。トレーニングデータの範囲外の画像を生成しようとするとうまくいきません。もちろん、研究論文に示されている結果は、トレーニングデータによって提供されるドメインに焦点を当てています。しかし、あなたはただ養うことができない任意のこのモデルに文を、有用な他の場所になり、結果を期待しています。

問題に適したデータセットでトレーニングされたGANを見つけた場合は、同じデータをプロジェクトに直接ソースしてみることをお勧めします。

グラウンドトゥルースデータが限られている問題に直面している場合、GANを使用するより良い方法は、VGG-19やInception v5などの事前に訓練された分類器を使用し、最後のいくつかの完全に接続されたレイヤーを置き換えて、データに合わせて調整してください。PythonでKerasライブラリを使用してそれを実行する例を次に示します。他の例は、「CNN画像分類子の微調整」などの検索で見つけることができます。


*最新のGANは、この回答を投稿してから改善されました。Nvidiaの研究チームは、1024x1024の写真のようにリアルな画像を作成することに成功しました。しかし、これは私の答えの他のポイントを変更しません。GANは画像分類タスクの画像の信頼できるソースではありません。ただし、GANがすでに訓練され、条件付きで(またはもっと簡単に)「その他」カテゴリのソースデータを提供できるサブタスクを除く分類子)。


3

現在作成中のDNNでもまったく同じ問題があります。データセットを取得し、GANを使用して新しいデータを合成するのは素晴らしいアイデアのようです。ただし、GAN自体は、トレーニングセットで学習したのと同じ画像分散と標準偏差を持つ画像の出力のみを学習します。したがって、新しく生成されたデータは、同じサンプル分布のより多くの順列を単純に表します。これにより、NNが同じディストリビューションでより適切にトレーニングできるようになるため、過剰なトレーニングにつながる可能性があります。


3

純粋に理論的な観点からのみ、これは不可能です。

特定のトレーニングデータセットは、特定の空間の構造に関する一定量の情報を表します。このデータセットでGANをトレーニングすると、そのデータセットで表される情報からのみ学習します。GANによって合成されたデータは、単純な理由により、元のデータよりも大きなスペースから取得することはできません。この情報はどこから来るのでしょうか?元のデータセットになかった場合、GANからの合成データに含めることもできません。

データセットで収束するようにニューラルネットワークをトレーニングすると、そのニューラルネットワークはデータセットに含まれる構造を学習します。GANによって合成された人工トレーニングデータは、新しい情報を追加しません。そのアイデアは単純明快です。


2

実際には、GANを使用して小さなデータセットを拡張し、それを改善することができます。また、https: //arxiv.org/pdf/1803.01229.pdfを読むと、分類ネットワークのパフォーマンスも向上します。GANは、たとえば元の日付セットに関係しないがまだ有効な中間形状を学習できます。したがって、合成画像は実際にデータセットのサイズを改善し、CNN分類の精度を改善できます。

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