Yolo 深圳
深セン
今すぐ参加
用語集

トークン化

トークン化が生のテキストや画像をAI対応データへ変換する仕組みを探る。Ultralytics などのモデルが採用するNLP(自然言語処理)とコンピュータビジョン手法について学ぶ。

トークン化とは、テキスト、画像、音声などの生のデータストリームを、トークンと呼ばれるより小さく扱いやすい単位に分解するアルゴリズム処理である。この変換はデータ前処理パイプラインにおける重要な橋渡し役として機能し、構造化されていない入力を人工知能(AI)システムが解釈可能な数値形式に変換する。 コンピュータは人間言語や視覚的シーンを本質的に理解できず、計算を実行するには数値表現を必要とします。データをトークンに分割することで、エンジニアはニューラルネットワークがこれらの単位を埋め込み(意味的意味を捉えるベクトル表現)マッピングすることを可能にします。この基礎的なステップがなければ、機械学習モデルはパターンを識別したり、文脈を学習したり、現代的なトレーニングに必要な膨大なデータセットを処理したりすることができません。

トークン化 vs トークン

深層学習の議論ではこれらの用語がしばしば一緒に使われるが、ワークフローを理解するには手法と結果を区別することが有用である。

  • トークン化 とは プロセス(動詞)である。これはデータを分割するために用いられる特定のルールやアルゴリズムを指す。テキストの場合、 NLTKやspaCyといったライブラリを用いて、一つの単位が終わり別の単位が始まる位置を決定することが含まれる。
  • トークンは出力(名詞)である。 これはプロセスによって生成される個々の単位であり、単一の単語、サブワード、文字、またはピクセルの塊などが該当する。

異なる領域における手法

トークン化の戦略はデータのモダリティによって大きく異なり、 基盤モデルが世界を認識する方法に影響を与える。

自然言語処理におけるテキストのトークン化

自然言語処理(NLP)では、 意味を保持しながらsegment することが目的である。初期の手法は、スペースで単語を区切ったり ストップワードを除去するといった単純な技術に依存していた。しかし、現代の 大規模言語モデル(LLM)は、より洗練されたサブワードアルゴリズムを活用している。例えば バイトペアエンコーディング(BPE)やWordPieceといった高度なサブワードアルゴリズムを活用している。これらのアルゴリズムは 最も頻出する文字ペアを反復的に統合し、モデルが稀な単語を既知の構成要素に分解することで処理できるようにする(例:「smartphones」→「smart」+「phones」)。この手法は 語彙規模と複雑な言語表現能力のバランスを実現する。

コンピュータ・ビジョンにおける視覚的トークン化

従来、CNNなどのコンピュータビジョン(CV)モデルは スライディングウィンドウを用いてピクセルを処理していた。 Vision Transformer(ViT)の導入により、 画像にトークン化を適用することでこのパラダイムが変化した。 画像は固定サイズのパッチ(例:16x16ピクセル)に分割され、 平坦化されて線形投影される。これらの「視覚トークン」により、 モデルは自己注意機構を活用して画像全体のグローバルな関係を学習できる。 これはトランスフォーマーが文を処理する仕組みに類似している。

実際のアプリケーション

トークン化は、今日の生産環境で使用されている多くのAIアプリケーションの背後で静かに稼働するエンジンである。

  1. オープンボキャブラリ物体検出: YOLO先進的なアーキテクチャは マルチモーダルモデルアプローチを採用している。 ユーザーが「赤い帽子をかぶった人物」といったプロンプトを入力すると、 システムはこのテキストをトークン化し、 視覚データと同じ特徴空間にマッピングする。 これによりゼロショット学習が可能となり、 モデルは明示的に訓練されていないdetect 、 テキストトークンと視覚特徴を照合することでdetect
  2. 生成型アートとデザイン: テキストから画像への生成では、ユーザープロンプトがトークン化され、拡散プロセスを導く。モデルはこれらのトークンを用いて生成を条件付け、結果として得られる画像がトークン化段階で抽出された意味概念(例:「夕日」、「ビーチ」)と整合することを保証する。

Python :トークンベース検出

次の例は ultralytics このパッケージは、YOLOフロー内でテキストのトークン化を暗黙的に利用します。カスタムクラスを定義することで、モデルはこれらの文字列をトークン化し、特定のオブジェクトを動的に検索します。

from ultralytics import YOLO

# Load a pre-trained YOLO-World model capable of text-based detection
model = YOLO("yolov8s-world.pt")

# Define custom classes; these are tokenized internally to guide the model
# The model will look for visual features matching these text tokens
model.set_classes(["backpack", "bus"])

# Run prediction on an image
results = model.predict("https://ultralytics.com/images/bus.jpg")

# Show results (only detects the tokenized classes defined above)
results[0].show()

モデル性能への影響

トークン化戦略の選択は、精度と計算効率に直接影響します。非効率的なトークン化は、NLPにおける「語彙外」エラーや画像解析における細部の喪失につながる可能性があります。PyTorchのようなフレームワークでは PyTorchTensorFlow は、このステップを最適化する柔軟なツールを提供します。最先端のYOLO26のようなアーキテクチャが進化する中、効率的なデータ処理は、強力なクラウドGPUからエッジデバイスまで、多様なハードウェア上でモデルがリアルタイム推論を実行できるようにします。これらの複雑なデータワークフローを管理するチームは、データセットの注釈付け、モデルトレーニング、デプロイメントを効率化するために、Ultralytics 依存しています。

Ultralytics コミュニティに参加する

AIの未来を共に切り開きましょう。グローバルなイノベーターと繋がり、協力し、成長を。

今すぐ参加