OpenAI開発のテキスト生成AI「GPT-3」がどんな処理を行っているのかを専門家が解説

AI研究団体・OpenAIが発表して話題を呼んだ対話型AI「ChatGPT」は、テキスト自動生成AI・GPT-3の派生形である「GPT-3.5」をファインチューニングした自然言語処理モデルです。チューリッヒ工科大学で機械学習とロボティクスの博士号課程に進んでいるダニエル・デュガス氏が、GPT-3が行っている数学的処理工程について解説しています。
The GPT-3 Architecture, on a Napkin
https://dugas.ch/artificial_curiosity/GPT_architecture.html
◆入力/出力
まずGPTの「入力」とは一連のN個の単語のことで、「(入力)トークン」とも呼ばれます。そして、GPTの「出力」とは、入力トークンの最後に配置される可能性が最も高いと推測される単語です。例えば「not all heroes wear(すべてのヒーローが着ているわけではない)」と入力すると、GPTは「capes(マントを)」と出力します。この時、「pants」や「socks」という単語も推測されていますが、可能性としてはcapesが最も高くなります。

入力を重ねていくと、以下のように出力は変化していきます。このままだと入力を重ねていくにつれて果てしなく長くなっていくため、GPT-3の場合は入力シーケンスの長さを2048単語までに制限しています。
入力 | 出力 |
not all heroes wear | capes |
not all heroes wear capes | but |
not all heroes wear capes but | all |
not all heroes wear capes but all | villans |
not all heroes wear capes but all villans | do |
◆符号化(Encoding)
しかし、GPTはあくまでもアルゴリズムであり、人間のように単語を理解しているわけではありません。アルゴリズムが単語を認識するためには、単語を数値のベクトルに変換する必要があります。GPTには5万257個のトークンが登録されており、IDが振られています。

GPT-3は効率化のため、「バイト対符号化」によるトークン化を行っているそうで、実際はGPTに登録されているトークンは完全な単語ではなく、テキスト中に頻繁に現れる文字のグループになっているそうです。例えば「Not all heroes wear capes」の場合、[not][all][heroes][wear][cap][es]というトークンに分割され、それぞれをIDに変換すると[3673][477][10281][5806][1451][274]になります。
・関連記事
対話型チャットAI「ChatGPT」開始から1週間も経たないうちにユーザーが100万人を突破、そもそもChatGPTとは一体何なのか? - GIGAZINE
対話AI「ChatGPT」を使って未知の言語「スライム語」を発明するという試み - GIGAZINE
Stable Diffusionの18禁画像セーフティフィルターをだます「プロンプト希釈法」が発見される - GIGAZINE
画像生成AI「Stable Diffusion」を使いこなすために知っておくと理解が進む「どうやって絵を描いているのか」をわかりやすく図解 - GIGAZINE
gigazine.net/news/20220831-stable-diffusion-process-performance/
・関連コンテンツ
in ソフトウェア, サイエンス, 無料メンバー, Posted by log1i_yk
You can read the machine translated English article Experts explain what kind of processing ….