トークンと形態素

また生成AIネタです。
生成AIのLLM(大規模言語モデル)の中では、昔形態素と呼ばれたもの(形態素解析という意味で)がトークンと呼ばれているようです。
下記のページによればどちらも同じ意味とされています。
しかし、雑誌Interfaceの2023年11月号(「ChatGPTとプログラミング」特集)の解説によれば、英語だったらまず一文字一文字がトークンになり、それをいわゆる最長一致法的にn-gramで伸ばしていって、既に持っている語彙に一致すればそれをトークンとするという形で、ある文章のトークンへの分解が行われているようです。なので、形態素があくまで文法的な意味での文を分割する最小単位とすれば、トークンはもっと処理上の仮想的な分割単位という気がします。面白いのは生成AIのエンジンによってこの切り方が違うということで、Interfaceに載っていた例ではGPT-3.5は「処理される」を「処理/される」と切っていますが、GPT-4は「処/理/され/る」とより細かく切っています。「処理」を2つに分けて何がいいのか良くわかりませんが、「処分」とか「処置」とかの意味上の類似性のチェックとかがされているのでしょうか。
それから同じ雑誌に、デカルトが座標軸を発明して以来の、生成AIの元になっている理論の解説がありましたが、その中にはマハラノビス距離のことは一言も解説されていません。先日GPT-4にEmbeddingとマハラノビス距離の関係を聞いた回答のように、Embeddingにおけるマハラノビス距離は非常に重要な手法ですが、何故かそれを指摘している人を私はこれまで発見出来ていません。Interfaceの解説記事も本当に深い所まで分析したんじゃなくて、海外の英語等での解説記事をとりあえず集めてまとめただけという気がします。

P.S.
ずばり、ChatGTP-4に聞いてみたら、形態素とトークンは違う概念ですという回答でした。

=================================================================

 
User
生成AIでは文書を解析する最小単位としてトークンという概念が使われていますが、これは従来からある「形態素」(形態素解析)と同じですか、それとも別の概念ですか?
 
ChatGPT
「トークン」と「形態素」は似たような概念に思えるかもしれませんが、実際には異なる概念です。それぞれの違いを説明します。
 
形態素:
形態素とは、言語学の用語で、意味を持つ最小の単位です。日本語の場合、言葉を意味を持つ最小単位に分解したものを指します。例えば、言葉「食べる」は「食べ」+「る」の2つの形態素から成り立っています。
形態素解析とは、文を形態素に分解することを目的とした解析のことです。
 
トークン:
トークンは、テキストを処理する際の分割単位のことを指します。トークンは必ずしも意味を持つ最小の単位とは限らず、空白や句読点によってテキストを分割した単位を指すこともあります。
例えば、英語の文 “I love AI.” をトークン化すると、[“I”, “love”, “AI”, “.”] のようになります。
特に、多くのNLPモデルやシステムでは、特定のトークナイザーを使用してテキストをトークン化します。
形態素解析は、特に日本語などの複雑な言語を処理する際に有用な手法です。一方、トークンはテキスト処理全般において基本的な単位として使用されます。
OpenAIのモデル(例: GPT-4)では、多言語のテキストを処理するためのサブワードトークン化(一部の言語では形態素に近い単位になることもある)を用いています。このサブワードトークン化は、形態素解析とは異なるアプローチで、データから最適な分割単位を学習します。