トークナイゼーション(とーくな いぜーしょん)
最終更新:2026/4/25
トークナイゼーションは、テキストやデータを意味のある単位(トークン)に分割する処理のことである。
別名・同義語 形態素解析品詞分解
ポイント
自然言語処理やプログラミングにおいて、テキストデータを扱うための前処理として不可欠な技術である。トークンの定義は文脈によって異なる。
トークナイゼーションとは
トークナイゼーション(Tokenization)は、文字列を構成する要素を分割する処理です。自然言語処理(NLP)の分野では、テキストデータを単語や句読点などの意味のある単位(トークン)に分割するために用いられます。プログラミング言語においては、ソースコードをコンパイラやインタプリタが処理しやすいように、キーワード、識別子、演算子などのトークンに分割するために使用されます。
トークナイゼーションのプロセス
トークナイゼーションの基本的なプロセスは以下の通りです。
- 入力: テキストデータやソースコードなどの文字列を入力します。
- 分割: 入力文字列を、定義されたルールに基づいてトークンに分割します。分割のルールは、使用する言語や目的に応じて異なります。
- 出力: 分割されたトークンのリストを出力します。
トークナイゼーションの種類
トークナイゼーションには、いくつかの種類があります。
- 単語トークナイゼーション: テキストを単語ごとに分割します。空白文字や句読点を区切り文字として使用することが一般的です。
- サブワードトークナイゼーション: 単語をさらに細かい単位(サブワード)に分割します。未知語への対応や、語彙サイズの削減に有効です。Byte Pair Encoding (BPE) や WordPiece など、様々なアルゴリズムが存在します。
- 文字トークナイゼーション: テキストを文字ごとに分割します。言語に依存せず、どのようなテキストデータにも適用できます。
トークナイゼーションの応用例
トークナイゼーションは、様々な分野で応用されています。