画像生成技術の進化 ~GANからディフフュージョンモデルまで~

画像生成技術の進化 ~GANからディフフュージョンモデルまで~
Photo by Rock'n Roll Monkey / Unsplash

こんにちは!株式会社Qualiteg研究部です!

今日は画像生成技術について投稿いたします。

みなさまご存じの通り人工知能による画像生成技術は、過去10年間で急速な進化を遂げました。

今年は2024年。ちょうど2014年に「GAN」がでて10年です。


テキスト系生成AIの勢いがすごい昨今ですが、画像生成AI、超解像AIからの動画生成AIなどコンピュータビジョンかいわいも大きく進化を遂げていますね。

本記事では、主にGenerative Adversarial Networks (GAN)とディフフュージョンモデルに焦点を当て、画像生成技術の歴史的な発展を振り返ります。特に、これらの技術が画像生成と超解像の分野でどのように応用されてきたかを詳しく見ていこうとおもいます。

ブログ本編の前に! ダイジェスト動画あります!

本ブログのダイジェストを以下の動画で語っておりますので、よろしかったらこちらもご覧くださいませ!

GANとディフュージョンモデル

GANとは

GAN(Generative Adversarial Network)は、2014年にIan Goodfellow(イアン・グッドフェロー)氏らによって提案された深層学習モデルです。氏は、Google Brain(英語: Google Brain)を経て2019年3月よりAppleの機械学習研究チームにいるらしいですね。

GANは以下の2つの主要な要素から構成されています

  1. Generator(生成器)
    ランダムなノイズから、本物らしいデータ(例:画像)を生成します。
  2. Discriminator(識別器)
    与えられたデータが本物か偽物(Generatorが生成したもの)かを識別します。

GANの学習プロセスは、GeneratorとDiscriminatorが互いに競争しながら進行します:

  • Generatorは、Discriminatorを騙すようなデータを生成しようと努めます。
  • Discriminatorは、本物のデータとGeneratorが生成したデータを区別しようと努めます。

この敵対的な学習過程を通じて、Generatorは徐々に本物のデータに近い、高品質なデータを生成できるようになります

GANの主な特徴

  • 高品質で多様なデータ生成が可能
  • 教師なし学習の一種として機能
  • 様々な応用(画像生成、スタイル転送、超解像など)が可能

つぎはディフュージョンモデルをみてみましょう

ディフフュージョンモデル

ディフフュージョンモデルは、2015年に基礎理論が提案され、2020年頃から画像生成分野で注目を集めるようになりました。

理論自体はGANに近いときに既に考え出されてたんです。

  1. 逆拡散過程
    ノイズから徐々に画像を生成する過程を学習します。
  2. スコア関数
    画像の確率密度の勾配(スコア関数)を直接モデル化します。

ディフフュージョンモデルの学習プロセス

  • 画像にノイズを少しずつ加えていく過程(順拡散過程)をシミュレートします。
  • その逆過程(逆拡散過程)をモデル化し、ノイズ除去の方法を学習します。

ディフュージョンモデルは、画像空間上の確率密度関数p(x)を直接モデル化するのではなく、スコア関数s(x) := ∇x ln p(x)を学習します。このアプローチには以下の利点があります

  1. 正規化の不要性
    p(x)の代わりにC・p(x)を用いることができ、定数Cの具体的な値は計算に影響を与えません。
  2. 局所的な比較
    近傍画像との確率比較が容易になります。

スコア関数の学習は、noising-denoisingプロセスを通じて行われます。このプロセスでは、画像にガウス雑音を加え、その雑音を除去する過程を学習します。

ディフュージョンモデルの主要な変種

  1. 分類器誘導
    • 条件付き画像生成を実現
    • ベイズの定理を用いてp(x|y) ∝ p(y|x)p(x)を導出
  2. 温度の導入
    • 逆温度βを用いて生成画像の品質を制御
    • βが大きいほど、最尤推定値に近い画像を生成
  3. 分類器フリー誘導(CFG)
    • 外部分類器なしで条件付き生成を実現
    • モデル自体から分類器を抽出

GANとディフフュージョンモデルの比較

GAN ディフフュージョンモデル
基本構造 Generator と Discriminator の2つのネットワーク 単一のノイズ除去ネットワーク
学習プロセス 敵対的学習(2つのネットワークの競争) 逆拡散過程の学習(段階的なノイズ除去)
生成プロセス ノイズから一度に画像を生成 ノイズから徐々に画像を形成
学習の安定性 やや不安定(モード崩壊などの問題あり) 比較的安定
生成速度 速い 遅い(多段階のプロセスが必要)
多様性 モード崩壊の問題あり 高い多様性を実現しやすい
制御性 条件付けが比較的難しい 生成過程の各段階で柔軟な制御が可能

GANとディフュージョンモデルは、どちらも画像生成の分野で革新的な技術ですが、そのアプローチと特性には大きな違いがあります。

GANは、GeneratorとDiscriminatorという2つのネットワークが競争しながら学習を進める「敵対的学習」を特徴としています。この方式により、GANは高速な画像生成と鮮明な結果を実現しています。しかし、学習が不安定になりやすく、生成される画像の多様性が制限される「モード崩壊」という問題も抱えています。

一方、ディフュージョンモデルは単一のノイズ除去ネットワークを使用し、ノイズから画像へと徐々に変換していく過程を学習します。このアプローチにより、学習がより安定し、高い多様性を持つ画像を生成しやすいという特徴があります。また、生成過程の各段階で細かい制御が可能なため、テキストから画像を生成するなど、より複雑なタスクに適応しやすい面もあります。ただし、多段階の生成プロセスのため、GANと比べて画像生成に時間がかかり、より多くの計算リソースを必要とします。

GANとディフフュージョンモデルの進化

では、GANとディフフュージョンモデルの主要な進展を時系列でみてみましょう。

GAN ディフュージョンモデル
2014 - GANの提案 (Ian Goodfellow et al.)
- Conditional GANの登場
2015 - DCGANの開発 - 非平衡熱力学を応用した基礎理論の提案 (Jascha Sohl-Dickstein et al.)
2016 - VGANの提案
- SeqGANの開発
2017 - CycleGANの登場
- Wasserstein GANの提案
- StackGANの開発
- SRGANの提案(超解像)
2018 - ProGANの開発
2019 - StyleGANの登場 - DDPMの提案
2020 - DDPMの改良 (Jonathan Ho et al.)
2021 - GLIDEの開発 (OpenAI)
- SR3の提案(超解像)
2022 - Stable Diffusionの公開

GANとディフュージョンモデルの進化は、画像生成技術の発展を如実に示しています。

GANは2014年にIan Goodfellowらによって提案され、画像生成の分野に革命をもたらしました。翌2015年にはDCGANが登場し、より安定した学習と高品質な画像生成を実現しました。2017年には画像変換を可能にするCycleGAN、学習安定性を向上させたWasserstein GAN、そして超解像技術のSRGANが登場し、GANの応用範囲が大きく広がりました。2018年にはProGANが高解像度画像の生成を可能にし、2019年のStyleGANは多様なスタイルと特徴を持つ画像生成を実現しました。

一方、ディフュージョンモデルは2015年に非平衡熱力学を応用した基礎理論が提案されましたが、画像生成分野で注目を集めるまでにはしばらく時間がかかりました。2019年にDDPM(Denoising Diffusion Probabilistic Models)が提案され、2020年にはJonathan Hoらによってさらに改良されました。2021年にはOpenAIがGLIDEを開発し、テキストから画像を生成する能力が大幅に向上しました。また同年、超解像技術のSR3も提案されました。2022年には、Stability AIによるStable Diffusionの公開により、高品質な画像生成が一般にも利用可能になりました。

この間、GANは早くから高品質な画像生成を実現し、多様な応用を見せました。一方、ディフフュージョンモデルは後発ながら、安定した学習と高い制御性を武器に急速に発展し、近年では画像生成の主流となりつつあります。両技術とも、テキストから画像生成や超解像など、より複雑なタスクへの挑戦を続けており、今後もさらなる進化が期待されています。

「超解像」技術と進化

超解像は、低解像度の画像から高解像度の画像を生成する技術です。
GANとディフュージョンモデルの両方が、この分野でも重要な役割を果たしていますので、そちらもみていきましょう。

なぜ超解像が必要なのか

超解像技術が重要視される理由は複数あります。

  1. 既存の低解像度画像の品質向上
    古い写真やビデオ、低品質なデジタル画像を高解像度化し、詳細を復元することができます。
  2. ハードウェアの制限の克服
    カメラやセンサーの物理的制限により得られる低解像度画像を、ソフトウェア的に高解像度化することが可能です。
  3. データ転送と保存の効率化
    低解像度で転送・保存し、必要に応じて高解像度に変換することで、ネットワークやストレージの負荷を軽減できます。
  4. 機械学習モデルの出力拡大
    多くのvggなど画像生成モデルは、計算効率の観点から224x224ピクセルのような比較的小さなサイズの画像で学習されています。これらのモデルを実際の動画や大型ディスプレイ用の画像生成に使用する場合、生成された画像を拡大する必要があります。この拡大プロセスで超解像技術が重要な役割を果たします。

動画向け時系列超解像の技術開発

近年、動画コンテンツの需要増加に伴い、動画向けの時系列超解像技術の開発が盛んになっています。この技術は、単に各フレームを個別に超解像するのではなく、フレーム間の時間的な連続性を考慮して高品質な動画を生成することを目指しています。

  1. フレーム間の一貫性維持
    時系列超解像では、隣接するフレーム間の一貫性を保ちながら各フレームを超解像することが重要です。これにより、ちらつきやアーティファクトのない滑らかな動画を生成できます。
  2. 動き補償と推定:
    物体の動きを正確に推定し、それに基づいてフレーム間の情報を適切に統合することで、より精細で自然な動きを再現します。
  3. 時空間的な特徴抽出
    3次元畳み込みニューラルネットワークや再帰型ネットワークを用いて、時間軸も含めた特徴抽出を行い、より豊かな時空間的情報を活用します。
  4. リアルタイム処理への挑戦
    動画のストリーミングやライブ配信に対応するため、リアルタイムで動作する高速な時系列超解像アルゴリズムの開発が進められています。
  5. 長期的な時間依存性の考慮
    長い時間スケールでの一貫性を保つため、より広い範囲のフレームを考慮に入れた超解像手法の研究も行われています。

最新の研究動向

  1. TecoGAN (Temporally Coherent GAN)
    時間的一貫性を維持しながら高品質な動画超解像を実現するGANベースのモデルです。フレーム間の滑らかな遷移と細部の保持を両立しています。
  2. EDVR (Enhanced Deformable Convolutional Networks)
    複数のフレームを同時に処理し、フレーム間のアライメントを行うことで高品質な動画超解像を実現しています。
  3. BasicVSR++
    双方向伝播と変形可能な畳み込みを組み合わせ、長期的な時間依存性を考慮した動画超解像を可能にしています。
  4. RSTT (Recurrent Structure-Texture Learning)
    構造情報とテクスチャ情報を分離して学習し、時間的一貫性を保ちながら細部まで鮮明な動画超解像を実現しています。
  5. ディフュージョンモデルの応用: 最近では、画像生成で成功を収めているディフュージョンモデルを動画超解像に応用する研究も始まっています。時間的一貫性を保ちながら、高品質で多様な結果を生成できる可能性が注目されています。

これらの技術開発により、動画の品質向上だけでなく、VRやAR、医療画像処理、監視カメラ映像の分析など、幅広い分野での応用が期待されています。また、5G、IOWN(アイオン)など高速通信技術の普及をみすえ、低解像度で効率的に動画を転送し、受信側で超解像する新たな動画配信モデルの可能性も示唆されています。

時系列超解像技術は、単なる画質向上にとどまらず、動画コンテンツの新たな可能性を切り開く重要な技術として、今後もさらなる発展が期待されるでしょう。

GANを用いた超解像

モデル 特徴
SRGAN (2017) - GANを用いた初期の超解像モデル
- 知覚損失を導入し、自然でシャープな画像生成を実現
ESRGAN - SRGANの改良版
- Residual-in-Residual Dense Blockを採用
- より細部まで再現できる高品質な超解像を実現
Real-ESRGAN - ESRGANをさらに改良
- データ劣化モデルを導入し、汎化性能を向上
- 実世界の低品質画像に対しても効果的

ディフフュージョンモデルを用いた超解像

モデル 特徴
SR3 (2021) - 段階的な精緻化プロセスを採用
- 高品質な超解像結果を生成
Stable Diffusion - 画像生成と超解像の両方に応用可能
- 潜在空間での操作により効率的かつ高品質な超解像を実現
Imagen - Googleが開発したテキストから画像生成モデル
- 超解像にも応用可能で、高解像度の画像生成を実現

GANとディフフュージョンモデルの比較

GAN ディフフュージョンモデル
利点 - 高速な推論
- シャープな画像生成
- 超解像タスクでの優れた性能
- 安定した学習
- 高い多様性
- 柔軟な制御
- ノイズ除去プロセスによる元画像構造の保持
- 超解像での自然な結果
課題 - 学習の不安定性
- モード崩壊
- 生成速度が比較的遅い
- 計算コストが高い

今後の展望

画像生成技術は急速に進化を続けており、以下のような分野で今後はさらなる高品質化、多様化、そして他のAI技術との統合が期待されています。

  1. マルチモーダル生成
    テキスト、音声、動画を組み合わせた総合的な生成
    以下の動画でもふれていますが、最終的にはE2E学習が主流になるとおもわれます。

  1. インタラクティブな生成
    ユーザーの入力に応じてリアルタイムで画像を生成・編集
  2. 倫理的な配慮:デープフェイクなどの悪用防止と、著作権問題への対応
  3. 計算効率の向上:より少ないリソースで高品質な生成を可能にする技術の開発
  4. 理論的な理解の深化:ディフフュージョンモデルの数学的基礎のさらなる解明
  5. 超解像技術の更なる進化:より高い拡大率と品質の両立

結論

GANからディフフュージョンモデルまで、画像生成技術は過去10年間で驚異的な進歩を遂げました。
特にディフフュージョンモデルは、その数学的基礎と柔軟な制御性により、画像生成と超解像の新たな標準となりつつあります。

これらの技術は、芸術、エンターテインメント、科学研究など、様々な分野に革新をもたらしています。

超解像技術においては、GANベースのモデルが長らく主流でしたが、最近ではディフフュージョンモデルを用いたアプローチも注目を集めています。両者のアプローチは、それぞれ異なる特性を持ち、用途に応じて選択されています。

今後も技術の進化と新たな応用分野の開拓が期待される一方で、倫理的な課題にも注意を払う必要があります。画像生成技術は、人間の創造性を拡張し、新たな表現の可能性を開く強力なツールとして、今後も積極的に活用していきたいとおもいます!

Read more

LLM推論基盤プロビジョニング講座 第1回 基本概念と推論速度

LLM推論基盤プロビジョニング講座 第1回 基本概念と推論速度

こんにちは! 本日は LLMサービスの自社構築する際の推論基盤プロビジョニング、GPUプロビジョニングについて数回にわけて解説いたします。 はじめに LLMの進化に伴い、ChatGPTやClaudeといったパブリックなLLMの活用は企業においても急速に広がってきました。しかし先進的な企業はこれらの汎用LLMに加えて、「領域特化型」「ドメイン特化型」といった専用LLMの構築へと歩みを進めています。こうした動きの背景には、企業固有の専門知識への対応力強化と情報セキュリティの確保という二つの重要なニーズがあります。 一般的なパブリックLLMでは対応できない企業固有の専門知識や機密情報の取り扱いが必要なケースが増えているため、自社LLMの構築や自社サーバーでの運用を検討する企業が急増しています。特に金融、医療、製造、法務といった専門性の高い領域では、業界特化型の独自LLMが競争優位性をもたらすと認識されています。 しかし、業界特化型のLLMを自社で運用することは簡単ではありません。自社運用を決断した場合、まず最初に取り組むべきは適切な推論環境の整備です。オンプレミス環境を構築するに

By Qualiteg コンサルティング
Startup JAPAN 2025 に出展いたしました

Startup JAPAN 2025 に出展いたしました

こんにちは! 2025年5月8日(木)-5月9日(金)に東京ビッグサイトで開催された Startup JAPAN 2025 に出展いたしましたので、簡単にレポートいたします😊 開催概要 出展概要 今回は当社が開発するアバター動画生成AI「MotionVox™」を中心に出展させていただきました! 展示会について簡単にふりかえってみたいとおもいます 当社ブース 当社ブースはこんなかんじです。 今回は、ブースというか、このイーゼルのような雰囲気の木枠にポスターをくっつけるというスタイルでの展示方式でした。 こういう方式ははじめてなので斬新でした。おそらくこの方式で相当なコストダウンを図れておりスタートアップにはうれしいですね。セットアップも数分で終わりました。 会場 今回の会場はビッグサイトの南ホールでした。南ホールは、ビッグサイト入口からすぐそこなので駅から会場までたいして歩かず、疲れずに行くことができアクセスがとても良いです。 ホールは広めですが、ところせましと400社の出展会社がひしめきあっておりスタートアップの勢いのある会場となっており

By Qualiteg ビジネス開発本部 | マーケティング部
GPUサービスで「Segmentation Fault 」に出会ったら~分析から解決までの実践アプローチ~

GPUサービスで「Segmentation Fault 」に出会ったら~分析から解決までの実践アプローチ~

こんにちは! 今日は仮想環境+GPUなサービスにおける「Segmentation Fault」について、分析と対処法について書いてみたいと思います。 Segmentation Faultの本質と特徴 Segmentation Faultは、プログラムが保護されたメモリ領域にアクセスしようとした際にOSが発生させる例外です。 今回は複数のGPUサービス(つまりGPUを使うプロセス)が動作していて、そのうちの1つを再起動したときに発生しました。 毎回発生するわけではありません。むしろ数百回の起動に1回程度ですが、1回でも発生すると絶望的な結果につながります。というのも、1つのGPUサービスの停止が SPOF となってサービス全体に影響が発生します。かつ、1回でも「Segmentation Fault」が発生してしまうと、その原因となったプロセスが二度と起動しなくなる、というやっかいな現象でした。 このように「普段は正常に動作しているのに突然動かなくなる」というのがデバッグを非常に難しくします。 とくにGPU+仮想化の組み合わせで従来のC++アプリよりも発生確率がぐっとあがる印象

By Qualiteg プロダクト開発部
シェルスクリプトからcondaコマンドを活用したいとき

シェルスクリプトからcondaコマンドを活用したいとき

こんにちは! 今日はみんな大好きcondaコマンドについてです。 condaコマンドで仮想環境に入って、何らかの処理をして、戻ってくる ようなシェルスクリプト、バッチタスクをやるときのTipsです。 AI開発において、Anacondaとその中核であるcondaパッケージマネージャーはとっても重宝します。 しかし、シェルスクリプトから自動的にcondaを利用しようとすると、意外なハードルがあります。 本記事では、シェルスクリプトからcondaコマンドを正しく呼び出す方法について解説します。 condaと非対話モードの課題 AnacondaがインストールされているLinux環境において、condaコマンドは通常、.bashrcや.bash_profileなどの設定ファイルによって初期化されます。 なんとなくシェルをつかっていると、このcondaコマンドの初期化を忘れてしまいますが、これらの設定は多くの場合シェルの「対話モード」でのみ有効になるように設計されています。 ゆえにシェルスクリプトのような非対話モードでは、condaコマンドが正しく機能してくれません 例えば、.b

By Qualiteg プロダクト開発部