18以上のSOTA GAN実装をカバーするこのライブラリは、画像生成の分野で人気があります。

18以上のSOTA GAN実装をカバーするこのライブラリは、画像生成の分野で人気があります。

GAN は提案されて以来、急速に幅広い注目を集めています。 GAN は、無条件生成と条件情報に基づく生成の 2 つのカテゴリに分類できます。最近、韓国の浦項工科大学の修士課程の学生が、条件付き/無条件画像生成のための代表的な敵対的生成ネットワーク (GAN) の実装を提供するプロジェクトを GitHub でオープンソース化しました。

最近、Machine Heart は GitHub 上で非常に有意義なプロジェクト PyTorch-StudioGAN を目にしました。これは、条件付き/無条件画像生成のための代表的な敵対的生成ネットワーク (GAN) の実装を提供する PyTorch ライブラリです。ホームページによると、このプロジェクトの目的は、機械学習分野の研究者が新しいアイデアや手法を迅速に比較・分析できるように、統一された最新のGANプラットフォームを提供することです。

このプロジェクトの作者は、韓国の浦項工科大学の修士課程の学生です。彼の研究対象は主に、ディープラーニング、機械学習、コンピュータービジョンです。

プロジェクトアドレス: https://github.com/POSTECH-CVLab/PyTorch-StudioGAN

具体的には、このプロジェクトには次のような注目すべき特徴があります。

  • PyTorch フレームワーク用の多数の GAN 実装を提供します。
  • CIFAR 10、Tiny ImageNet、ImageNet データセットに基づく GAN ベンチマーク。
  • 元の実装よりもパフォーマンスが向上し、メモリ消費量が少なくなります。
  • 完全に最新の PyTorch 環境で事前トレーニング済みのモデルを提供します。
  • マルチ GPU (DP、DDP、マルチノード DDP)、混合精度、同期バッチ正規化、LARS、Tensorboard 視覚化、その他の分析方法をサポートします。

この PyTorch GAN ライブラリについて、あるネットユーザーは「素晴らしいですね。top-k やさまざまな強化方法などの最新のトレーニング手法が提供されれば、さらに良くなるでしょう」とコメントしています。これに対して、プロジェクトの著者は、NeurIPS 論文提出期限後に、Sinha らの Tok-K トレーニングや Langevin サンプリング、SimCLR 強化などの改良された手法を追加すると述べました。

さらに、一部のネットユーザーは、このプロジェクトが画像処理以外の分野でも活用できるかどうかを尋ねた。著者は、一部のスタビライザー(diffaug、ada など)を使用できない場合でも、dataLoader を調整することで独自のモデルをトレーニングできると述べています。

18+ SOTA GAN 実装

下の図に示すように、プロジェクト作成者は、DCGAN、LSGAN、GGAN、WGAN-WC、WGAN-GP、WGAN-DRA、ACGAN、ProjGAN、SNGAN、SAGAN、BigGAN、BigGAN-Deep、CRGAN、ICRGAN、LOGAN、DiffAugGAN、ADAGAN、ContraGAN、FreezeD など、18 種類以上の SOTA GAN の実装を提供しています。

cBN: 条件付きバッチ正規化、AC: 補助分類器、PD: 投影識別器、CL: 対照学習。

その中でも、以下の点に留意する必要があります。

  • G/D_type は、ジェネレータまたは判別式にラベル情報を注入する方法を示します。
  • EMA は、ジェネレーターで更新を適用した後の指数移動平均を表します。
  • Tiny ImageNet データセットの実験では、CNN の代わりに ResNet アーキテクチャが使用されました。

下の図では、StyleGAN2 が実装される GAN ネットワークであり、AdaIN は Adaptive Instance Normalization の略です。

環境要件

  • アナコンダ
  • Python >= 3.6
  • 6.0.0 <= 枕 <= 7.0.0
  • scipy==1.1.0
  • 学習する
  • シーボーン
  • h5py
  • tqdm
  • トーチ >= 1.6.0
  • トーチビジョン >= 0.7.0
  • テンソルボード
  • 5.4.0 <= gcc <= 7.4.0
  • トーチラー

ユーザーは、次の方法で推奨環境をインストールできます。

  1. conda env 作成 -f 環境.yml -n studiogan

Docker では、次の方法も使用できます。

  1. docker pull mgkang/studiogan:最新

以下は、「studioGAN」という名前のコンテナを作成するコマンドです。ポート番号 6006 を使用して tensorboard に接続することもできます。

  1. docker run -it --gpus all --shm-size 128g -p 6006 : 6006 --name studioGAN -v /home/USER:/root/code --workdir /root/code mgkang/studiogan:latest /bin/bash

使い方

GPU 0 を使用する場合、モデルのトレーニング "-t" と評価 "-e" は CONFIG_PATH で定義されます。

  1. CUDA_VISIBLE_DEVICES= 0 python3 src/main.py -t -e -c CONFIG_PATH

GPU (0、1、2、3) および DataParallel を使用する場合、モデルのトレーニング "-t" と評価 "-e" は CONFIG_PATH で定義されます。

  1. CUDA_VISIBLE_DEVICES= 0123 python3 src/main.py -t -e -c CONFIG_PATH

python3 src/main.py プログラムで利用可能なオプションを表示します。Tensorboard を通じて、IS、FID、F_beta、信頼性の精度、最大特異値を監視できます。

  1. ~ PyTorch-StudioGAN/logs/RUN_NAME>>> tensorboard --logdir=./ --port ポート

生成された画像を視覚化して分析する

StudioGAN は、画像の視覚化、k 最近傍分析、線形補間、周波数分析をサポートしています。すべての結果は「./figures/RUN_NAME/*.png」に保存されます。

画像の視覚化のためのコードと例は次のとおりです。

  1. CUDA_VISIBLE_DEVICES= 0 ,...,N python3 src/main.py -iv -std_stat --standing_step STANDING_STEP -c CONFIG_PATH --checkpoint_folder CHECKPOINT_FOLDER --log_output_path LOG_OUTPUT_PATH

k 最近傍分析、ここでは K=7 が固定され、最初の列は生成された画像です。

  1. CUDA_VISIBLE_DEVICES= 0 ,...,N python3 src/main.py -knn -std_stat --standing_step STANDING_STEP -c CONFIG_PATH --checkpoint_folder CHECKPOINT_FOLDER --log_output_path LOG_OUTPUT_PATH

線形補間のコードと例(条件付き Big ResNet モデルにのみ適用可能)は次のとおりです。

  1. CUDA_VISIBLE_DEVICES= 0 ,...,N python3 src/main.py -itp -std_stat --standing_step STANDING_STEP -c CONFIG_PATH --checkpoint_folder CHECKPOINT_FOLDER --log_output_path LOG_OUTPUT_PATH

<<:  自動運転のゴールドラッシュ、このトラックの価値は少なくとも3000億ドル

>>:  人工知能とモノのインターネット – 5つの新たなユースケース

ブログ    
ブログ    
ブログ    

推薦する

汎用人工知能について

汎用人工知能と人工知能の未来を探ります。汎用人工知能 (AGI) は、人工知能 (AI) 研究の分野...

Redis に基づく分散ロックと Redlock アルゴリズム

[[414221]]この記事はWeChatの公開アカウント「UP Technology Contro...

人工知能が医薬品開発を加速させる

業界における人工知能(AI)の応用シナリオは増え続けており(日常的なスマート製品から大規模なイノベー...

李開復:人工知能の「7つのブラックホール」は、最終的にはオープンエコシステムに置き換えられるだろう

最近、李開復氏は記者との独占インタビューで人工知能に関する自身の観察と洞察について語った。シリコンバ...

...

ビデオ会議に最適な AI アプリケーション

人工知能はさまざまな方法でビジネスを支援しています。 COVID-19パンデミックの間、多くの企業は...

...

マスク氏に敵対的買収の疑い!ツイッター株を受け取ったが取締役会には参加せず、訴訟を起こされている

これはすべて悪意のある計画ですか? ツイッター株を7000万株以上購入した後、マスク氏は取締役会への...

2021年の人工知能業界の予測

[[375635]] 2020 年は激動の年であり、組織は数多くの課題に直面しました。 2021年に...

インテリジェントな運用とメンテナンスからスマートな運用まで、Qingchuang Technologyは企業に探偵シャーロックの能力を提供します

[51CTO.com からのオリジナル記事] 運用保守作業は、初期の手動運用保守から自動化運用保守、...

...

...

AIは人間のための単なるツールだということをご存知ですか?

[[429689]]この記事は、ハーパー氏が執筆したWeChatパブリックアカウント「データとイン...

テスラはどのようにしてPyTorchを使って自動運転を実現し、世界に挑戦したのでしょうか?

[[313367]]テスラのエンジニアたちは、データの拡大に伴ってエンジニアの数を増やすことなく、...

人工知能は知的ではないのでしょうか?最初から方向性が間違っていた

AI は人工知能の略です。AI の定義は、1950 年代にまで遡ります。当時、さまざまな分野の専門家...