敵対的生成ネットワーク(GAN)とは?画像生成の仕組みと今後の課題を解説
最終更新日:2024/01/29
AIの分野で注目されている技術のひとつに、「敵対的生成ネットワーク(GAN)」があります。GAN技術を活用することで、「AIに画像の特徴や性質を学習させ、全く新しい画像を生成すること」ができるようになります。
GAN技術を活用した新たなサービスも少しずつ登場し始めており、今後、ビジネスの分野でも発展が期待されています。本記事では、敵対的生成ネットワーク(GAN)の基礎知識や、画像生成の仕組み、今後の課題について解説します。
ちなみに生成モデルにはGAN以外のモデルも存在し、VAEや拡散モデルなど、昨今の生成AIブームを支えるさまざまなモデルがあります。GAN以外の生成AIモデルについて詳しく知りたい方はこちらの記事も参考にしてください。
生成AI(ジェネレーティブAI)とは?種類・使い方・できることをわかりやすく解説
DALL·Eについて詳しく知りたい方はこちらの記事も参考にしてください。
DALL·E 2の使い方 文字を入れるだけで使える話題の画像生成AIを試してみた!
敵対的生成ネットワーク(GAN)とは?
敵対的生成ネットワーク(GAN/Generative Adversarial Networks)とは、2種類のニューラルネットワークを戦わせながらAIのデータ学習を進めていく考え方のことです。2014年に「Generative Adversarial Nets」という論文で初めて公表されたもので、機械学習の研究者である「イアン・グッドフェロー」らによって提唱されました。
敵対的生成ネットワークと呼ばれる理由は、ニューラルネットワーク同士を競わせる性質から来ているものです。
そもそもコンピューターに膨大なデータを学習させて分析・予測・分類などを行うための「機械学習」には、2種類のモデルが存在します。1つ目は、AIに対して写真や画像などのデータを与え、そのデータがどのようなものであるか判断させる「識別モデル」と呼ばれるモデルです。
2つ目は、AIに対して与えたデータがどのようなものであるかをコンピューターに考えさせ、新たな答えを導き出させる「生成モデル」というモデルです。識別モデルにおいては、AIがデータベースにあらかじめ存在する答えの中から正解を判断しますが、生成モデルにおいては、与えられたデータからAIが関数などを用いて複雑な計算・処理を行い、新たな正解を生成します。
敵対的生成ネットワークは、2つの機械学習モデルのうち「生成モデル」に該当します。
敵対的生成ネットワーク(GAN)の仕組み
敵対的生成ネットワーク(GAN)の仕組みは、ブランド品の偽造業者と鑑定士の関係を例にすると、理解しやすくなります。前提として、下記のシチュエーションを想像してみましょう。
- 偽のブランド品を製作し、顧客を騙そうとしている偽造業者(Generator)がいる
- 全ての偽のブランド品を鑑定し、騙されないようにしようとする鑑定士(Discriminator)がいる
これらの状況において、偽造業者は鑑定士に絶対に偽物だと判断されないように、精巧な偽ブランド品を作ろうとします。一方の鑑定士は、騙されないように鑑定の精度を高めていきます。このように、お互いが競い合って各々の精度を高めていくのが、敵対的生成ネットワークの基本的な仕組みです。
偽造業者は当初、鑑定士が簡単に判別できる精度の低い偽ブランド品しか作れませんが、鑑定士に見極められないような偽ブランド品を追求するたびに、徐々に精巧さを高めていきます。一方、鑑定士も、騙されないようにスキルを向上させます。
このように、正解のデータを与えない状態でAIが自動的に精度を高めていく学習方法を、「教師なし学習」とも呼びます。
敵対的生成ネットワーク(GAN)が画像を生成する流れ
前述のブランド品の偽造業者と鑑定士の例を参考に、敵対的生成ネットワーク(GAN)が画像を生成する具体的な流れを表現すると、次のとおりです。
- ブランド品の偽造業者(Generator)は、ブランド品Aの画像を参考に偽物のブランド品A’を生成する
- 鑑定士(Discriminator)は、偽物のブランド品A’が偽物であることを判断し、ブランド品A’の画像をデータベースに記憶する
- ブランド品の偽造業者は、さらに精度の高い偽物のブランド品A’’を生成する
- 鑑定士(Discriminator)は、偽物のブランド品A’’が偽物であることを判断し、ブランド品A’’の画像をデータベースに記憶する
- 1~4のサイクルを繰り返す
上記の流れは、他のどのような例にも応用できます。GANの構造としては、「Generator」と「Discriminator」の2者があり、2者が競い合うことで精度の高いデータが生成されていく仕組みです。
敵対的生成ネットワーク(GAN)の活用シーン
敵対的生成ネットワーク(GAN)は、さまざまな場面で活用されています。その派生形は数百種類もあると言われていますが、今回はその中でも代表的な5つの活用シーンについて、具体的な例とともに紹介します。
低画質の画像を高画質に変換する
低画質の画像を入力し、高品質な画像に変換する例は、敵対的生成ネットワーク(GAN)の活用例のひとつです。AIに低画質の画像を学習データとして与えた後で、AIが低画質の画像からより高画質な状態を推測して、新たな画像データを生成します。
その後、生成画像からさらに高画質な状態の画像を推測し、新たな高画質な画像を生成します。このサイクルを繰り返すことによって、理論的には無限に高画質な画像を生成することが可能になります。
ただし、実際には無限に試行を繰り返すうちに肉眼では判別がつかない程度の高画質化になっていくため、現場に導入する際は、どの地点で作業を停止するのかを判断する必要があります。
テキストから画像を生成する
AIにテキストデータを与えて、そのデータから内容を推測し、新たなデータを生成する手法です。例えば「りんご」というテキストの入力データをAIに分析させると、果物のりんごの画像が生成されるイメージです。
実際にはテキストデータが文章などの形で与えられ、より複雑な情報を持った画像が生成されることが想定されるでしょう。
テキストを与えたばかりの段階では、AIは「りんご」というテキストデータから正しいりんごの画像を生成できませんが、何度も演算を繰り返すうちに正しいりんごの形や色を学習し、精度の高いりんごの画像を生み出せるようになります。
画像を任意の画風に変換する
画像を任意の画風に変換することも、敵対的生成ネットワーク(GAN)の活用方法のひとつです。
AIに対してごく簡単な線画(棒人間など)と、最終的に理想とする画風の画像の2枚を与えることで、線画を理想の画風に近づけるためにAIが繰り返し学習を重ねていき、最終的に理想とする画風の新たな画像が生成されます。
近年では、この技術を活用したAIサービスも少しずつ登場してきています。理想とする画風の画像を提示し、簡単な線画を投入するだけで、人間の画家やイラストレーターが描いた作品のような画像を生成できます。
画像とテキストを合成する
画像とテキストを合成して、新たな画像の生成・出力を行うことも可能です。
例えば「りんご」「パイナップル」「マスカット」の画像と、「バスケット」というテキストデータをAIに与えることで、「りんご・パイナップル・マスカットがバスケットに収まっている画像」を生成するといったイメージです。
AIは「バスケット」というテキストデータから想像される画像を生成してから、りんご・パイナップル・マスカットとバスケットの関連性を判断し、バスケットに収まっている3つの果物の画像を生成する、という流れです。
画像とテキストを複合的に活用することで、より複雑な表現が可能になります。
動画を生成する
画像の生成やテキストデータの合成など、複数の要素を組み合わせることで、動画の生成も可能になります。テキストデータの脚本をAIに分析させて、そこから新たなアニメーションを生み出すなどの活用方法が考えられます。
- AIに脚本(文字データ)やイメージ画像(画像データ)を読み取らせる
- AIが脚本やイメージ画像の内容を分析し、新たな画像を生成する
- 生成された画像同士を分析して、前後の文脈をAIが理解し、隙間を埋める画像を生成する
- 生成された画像同士をつなぎ合わせてアニメーションにする
具体的なアニメーション生成の流れは、上記のとおりです。今後、この技術が洗練されていくと、アニメーション製作の効率化など、さまざまな効果が期待できます。
敵対的生成ネットワーク(GAN)の課題
敵対的生成ネットワーク(GAN)は、今後さまざまな場面で活用が期待される技術ですが、いくつかの課題も抱えています。ここでは、敵対的生成ネットワーク(GAN)の主な2つの課題について解説します。
生成データの判断基準が不透明
敵対的生成ネットワーク(GAN)には、「生成データの判断基準が不透明である」という課題があります。AIが生成した画像データを、誰もが納得する明確な基準で「類似している」と判断することは困難です。
例えば、あるイラストレーターの画像データを参考に、簡単な線画からイラストレーターの画像に似た新たな画像を生成したとします。生成された画像を見て、Aさんは「とてもよく似ている」と判断するかもしれませんが、Bさんは「細部がイラストレーターの特徴と似通っていないので、似ていない」と判断する可能性もあります。
このように、「似ている」という判断基準が明確ではないために、万人にとって「正解」と判断される画像を生成することは難しい点はデメリットです。
動作の不具合が多い
敵対的生成ネットワーク(GAN)は画期的な技術であり、今後もさまざまな場面で活用が広がっていくでしょう。しかし、現状では動作の不具合も多く、ビジネスに積極的に利用するには不安が残る部分もあります。
例えば「勾配消失問題」というエラーがあります。勾配消失問題とは、機械学習の最初の段階ではAIにとって判断が簡単な場面が多々あるため、学習効果が十分に反映されず、AIの学習が進まないエラーのことを指します。
また、「モード崩壊」と呼ばれるエラーも問題点のひとつです。モード崩壊とは、AIが学習を重ねて精度の高いデータを生成できるようになると、理想とする画像の特徴を持ったデータのみを生成するようになってしまうエラーです。
敵対的生成ネットワーク(GAN)の応用研究
近年では、より効果的に敵対的生成ネットワーク(GAN)を活用するためのさまざまな応用研究が進められています。ここでは、DCCAN、CycleGAN、StyleGANの3つのアルゴリズムや活用事例について、詳しく解説します。
DCGAN
DCGAN(Deep Convolutional GAN)は、AIの画像認識でよく使われるニューラルネットワーク(CNN)技術を応用したものです。ディープラーニング(深層学習)のひとつでもあります。
最初に誕生したオリジナルの敵対的生成ネットワーク(GAN)は、テキストデータの生成をメインとしていましたが、DCGANは画像生成が得意な点が特徴です。昨今、数多く登場している画像生成サービスに使われているGAN技術は、DCGANが中心となっています。
オリジナルの敵対的生成ネットワーク(GAN)に比べて、DCGANが生成する画像は鮮明で画質が高いため、品質の高い画像生成を行いたい場合は、DCGANの活用が有効です。また、従来のGANに比べると学習が安定化されており、与えたデータに対してシンプルな画像の生成が可能になっています。
教師なし学習×ニューラルネットワークの発展形として、多くの場面で注目されています。
CycleGAN
CycleGANとは、関連性のない2枚の画像を使用して、AIに双方の画像の特徴を寄せ合い、新たな画像を生成する敵対的生成ネットワーク(GAN)です。例えば風景画像とゴッホの画像を用意し、CycleGAN技術を取り入れることで、「ゴッホ風の風景画像」を生成できます。
また、朝の風景画像と夜の画像を与えることで、「夜の風景画像」を生成するなどの例も挙げられます。2枚の画像の特徴を寄せ合う時に構成するネットワークがサイクル状であることから、「CycleGAN」と呼ばれています。
CycleGANの特徴は、「条件付けができること」にあります。例えば、AIに0~9の数字をあらかじめ学習させてラベル付けを行っておくと、「数字の9を生成して」と命令するだけで、数字の9の画像を生成できるようになります。
冒頭の例で言えば、「ゴッホ風の絵」とはどのようなものなのかをAIが学習することで、「ゴッホ風の夕暮れの丘の画像を生成して」と命じるだけで、イメージに沿った画像が生成されるようになるのです。
StyleGAN
StyleGANとは、高解像度の画像を生成する敵対的生成ネットワーク(GAN)です。StyleGANを活用すると、本物とは見分けが付かないような人間の顔など、リアルな画像を生成できます。
リアリティが高すぎるSyleGANの登場によって、「写真は証拠として役に立たなくなる」とまで言われています。
StyleGANの学習では、最初、低い解像度の画像を学んでいきます。低い解像度の学習を終えると、次はより高い解像度の画像を学んでいき、最終的に肉眼では見分けが付かないような精巧な画像を生成できるようになるという仕組みです。
StyleGANでは、データに潜むノイズをGeneratorとは別の空間で抽出し、その結果をメインの空間に反映させることで、効率的かつ精度の高い学習を可能にしています。現在では、書記のStyleGANのデメリットを修正した「StyleGAN2」というモデルが使用されています。
敵対的生成ネットワーク(GAN)まとめ
敵対的生成ネットワーク(GAN)を活用することで、これまでには難しかった「与えた画像の性質を持った、全く新しい画像の生成」が可能になります。今後はGAN技術の精度もさらに進化・向上し、ビジネスの場にもさまざまな形で取り入れられていくと考えられます。
DCGANやCycleGAN、StyleGANなど、目的に合わせてさまざまな応用研究も進められています。今後はますます多様なモデルが生まれ、ビジネスや人々の生活に深く浸透していく可能性もあるでしょう。
敵対的生成ネットワーク(GAN)について理解を深めるためには、教師なし学習やディープフェイクの知識も役立ちます。さらに詳しく学びたいという方は、下記の記事もご参照ください。
ディープフェイクとは?進化したAI技術で本物そっくりの顔を生成
生成AI(ジェネレーティブAI)とは?種類・使い方・できることをわかりやすく解説
生成AIについて詳しく知りたい方はこちらの記事も参考にしてください。
生成AI(ジェネレーティブAI)とは?種類・使い方・できることをわかりやすく解説
AIについて詳しく知りたい方はこちらの記事も参考にしてください。
AI・人工知能とは?定義・歴史・種類・仕組みから事例まで徹底解説
業務の課題解決に繋がる最新DX・情報をお届けいたします。
メールマガジンの配信をご希望の方は、下記フォームよりご登録ください。登録無料です。
AI・人工知能記事カテゴリ一覧
AI・人工知能サービス
- 生成AI
- 画像生成AI
- ChatGPT
- AI研究開発
- LLM
- DX推進
- おすすめAI企業
- チャットボット
- ボイスボット
- 音声認識・翻訳・通訳
- 画像認識・画像解析
- 顔認証
- AI-OCR
- 外観検査
- 異常検知・予知保全
- 自然言語処理-NLP-
- 検索システム
- 感情認識・感情解析
- AIモデル作成
- 需要予測・ダイナミックプライシング
- AI人材育成・教育
- アノテーション
- AI学習データ作成
- エッジAI
- IoT
- JDLA
- G検定
- E資格
- PoC検証
- RPAツール
- Salesforce Einstein
- Watson(ワトソン)
- Web接客ツール
- サプライチェーン
- メタバース
- AR・VR・デジタルツイン
- MI
- スマートファクトリー
- データ活用・分析
- 機械学習
- ディープラーニング
- 強化学習
- テレワーク・リモートワーク
- マーケテイングオートメーション・MAツール
- マッチング
- レコメンド
- ロボット
- 予測
- 広告・クリエイティブ
- 営業支援・インサイドセールス
- 省人化
- 議事録自動作成
- 配送ルート最適化
- 非接触AI
業態業種別AI導入活用事例
今注目のカテゴリー
AI製品・ソリューションの掲載を
希望される企業様はこちら