トークンは今日の生成AIが不十分である大きな理由です

生成AIモデルは、人間と同じようにテキストを処理しません。彼らの「トークン」ベースの内部環境を理解することで、彼らの奇妙な振る舞いや頑固な制限の一部が説明されるかもしれません。

ジェンマなどの小規模なオンデバイスモデルからOpenAIの業界をリードするGPT-4oまで、ほとんどのモデルはトランスフォーマーと呼ばれるアーキテクチャに基づいて構築されています。トランスフォーマーがテキストと他のタイプのデータの間に関連付けを作り出す方法のため、生のテキストを受け取ることも出力することも、膨大な計算能力がない限り不可能です。

そのため、現在のトランスフォーマーモデルは、実際的な理由と技術的な理由の両方で、テキストをトークンと呼ばれるより小さな、手の届くサイズの部分に分割して処理します。これをトークン化と呼ぶプロセスです。

トークンは「素晴らしい」という言葉のような単語であることもあります。また、「ファン」「タス」「チック」といった音節でもあります。トークナイザー(トークン化を行うモデル)によっては、単語の中の個々の文字(例:「f」「a」「n」「t」「a」「s」「t」「i」「c」など)であることさえあります。

この方法を使用することで、トランスフォーマーは、コンテキストウィンドウと呼ばれる上限に到達する前に、セマンティックな意味でより多くの情報を取り込むことができます。ただし、トークン化にはバイアスももちこまれます。

一部のトークンには奇妙なスペーシングがあり、トランスフォーマーを狂わせる可能性があります。たとえば、トークナイザーは、「once upon a time」という文を「once」「upon」「a」「time」とエンコードするかもしれませんが、「once upon a 」(最後に余分なスペースがある)を「once」「upon」「a」「 」としてエンコードするかもしれません。したがって、モデルがどのようにプロンプトされるかによって(「once upon a」と「once upon a,」)、結果はまったく異なる可能性があります。なぜなら、モデルは(人が理解するように)意味が同じであることを理解していないからです。

トークナイザーは大文字と小文字を異なるように扱うこともあります。「Hello」と「HELLO」が必ずしもモデルにとって同じとは限りません。「hello」は通常1つのトークンですが(トークナイザーによって異なります)、HELLOは3つになることがあります(「HE」「El」「O」など)。そのため、多くのトランスフォーマーは大文字のテストに失敗します。

「言語モデルの専門家が完璧なトークン語彙について合意した場合でも、モデルはおそらく物事をさらに詳しく解析することが便利だと考えるでしょう」「ノースイースタン大学で大規模な言語モデルの可解釈性を研究している博士課程の学生シェリダン・フォイトは、TechCrunchに語りました。 「今回のモデルにとって完璧なトークナイザーなんてものはないと思います」と彼は述べています。

この「あいまいさ」は、英語以外の言語ではさらに問題を引き起こす可能性があります。

多くのトークナイゼーション方法は、文の中の空白を新しい単語として扱うと想定しています。これは英語を考慮して設計されたためです。しかし、すべての言語が単語を区切るためにスペースを使用するわけではありません。中国語や日本語はそうではありませんし、韓国語、タイ語、クメール語も同様です。

2023年のオックスフォードの研究では、英語以外の言語で言い回しの異なるタスクを完了するのに、英語で同じタスクを言い回すのに比べてトランスフォーマーが2倍の時間を要することがわかりました。同じ研究と別の研究では、英語以外の言語を使用するユーザーは、多くのAIベンダーがトークンごとに料金を請求するため、モデルのパフォーマンスが悪くなり、かつより多く料金を払う可能性が高くなります。

トークナイザーは、意味を表すだけでなく、語形変化したシステム中の各文字をトークンとして扱うことが多いため、トークン数が増加します。同様に、語の要素である小さな意味を持つ語形容詞言語を処理するトークナイザー(トルコ語など)は、各語形素をトークンに変換する傾向があり、全体のトークン数を増やします。 (タイ語での「こんにちは」という言葉の相当する言葉は6つのトークンです。)

2023年、Google DeepMindのAI研究者Yennie Junは、異なる言語のトークナイゼーションとそのダウンストリーム効果を比較した分析を実施しました。 52の言語に翻訳された平行テキストのデータセットを使用し、Junは、一部の言語が同じ意味を捉えるために英語と比較して最大で10倍のトークンが必要とすることを示しました。

言語の格差を超えて、トークナイゼーションが今日のモデルが数学的に優れていない理由を説明できるかもしれません。

数字は一貫してトークナイズされません。数字が何であるかを本当に知らないため、トークナイザーは「380」を1つのトークンとして扱うかもしれませんが、「381」を一対に(「38」と「1」)表現するかもしれません。これにより、数字の関係や方程式の結果が破壊され、トランスフォーマーが混乱します。最近の論文によると、モデルは繰り返し数字パターンやコンテキスト、特に時間データを理解することに苦労しています。(参照:GPT-4は7,735が7,926よりも大きいと思っている)。

これが、モデルがアナグラム問題や単語を逆にすることにうまく対応できない理由でもあります。

したがって、トークナイゼーションは、生成AIにとって明らかに課題を提起します。それらは解決できるでしょうか?

もしかすると。

Feuchtは、MambaByteなどの「バイトレベル」ステートスペースモデルを指摘しています。MambaByteはトークン化を完全に廃止することで、トランスフォーマーよりもはるかに多くのデータを処理し、パフォーマンスにペナルティを受けることなく、競争できます。テキストとその他のデータを表す生のバイトと直接作業するMambaByteは、一部の言語解析タスクにおいてトランスフォーマーモデルと競争力があり、単語の文字を交換したり、スペースを変更したり、大文字の種類を扱う際に「ノイズ」をよりよく処理します。

ただし、MambaByteのようなモデルはまだ初期の研究段階にあります。

「トークナイゼーションの突破口がない限り、新しいモデルアーキテクチャが鍵を握るでしょう。」