GitHubじゃ!Pythonじゃ!

GitHubからPython関係の優良リポジトリを探したかったのじゃー、でも英語は出来ないから日本語で読むのじゃー、英語社会世知辛いのじゃー

eriklindernoren

PyTorch-GAN – Generative Adversarial NetworksのPyTorch実装

投稿日:

Generative Adversarial NetworksのPyTorch実装。

PyTorch-GAN

研究論文で示されたGenerative Adversarial Networkの種類のPyTorch実装のコレクション。 モデルアーキテクチャは、論文で提案されているものを常に反映するわけではありませんが、すべてのレイヤ設定を正しく行う代わりに、コアアイデアを取り上げることに集中しました。 実装するGANの貢献と提案は非常に歓迎されています。

Keras-GAN も参照してください。

目次

インストール

$ git clone https://github.com/eriklindernoren/PyTorch-GAN
$ cd PyTorch-GAN/
$ sudo pip3 install -r requirements.txt

実装

補助分類器GAN

補助分類子生成的敵対ネットワーク

著者

アウグストゥス・オデナ、クリストファー・オラ、ジョナトン・シュレンツ

抽象

高解像度のフォトリアリスティックな画像を合成することは、機械学習において長年の課題でした。 本稿では、画像合成のための生成的敵対ネットワーク(GAN)の改良された訓練のための新しい方法を紹介する。 我々は、ラベルコンディショニングを用いたGANの変形を構築し、128×128解像度の画像サンプルがグローバルな一貫性を示すようにする。 これまでの画像品質評価の作業を拡張して、クラス条件付き画像合成モデルからサンプルの識別可能性と多様性を評価するための2つの新しい分析を提供します。 これらの分析は、高分解能サンプルが低分解能サンプルに存在しないクラス情報を提供することを実証する。 ImageNetの1000クラスの中で、128×128のサンプルは、人工的にサイズを変更した32×32のサンプルの2倍以上の識別性があります。 さらに、クラスの84.7%は、実際のImageNetデータに匹敵する多様性を示すサンプルを持っています。

[ペーパー] [コード]

実行例

$ cd implementations/acgan/
$ python3 acgan.py

敵対的なオートエンコーダー

敵対的なオートエンコーダー

著者

Alireza Makhzani、Jonathon Shlens、Navdeep Jaitly、Ian Goodfellow、Brendan Frey

抽象

本論文では、自動符号化装置の隠れコードベクトルの集合後位を(a)と(b)に一致させることにより、最近提案された生成敵対ネットワーク(GAN)を用いて確率推論を行う確率的自動符号化器である “adversarial autoencoder”(AAE)任意の事前分布。 集約された後方事象を事前事象と一致させることは、先行空間の任意の部分からの生成が意味のある標本をもたらすことを保証する。 その結果、敵対的なオートエンコーダのデコーダは、データ配信に先立って課された深い生成モデルを学習する。 我々は、反監督的なオートエンコーダーが、半教師付き分類、イメージの解体スタイルおよびコンテンツ、監督されていないクラスター化、次元削減、およびデータ視覚化などのアプリケーションでどのように使用できるかを示します。 我々は、MNIST、ストリートビューハウスナンバー、トロントフェースのデータセットに関する実験を行い、敵対的なオートエンコーダーがジェネレーションモデルティングとセミスクーバビングの分類作業において競争力のある成果を上げていることを示しました。

[ペーパー] [コード]

実行例

$ cd implementations/aae/
$ python3 aae.py

BEGAN

BEGAN:Boundary Equilibrium Generative Adversarial Networks

著者

David Berthelot、Thomas Schumm、Luke Metz

抽象

我々は、自動エンコーダベースの生成的敵対ネットワークをトレーニングするためのWasserstein距離から導出された損失と対になる新しい平衡実施方法を提案する。 この方法は、トレーニング中に発生器と弁別器とのバランスをとる。 さらに、新しい近似収束測定、速く安定したトレーニング、高い視覚品質を提供します。 画像の多様性と画質のトレードオフを制御する方法も導き出しています。 私たちは画像生成タスクに焦点を当て、高解像度でも画質の新しいマイルストーンを設定します。 これは、比較的単純なモデルアーキテクチャと標準的なトレーニング手順を使用して達成されます。

[ペーパー] [コード]

実行例

$ cd implementations/began/
$ python3 began.py

BicycleGAN

マルチモーダル画像 – 画像変換を目指して

著者

リチャード・チャン、ディパク・パタク、トレバー・ダレル、アレクセイ・エフロス、オリバー・ワン、エリ・シェフトマン

抽象

単一の入力画像が複数の可能な出力に対応する可能性があるので、多くの画像 – 画像変換の問題はあいまいである。 この作業では、条件生成モデリング設定で可能な出力の\ emph {分布}をモデル化することを目指しています。 マッピングのあいまい性は、テスト時にランダムにサンプリングすることができる低次元の潜在的なベクトルで掘り下げられます。 ジェネレータは、この潜在コードと組み合わされた与えられた入力を出力に写像することを学びます。 我々は、出力と潜在的コードとの間の接続が可逆的であることを明示的に促す。 これは、学習中の潜在的なコードから出力への多対1のマッピング(モード崩壊の問題としても知られている)を防止し、より多様な結果を生成するのに役立ちます。 我々は、異なる訓練目標、ネットワークアーキテクチャ、および潜在コードを注入する方法を採用することによって、このアプローチのいくつかの変形を探求する。 我々の提案する方法は、潜在的な符号化モードと出力モードとの間の全容一致を促す。 知覚リアリズムと多様性の両方について、我々の方法と他の変種との系統的比較を提示する。

[ペーパー] [コード]

実行例

$ cd data/
$ bash download_pix2pix_dataset.sh edges2shoes
$ cd ../implementations/bicyclegan/
$ python3 bicyclegan.py

境界探索GAN

境界を求める生成的敵対ネットワーク

著者

Rデボン・ヘイム、Athul Paul Jacob、Tong Che、Adam Trischler、チョン・キョン、Yoshua Bengio

抽象

Generative adversarial networks(GAN)は、ターゲットと生成されたディストリビューションの間の差の尺度を推定するために識別器を訓練することに依存する学習フレームワークです。 一般に公式化されているGANは、生成されたサンプルが生成パラメータで完全に微分可能であることに依存しているため、離散データに対しては機能しません。 我々は、識別器から推定された差の尺度を用いて生成されたサンプルの重要度を計算する離散データを用いてGANを訓練する方法を導入し、それによってジェネレータを訓練するためのポリシー勾配を提供する。 重要度重みは、弁別子の決定境界に強く関連しており、メソッド境界探索GAN(BGAN)と呼ばれています。 我々は、離散画像と文字ベースの自然言語生成を用いた提案アルゴリズムの有効性を実証する。 さらに、境界探索を目的とした目的は、トレーニングの安定性を向上させるために使用できる連続的なデータにも及んでおり、セレバ、LSUN(Large-Scale Understanding)のベッドルーム、

[ペーパー] [コード]

実行例

$ cd implementations/bgan/
$ python3 bgan.py

条件付きGAN

条件付き生成的対立ネット

著者

Mehdi Mirza、Simon Osindero

抽象

Generative Adversarial Nets [8]は、最近、生成モデルを訓練するための新しい方法として導入されました。 この作業では、生成的対立ネットの条件付きバージョンを紹介します。生成する対立ネットは、単純にデータを供給して生成することができます.yは、ジェネレータとディスクリミネータの両方に条件を設定します。 このモデルは、クラスラベルに条件付けられたMNIST数字を生成することができることを示す。 また、このモデルがマルチモーダルモデルを学習するためにどのように使用できるかを示し、このアプローチが学習ラベルに含まれない記述タグを生成する方法を示す画像タグ付けのアプリケーションの予備的な例を提供します。

[ペーパー] [コード]

実行例

$ cd implementations/cgan/
$ python3 cgan.py

コンテキスト条件付きGAN

文脈条件付き生成的敵対ネットワークを用いた半教師あり学習

著者

エミリー・デントン、サム・グロス、ロブ・ファーガス

抽象

我々は、敵対的損失を用いてイン・ペインティングに基づく画像のための簡単な半教師あり学習手法を導入する。 ランダムなパッチが除去された画像は、周りのピクセルに基づいて穴を埋めることになる発電機に提示される。 その後、イン・ペイントされた画像は、それらが実際の(変更されていないトレーニング画像)か否かを判断する弁別者ネットワークに提示される。 このタスクは、弁別者の標準監督された訓練のための正則化者として働く。 我々のアプローチを用いて、大規模なVGGスタイルのネットワークを半監督形式で直接訓練することができます。 我々はSTL-10とPASCALのデータセットを評価し、既存の手法に匹敵するかそれよりも優れた性能を得る。

[ペーパー] [コード]

実行例

$ cd implementations/ccgan/
$ python3 ccgan.py

コンテキストエンコーダ

コンテキストエンコーダ:インペインティングによる特徴学習

著者

Deepak Pathak、Philipp Krahenbuhl、Jeff Donahue、Trevor Darrell、Alexei A. Efros

抽象

我々は、コンテキストベースのピクセル予測によって駆動される教師なしの視覚的特徴学習アルゴリズムを提示する。 自動エンコーダーと同様に、コンテキストエンコーダー(コンテキストエンコーダー)が提案されています。コンテクストエンコーダーは、周囲に条件付けされた任意の画像領域のコンテンツを生成するように訓練された畳み込みニューラルネットワークです。 このタスクで成功するためには、コンテキストエンコーダは、画像全体の内容を理解するだけでなく、不足している部分についてもっともらしい仮説を生成する必要があります。 コンテキスト・エンコーダをトレーニングする際には、標準的なピクセル単位の再構成損失と、再構成と、敵対的な損失の両方を実験しました。 後者は出力で複数のモードをよりよく扱うことができるため、よりシャープな結果を生成します。 コンテキストエンコーダは、外観だけでなく視覚的構造の​​セマンティクスもキャプチャする表現を学習することがわかった。 我々は、分類、検出、およびセグメンテーションタスクに関するCNNプレトレーニングのための学習された機能の有効性を定量的に実証している。 さらに、コンテキストエンコーダは、スタンドアローンまたは非パラメトリックメソッドの初期化のいずれかとして、セマンティンの修復作業に使用できます。

[ペーパー] [コード]

実行例

$ cd implementations/context_encoder/
<follow steps at the top of context_encoder.py>
$ python3 context_encoder.py

行:マスク| インパインテッド| オリジナル| マスクされた| インパインテッド| 元の

結合されたGAN

結合された生成的敵対ネットワーク

著者

Ming-Yu Liu、Oncel Tuzel

抽象

我々は、マルチドメイン画像の共同分布を学習するための結合生成敵対ネットワーク(CoGAN)を提案する。 トレーニングセット内の異なる領域に対応する画像のタプルを必要とする既存のアプローチとは対照的に、CoGANは、対応する画像のタプルなしで共同分布を学習することができる。 それは、周縁分布から抽出されたサンプルだけで、合同分布を学習することができる。 これは、ネットワーク容量を制限し、限界配分の製品に対して共同配分解を有利にする重み共有制約を強制することによって達成される。 我々は、カラーと奥行き画像の共同分布を学習すること、および異なる属性を有する顔画像の共同分布を学習することを含むいくつかの共同分布学習タスクにCoGANを適用する。 各タスクについて、それは対応する画像のタプルなしで合同分布をうまく学習する。 我々はまた、ドメイン適応と画像変換へのその応用を示す。

[ペーパー] [コード]

実行例

$ cd implementations/cogan/
$ python3 cogan.py

生成されたMNISTおよびMNIST-M画像

CycleGAN

Cycle-Consistent Adversarial Networksを用いた非対話型画像 – 画像変換

著者

ジュン・ヤン・ジュウ、テソン・パーク、フィリップ・イゾラ、アレクセイ・エフロス

抽象

画像から画像への変換は、一組のアライメントされた画像対のトレーニングセットを用いて入力画像と出力画像との間のマッピングを学習することである。 ただし、多くのタスクでは、ペアのトレーニングデータは利用できません。 ペアレントの例がない場合、ソースドメインXからターゲットドメインYへのイメージの翻訳を学習するアプローチを提示します。 我々の目標は、G(X)からの画像の分布が敵対的損失を用いて分布Yと区別できないようにマッピングG:X→Yを学習することである。 このマッピングは非常に制約が厳しいため、逆マッピングF:Y→Xと結合し、F(G(X))≒X(逆もまた同様)を押すためのサイクル一貫性損失を導入する。 定性的結果は、コレクションスタイルの転送、オブジェクトの変形、シーズンの転送、写真の強化など、ペアのトレーニングデータが存在しないいくつかのタスクで提示されます。いくつかの従来のメソッドに対する定量的な比較は、我々のアプローチの優位性を示しています。

[ペーパー] [コード]

実行例

$ cd data/
$ bash download_cyclegan_dataset.sh monet2photo
$ cd ../implementations/cyclegan/
$ python3 cyclegan.py --dataset_name monet2photo

モネから写真への翻訳。

深い畳み込みGAN

深い畳み込み生成的敵対ネットワーク

著者

アレック・ラドフォード、ルーク・メッツ、Soumith Chintala

抽象

近年、畳み込みネットワーク(CNN)を用いた教師あり学習は、コンピュータビジョンアプリケーションにおいて巨大な普及を見せています。 これと比較して、CNNによる教師なし学習はあまり注目されていない。 この作業では、教師あり学習と教師なし学習のCNNの成功のギャップを橋渡しすることを願っています。 特定のアーキテクチャ上の制約があり、教師なし学習の強力な候補者であることを証明する、深い畳み込み生成的敵対的ネットワーク(DCGANs)と呼ばれるCNNのクラスを紹介します。 さまざまな画像データセットを訓練することで、我々の深い畳み込み対合ペアが、ジェネレータとディスクリミネータの両方のオブジェクトパーツからシーンへの表現の階層を学習するという説得力のある証拠を示します。 さらに、学習した機能を新しいタスクに使用し、一般的なイメージ表現としての適用性を実証します。

[ペーパー] [コード]

実行例

$ cd implementations/dcgan/
$ python3 dcgan.py

DiscoGAN

生成的な敵対的ネットワークとのドメイン間関係を発見することを学ぶ

著者

金テクソ、チャンスムンス、金ヒョンソ、リーチョンクン、金ジウォン

抽象

人間は監督なしに異なるドメインのデータ間の関係を容易に認識する一方で、自動的にそれらを発見することは一般的に非常に困難であり、関係を説明する多くの真実性の対を必要とする。 コストの高いペアリングを避けるために、ペアのないデータがあるとドメイン間関係を発見する作業に取り組んでいます。 我々は、異なるドメイン(DiscoGAN)間の関係を発見することを学ぶ生成的な対立ネットワークに基づく方法を提案する。 発見された関係を使用して、我々の提案されたネットワークは、オリエンテーションおよび顔のアイデンティティのような重要な属性を保持しながら、あるドメインから別のドメインへのスタイルの転送に成功する。

[ペーパー] [コード]

実行例

$ cd data/
$ bash download_pix2pix_dataset.sh edges2shoes
$ cd ../implementations/discogan/
$ python3 discogan.py --dataset_name edges2shoes

上から下への行:(1)ドメインAからの実画像(2)
ドメインAからの実像(3)ドメインAからの再構成画像(4)ドメインBからの実像(5)
ドメインBからの翻訳されたイメージ(6)ドメインBからの再構築されたイメージ

DRAGAN

GANのコンバージェンスと安定性について

著者

Naveen Kodali、Jacob Abernethy、James Hays、Zsolt Kira

抽象

GANトレーニングのダイナミクスは、実際の分布と生成された分布との間の乖離を一貫して最小化するという一般的な見解とは対照的に、後退最小化として研究することを提案する。 モード崩壊がなぜ発生するのかを理解するために、この新しい視点からGANトレーニングのコンバージェンスを分析します。 この非凸型ゲームでは、モード崩壊の原因となる望ましくない局所均衡の存在を仮定します。 これらの局所平衡は、実際のデータ点の周りの弁別器関数の勾配が急であることが多いことがわかります。 我々は、DRAGANと呼ばれる勾配ペナルティスキームを用いて、これらの退化した局所平衡を回避できることを示す。 DRAGANは、より速いトレーニングを可能にし、より少ないモード崩壊で安定性を向上させ、さまざまなアーキテクチャと目的関数にわたってより良いモデリングパフォーマンスを持つジェネレータネットワークにつながることを示しています。

[ペーパー] [コード]

実行例

$ cd implementations/dragan/
$ python3 dragan.py

DualGAN

DualGAN:画像から画像への翻訳のための教師なしの二重学習

著者

Zili Yi、Hao Zhang、Ping Tan、Minglun Gong

抽象

近年、ドメイン間画像 – 画像変換のための条件付き生成的敵対ネットワーク(GAN)が進歩している。 タスクの複雑さにもよるが、条件付きGANを訓練するには、数千から数百万のラベル付き画像ペアが必要である。 しかしながら、人間のラベリングは高価であり、実用的でなく、大量のデータが常に利用可能であるとは限らない。 自然言語翻訳からの二重学習からインスピレーションを得て、我々は2つのドメインからの2セットのラベルなし画像から画像トランスレータを訓練することができる、新しいデュアルGANメカニズムを開発する。 私たちのアーキテクチャでは、プライマリGANは、ドメインUからドメインVのイメージに変換することを学びますが、デュアルGANは、タスクを逆転させることを学びます。 プライマリタスクとデュアルタスクによって作成された閉ループは、いずれかのドメインのイメージを翻訳してから再構築することを可能にします。 したがって、画像の再構成誤差を説明する損失関数を用いてトランスレータを訓練することができる。 ラベルの付いていないデータを使用した複数のイメージ変換タスクの実験では、単一のGANでDualGANのパフォーマンスが大幅に向上しています。 いくつかのタスクでは、DualGANは、完全にラベル付けされたデータで訓練された条件付きGANと比較して、同等またはわずかに優れた結果を達成することさえできます。

[ペーパー] [コード]

実行例

$ cd data/
$ bash download_pix2pix_dataset.sh facades
$ cd ../implementations/dualgan/
$ python3 dualgan.py --dataset_name facades

エネルギーベースのGAN

エネルギーベースの生成的敵対ネットワーク

著者

Junbo Zhao、Michael Mathieu、Yann LeCun

抽象

我々は、識別器をデータマニホールド付近の低エネルギーと他の地域への高エネルギーに帰するエネルギー関数と見なす「エネルギーベースの生成的敵対的ネットワーク」モデル(EBGAN)を紹介する。 確率的GANと同様に、発電機は、最小エネルギーを有する対照試料を生成するように訓練されていると見なされ、弁別子は、生成された試料に高エネルギーを割り当てるように訓練される。 弁別器をエネルギー関数として見ると、ロジスティック出力を有する通常のバイナリ分類器に加えて、多種多様なアーキテクチャおよび損失機能を使用することが可能になる。 その中で、EBGANフレームワークの1つのインスタンス化は、識別器の代わりに、エネルギーが再構成エラーである自動エンコーダアーキテクチャを使用するものとして示しています。 我々は、この形式のEBGANが訓練中に通常のGANよりも安定した行動を示すことを示す。 また、高解像度の画像を生成するために、単一スケールアーキテクチャを訓練することができることも示しています。

[ペーパー] [コード]

実行例

$ cd implementations/ebgan/
$ python3 ebgan.py

ガン

生成的敵対ネットワーク

著者

イアン・J・グッドフェロー、ジャン・ポーゲ・アバディー、メディ・ミルザ、ビン・シュー、デヴィッド・ウォーデ・ファーリー、シェリル・オザール、アーロン・クールビル、ヨシュア・ベンギオ

抽象

我々は、データ分布を捕捉する生成モデルGと、むしろ標本がトレーニングデータから来た確率を推定する識別モデルDの2つのモデルを同時に訓練する、敵対プロセスを介して生成モデルを推定するための新しいフレームワークを提案するGの訓練手順は、Dが誤っている確率を最大にすることである。 このフレームワークは、ミニマックスの2人プレイのゲームに対応しています。 任意の関数GとDの空間では、唯一の解が存在し、Gは訓練データ分布を回復し、Dはあらゆるところで1/2に等しい。 GとDが多層パーセプトロンによって定義される場合、システム全体を逆伝播で訓練することができる。 訓練またはサンプルの生成中に、マルコフ連鎖またはアンロールされた近似推論ネットワークは必要ありません。 実験では、生成されたサンプルの定性的および定量的評価を通じてフレームワークの可能性を実証しています。

[ペーパー] [コード]

実行例

$ cd implementations/gan/
$ python3 gan.py

InfoGAN

InfoGAN:生成的な対立ネットを最大化する情報による解釈可能な表現学習

著者

Xi Chen、Yan Duan、Rein Houthooft、John Schulman、Ilya Sutskever、Pieter Abbeel

抽象

この論文では、完全に監督されていない方法で解き放たれた表現を学ぶことができるGenerative Adversarial Networkへの情報理論的拡張であるInfoGANについて説明します。 InfoGANは、潜在変数の小さなサブセットと観測値の間の相互情報を最大化する生成的な対立ネットワークです。 効率的に最適化できる相互情報目標の下限を導出し、訓練手順がWake-Sleepアルゴリズムのバリエーションとして解釈できることを示します。 具体的には、InfoGANは、MNISTデータセットの桁の形状からスタイルを書き出し、3Dレンダリングされたイメージの照明からのポーズ、SVHNデータセットの中央桁からのバックグラウンド桁を正常に解きます。 また、ヘアスタイル、眼鏡の有無、CelebA顔データセットの感情などの視覚的な概念を発見します。 実験では、InfoGANが、既存の完全監督された方法で学んだ表現と競合する解釈可能な表現を学習することが示されています。

[ペーパー] [コード]

実行例

$ cd implementations/infogan/
$ python3 infogan.py

列ごとに潜在変数の潜在的な変化の結果。

行ごとに連続潜在変数を変化させた結果。

最小二乗GAN

最小二乗生成敵対ネットワーク

著者

Xudong Mao、Qing Li、Haoran Xie、Raymond YK Lau、Zhen Wang、Stephen Paul Smolley

抽象

生成的な敵対的ネットワーク(GANs)による教師なし学習は大成功を収めました。 通常のGANは、識別器をシグモイドクロスエントロピー損失関数を有する分類器として仮定する。 しかし、この損失関数は、学習プロセス中に消失勾配問題を引き起こす可能性があることがわかった。 このような問題を克服するために、本論文では最小二乗損失関数を識別器に適用するLSGAN(Least Squares Generative Adversarial Networks)を提案する。 LSGANの目的関数を最小限に抑えると、ピアソンχ2の発散を最小限に抑えることができます。 通常のGANよりもLSGANには2つの利点があります。 第1に、LSGANは通常のGANよりも高品質の画像を生成することができる。 第二に、LSGANは学習過程においてより安定して動作する。 我々はLSGANを5つのシーンデータセットで評価し、LSGANによって生成された画像が通常のGANによって生成された画像よりも優れていることを実験結果が示す。 LSGANの安定性を示すために、LSGANと通常のGANの2つの比較実験を実施します。

[ペーパー] [コード]

実行例

$ cd implementations/lsgan/
$ python3 lsgan.py

MUNIT

マルチモーダル非管理型イメージ – イメージ変換

著者

Xun Huang、Ming-Yu Liu、Serge Belongie、Jan Kautz

抽象

監督されていないイメージからイメージへの変換は、コンピュータビジョンにおける重要かつ挑戦的な問題である。 ソースドメイン内の画像が与えられると、目的は対応する画像のペアを見ることなく、ターゲットドメイン内の対応する画像の条件付き分布を学習することである。 この条件付き分布は本質的にマルチモーダルであるが、既存のアプローチは過度に単純化された仮定を行い、決定論的1対1マッピングとしてモデル化する。 その結果、特定のソースドメインイメージから多様な出力を生成することができません。 この制限に対処するために、我々はマルチモーダル非管理型画像 – 画像変換(MUNIT)フレームワークを提案する。 画像表現は、ドメイン不変であるコンテンツコードと、ドメイン特有のプロパティを捕捉するスタイルコードとに分解することができると仮定する。 画像を別のドメインに翻訳するには、ターゲットドメインのスタイルスペースからサンプリングされたランダムなスタイルコードでコンテンツコードを再結合します。 提案された枠組みを分析し、いくつかの理論的結果を確立する。 最先端の手法との比較による広範な実験は、提案されたフレームワークの利点をさらに実証している。 さらに、私たちのフレームワークでは、ユーザーがスタイルイメージの例を提供することで、翻訳出力のスタイルを制御することができます。 このhttpsのURLには、コードと事前トレーニングされたモデルが用意されています

[ペーパー] [コード]

実行例

$ cd data/
$ bash download_pix2pix_dataset.sh edges2shoes
$ cd ../implementations/munit/
$ python3 munit.py --dataset_name edges2shoes

Pix2Pix

条件付き対立ネットワークを用いた未対訳画像対画像翻訳

著者

フィリップ・イゾラ、ジュン・ヤン・チュウ、鎮輝周、アレクセイ・エフロス

抽象

私たちは、画像対画像変換の問題に対する汎用的な解決策として、条件付き対立ネットワークを調べる。 これらのネットワークは、入力画像から出力画像へのマッピングを学習するだけでなく、このマッピングを訓練するための損失関数を学習する。 これにより、伝統的に非常に異なる損失処方を必要とする問題に同じ一般的なアプローチを適用することが可能になる。 このアプローチは、ラベルマップから写真を合成し、エッジマップからオブジェクトを再構成し、画像をカラー化するなど、他のタスクに効果的です。 実際、この論文に関連するpix2pixソフトウェアがリリースされて以来、多くのインターネットユーザー(その多くはアーティスト)が私たちのシステムで独自の実験を行っており、パラメータの調整を必要とせずに幅広い適用性と採用の容易さを実証しています。 コミュニティとして、私たちはマッピング関数を手作業ではなくなりました。この作業は、私たちの損失関数を手で工学することなく合理的な結果を得ることができることを示唆しています。

[ペーパー] [コード]

実行例

$ cd data/
$ bash download_pix2pix_dataset.sh facades
$ cd ../implementations/pix2pix/
$ python3 pix2pix.py --dataset_name facades

上から下への行:(1)ジェネレータの条件(2)生成された画像
条件(3)に基づく真の対応画像

PixelDA

非線形ネットワークを用いた教師なしピクセルレベルドメイン適応

著者

コンスタンティノス・ブスマリス、ネイサン・シルバーマン、デイヴィッド・ドハン、デュミット・エルハン、ディリップ・クリシュナン

抽象

近年の機械学習アルゴリズムを訓練するための注釈付き画像データセットの収集は、多くのタスクにとって非常に高価です。 1つの魅力的な代替案は、グラウンド・トゥルー・アノテーションが自動的に生成される合成データをレンダリングすることです。 残念なことに、純粋にレンダリングされたイメージで訓練されたモデルは、しばしば実際のイメージに一般化できません。 この欠点に対処するために、従来の研究では、2つのドメイン間で表現をマッピングしようとする教師なしドメイン適合アルゴリズムが導入されたか、ドメイン不変であるフィーチャを抽出することを学ぶ。 この研究では、監督されていない方法で、ある領域から別の領域への画素空間の変換を学習する新しい手法を提示する。 我々の生成的敵対的ネットワーク(GAN)ベースの方法は、ターゲットドメインから引き出されたかのようにソースドメイン画像を適応させる。 我々のアプローチは、妥当なサンプルを生成するだけでなく、多数の教師なしドメイン適応シナリオについて、最新のマージンを上回る性能を発揮します。 最後に、適応プロセスは、トレーニング中に見えないオブジェクトクラスに一般化されることを示します。

[ペーパー] [コード]

MNISTからMNIST-Mへの分類

ソースドメインイメージのアノテーションを使用して、ソースドメイン(MNIST)からターゲットドメイン(MNIST-M)に変換されたイメージ上の分類子を訓練する。 分類ネットワークは、適切なドメイン変換を提供するため、およびソースドメイン画像のセマンティクスを維持するためにジェネレータを最適化するために、ジェネレータネットワークと共同して訓練される。 翻訳された画像上で訓練された分類ネットワークは、MNIST上の分類子を訓練し、それをMNIST-M上で評価する単純な解決法と比較される。 ナイーブモデルは、MNIST-Mの55%の分類精度を管理し、一方、ドメイン適応の間に訓練されたモデルは95%の分類精度を達成する。

$ cd implementations/pixelda/
$ python3 pixelda.py
方法 正確さ
ナイーブ 55%
PixelDA 95%

上から下までの行:(1)MNISTからの実画像(2)
MNISTからMNIST-Mへ(3)MNIST-Mからの画像の例

半監督GAN

半教師付き生成的敵対ネットワーク

著者

アウグストゥス・オデナ

抽象

ディスクリミネータネットワークにクラスラベルを出力させることにより、Generative Adversarial Networks(GAN)を準監督コンテキストに拡張します。 我々は、N個のクラスのうちの1つに属する入力を有するデータセット上の生成モデルGと弁別子Dを訓練する。 トレーニング時には、入力が属しているN + 1個のクラスを予測し、Gの出力に対応するために余分なクラスが追加されます。このメソッドを使用すると、より効率的な分類子を作成できますそれは通常のGANよりも高品質のサンプルを生成することを可能にする。

[ペーパー] [コード]

実行例

$ cd implementations/sgan/
$ python3 sgan.py

Softmax GAN

Softmax GAN

著者

林林

抽象

Softmax GANは、Generative Adversarial Network(GAN)の新しい変種です。 Softmax GANの重要なアイデアは、元のGANの分類損失を、単一のバッチのサンプル空間におけるソフトマックスのクロスエントロピー損失で置き換えることです。 N個の実数訓練サンプルとM個の生成サンプルの敵対学習において、識別器訓練の目標は、すべての確率質量を確率1Mで実サンプルに分配し、生成されたデータにゼロ確率を分配することである。 ジェネレータ訓練フェーズでは、バッチ内のすべてのデータポイントに等しい確率を割り当てます。それぞれの確率は1M + Nです。 元のGANはノイズコントラスト推定(NCE)と密接に関連していますが、Softmax GANはGANの重要度サンプリング版です。 この簡単な変更がGANトレーニングを安定させることを実験で実証します。

[ペーパー] [コード]

実行例

$ cd implementations/softmax_gan/
$ python3 softmax_gan.py

スターガン

StarGAN:マルチドメインイメージからイメージへの翻訳のための統合された生成的敵対的ネットワーク

著者

チョン・ユンジェイ、チェ・ミンジェ、金ムンヨン、ハ・ジョンウ、キムサンホン、チュ・ジェル

抽象

最近の研究では、2つのドメインの画像から画像への変換において顕著な成功を収めています。 しかし、既存のアプローチでは、2つ以上のドメインを扱う際のスケーラビリティと堅牢性が限られています。イメージドメインの各ペアごとに異なるモデルを個別に構築する必要があるためです。 この制限に対処するために、単一のモデルのみを使用して複数のドメインに対してイメージからイメージへの変換を実行できる、斬新でスケーラブルな方法であるStarGANを提案します。 このようなStarGANの統一モデルアーキテクチャにより、単一のネットワーク内の異なるドメインを持つ複数のデータセットの同時トレーニングが可能になります。 これにより、既存のモデルと比較してStarGANの優れた翻訳イメージ品質と、入力イメージを任意の目的ドメインに柔軟に翻訳する斬新な機能が実現します。 私たちは、顔の属性の移動と表情の合成作業に対する我々のアプローチの有効性を経験的に実証しています。

[ペーパー] [コード]

実行例

$ cd implementations/stargan/
<follow steps at the top of stargan.py>
$ python3 stargan.py

オリジナル| ブラックヘア| ブロンドの髪| ブラウンヘア| ジェンダーフリップ| 高齢者

超解像度GAN

生成的敵対ネットワークを用いた現実的な単一画像超解像

著者

Christian Ledig、Lucas Theis、Ferenc Huszar、Jose Caballero、Andrew Cunningham、Alejandro Acosta、Andrew Aitken、Alykhan Tejani、Johannes Totz、Zehan Wang、Wenzhe Shi

抽象

Despite the breakthroughs in accuracy and speed of single image super-resolution using faster and deeper convolutional neural networks, one central problem remains largely unsolved: how do we recover the finer texture details when we super-resolve at large upscaling factors? The behavior of optimization-based super-resolution methods is principally driven by the choice of the objective function. Recent work has largely focused on minimizing the mean squared reconstruction error. The resulting estimates have high peak signal-to-noise ratios, but they are often lacking high-frequency details and are perceptually unsatisfying in the sense that they fail to match the fidelity expected at the higher resolution. In this paper, we present SRGAN, a generative adversarial network (GAN) for image super-resolution (SR). To our knowledge, it is the first framework capable of inferring photo-realistic natural images for 4x upscaling factors. To achieve this, we propose a perceptual loss function which consists of an adversarial loss and a content loss. The adversarial loss pushes our solution to the natural image manifold using a discriminator network that is trained to differentiate between the super-resolved images and original photo-realistic images. In addition, we use a content loss motivated by perceptual similarity instead of similarity in pixel space. Our deep residual network is able to recover photo-realistic textures from heavily downsampled images on public benchmarks. An extensive mean-opinion-score (MOS) test shows hugely significant gains in perceptual quality using SRGAN. The MOS scores obtained with SRGAN are closer to those of the original high-resolution images than to those obtained with any state-of-the-art method.

[Paper] [Code]

Run Example

$ cd implementations/srgan/
<follow steps at the top of srgan.py>
$ python3 srgan.py

Rows from top to bottom: (1) Generated sample by Super-resolution GAN (2) The full
解像度画像

単位

Unsupervised Image-to-Image Translation Networks

著者

Ming-Yu Liu, Thomas Breuel, Jan Kautz

抽象

Unsupervised image-to-image translation aims at learning a joint distribution of images in different domains by using images from the marginal distributions in individual domains. Since there exists an infinite set of joint distributions that can arrive the given marginal distributions, one could infer nothing about the joint distribution from the marginal distributions without additional assumptions. To address the problem, we make a shared-latent space assumption and propose an unsupervised image-to-image translation framework based on Coupled GANs. We compare the proposed framework with competing approaches and present high quality image translation results on various challenging unsupervised image translation tasks, including street scene image translation, animal image translation, and face image translation. We also apply the proposed framework to domain adaptation and achieve state-of-the-art performance on benchmark datasets. Code and additional results are available in this https URL .

[Paper] [Code]

Run Example

$ cd data/
$ bash download_cyclegan_dataset.sh apple2orange
$ cd implementations/unit/
$ python3 unit.py --dataset_name apple2orange

Wasserstein GAN

Wasserstein GAN

著者

Martin Arjovsky, Soumith Chintala, Léon Bottou

抽象

We introduce a new algorithm named WGAN, an alternative to traditional GAN training. In this new model, we show that we can improve the stability of learning, get rid of problems like mode collapse, and provide meaningful learning curves useful for debugging and hyperparameter searches. Furthermore, we show that the corresponding optimization problem is sound, and provide extensive theoretical work highlighting the deep connections to other distances between distributions.

[Paper] [Code]

Run Example

$ cd implementations/wgan/
$ python3 wgan.py

Wasserstein GAN GP

Improved Training of Wasserstein GANs

著者

Ishaan Gulrajani, Faruk Ahmed, Martin Arjovsky, Vincent Dumoulin, Aaron Courville

抽象

Generative Adversarial Networks (GANs) are powerful generative models, but suffer from training instability. The recently proposed Wasserstein GAN (WGAN) makes progress toward stable training of GANs, but sometimes can still generate only low-quality samples or fail to converge. We find that these problems are often due to the use of weight clipping in WGAN to enforce a Lipschitz constraint on the critic, which can lead to undesired behavior. We propose an alternative to clipping weights: penalize the norm of gradient of the critic with respect to its input. Our proposed method performs better than standard WGAN and enables stable training of a wide variety of GAN architectures with almost no hyperparameter tuning, including 101-layer ResNets and language models over discrete data. We also achieve high quality generations on CIFAR-10 and LSUN bedrooms.

[Paper] [Code]

Run Example

$ cd implementations/wgan_gp/
$ python3 wgan_gp.py







-eriklindernoren

執筆者: