トークン化とは、テキストをトークンと呼ばれる小さな単位に分解するプロセスです。これらのトークンは、文脈や用途に応じて、個々の文字、単語、フレーズなどの小さな単位になります。トークン化は、自然言語処理(NLP)や機械学習(ML)タスクの基礎となるステップであり、コンピュータがテキストデータを効率的に処理・分析できるようにします。構造化されていないテキストを構造化されたトークンに変換することで、トークン化アルゴリズムがテキスト分類、センチメント分析、言語モデリングなどのタスクを実行しやすくなります。
トークン化は、生のテキストを機械学習モデルが理解できる形式に変換するために不可欠である。NLPでは、BERTや GPTのようなモデルは、生のテキストではなく、トークンのシーケンスを処理する。これらのトークンは、埋め込み生成や注目メカニズムなど、さらなる分析のための構成要素として機能する。
さらに、トークン化はテキストを標準化し、アルゴリズムが無関係な詳細(句読点や空白など)ではなく、意味のあるパターンに集中できるようにします。このプロセスは、モデルがシーケンスの次のトークンを予測するテキスト生成や、トークンを言語間で翻訳する機械翻訳などのタスクもサポートします。
それぞれの方法には利点とトレードオフがある。単語トークン化は単純だが、未知の単語で苦労する可能性がある。一方、サブワードや文字トークン化は珍しい単語を扱いやすいが、シーケンスの長さが長くなり、計算が複雑になる。
センチメント分析では、トークン化はユーザーレビューやソーシャルメディアへの投稿をトークンに分割し、肯定的、否定的、または中立的なセンチメントを識別します。たとえば、「Ultralytics YOLO のスピードが好きです」のような製品レビューでは、トークン化によって、「love」、「speed」、「Ultralytics YOLO 」のようなキー・トークンが抽出され、センチメント評価に役立ちます。
トークン化は、スパム検出やトピックモデリングのようなテキスト分類タスクにおける重要なステップである。スパム検出では、モデルが電子メール内のトークンを分析し、スパムと正当なメッセージを区別するパターンを識別します。Ultralytics YOLO ワークフローにおける分類タスクとその実装の詳細については、こちらをご覧ください。
トークン化は、GPT-4のような言語モデルの学習と活用に不可欠です。トークンはこれらのモデルの入力と出力を表し、テキストの要約、質問応答、会話AIなどのタスクを可能にします。
コンピュータビジョンのタスクでは、トークン化はオブジェクトラベルや注釈などのメタデータを処理するために使用される。例えば、Ultralytics YOLO のような物体検出モデルは、機械学習パイプラインとの互換性を高めるために、テキストベースの注釈をトークン化することがあります。
自然言語理解(NLU)によるチャットボットを考えてみよう。トークン化は、"What", "'s", "the", "weather", "like", "in", "Madrid", "?" のようなトークンに変換します。これらのトークンは、関連する応答を生成するために処理される。
ヘルスケアデータセットでは、"angioplasty "のような珍しい医療用語は標準的な語彙には含まれないことがある。サブワード・トークナイゼーションは、用語を["angio", "plasty"]に分割し、モデルが馴染みのない用語を理解し、効果的に処理できるようにします。AIのヘルスケア・アプリケーションの詳細については、こちらをご覧ください。
トークン化は自然言語処理において基本的なものだが、埋め込みや アテンション・メカニズムといった関連概念とは異なる。トークン化は生のテキストを処理するための準備であり、埋め込みはトークンを数値ベクトルに変換し、アテンションメカニズムはシーケンス内のトークンの重要性を決定する。
要約すると、トークン化はAIや機械学習アプリケーションのためにテキストデータを準備する重要なステップです。トークン化の汎用性と有用性は、センチメント分析、分類、言語モデリングなど多岐にわたり、最新のAIワークフローに不可欠なプロセスとなっています。