今回は、「生成AI」についての仕組みや、「画像生成AI」がどのようにして画像を生成しているのか、簡単に分かりやすく説明していきます。少し複雑なモデルの話もありますが、初めての方でも分かるように出来る限りかみ砕いて、会話形式で解説していきます!
今回は、質問者役として「助手さん」に登場してもらっています。

よろしくね
1. 生成AIって何? これまでのAIとどんな違いがあるの?



最近、「生成AI」ってよく聞くけど、一体何ができるの?



生成AIというのは、人が書いたり作ったりするようなクリエイティブな作業をするためのAIのこと言うよ。
例えば、文章を書いたり、音楽を作ったり、絵を描いたりすることができるんだ。AIは大量のデータを学習して、そのデータを基にして、新しい文章や音楽や絵を生成するんだよ。



すごいんだね。でもさ、それって今までのAIと何が違うの?



いい質問だね!
これまでのAIは、主に何かを「認識」したり「分類」したりすることが得意だったんだ。例えば、写真の中にいる人の顔を見つけたり、画像から数字を読み取ったりするのが得意だったんだ。だから、データ予測を行ったり、顔認証したりするのに使われているんだよ。



そっか!
これまでのAIでは新しいものを生み出せていなかったけど、生成AIでそういうものが作れるようになったんだね。
生成AIと通常のAIの違いについてのまとめ
これまでの「AI」は既存のデータからパターンを学習して、タスクを効率的に実行することに重点を置いています(ルールベースのモデル)。
一方で、「生成AI」は、あまり構造化されていないデータを基にして、新しいコンテンツを創り出すことに特化しています(確率論的なモデル)。



生成AIと、従来のAIについて、表形式にまとめると以下のような感じになるよ。
項目 | 生成AI (Generative AI) | これまでのAI (Traditional AI) |
---|---|---|
出来ること | 新しいデータやコンテンツを生成する | 既存のデータを分析し、パターン認識や予測を行う |
モデルのタイプ | 生成モデル (GAN、VAE、トランスフォーマーなど) | 識別モデル (SVM、ランダムフォレスト、ニューラルネットワークなど) |
応用例 | テキスト生成、 画像生成、 音楽生成、 動画生成 | 顔認識、 音声認識、 自然言語処理、 データ予測 |
入力/出力 | プロンプトを入力として、新しいコンテンツ(テキスト、画像、音楽など)を出力 | 入力データに基づいて、分類結果や予測値などを出力 |
技術的な特徴 | ディープラーニングとニューラルネットワークを使用し、創造的なデータ生成を行う | 特定のタスクに特化したアルゴリズムとモデルを使用し、データを分析 |
製品例 | ChatGPT、Gemini(テキスト生成)、 Stable Diffusion、DALL-E(画像生成) | Siri(音声認識)、 株価予測システム(データ予測) |
2. 画像生成AIってどうやってイラストを作れるの?



それじゃあさ、AIでイラストを作ったりするのって、実際にはどんな風にしてやっているの?



AIイラストは「画像生成AI」を用いて作っているんだ。これは主に文字で書かれた説明(これを「プロンプト」って言うの)をもとに、新しい画像を作り出すAIのことだよ。
例えば、「青い空に飛んでいる鳥を描いて」っていうプロンプトを入力すると、それに合わせた絵を生成するんだ。



なるほどね。プロンプトが大事ってこと?



そうだね。
プロンプトを詳しく書くことによって、イメージした通りの画像が得られやすくなるよ。
あと、プロンプトを変えることによって、様々な画風や構図の画像を生成することが出来るんだ。
- 実際の生成例:プロンプト「青い空に飛んでいる鳥」をベースにしてChatGPTを使用して作成











すごいけど、なんだか難しそうかも



今は日本語でも理解してくれるモデルが多いし、プロンプトの描き方の自由度も高いものが多いから、実際に使うのはそこまでは難しくないんだ。
無料で初心者向けなのは、「Bing Image Creator」なんかがおすすめだと思うよ。
Bing image creatorに関する使い方は下記の記事で解説しています。


画像生成AIでの生成のやり方まとめ
画像生成AIのプロンプトは、生成したい画像の詳細(キャラクターや背景、スタイル、雰囲気など)をできる限り具体的に記載して、明確な内容にすることが重要です。
また、プロンプトの内容を試行錯誤しながら調整することで、より自分のイメージに近づけていく必要があります。
3. 画像生成の仕組み:GANと拡散モデルの違いは?



画像生成AIでどんなことができるかわかってきたかも!
でも、なんでAIは画像が作れちゃうの?



画像生成AIが画像を生み出す仕組みについては、大きく分けて2種類あるんだ。
それぞれ「GAN」、「拡散モデル」と呼ばれるよ。



む、難しそうな単語が出てきたわね…
GAN(Generative Adversarial Networks)とは?



まず、GAN(生成的敵対ネットワーク)から説明するよ。少しややこしいけど、GANの中には2つのAIがあるんだ。



2つ?



「ジェネレーター(生成器)」という絵を描くAIと、「ディスクリミネーター(識別)」というその絵が本物っぽいかどうかを判断するAIがあるんだ。
ジェネレーターが絵を描いて、ディスクリミネーターがその絵をチェックしているイメージかな。この競争を通じて、ジェネレーターはどんどん上手にリアルな絵を描けるようになるんだ。



AI同士で戦っていくことでレベルアップしていくイメージかしら



そうね。こんな感じで戦っているのかもしれないね





まさかの肉弾戦なんだ…
拡散モデル(Diffusion Models)とは?



そしたら、拡散モデルっていうのはまた別なの?



拡散モデル(Diffusion Models)は、まず最初にランダムなノイズの画像を作るんだ。このノイズは、テレビの砂嵐みたいにぐちゃぐちゃしていて何も見えない感じかな。そこから、AIが少しずつそのノイズを取り除いていくことで、最終的にちゃんとした画像を作っていくんだ。



なるほどね。こんな感じかしら?





そんな感じで、ノイズの中から画像を見つけていく感じだね。
拡散モデルの強みは、生成する画像の品質が高く、細かいディテールまで再現できることだよ。
また、拡散モデルはGANよりも生成が安定していて、多様な画像を作りやすいという特徴もあるんだ。
画像生成の仕組みのまとめ
- アプローチの違い: GANは対立的な学習を通じて画像を生成するのに対し、拡散モデルはノイズ除去のプロセスを通じて画像を生成します。
- 利点と欠点: GANは高速でリアルな画像生成が可能ですが、学習の安定性に欠けることがあります。一方、拡散モデルは生成の安定性が高く高品質ですが、計算コストが高く、生成に時間がかかります。



画像生成の方法の違いについて、表形式でまとめてみたよ。
いわゆる最近の画像生成AIでは、「拡散モデル」の方が使われているよ。
項目 | 生成的敵対ネットワーク (GAN) | 拡散モデル (Diffusion Models) |
---|---|---|
仕組み | 2つのニューラルネットワーク(AI)を競わせて学習。 | ノイズからスタートし、徐々にノイズを除去しながらデータを生成。 |
特徴 | リアルでシャープな画像生成が可能。高解像度画像生成に強いが、訓練が不安定であることが多い。 | 訓練が比較的安定しており、高品質な画像生成が可能。モード崩壊(同じような画像ばかり生成する問題)が少ない。 |
使用例 | StyleGAN、CycleGAN、DeepFake | DALL-E、Imagen、Stable Diffusion |
計算コスト | 訓練時の調整が必要で、計算リソースを多く消費することがある。 | 訓練に時間がかかり、計算コストが高いが、訓練過程が安定している。 |
4. テキストから画像にする仕組み:CLIPについて



画像が生成される仕組みは分かったわ。
でも、どうやって「プロンプト」という文字情報を画像に変えていっているの?



「画像」と「テキスト(言葉)」を結びつけることができるAIを使っているんだよ。
たとえばOpenAIが開発したCLIP(Contrastive Language-Image Pretraining)が有名ね。
これは、たとえば、写真を見て「これは猫だ」と理解したり、文字で「犬」と書いてあったら、その犬の画像を探し出すことができるんだよ。



そんなことができるのね。どういう仕組みになっているの?



CLIPは、たくさんの「画像」と「その説明(テキスト)」を見て学習しているからなんだ。画像とテキストがペアになったデータをたくさん見て、「この画像にはこの説明が合う」ということを学んでいるんだよ。



なるほど。事前の学習をたくさんしているってことね。
CLIPは、テキストと画像を結びつけるために開発されたモデルです。画像生成AIでプロンプトを解釈する際には、CLIPのようなモデルが使用されます。
5. AIが学習する仕組みについて



でも、AIってどうやって学習しているの?人とは違うのに、なんで学ぶことができるの?



AIの学習には、ディープラーニングという方法が用いられてるんだ。これは「ニューラルネットワーク」っていう仕組みを使っていて、人間の脳がどうやって考えているかを真似たものなんだよ。



人間と同じように学んでいるのね?



そうだけど、学習量が多いことに特徴があるよ。
たとえば、CLIPは、インターネット上から集めた4億組以上の画像とテキストのペアを使って学習しているんだ。この膨大な学習量を元にして、画像とテキストの関連性を理解する能力を身につけていくんだよ。



そんなに学習するのは無理だわ…
ディープラーニング(深層学習)は、高度な機械学習の一種です。
人間の脳の神経細胞(ニューロン)の働きを模倣した「ニューラルネットワーク」を使用して、大量のデータから学習します。画像や音声、テキストなどの色々なパターンを大量に認識することによって、分析することが可能となります。
6. AIで作った画像やイラストの著作権について



でも、AIで作った絵って、誰のものになるの? 著作権ってあるの?



いい質問だね!
AIで作った画像の著作権はとても難しい問題なんだ。AIが作ったもの自体には著作権が認められていないんだけど、人間による「創作意図」と「創作的寄与」が認められれば、著作権が生じる可能性があるというのが、現在の文科省の見解だよ。



分かったような分からないような…。具体的にはどういうときなの?



ここが難しいところで、著作権が生じる線引きは曖昧で、まだ明確な答えがないんだ。
プロンプトや、生成の試行回数、生成後の編集などによっては生じる可能性があると言われているけれど、具体的にどうなったらという基準がまだないんだよ。



じゃあ、そんなに手が加わっていなさそうなら、著作権がないし、勝手に使ってもOKってこと?



これもややこしい話なんだ。
たとえば、下記はどちらもAIイラストとして作成してみたものだけど、どっちの方が手が加わっていると思う?







なんだか嫌な予感がする質問ね。



実は、プロンプトの複雑さ、試行回数の多さ、いずれも左の画像の方が多くて、作る過程で人の意図が多く介在しているんだよ。
でも、それを画像から読み取ることはほぼ不可能で、うかつに著作権がないと判断することもできないんだ。



なるほどね。厄介だということが分かったわ



まだまだ法的な整備が追い付いていない状態だから、今後明確になっていくまでは答えがなさそうな問題と言えるね。
まとめ:画像生成AIの仕組みと原理を理解して、より生成AIを身近に!
今回は、画像生成AIの仕組みや原理などについて解説しました。できる限りかみ砕いて、簡単に分かるようにしてみました。
最後に、今回の内容のポイントを簡単にまとめたのが下記となっています。本記事を通して、生成AIをより身近なものと感じてくれると良いなと思っています。
画像生成AIの仕組み・原理のポイント
- 「生成AI」は、これまでのAIと異なり、文章や画像などのコンテンツを生成できる点に特徴がある。
- 「画像生成AI」への指示は、テキストベースの「プロンプト」を用いるのが一般的。
- 最近の画像生成AIは、ランダムなノイズを元に画像を作成していく「拡散モデル」が主流。
- 「プロンプト」は、テキストと画像を結びつけるAIによって、適切な画像を解釈する。
- AIは「ディープラーニング」という手法によって、大量の学習を事前に行っている。
コメント