Yolo 深圳
深セン
今すぐ参加
用語集

敵対的生成ネットワーク(GAN)

GANが、現実的な画像を生成し、データを強化し、ヘルスケア、ゲームなどのイノベーションを推進することで、AIにどのような革命をもたらすかを発見してください。

Generative Adversarial Network(GAN)は、人工知能(AI)の高度なフレームワークです。 人工知能(AI)の中で 元のデータセットに似た新しいデータインスタンスを作成するために使用される。イアン・グッドフェロー(Ian Goodfellow)氏と研究者たちによって、2014年に発表された論文で紹介された。 GANはユニークな前提で動作する。 GANはユニークな前提で作動する。 継続的で競争的なゲームである。この敵対的なプロセスにより、システムは非常にリアルな合成コンテンツを生成することができる。 フォトリアリスティックな画像やアートからオーディオや3Dモデルに至るまで、非常にリアルな合成コンテンツを生成することができる。 生成AIの礎となっている。

GANの機能

GANのアーキテクチャは、ジェネレーターとディスリミネーターという2つの主要コンポーネントで構成されている。 識別器である。これらの2つのネットワークは、一方のエージェントの利益が他方の損失になるゼロサムゲームで同時に学習される。 の利益がもう一方の損失になる。

  1. ジェネレーター:このネットワークは "偽造者 "として機能する。ランダムなノイズを入力とし 本物そっくりの顔画像などのデータを生成しようとする。その目的は を騙すのに十分な説得力のある合成データを作成することである。 識別器。
  2. 差別者:このネットワークは "探偵 "の役割を果たす。訓練データから本物のサンプル ジェネレーターから偽のサンプルを受け取る。 ジェネレーター。その目的は、入力を本物か偽物のどちらかに正しくclassify することである。

トレーニングの過程で、ジェネレーターはディストリミネーターを欺く方法を学習することで上達し、一方ディストリミネーターは は本物と偽物を見分ける能力が向上する。理想的には、このループはシステムが次のようなナッシュ均衡に達するまで続く。 ナッシュ均衡に達するまで続けるのが理想的である。 生成されたデータは本物のデータと区別がつかず、識別器は50%の信頼度で推測する。 の信頼度で推測する。

実際のアプリケーション

GANは理論的な研究の域を超え、さまざまな業界で実用的でインパクトのある応用へと進んでいる。

  • コンピュータ・ビジョンのためのデータ補強:データが乏しい場合、GANは多様な学習例を生成することができる。 学習例を生成できる。例えば ヘルスケアにおけるAIでは、GANは合成医療画像を作成する。 を作成し、患者のプライバシーを損なうことなく診断モデルを訓練する。同様に 物体検出モデルの改良に役立つ。 同様に、GANは自律走行車の事故などの 自律走行車 エッジケースに備えることができます。
  • 超解像と画像復元:GANは、低解像度メディアのアップスケーリングに広く使用されている。 NVIDIADLSSのような技術は、GANと同様の概念を使用して、ビデオゲームを高解像度でレンダリングしている ビデオゲームを高解像度でレンダリングする。写真では 超解像GANは、古くて粗い写真をシャープで高品質な画像に復元することができます。 をシャープで高品質な画像に復元することができる。
  • スタイル転送とアート:ある画像のアーティスティックなスタイルを別の画像に転送することができます。 写真をゴッホの絵のように見せるなど)。このクリエイティブな機能は、多くの ディープフェイクやバーチャルインフルエンサーの原動力にもなっている。

GANと拡散モデルの比較

どちらも生成技術ではあるが、GANとGANを区別することは重要である。 拡散モデル(と区別することが重要である。 Stable Diffusion)と区別することが重要である。

  • GAN:ジェネレーターを通して1回(または数ステップ)のパスでデータを生成する。一般的に 推論が高速だが、以下のような不安定性の問題 のような不安定性の問題があるため、訓練が難しい場合がある。 モード崩壊 は限られた種類の出力を生成する。
  • 拡散モデル:ランダムな信号からノイズを繰り返し除去してデータを生成する。多くの場合 より高品質で多様な結果を生成し、トレーニング中も安定しているが、通常、1枚の画像を生成するのに多くの計算能力と時間を必要とする。 1枚の画像を生成するのに計算能力と時間がかかる。

PyTorchジェネレータを定義する

などの図書館がある一方で ultralytics を使った検出のような識別タスクに焦点を当てる。 YOLO11GANジェネレーターの構造を理解することは 役に立つ。以下に簡単な PyTorch ジェネレーターの例 の例は、潜在ノイズベクトルからデータを作成するように設計されています。

import torch
import torch.nn as nn


class SimpleGenerator(nn.Module):
    """A basic GAN Generator that upsamples a noise vector into an image."""

    def __init__(self, latent_dim=100, img_shape=(1, 28, 28)):
        super().__init__()
        self.img_shape = img_shape
        self.model = nn.Sequential(
            nn.Linear(latent_dim, 128),
            nn.LeakyReLU(0.2, inplace=True),
            nn.Linear(128, int(torch.prod(torch.tensor(img_shape)))),
            nn.Tanh(),  # Normalizes output to [-1, 1] range
        )

    def forward(self, z):
        img = self.model(z)
        return img.view(img.size(0), *self.img_shape)


# Example: Create a generator and produce a dummy image from random noise
generator = SimpleGenerator()
random_noise = torch.randn(1, 100)  # Batch of 1, 100-dim noise vector
generated_img = generator(random_noise)
print(f"Generated image shape: {generated_img.shape}")

機械学習における意義

GANの登場は、ラベル付けを必要とする教師あり学習からの転換を意味する。 ラベル付けされたデータを必要とする教師あり学習から データが必要な教師あり学習から、モデルがデータの根本的な構造を理解する教師なし学習への移行を意味する。バックプロパゲーションを バックプロパゲーションを効果的に活用することで GANは、研究者が複雑な分布をモデル化することを可能にする。現実を合成するこの能力は、AIの倫理に関する議論に拍車をかけている。 AI倫理の議論に拍車をかけている。 特に真正性と誤報に関する議論に拍車がかかり、今日のディープラーニングで最も議論されているトピックの1つとなっている。 今日のディープラーニングにおいて最も議論されるトピックのひとつとなっている。

Ultralytics コミュニティに参加する

AIの未来を共に切り開きましょう。グローバルなイノベーターと繋がり、協力し、成長を。

今すぐ参加