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つの新たなユースケース

ブログ    

推薦する

...

AIと人間: 人工知能は常に進歩し、人間は常に進化している

この記事は、公開アカウント「Reading the Core」(ID: AI_Discovery)か...

顔の照明を自由に編集:ジェネレーティブモデルに基づく3Dリライティングシステムがリリース

実際の人間の顔の 3 次元モデリング、合成、再照明は、コンピュータ グラフィックスの分野で高い応用価...

...

...

...

効率的なテストデータ生成と管理のための生成AI

傑作を作ろうとしている画家が、限られたパレットに制限されているところを想像してみてください。彼らは美...

自由に歩き回るロボット掃除機は密かにあなたを監視しているかもしれない

一日中懸命に働いた労働者たちは、疲れた体を引きずりながら家に戻り、ついに「解放された農奴が歌う」生活...

2023年版CV初心者ガイドの概要

コンピューター ビジョンは、驚くほど急速に発展している分野です。本質的には、コンピューターに人間と同...

人体の中で自由に動くロボット:柔軟でしなやか、毛細血管まで

[[408943]] 7月1日のニュースによると、最近、ヨーロッパの大学の中国の科学者は、シート状の...

AIビデオ分析が業務を強化できる4つの方法

私たちが知っている食品の消費とレストラン体験の変革は、1921 年にカンザス州ウィチタでアメリカ初の...

ビジネスにおけるAIとIoTの重要性

人工知能とモノのインターネットは、ビジネスの運営方法に革命をもたらしています。一方、AI は、リアル...

...