スタイルGANの名称の由来と画像生成における革新的な仕組み

こんにちは。ゆうせいです。

実在しない人物の顔写真を極めて精細に作り出す人工知能技術として、スタイルGAN(StyleGAN)という深層学習モデルが知られています。半導体メーカーのNVIDIAによって開発されたこのモデルは、敵対的生成ネットワーク(GAN)を基礎としながら、それまでの生成手法を大きく超える表現力を実現しました。スタイルという単語が冠されている背景には、画風変換(スタイル変換)の技術を着想源にして、生成される画像の構図や質感といった特徴を段階ごとに制御する構造を採用した経緯が存在します。スタイルGANの名称の由来や内部の動作原理、技術的な特徴について解説します。

スタイルGANの名称の由来

スタイルGANという名称は、画像の様式を制御するスタイル変換という画像処理技術の枠組みを、敵対的生成ネットワーク(GAN)の画像生成プロセスへ直接組み込んだことに由来します。

画風変換(スタイル変換)技術との結びつき

従来のコンピュータビジョン分野には、ある写真の内容を保ちながら、有名な絵画のような筆遣いや色合いへ描き直す画風変換(Neural Style Transfer)という技術が存在していました。この技術において、描かれている対象の輪郭や配置をコンテンツ(内容)と呼び、色使いやテクスチャ、筆のタッチといった表面的な特徴をスタイル(様式)と呼び分けていました。

高校の美術の時間を想定してください。風景画を描く際、山や川の配置そのものを決める作業と、水彩絵の具で描くのか油絵の具で描くのかという塗り方や質感を選ぶ作業は明確に分かれています。スタイルGANの開発者たちは、この質感や特徴を意味するスタイルという概念を、人工知能が一から画像を描く工程に応用しました。

GANへのスタイルの導入

従来のGANでは、ランダムな数列(潜在変数)を生成器の最初の入力層にまとめて一度だけ流し込み、そこから徐々に解像度を上げて画像を作り出していました。この方法では、生成器の途中の処理でどの変数が顔の向きや髪色に影響を与えているかを人間が操作することは困難でした。

スタイルGANは、この設計を根本から変更しました。生成器の最初の層には固定された一定の値を入力し、ランダムな数列から取り出したスタイルの情報を、解像度ごとに分割して途中の層へ段階的に注入する構造を採用しました。各解像度の層へスタイルを適用して画像を制御する設計を持つことから、スタイルを操るGANという意味でスタイルGANと名付けられました。

スタイルGANを構成する専門用語と数式

スタイルGANが高品質な画像を制御して生成できる背景には、2つの主要な処理構造が存在します。

マッピングネットワークによる潜在空間の解きほぐし

スタイルGANでは、最初に用意したランダムな潜在変数 z を、そのまま生成器へ送りません。マッピングネットワークと呼ばれる多層パーセプトロンを経由させ、中間潜在変数 w へと変換します。

この処理の目的は、特徴同士の絡まり合い(もつれ)を解きほぐすことです。現実のデータでは、例えば長い髪の人には女性が多く、短い髪の人には男性が多いというように、特徴同士が複雑に連動しています。マッピングネットワークを通過させることで、性別、髪型、メガネの有無といった個々の特徴を独立した数値として扱いやすく整理します。

適応型インスタンス正規化(AdaIN)の計算式

中間潜在変数 w から生成されたスタイルの情報は、適応型インスタンス正規化(AdaIN)と呼ばれる仕組みを通じて、画像を拡大していく各階層の畳み込み層へ注入されます。

層の内部を流れる特徴マップの各チャンネルについて、平均値を引いて標準偏差で割ることで正規化を行い、その後にスタイルから得られた伸縮パラメータ y_s と移動パラメータ y_b を掛け合わせて足し算します。

適応型インスタンス正規化を行うための基本方程式

\mathrm{AdaIN}(x_{i}, y) = y_{s, i} \left( \frac{x_{i} - \mu(x_{i})}{\sigma(x_{i})} \right) + y_{b, i}

数式中の x_i は各チャンネルの特徴マップを表し、$\mu(x_{i})$ はその平均値、$\sigma(x_{i})$ はその標準偏差を表します。この計算により、画像の基本的な形状を保ったまま、各階層が担当するスタイル情報のみを特徴マップへ上書きすることが可能になります。

階層ごとのスタイルの分離

スタイルGANは、解像度ごとに注入するスタイルの役割を明確に分担しています。

  • 低解像度の層(粗いスタイル):顔の向き、輪郭の形、大まかなポーズといった全体の骨格を決定します。
  • 中解像度の層(中間のスタイル):目や鼻のパーツの形状、髪型、表情といった個別の造形を決定します。
  • 高解像度の層(細かいスタイル):肌の質感、髪の毛の1本1本の流れ、瞳の色といった表面の細部を決定します。

スタイルGANの客観的な特徴

スタイルベースの生成構造を採用することには、実務および研究の現場において明確な利点と課題が存在します。

スタイルGANを採用する利点

  • 生成される特徴の分離(ディスエンタングルメント)が進んでいるため、顔の向きを固定したまま髪色だけを変更するような、特定の属性に限定した画像編集を直感的に行えます。
  • 階層ごとに異なる2枚の画像からスタイルを合成するスタイルミキシングが可能となり、Aさんの輪郭にBさんの目や髪質を組み合わせた新しい人物像を滑らかに作成できます。
  • 微細なノイズを途中の層へ直接注入する仕組みを備えているため、髪の毛の自然な散らばりや肌のそばかすといったランダムな質感を、全体の構図を崩さずに高精細に再現できます。

スタイルGANを採用する課題

  • ネットワーク全体の規模が大きく、中間層の構造も複雑であるため、モデルの学習には複数の高性能なGPUと膨大な計算時間を必要とします。
  • モデルの学習を正常に完了させるためには大量の高品質な顔画像データセットが必要であり、学習用データの収集と前処理の負担が大きくなります。
  • 生成器の出力が訓練データの分布に強く依存するため、極端に横を向いた顔や珍しい照明条件など、データセットに含まれていない構図を指示通りに生成させることは困難です。

まとめ

スタイルGANという名称は、画像の構図と様式を切り分ける画風変換の思想を取り入れ、各解像度の階層へスタイル情報を段階的に注入して画像を制御する構造に由来しています。単に入力から出力へデータを流すだけでなく、特徴量を解きほぐして階層ごとに反映させる仕組みを導入したことで、精密で制御性の高い画像生成を実現しました。

スタイルGANの構造と仕組みを理解するための学習手順は以下の通りです。

  1. 敵対的生成ネットワークの基本構造を確認し、生成器と識別器の相互作用による学習手順を整理します。
  2. 画像処理におけるスタイル変換とインスタンス正規化の基礎を調べ、スタイルの平均と分散を調整する概念を把握します。
  3. プログレッシブGANの低解像度から高解像度へ段階的に画像を拡大していく仕組みを確認し、解像度階層の概念を理解します。
  4. マッピングネットワークによる潜在変数の変換とAdaINの数式を追い、粗い特徴から細かい特徴へとスタイルが段階的に適用される全体の流れを追跡します。

投稿者プロフィール

山崎講師
山崎講師代表取締役
セイ・コンサルティング・グループ株式会社代表取締役。
岐阜県出身。
海外放浪の末、2000年創業、2004年会社設立。
IT企業向け人材育成研修歴業界歴20年以上。
すべての無駄を省いた費用対効果の高い「筋肉質」な研修を提供します!
この記事に間違い等ありましたらぜひお知らせください。

学生時代は趣味と実益を兼ねてリゾートバイトにいそしむ。長野県白馬村に始まり、志賀高原でのスキーインストラクター、沖縄石垣島、北海道トマム。高じてオーストラリアのゴールドコーストでツアーガイドなど。現在は野菜作りにはまっている。