ChatGPTの衝撃的な登場以来、生成AIツールの進化には驚くばかりですよね。
わずか1年以内の間に、生成する文章の精度も信じられないくらい高まりました。
また、テキストはもちろん、画像や動画の精度もものすごいスピードで進化しています。
そんな中、これから訪れる超AI時代に向けてChatGPTをはじめとした生成AIツールの仕組みが気になるって方もいるのではないでしょうか?
GoogleのGeminiもMicrosoftのCorePilotも、テキストベースで質問をすれば答えてくれるという仕組みは同じです。
では、AIはどういった仕組みと技術で人間同士のような自然で高度な会話ができるようになっているのしょうか?
ChatGPTの仕組みはAIがどんどんデータを学習をしていくことによって、質問に対して適切な答えを導き出しています。
そのためにはいろんな技術が使われています。
たとえば機械学習の種類にも、教師あり学習、教師なし学習であったり、強化学習、深層学習やディープラーニングといったものがあります。
今はまだこういった専門用語を聞いてもピンとこないと思いますので、ChatGPTをはじめとするテキスト生成AIの技術的な背景についてこの動画では詳しく解説していきます。
記事を最後まで読むことで、「なんとなくChatGPTに質問している」という状態から「ChatGPTがどういったロジックで会話しているのか」を理解できます。
僕自身も、今回お話する内容を理解したことでChatGPTはもちろん、AIや機械学習といった知識を理解できて、よりAI技術に対する興味や関心が増しました。
実際に使って行く際にも、メカニズムを理解していることで生産的な使い方ができるようになっています。
ぜひ最後まで読んでChatGPTの仕組みを理解してください。
Contents
ChatGPTが人間の言葉を理解する仕組み
まずは、ChatGPTが人間の言葉を理解する仕組みについて解説していきます。
ChatGPTがなぜ人間と対話しているようなスムーズな会話文が作れるのか、文章を作成できるのか、その技術的な背景の肝となるのが自然言語処理です。
この自然言語処理、何かというとAIやChatGPTは人間の言葉をすぐに理解するわけではないんですね。
実はChatGPTは質問の回答に合わせてそれっぽい次に続く言葉を、膨大なデータの中から予想して出しているのに出しているにすぎないんです。
たとえば、「果物の」って質問すると、その次に来るであろう言葉を予想して回答を導き出してくれます。
この場合だと「果物の種類」を想定して回答しています。
非常に優れていますよね。
ですけど、その状態になる前に、まず人間の言葉をコンピュータが理解する必要がありますよね。
基本的にコンピューター言語は0と1の組み合わせで数を表現する二進法が使われています。
だから僕たち人間が使っている言葉とは根本的に違うのです。
まず人が使う言語としては例えば日本語でしたりとか、英語でしたりとか人間が日常のコミュニケーションでいろんな言語を使ってると思うんですけども、それを一旦コンピュータが処理します。
認識分析して、一旦その言葉をコンピュータが理解できるように変換する作業が必要なんですね。
この作業のことを自然言語処理と呼びます。
結構そのままの例えというか用語になるんですけども、この技術はChatGPTでしたりとか、他のチャットAIのような技術以外にも、いろんなシーンで使われております。
例えば身近なところで言うとSiriです。
「HeySiri、今日の天気を教えて」とかいった具体に使いますよね。
こういったものとか機械翻訳とか、あとスマートスピーカー、Alexaなど、
「Alexa、何々について教えて」というのも、実は自然言語処理が使われています。
あとは、検索エンジンなども使われております。
なので、実は日常的に使っているサービスの背景にはこの自然言語処理という技術が使われているんですね。
その人間が使ってる言葉を、まずは機械の端末に理解させる必要があります。
そのために、この自然言語処理っていう技術が必要になってくるわけなんです。
この通り、自然言語処理は本当に身近な様々な分野で使われています。パソコンでしたりスマホで文章入力する際の予測変換も実は自然言語処理の技術が使われています。
またGoogle翻訳などの機械翻訳にも、使われていますし、検索エンジン、スマートスピーカーなどといったところにも、この自然言語処理という技術があります。
これらは全て、一旦人間の言葉を機械が理解するように、一旦処理作業が行われているということです。
機械に人間の言葉を認識できるようにした技術が、この自然言語処理になります。
このワードはAIの仕組みのベースとなってきますので、まずは押さえておいてください。
機械学習
ここからは機械学習についてお話をします。
ここで機械学習っていう新しい用語が出てきたんですけども、これは機械が、人間のように学習していくっていうことです。
自然言語処理はAlexaだったりとか、検索エンジンだったりとか、翻訳機能、予測変換とかいろんなところで使われています。
これらはすべて機械学習というものを通じて自然言語に処理するという作業が行われているんですね。
例えばどういうことかというと、迷惑メールを想像してみてください。
迷惑メールの仕組みはいろんなメールが届いてきて、それを一旦迷惑メールの可能性が高いものから自動で別のフォルダに振り分けてくれていますよね。
例えばGmailとか、お使いのキャリアのメールとか、iCloudとかいろいろあるかと思うんですけども、通常はメールが届くフォルダと迷惑メールフォルダって、もう気づいたら分けられているじゃないですか。
これが機械学習の技術なんです。
僕たちが確認する前に途中でスパムかどうかを判定してくれているんですね。
ここで機械学習という技術が使われています。
メール判定の場合は、迷惑メールは迷惑メールフォルダに入れるっていう目的がありますよね。
この目的を達成するために、こういった学習が必要になってきます。
なぜこの機械学習といった技術が必要になってくるのかというと、自然言語処理だけでは機械が人間の言葉を理解しているだけに過ぎないからなんです。
仮に機械が人間の言葉を理解したとしても、「じゃあ、次はこうしてほしい」とか「この仕事をしてほしいとか」とかの指示が必要になります。
Alexaとかスマートスピーカーの場合だったら、何か言葉に応じて気の利いた返答を返えすとか、さっきの迷惑メールの例で言ったら、メールをスパムかどうかを判定して欲しいとかの目的があります。
つまり、言葉を認識してから目的に合わせたタスクを達成するために機械学習が必要なのです。
機械学習は小学校とかにたとえると、まず言葉を習って、数字を習って、次の学年になったら計算の仕方とか漢字の書き方とかを学びますよね。これは社会に出てから活躍するために、それらを使用して仕事に活かすための一番基礎の基礎を学んでいきます。
このように、まず言葉でしたりとか数字っていうものを覚えたら、それを使って何か目的を達成していくことが必要ですよね。
そのためにこの機械学習という技術が使われております。
機械学習はタスクに応じて学習されていて、先ほどのメールの例で言うと、迷惑メールを仕分けをするために、これが迷惑メールなのかとか、これは迷惑メールじゃないっていう仕分けをするための学習が必要になります。
機械学習にはそれ以外にも、写真に写ってるものの判別などもあります。
最近は画像生成AIを使って、イラストを作れたりとか、本当に人間に近いようなモデルさんを書いたり、本物と見分けがつかない写真を生成できたりとかそういったこともできます。
これはAIが写真に写っている人間の顔だとかペットだとかを学習することで実現しています。身近で代表的な例で言うと、例えばインスタグラムとかで、フェイスブックなどは写真撮って投稿したら、その人の名前や情報が出てくることあるかと思うんですけども、これも機械学習の例になります。
また、チャットサービスなどで、ユーザーが質問をしたらAIが自動応答してくれるっていうようなサービスであるかと思うんですけども、これも機械学習が使われています。
ですので、様々なタスクに応じて、コンピュータは目的を達成するために自然言語処理を行ってから、この機械学習が行われるという形になっております。
機械学習の手法
ここからは学習の手法について解説していきます。
機械学習には4パターンの学習の仕方があります。
これが教師あり学習、教師なし学習、強化学習、そして深層学習の四つです。
いろいろ出てきたと思いますので、一つ一つ解説をしたいと思います。
まず教師あり学習です。
これは何かというと、正解不正解というラベルがついたデータを渡していく学習方法です。これが教師あり学習になります。
続いて、教師なし学習です。これは何かというと正解不正解のラベルのない単なるデータだけを渡していく学習方法になります。
次は強化学習。
これは何かというと、まずはルールを用意して、その環境下で試行錯誤をしながら結果に応じた報酬を機械に与えていくようなスタンスの学習方法です。
四つ目は深層学習になります。
深層学習はディープラーニングとも呼ばれています。
これは人間の脳の仕組みを模した手法になっております。
ChatGPTはこの四つ学習方法を組み合わせて精度の高い文章生成を実現しています。なので、教師あり学習があって、教師なし学習があって、強化学習があって、ここに深層学習という人間の脳の形を反映した習方法を使用することによって、あの人間のような自然な会話が実現できているという形になります。
では続いて、教師あり、教師なし、強化学、深層学習について1つ1つを詳しく解説していきたいと思います。
教師あり学習
それではまず、この機械あり学習について解説をしていきます。
最も機械学習の中で基本となるものが、この教師あり学習です。
そもそも機械学習というのは大量のデータをもとに学習しています。
その大量のデータとは例えば、メールフォルダーの迷惑メールの仕分け作業なら、
「こういったメールが迷惑メールですよ」とか、「このメールは通常のメールですよ」っていうものを人間がマニュアルのようなものを渡してラベルをつけていくんですね。
それを大量に学習していくことによって、その傾向を機械が読み取っていくわけです。
その結果、大量のデータの中から、これは迷惑メールだとか、これは通常のメールっていうことを判断することができるようになるんですね。
なので人間で言えば、会社の業務などでも、マニュアルを渡してもらいますよね。
「この作業はこう動いてくださいね」とか「この手順でやってくださいね」といった業務の手引きです。
機械にそういったマニュアルに沿って学習をしていってもらうっていうのがこの機械あり学習の学習方法になってきます。
教師なし学習
では続いて教師なし学習について解説をします。
教師なし学習は間がマニュアルでしたり条件を与えずに、機械が自力で学んでいく方法です。
これを教師なし学習と呼びます。
例えば、先ほどの迷惑メールの例で言うと、教師あり学習の場合なら、人間が手作業で、「こういう傾向があったらこれは迷惑メール」だとか、「これは迷惑メールじゃなくて通常のメールですよ」っていうことを逐一条件を与えて学ばしていくという手法だったんですけども、こちらはコンピュータそのものが迷惑メールを自動で判断していきます。
「ある一定の特徴があったら迷惑メールなので、振り分けてください」という条件だけ渡して、判断はコンピュータが行うという形ですね。
例えば文章に不自然な部分があったらスパムメールとか、リンクのURLがおかしかったら迷惑メールを機械が独自で判断して振り分けていく。
これが、機械なし学習の技術になっていきます。
では続いて教師あり教師なしが終わったところで、強化学習についても解説していきたいと思います。
強化学習
では続いて強化学習です。
これはChatGPTの質を担保している重要な部分となってきます。
強化学習はコンピュータにルールを与えて、そのルールをもとに報酬、スコアを与えていって、それに応じてプラスの報酬になるように学習をさせていくという形になります。
たとえば、囲碁とか将棋などのゲームでもこの教科学習の技術が使われています。
囲碁とか将棋、オセロとかですね、あとチェスとかもそうなんですけどルールがあるじゃないですか。
そのルールをまずはコンピュータに覚えさせます。
この手を打ったらいいですよとか、これをすれば勝てますよとか、こういった悪い手を打ったら負けてしまいますよって言ったルールがありますよね。
これを機械に学習させて、勝ったらプラスの報酬、負けたらマイナスの報酬っていう形で、マイナスにならずにできるだけプラスになって、高い報酬になるように学習していってもらいます。
これが強化学習なんです。
なので、ゲームの報酬の結果をどんどんプラスにできるように、学習を進めていくといった形になります。
そのためには試行錯誤を何回も何回も繰り返していくという形になってきます。
それが、テキストベースの場合だと、こういうテキストはOKですよ。こういうテキストならプラスの報酬ですよ。逆にこういう文章やこういうテキストを出したらマイナスの報酬ですよっていうようなルールを出します。
するとマイナスの結果にならないように、プラスの報酬をもらえるように学習していくといった形を取ります。
この際のルールでしたり、報酬は誰が決めたりしているのかというと、これは人間が決めています。
ChatGPTの例で言うと、開発元のOpen AIが基本的にルールを決めて、人間の手でフィードバックを実行しています。
この仕組みを実現できたのがGPTモデルです。
ChatGPTは今3.5と4.0が使われていますが、その一番ベースとなったのがGPTモデルになります。
このGPTモデルと教科学習+人間がフィードバックを行う強化学習の二つを組み合わせることによって、現在のようなチャットチャットGPTのような高い精度の文章生成AIが誕生したという形になります。
基本的にはオープンAIがルールでしたり、フィードバックを行って良い報酬なのか悪い報酬なのかっていうものを決めているわけですが、実はユーザー側もここに一役買っています。
ユーザーがどのように評価やフィードバックの部分に役立っているのか、行っているのかというと、ChatGPTの回答欄にはGoodボタンとBADボタンがあるんですよ。
これが実は良い悪いの評価になっていて、ユーザーがフィードバックを行えるような形になっているんですね。
良い回答だと思ってGoodと押したら、そのデータがオープンAIに溜まっていきますし、
良くないと思ったらこのBadを押すことで、「こういった回答は求められていないんだな」
といった形でオープンAIに反映されて、また回答の質がアップグレードされていくという形になります。
なぜこういったフィードバックが必要なのかというと、特に文章というものはデリケートなところがあるからです。
例えば犯罪を助長するようなテキストとか、犯罪のやり方とか完全犯罪のやり方を教えてくださいといった質問に対して正確な回答が出てきてしまったら、社会が大変なことになるじゃないですか。
「人を破壊する薬を作ってください」とか「爆弾を作ってください」などの非道徳なことというのは、やっぱり一般的に公開されてしまうと良くないですよね。
ですのでそれを防ぐために、そういうことをさせないために人間がフィードバックを行って、「このテキストは大丈夫」「こういったテキストは駄目」っていうルールをしっかりと決めているのです。
これがあることによって、僕たちのような一般ユーザーがChatGPTというツールを安心して使いこなせるといった形になっております。
深層学習
続いて深層学習について解説をします。
ここまで教師あり学習、教師なし学習、強化学習について解説してきました。
これらの学習技術を使って、より人間に近い会話の精度を実現しているのがこの深層学習やディープラーニングと呼ばれる技術になっています。
深層学習は人間の脳を参考に作られたニューラルネットワークという技術を採用してます。
どういうことかというと、
例えば人間の場合なら、研修なしでいきなり現場に入れられるような職場ってあるじゃないですか。
研修は最初の3時間ぐらいだけでいきなり現場で仕事するとか。
例えば飲食店とかでもアルバイトで入って、いきなり初日にホールに出るとかってありますよね。
営業の仕事でもそうだと思うんですけども、これって人間の場合だとそこの場所に合わせて順応していくじゃないですか。
現場を体験しながら学習をしていきつつ作業を覚えていったりとか、業務をマスターしていくっていうことが人間の適応能力なら可能です。
今まで機械だとこれができなかったんですよ。
それを可能にしたのがこの深層学習なんです。
人間の脳は元々、数十兆から数百兆の細胞があるんですよね。
この細胞のことをニューロンと呼ぶのですが、そのニューロン同士を繋ぐシナプスと呼ばれる複雑な仕組みにより、人間の脳は成り立っています。
この人間の脳の仕組みを模範したのがニューラルネットワークというものなんです。
人間の脳の一連の学習プロセス、脳の仕組みを模範しているからこそ、人間のように自分で判断したりとか自分で学習していって、自然に会話できるという形になっております。
これは、ニューラルネットワークの仕組みの図なんですけども、
まずデータを入力して入力層があって、中間層があって出力層があってデータを出力っていう、この一連の流れこれがニューラルネットワークです。
この流れは人間も一緒なんですね。
どういうことかというと、例えば人間が綺麗な絵を見ました。この部分はデータの入力です。
まず綺麗な絵を見たら、「この絵って綺麗だな」って人間は認識しますよね。
認識してから、次は「どういうふうに綺麗だ」とか「どう感じたか」という思考のプロセスをたどります。
どのぐらい綺麗に思ったとか、自分で解釈したものをアウトプットしますよね。
例えば他にも企画モノのYouTubeとか、お笑いとか、ドラマとか何でもいいんですけど、人間の場合だと見てから「これって面白いな」とか「好きな俳優が出てるな」とか、「これはこういう物語だな」とか「これは自分にも当てはまるな」とか「感動したな」などといった感想や感じたことを出力しますよね。これがデータの出力です。
情報を入力してから出力するまでの間には、その人の今までの経験だったり価値観だったり、いろんな解釈がされてから最終的にデータを出力します。
これは人間の脳の場合だと内部表現と言います。
価値観は人によってそれぞれ異なりますよね?
例えば「リンゴ」という情報だけでも、「リンゴは美味しい」っていう感じる人もいれば、「リンゴはちょっと苦手だ」っていう人もいるじゃないですか。
ですので、同じものを見ても、アウトプットって人によって違うわけなんです。
これは入力層→中間層→出力層の流れの中で、同じデータを入力しても独自の価値観により、解釈が行われたり記憶や経験といったりしたとものが関係しながら、複雑な神経を通じて、答えが導き出されているというわけです。
この複雑な人間の脳の仕組みを模範したのがニューラルネットワークで、これを使っているのがこの深層学習の技術になっていきます。
さっきの迷惑メールの例の場合なら、まずメールデータを入力する入力層があります。その後、中間層出力層でURLがおかしいとか、この文章おかしいとか、文章が不自然とか、そういったエラーを見分けて最後に「これは迷惑メールだ」っていう出力をしていく流れになります。
これが深層学習、ディープラーニングの仕組みです。
ニューラルネットワークの中身はブラックボックス
実はニューラルネットワークの中間はブラックボックスになっています。
内容がわからないことをブラックボックスと呼ぶのですが、要は誰も内容はわからないし見えないんですよ。
なのでこの中でAIがどういうふうに学習をしているのか、コンピュータが何を行っているのかっていうのは実はわからないんです。
例えば、「こんにちは」みたいな言葉を入れると、AIから「こちらこそこんにちは」とか「ありがとう」って言葉を入れたら「どういたしまして」って返ってきますよね。
この場合に「ありがとう」と入力してから、その後に何を行ってどういう判断を行ってから「どういたしまして」と出力しているのかの詳しい仕組みはわからない、ということです。
これがニューラルネットワークの中身はブラックボックスということです。
ただ、最近は「それはちょっとリスクがあるよね」とか「何が起こっているのかわからないっていうのはちょっとリスキーなんじゃないのか」っていうふうに言われていて、それを解決するためにXAIと呼ばれる新たな動きもあります。
これは説明可能なAIという技術です。
要はブラックボックスの部分を説明できるような技術になっています。
例えばメールの例で言うと、どういうふうに迷惑メールと判断しているのかを、納得できる形で表面化できるといったところです。
この技術が完成すれば、さらにAIの技術が活用されやすくなったり、可能性がさらに広がったりしていくと言われています。
いずれにしても、ここまでは教師あり学習、教師なし学習、強化学習、深層学習を学んできました。
マニュアルを与えて学習データをコンピュータに与えていくのが、教習あり学習です。
マニュアルを与えずに学習データや特徴だけを与えて、あとは自力で学習してくださいね、というのが教師なし学習。
ルールと報酬を与えて試行錯誤させて、良い報酬を集めてPlusのスコアを導き出してくださいね、というのが強化学習です。
これらをまるっと合わせてさらに学習の精度を上げて人間に近いような回答を実現させるための技術が深層学習という形になります。
ChatGPTの学習元
ここからはChatGPTの学習元について解説をします。
ChatGPTはWeb上の膨大なデータを学習していって、テキストの生成を可能にしています。
これまでお伝えしてきた深層学習とか教科学習などを使って、どのような大量のデータを学習しているのか、学習元のデータはどこにあるのかということをお伝えしていきます。
ChatGPTは2021年9月までのデータをもとに2022年初頭にトレーニングを終了したGPT3.5シリーズっていうものが基盤になっています。
この元データはウェブ上の情報をスクレイピングという方法で抽出して集めてきたデータのことで、ウィキペディアや一部のオフラインの情報なども使われていると言われております。
データの容量がどれぐらいかというと、数値に例えるとしたら45TBという膨大な量です。
その膨大なデータに対して、適切ではない情報を除くためのフィルタリングを行って、残った570GBのデータが使われていると、公表されています。
数字だけを聞いても、ちょっとピンとこないと思いますが、膨大な情報量だということは間違いありません。
インターネット上に公開されているほぼ全てのテキストデータを全て読んで、学習してるといって過言ではないです。
そのようなものすごい量のデータを読み込んで学習しているからこそ、ChatGPTの精度の高い会話文が可能となっております。
なぜ文章生成AIは人間と同じような文章を作れるのか?
ここからは、ChatGPTに代表される文章生成AIは人間と同じような文章を作れるのかについて解説していきます.
ここまで、いろいろ機械学習の技術を紹介してきましたが、生成AIの技術はそれだけではありません。
実は人間と話しているような自然な会話を可能にしているのは、ファインチューニングという技術が採用されているからです。
ファインチューニングはGPT3.5モデルにも採用されていて、この技術によって人間の文章のような自然な回答を実現しています。
ファインは英語で言うと細かいや繊細という意味で、チューニングは調整という意味です。
そのまま略すと「細かい調整を行っていますよ」ということです。
これで自然な会話が可能となっているんです。
なぜこのファインチューニングによる細かい調整が必要になるのかというと、これまで教師学習や強化学習、深層学習という技術をお伝えしてきましたが、これらの技術を駆使しても、AIは言葉の意味そのものを理解できるわけではないんです。
AIは、それらしい答えを確率的に出しているに過ぎない、ということです。
ですので、このファインチューニングがなければ、自然な会話文っていうものは生み出されないんです。だから調整が入っているということですね。
またChatGPTって気の利いた言い回しができますよね。
たとえば悩みや悲しいことの解決策を聞くと共感してくれたりとか、「今こういうことで困ってるんです」と質問したら「それは大変ですね」とか「それは困りましたね」とか、ちょっと人間っぽい共感があるじゃないですか。
なぜ言葉の意味を理解していないのに、共感ができて、文章も作れるのかというと、これは単に学習の量が増えたからと言われています。
膨大なデータを学習して、いろんな文章パターンを学習することによって、ニューラルネットワークのような深層学習の基になっている高度な技術を使えば、いろんな処理が可能になります。
この文脈でこういった質問が来たら、こんな共感の言葉を返すっていうことが可能になっているということです。
ChatGPTは、人間がもう一生かけて経験するぐらいの膨大な会話パターンや、いろんなシーンの会話をもう既に学習していると言われています。
この動画で解説してきた強化学習や深層学習はもちろん、それに加えて膨大な量を学習してファインチューニングを行った結果、現在の人間に近い自然な会話がChatGPTで可能になっているという形です。
その他、ChatGPTは適切でない表現や言葉も除外されるようになっています。
スラングや誹謗中傷、汚い言葉などは、基本的に使いません。質問側が砕けたような表現をしても、必ずフォーマルで礼儀正しい言葉で回答してくれます。
これらもこのファインチューニングが行われている結果です。
このファインチューニング以外にも強化学習のスコア付けやトレーニングを行ったりといった工程をひとつひとつクリアすることでGPT3.5が実現し、現在非常に多く使われ使いやすいと言われているのです。
AIの技術的な背景を理解して超AI時代を生き抜こう
今回はChatGPTがどうやって人間と同じような自然な会話を可能にしているのかの仕組みを解説しました。
ChatGPTはAIがどんどんデータ学習をしていくことによって、質問に対しての適切な答えを導き出しています。
そのためにはいろんな技術が使われていて、データ学習には教師あり学習、教師なし学習であったり、強化学習とか、深層学習といった機械学習からファインチューニングといった技術が駆使されています。
こういった仕組みはChatGPT以外の生成AIも基本的に同じなので、今回の内容を理解することでよりAIに対する理解が深まったんじゃないかと思います。
AIの技術的な背景も理解しておいて、今後の超AI時代を優位に生き抜きましょう。
さらにあなたのビジネスを加速させる超有料級 最大21特典プレゼントをご用意しました。
電子書籍3冊 スライド合計282枚 セミナー講義動画 合計210分 という圧倒的ボリュームであなたのビジネスの成功を後押しします。
今すぐ下の画像をクリックして超有益な特典を手に入れてください↓↓
ということで、今回の記事では生成AIツールの代表とも言えるChatGPTの技術的な背景と仕組みを詳しく解説します。