1. 概要

このチュートリアルでは、生成モデルのアプリケーションについて説明します。最初に、生成モデルのドメインについて簡単に紹介し、次に5つのアプリケーションといくつかの視覚的な例を示します。 。

2. 生成モデル

生成モデルの主な目標は、入力データの基礎となる分布を学習することです。次に、これらのモデルは、特定のサンプルの可能性を予測し、学習した基礎となる分布に基づいて現実的なサンプルを生成できます。 最もよく知られている生成モデルは、ゼロサムゲームで競合する2つのネットワークを使用してデータ分散を学習するGANです。GANの背後にある理論の詳細については、前のチュートリアル。

3. データ拡張

生成モデルの非常に重要なアプリケーションはデータ拡張です。大量のトレーニングデータに注釈を付けることが困難または費用がかかる場合は、GANを使用して合成データを生成し、データセットのサイズを増やすことができます。

たとえば、 StyleGANは、Nvidiaによって提案された生成モデルであり、存在しない人間の顔の非常にリアルな画像を生成できます。以下の画像では、StyleGANによって生成されたいくつかの合成顔をさまざまな形で見ることができます。解像度。 これらの合成顔画像と実際の顔画像の間に違いは見られないと確信しています。 これらの人々が実際に存在しないという事実は印象的です:

StyleGANは、生成される顔のスタイルも制御できます。ネットワークの一部は、ヘアスタイルや頭のポーズなどの高レベルのスタイルを制御し、その他の部分は、顔の表情やより細かいディテールを制御します。 したがって、このモデルでは、別の人のスタイルを使用して、ある人のスタイルを変更できます。 以下の画像では、ソースAのスタイルとソースBのIDが組み合わされて合成顔画像が生成され、結果は非常にリアルです。

4. 超解像

生成モデルが多くのアプリケーションを見つけたもう1つのドメインは、入力画像の解像度を向上させることを目標とする超解像です。具体的には、入力として低解像度画像(のような)を取り、解像度を(さらにそれ以上に)上げ、品質を可能な限り高く保ちます。 超解像は、航空または医療画像分析、ビデオエンハンスメント、監視などの幅広いアプリケーションで非常に困難なタスクです。

SRGAN は、低解像度の画像から写真のようにリアルな高解像度の画像を正常に復元できる生成モデルです。 このモデルは、ほとんどのGANアーキテクチャのように、敵対的ネットワークと組み合わせた深いネットワークで構成されています。

下の画像では、SRGANのいくつかのエキサイティングな結果を見ることができます。左側には、元の低解像度画像があります。 真ん中にはSRGANによって生成された高解像度画像があり、右側には元の高解像度画像があります。

生成された画像は、元の高解像度画像と非常によく似ていることがわかります。 モデルは、最終的な品質を低下させることなく、入力画像の解像度を上げることができました。

5. 修復

画像の修復では、画像の欠落領域を再構築することがタスクです。特に、新しい画像が依然としてリアルでコンテキストが一貫性のある。 このタスクのアプリケーションは、画像のレンダリング、編集、不要なオブジェクトの削除など、数多くあります。

Deepfillは、生成モデルベースのアプローチを使用する画像修復タスク用のオープンソースフレームワークです。その目新しさは、ジェネレータが離れた空間位置によって与えられた情報を利用できるようにするContextualAttentionレイヤーにあります。ローカルの欠落ピクセルの再構成。

以下に、Deepfillの効果を、自然のシーン、顔、テクスチャの3種類の画像で確認できます。

モデルは、画像のコンテキストの一貫性を保ちながら、欠落しているピクセルを非常に自然に埋めることができます。

6. ノイズ除去

今日では、最新のデジタルカメラのおかげで高品質の写真を撮ることができます。 ただし、画像にノイズが多く含まれ、品質が低い場合があります。 画像の特徴を失うことなく画像からノイズを除去することは非常に重要なタスクであり、研究者は長年にわたってノイズ除去方法に取り組んできました。

画像ノイズ除去の非常に人気のある生成モデルは、ノイズを除去した後に入力画像を再構築するようにトレーニングされたオートエンコーダです。トレーニング中に、ネットワークに元の画像とそのノイズの多いバージョンが与えられます。 次に、ネットワークは出力を元の画像にできるだけ近づけるように再構築しようとします。 その結果、モデルは画像のノイズ除去を学習します。

7. 翻訳

最後になりましたが、生成モデルは、2つの画像ドメイン間のマッピングを学習することを目的とした画像翻訳でも使用されます。次に、モデルは、特定の入力画像の合成バージョンを生成できます。冬の風景を夏に翻訳するような変更。

CycleGANは、画像変換用の非常に有名なGANベースのモデルです。モデルは、ソースドメインとターゲットドメインからの画像のデータセットを使用して、教師なし方法でトレーニングされます。 この方法から派生したアプリケーションはあなたの想像を超えています!

7.1. コレクションスタイルの転送

ここでは、モデルはランダムな風景を入力として受け取り、それをモネ、ゴッホ、セザンヌ、浮世絵などの有名な画家の絵に変換します。

7.2. オブジェクトの変容

StyleGANのもう1つのエキサイティングなアプリケーションは、モデルが1つのオブジェクトクラスを別のオブジェクトクラスに変換するオブジェクト変換です。たとえば、馬をシマウマに、冬の風景を夏の風景に、リンゴをオレンジに変換します。

7.3. 画像のカラー化

CycleGANを使用して、画像の自動カラー化を行うことができます。これは、古くなった画像や劣化した画像の復元などの分野で非常に役立ちます。 以下では、CycleGANは花のグレースケール画像をカラフルなRGB形式に変換します。

8. 結論

このチュートリアルでは、生成モデルのいくつかのエキサイティングなアプリケーションを紹介しました。