サイエンス

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 wearcapes
not all heroes wear capesbut
not all heroes wear capes butall
not all heroes wear capes but allvillans
not all heroes wear capes but all villansdo


◆符号化(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]になります。

この記事のタイトルとURLをコピーする

・関連記事
対話型チャット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 here.