📝

【GPT徹底解説】#1 GPTの登場 ~ChatGPT凄さの根源~

2023/02/22に公開

ここまで来たか人工知能!!

皆さん!最近巷を賑わせているChatGPTを知っていますか??
テキスト生成AIで、チャットで質問したら答えてくれるのですが、このChatGPTはこれまでのテキスト生成AIとは比べ物にならないくらい精度が高いんです.

難しい数学の理論、社会問題の解決法、プレゼンテーションを成功させるための方法などなど
「流石にここまでは答えられないだろう!」ということまで答えてくれます.

私も最近は専らChatGPTの虜になってしまい、ChatGPTを使わない日はないというくらいヘビーユーザーになってしまっています.大学の数学や物理の質問はもちろん、プログラミングコードも書いてもらっている始末です笑

本当に凄すぎるのでAIが人間を超える,それがかなり現実的なものになってきたと感じています😅

さてこんな最強AIであるChatGPTですが、このレベルに達するまでには様々な課題がありました.
世界の強強エンジニアが試行錯誤し、それを徐々に解決することによって遂にここまでのAIが誕生したのです.
このシリーズではChatGPTで使われている技術、「GPT」の歴史を順番に深ぼって行きたいと思います!

ちなみにGPTは
「GPT」⇨「GPT-2」⇨「GPT-3」
と徐々に進化を遂げてきました.

今回は最初の「GPT」について詳しく解説していきます!

GPT登場の背景

GPT誕生前、自然言語AIの学習には大きな課題がありました。それは教師ありデータを大量に用意する必要があるということです.
世の中には大量の教師なしデータは存在しますが、教師ありデータを作るには大量の時間と労力を要します.
例えば日本語から英語に翻訳するAIを作るとします.
この場合、日本語の文とその訳である英語を文のセットを何十万個も用意する必要がありました.
これは大変すぎます😅
この解決策が「Improving Language Understanding by Generative Pre-Training」という論文で提案されました.

教師ありデータを作るのがめんどくさいという課題に対して、OpenAIのAIエンジニアたちは、なんとかして必要な教師ありデータの数を減らそうと考えました.
そこで考えついたのが「Pre-training(事前学習)」と「Fine-tuning(微調整)」です.
あらかじめAIに文法や文章の意味を学習させて(Pre-trainging)、その上で翻訳や文章分類などのタスクを学習させる(Fine-tuning)という方法を取りました。
簡単に説明すると、赤ちゃんに翻訳を教えるのではなくて、まずは日本語と英語を教えて大人まで育ててから、翻訳の方法を教えるといった感じです.
このような方法を取ることによって、数千個という少ない教師ありデータで十分なAIが作るということを可能にしたのです!

ではどのようにしてPre-trainingとFine-tuningを行なっているのでしょうか?

GPT概要

上でも述べたようにGPTは以下の2つの手法を使っています。
①Pre-training(教師なし:言葉を理解するために行う)
②Fine-tuning(教師あり:それぞれのタスクに合うように微調整)

それぞれについて詳しくみていきましょう。(少し数式が出てきますが、苦手な方は飛ばしてもらっても、内容は理解できるようにしてあります)

①Pre-training(事前学習)

Pre-trainingはAIに言葉自体を理解させるために行います.
文字列(文章)を与えて、次の文字を予測させます.
例えば、「私は人工知能を勉強する」という文章があるとします。
これを一文字ずつモデル(AI)に入力します。

「私」 → 「私は」 → 「私は人」 といった感じです.
まず「私」を入力して、AIに次の文字を予測させます.
次に「私は」を入力して、AIその次の文字を予測させます.
これを繰り返していきます.

これを大量の教師なしデータで行うことによって、AIはどんどん予測が上手になっていきます.
実はこの次単語予測が上手くなるということは、「文法や意味の理解ができるようになる」ことと同義です.
文法や文章の意味を理解できていないと、次単語予測はできないですからね.
だから、次単語予測が上手になるということは、文法や文章の意味を理解しているということになります.

②Fine-tuning(微調整)

Pre-trainingが終了し、AIに言葉自体を理解させることができました.
次にFine-tuningにより、翻訳などの目的のタスクができるAIに仕上げていきます.
Pre-trainingを行ったことにより、それぞれのタスクにおける大量の教師ありデータを用意しなくても、数千個用意すれば良いようになりました.
数千個の教師ありデータを再度AIに学習させることで、AIはそのタスクにあったAIに変化していきます.

まとめ

「教師なしデータから、まずは言葉を理解させる」という画期的な方法によりGPTができました。
後にこの開発が自然言語AIを爆発的に進化させるものになります!
このアイデアがなかったら今のChatGPTは存在しないといっても過言ではないでしょう!
GPTに興味が湧いた方はぜひ原論文「Improving Language Understanding by Generative Pre-Training」も読んでみてくださいね!

次はGPTがさらに進化したGPT-2についての記事を出そうと思いますので、そちらも読んでいただけると幸いです.

参考文献

[1]R.Mitsubori, "ChatGPTがMBA試験に合格! でも小6の算数は苦手みたい", Yahoo!Japan ニュース, 27th January 2023.
https://news.yahoo.co.jp/articles/77c6b56c8966fe8adba2d4d544bc21c3b362d826
[2]A. Radford et al. , “Improving Language Understanding by Generative Pre-Training”.
https://s3-us-west-2.amazonaws.com/openai-assets/research-covers/language-unsupervised/language_understanding_paper.pdf

ARKLET Tech Media

Discussion