敵対的生成ネットワーク(GAN)は、2 つの競合するニューラル ネットワークを使用して新しいデータを生成するディープ ラーニング アーキテクチャの一種です。この 2 つのネットワーク(生成器と識別器)は互いに競い合いながらトレーニングを行い、生成する出力の精度を向上させます。GAN は、コンピュータ ビジョン、ロボット工学、画像生成、動画合成、自然言語処理など、さまざまな分野で役立ちます。
GAN の仕組みを理解するには、美術品の贋作師(生成器)と美術評論家(識別器)の競争という例えがわかりやすいでしょう。
この敵対的な「ゲーム」は続き、両方のネットワークが徐々に賢くなっていきます。やがて、贋作師の熟練度が増し、評論家はもはや本物と贋作を確実に見分けることができなくなります。この時点で、GAN はトレーニングされ、新しい、非常に現実的なデータを生成できるようになります。
畳み込みニューラル ネットワーク(CNN)と敵対的生成ネットワーク(GAN)はどちらもディープ ラーニング アーキテクチャですが、それぞれ異なる強みと用途があります。CNN は画像分類や物体検出タスクによく使用されますが、GAN は新しいデータ インスタンスの生成を目的として設計されるのが一般的です。
機能 | CNN | GAN |
データ使用量 | ほとんどがラベル付きデータセット | ラベル付きまたはラベルなしのデータセット |
出力 | 分類、特徴抽出 | 多様な新しいデータ インスタンス |
モデルタイプ | 識別モデルは、 | 生成 |
メインのタスク | 画像分類、オブジェクト認識 | 画像生成、データ拡張、合成データ作成 |
機能
CNN
GAN
データ使用量
ほとんどがラベル付きデータセット
ラベル付きまたはラベルなしのデータセット
出力
分類、特徴抽出
多様な新しいデータ インスタンス
モデルタイプ
識別モデルは、
生成
メインのタスク
画像分類、オブジェクト認識
画像生成、データ拡張、合成データ作成
すべての GAN は生成器と識別器の構造を共有していますが、特定の問題を解決するためにさまざまなバリエーションが開発されています。最も重要なタイプをいくつかご紹介します。
2 つの敵対的ネットワークを使用するという基本的なコンセプトは、GAN のバリエーション全体で一貫していますが、研究者は、特定の用途の制限に対処し、パフォーマンスを向上させるために、さまざまなアーキテクチャとトレーニングの改良を模索しています。
GAN は、多くの業界で新たな可能性を切り開いてきました。一般的に、その用途は主に次の分野に分類されます。
これは GAN の最も有名な応用例です。人物、場所、物体のリアルな画像の生成、デジタルアートや音楽の作成、スタイル変換(写真を絵画のようにする)、超解像度(ぼやけた画像を鮮明にする)、テキストから画像への合成といった強力な画像編集ツールの実現などがあります。
高品質のデータは ML の原動力となりますが、希少であったり、高価であったり、非公開であったりする可能性があります。GAN は、合成データを生成することでこの問題を解決します。医療分野では、GAN を使用して、患者のプライバシーを侵害することなく、リアルでありながら匿名化された医療スキャンを作成して、診断モデルのトレーニングに活用できます。金融業界では、合成トランザクション データを生成して、より優れた不正行為検出システムをトレーニングできます。これにより、データ不足を克服し、データセットのバランスを保つことができます。
GAN は、複雑なシステムのパターンを学習して、リアルなシミュレーションを作成できます。これは、自動運転車のトレーニング、動画の次のフレームの予測、さらには創薬における潜在的な分子構造の発見など、さまざまなシナリオの生成に活用されています。
GAN を「正常」なデータでトレーニングすることで、パターンに当てはまらないものを検出する精度が非常に向上します。これは、不正な金融活動の検出、サイバーセキュリティにおけるネットワーク侵入の特定、製造における欠陥の発見に活用されています。
GAN の開発とデプロイには、膨大なコンピューティング能力と堅牢な MLOps プラットフォームが必要です。Google Cloud は、ワークフロー全体をサポートするツールを提供しています。