ChatGPTを始めとした生成AIは簡単な指示で新たなデータを生成できることから、業務の効率化や自動化を目指す多くの企業において関心の的となっています。それではAIによるデータ生成の過程では、どのような仕組みが働いているのでしょうか。
生成AIは生み出せるデータの他にも、学習方法や生成方法にバリエーションが存在し、これらを学ぶことが生成AIへの理解を深める際に重要なポイントです。そこで本記事では、生成AIを構成する機械学習やディープラーニング、基盤モデルの仕組みを中心に解説します。
生成AIとは
生成AIとは、使用者の指示文(プロンプト)をもとに、テキストや画像をはじめとしたコンテンツを生成するAIの一種です。テキスト生成を得意とするChatGPTは国内でも既に有名ですが、他にも画像や動画、音声など、さまざまなコンテンツを生成できるAIが公開されています。
関連記事:生成AIのメリット/デメリットを踏まえたビジネスでの活用方法
従来のAIとの違い
そもそもAIとは一般的に「大量のデータをもとに、人間が行うような高度な推論や思考を行うことを目指したもの」と認識されており、生成AIが注目される以前からもAIが多数存在していました。これら従来のAIと生成AIの大きな違いは、0→1のアウトプットができる点にあります。
従来のAIの得意分野は、学習したデータの特徴を識別することです。データの特徴や傾向をもとにデータを分類する、新しく入力されたデータを識別する、データの傾向から予測を行うといった判断が可能ですが、全く新しいオリジナルの情報を生み出すことはできません。
たとえばある店舗において、季節や曜日、天候ごとの来客数を集計した場合、従来のAIを用いることである日の来客数を予測することができます。しかしこれはあくまで過去のデータを根拠とした予測であり、0から生み出した独自性のある情報かと問われるとそうではないでしょう。
一方で生成AIは大量のデータを学習させることで、それらの特徴や傾向を踏まえつつも新たなコンテンツをアウトプットできます。生成AIに「今日の夕食はなにをしよう」という文章を提示すれば、「カレーライスはどうですか?」といった回答が得られるかもしれません。この回答はAIが大量の文章を学習する中で、夕食の献立の提案を求められていること、カレーライスが料理であり、広く食されていることなどを理解し、文章の自然さや文法的な正しさも加味したうえで「AIの判断で独自の回答を生み出した」と解釈できます。
このような違いはあるものの、従来のAIが生成AIに劣っているわけではなく、その本質は目的の違いに他なりません。前者は識別や予測を主な目的としており、「正確性」に主眼が置かれますが、後者の目的はあくまで「新たなコンテンツの生成」です。場合によっては正確性が重視されず、結果として誤った内容を出力してしまう場合(ハルシネーション)も見受けられます。
生成AIの種類と仕組み
生成AIは膨大なデータを機械学習やディープラーニングによって処理し、指示文に応じてさまざまなデータを生成できるよう調整された「基盤モデル」によって実現されています。
機械学習
機械学習とは、AIが大量のデータからルールやパターンを理解し、新たなデータを判断するための仕組みです。具体的な例をあげると、さまざまな種類の動物が写った画像から同じような特徴をもつ動物を認識し、犬が写った画像はどれか、新しく入力された画像には犬が写っているかを判断するといった過程に機械学習が関わっています。
機械学習の代表的なアルゴリズムとしては、以下の3つがあげられます。
特徴 | 活用イメージ | |
教師あり学習 | ラベル(正解)を付与したデータを学習させることで、あるデータがラベルに合致するかを判断する | 事前に「犬」というラベルを付与した犬の画像を学習させることで、新しく提示された画像に犬が写っているかを判断する |
教師なし学習 | ラベルのないデータから共通する要素を見つけ出したり特徴毎でグループ分けをする | さまざまな画像に写った動物の特徴を学習し、ある動物が写った画像だけを分類する ※ただしそれが何という動物かの「正解」は判断できない |
強化学習 | AIのさまざまな出力に対して、より精度の高い回答にプラスの評価(報酬)を与えることにより、より高い報酬を目指して出力を行う | AIが生成した複数の画像からより「犬」らしいものに報酬を与えることで、画像がだんだん本物の犬へと近づいていく |
これらのアルゴリズムは、目的や使途によって使い分けられています。まずAIに対して「正解」を求め、かつそれに該当するデータを事前に準備できる場合には教師あり学習が適切ですが、データにラベルを付与する工程(アノテーション)は多大な労力を要する側面もあります。
関連記事:AI/機械学習におけるアノテーションとは?必要性や作業方法を紹介
決まった正解がない分析的な領域や、単純なデータの分類においては教師なし学習が利用されています。後述するディープラーニングも、その大部分は教師なし学習により構成されています。
強化学習は完全な「正解」はないながらも、それを目指し限りなく出力の価値を高める必要がある場合にしばしば用いられ、投資判断におけるAIがその一例です。ある状況でより良いパフォーマンスを出した判断に対し報酬を与えることで、AIが常に利益の大きい判断を下す理想的な状態へと近付けます。
とはいえ実際にはこれらのアルゴリズムが独立して用いられることは少なく、それぞれの特性を踏まえた上で組み合わされることで、AIとして機能しています。
ディープラーニング
ディープラーニングは機械学習の発展形の1つであり、あたかも人間の脳で判断するような階層的な処理(ニューラルネットワーク)により、学習の精度を高める技術です。先の例で言えば、どのようなパターンがみられる動物の画像を「犬」であると判断するべきか、人間の指示を受けることなく、AI自らが理解し、学習を進めるためにはディープラーニングが必要となります。
もう少し掘り下げて説明しましょう。我々が犬を見て「犬だ」と理解する際にはどこを見ているのでしょうか。耳、鼻、口、目、体の大きさ、足の本数…さまざまな要素を踏まえて「犬」であると理解していますね。もちろん顔つきや体の大きさなどは犬種によっても異なりますが、無意識的に「犬全般の共通する特徴」を理解していることから、犬種が異なる場合であっても「犬だ」と判断できるわけです。
ディープラーニングの仕組みもこの過程と似ています。与えられた犬の画像を「これは犬だ」とだけ学習するのではなく、階層的に処理することで、我々が無意識的に見ている「犬と判断するための特徴」をAI自体が見つけ出し、より柔軟かつ高い精度で判断できるようになるわけです。
基盤モデル
機械学習とディープラーニングを踏まえて、本題である基盤モデルについて見ていきましょう。機械学習やディープラーニングを駆使して大量のデータを学習し、幅広い指示に対して情報を生成できるよう訓練された一連の仕組みを基盤モデルと呼びます。
この基盤モデルは生成したいデータに対し、最適な学習方法を組み合わせることで構築されており、さまざまな種類があります。
GPT
GPT(Generative Pre-trained Transformer)は、アメリカのOpenAI社が開発した自然言語処理モデルのAIです。文脈の理解に特化した「Transformer」という基盤モデルをベースに、膨大な量のテキストデータや、インターネット上のWebサイトを学習しています。
GPTにおいてはテキストデータから、単語同士の関係性や文法的なつながり、出現率などのパターンを学習することで、指示文に対して適切と思われる回答を返します。
極端な例ですが、好きな食べ物を話すときに「私はりんごが好きです。」とは言っても、「りんごが好きです、私は。」と表現する機会はごくわずかでしょう。また、「おかえり」と言われれば、多くの人が「ただいま」と返しますね。このように、膨大なデータから「自然で正しいと思われる表現ややりとり」を理解したうえで、テキストを返すのがGPTだと考えるとイメージしやすいでしょう。
なお、ChatGPTもGPTを用いていますが、基盤モデルであるGPTをチャット用に、つまり口語的なやりとりに適したUIと調整を加えたものがChatGPTです。
拡散モデル
拡散モデルとは、画像や音声の生成AIで主に利用されている基盤モデルです。元のデータを劣化させていく過程と、逆に劣化させたデータを復元させていく過程を分析することで、新たなデータの生成方法を学習しており、リリースされているサービスでは「StableDiffusion」や「DALL-E2」のベースとして用いられています。
この過程は非常に複雑かつ数学的です。以降はあくまでイメージであり、100%正確ではありませんが、「田」という漢字をイメージし、線を削除する工程を劣化、ゼロから書く工程を復元としましょう。
ゼロから書く場合には縦横それぞれ3本の線を引く必要がありますが、データがない状態ではどこにどのような線を引くべきかを理解できません。そこで劣化の工程、つまり一部の線が欠けた状態を学習することで、線の引くべき場所と長さを理解し、「田」という漢字を復元できるようになりますが、この際に処理方法を調整すれば、「甲」という違った漢字を生成することもできます。
画像や音声においては膨大な要素が含まれますが、イメージとしては同様です。拡散モデルは膨大なデータの劣化と復元の工程を学習することで、その間に介在する変数や状態を理解し、指示に沿って調整することで、目的に叶う新たなデータの生成を目指しています。
GAN(敵対的生成ネットワーク)
GAN(Generative Adversarial Network:敵対的生成ネットワーク)とは、2つのニューラルネットワークによりデータの生成と判別を繰り返すことで、より精度の高いデータの生成を目指す基盤モデルです。「より良いデータを生成」するネットワーク(Generator)と、「生成されたデータが本物か、AIによって生成された『偽物』かを判別」するネットワーク(Discriminator)があたかも競い合うように動作することから「敵対的」と表現されています。
このやりとりは端的に言えば「いたちごっこ」です。Generatorは本物に近い画像を生成し、Discriminatorを「騙す」ことを目指す、Discriminatorは判断の精度を高め、本物ではなくGeneratorが生成した画像であると見破る。この繰り返しにより生成・判断の精度が向上していき、最終的には人の目では区別できないほど精度の高い画像を出力できるようになります。
しかしながらこの基盤モデルは「本物と見分けがつかない」ことを目指しており、結果として独自性がなく、偏ったデータを生成してしまう(モード崩壊)場合があります。したがって昨今では、AIによる高画質化やディープフェイクをはじめ、模倣や再現を中心とした目的で利用される傾向にあります。
生成AIへの理解が活用を促す
生成AIの背景には機械学習やディープラーニング、そして基盤モデルといった技術がありますが、これらの詳細まで理解することは容易ではありません。しかしながら、今後も進化が期待される生成AIを活用し、業務の自動化やDXを実現するためにも、それらがどのような仕組みで動作しているかのイメージを持っておいて損はないでしょう。
ただし仕組みを理解したとしても、AIが実際の業務においてどのように活用できるか、全社的にうまく運用できるかどうかを考えるにはまた違った視点が必要となります。AIだけでなく、DXに関わる幅広い知識が求められるため、専門のベンダーと相談しつつ活用を進めることをおすすめします。