AI・機械学習
中級

SentencePiece(Googleトークナイザー)(センテンスピースグーグルトークナイザー)

Googleが開発した言語非依存のサブワードトークナイザーライブラリ。BPEとUnigram Language Modelの両アルゴリズムを実装し、事前の単語分割(スペース依存)なしに生テキストから直接トークン化できる。T5・Gemma・LLaMA/Mistral等で採用。

0 回閲覧
0 いいね
2026/6/6 更新
関連タグ
tokenization
sentencepiece
google
subword
language-agnostic
llm-training

SentencePiece(Googleトークナイザー)

SentencePieceはGoogleのKudo & Richardsonが2018年に発表したオープンソースのサブワードトークナイザー実装。既存のトークナイザーが「スペースで分割された単語」を入力として想定していたのに対し、SentencePieceは生テキストを直接入力として受け取り、言語固有の前処理(形態素解析等)を必要としない設計を採用した。

主要な特徴

  • 言語非依存設計: 日本語・中国語・アラビア語等のスペースなし言語でも前処理不要
  • スペースのトークン化: スペース自体を特殊記号(▁)として語頭に付与し、デトークナイズを可逆に
  • BPEとUnigram両対応: 同一ライブラリで両アルゴリズムを切り替え可能
  • C++/Python: 高速なC++コアにPythonラッパー提供
  • 完全再現性: 同じモデルファイルから完全に同一のトークン化を保証

BPEとUnigram LMの選択

特性BPEUnigram LM
学習方向ボトムアップ(結合)トップダウン(除去)
語彙構築決定的確率的
正則化なしサブワードサンプリング可
使用例LLaMA-2/MistralT5/XLNet/mBART

サブワードサンプリング: Unigramモードでは学習時に複数のサブワード分割をサンプリングすることでデータ拡張効果が得られ、低リソース言語での性能が向上する。

主要モデルでの採用状況

T5/T5-XXL(Google): SentencePiece Unigram、32,000 vocab。LLaMA-2/Code Llama: SentencePiece BPE、32,000 vocab。Mistral-7B/Mixtral: SentencePiece BPE、32,000 vocab(LLaMA-2互換)。Gemma-2(Google): SentencePiece BPE、256,000 vocab。mT5/mBART(多言語): SentencePiece Unigram、250,000 vocab。

日本語処理での重要性

日本語は単語間にスペースがないため、従来のトークナイザーは形態素解析(MeCab/KNP)が前提だった。SentencePieceは文字レベルから直接学習するため、形態素解析に依存せず日本語・中国語・韓国語を統一的に処理できる。ただしLLaMA-2の32,000 vocabは日本語に対して語彙が少なく、日本語テキストを英語の3〜5倍のトークン数で表現する問題がある。LLaMA-3やGemma-2のように大きな語彙サイズへの移行はこの問題への対策でもある。

この記事について
カテゴリーAI・機械学習
難易度中級
作成日2026/6/6