統計的LLMウォーターマーキング(トウケイテキエルエルエムウォーターマーキング)
生成トークンの選択に統計的バイアスを与え、z検定や仮説検定でAI生成を証明できる透かし手法の総称。KGW・Unigram・Dipmark・EXP・Gumbelなど複数の方式がある。
統計的LLMウォーターマーキング
統計的ウォーターマーキングは、LLMのトークン選択プロセスに統計的に検出可能なバイアスを与えることで、生成テキストに透かしを埋め込む技術群の総称。各手法は埋め込み方式と検出方式の設計で差別化される。
主要手法の分類
ハードウォーターマーク
redリストのトークンを完全に禁止する。検出は容易だが語彙の50%を使用不可にするためテキスト品質が大きく低下する可能性がある。
ソフトウォーターマーク(KGW系)
greenリストのlogitをδだけ加算する。テキスト品質への影響が小さく実用的。KGW・Unigram・Dipmarkがこのカテゴリ。
指数関数的ウォーターマーク(EXP/Gumbel)
一様乱数を使い各トークンのスコアをGumbel変換する。最適検出理論に基づいており理論的最大検出力を達成する。
手法比較
- KGW-v1: greenリストlogit+δ / z検定 / パラフレーズ耐性低 / テキスト品質良好
- Unigram: 固定greenリスト / z検定 / パラフレーズ耐性中 / テキスト品質良好
- Dipmark: 暗号化シード / z検定 / パラフレーズ耐性中 / テキスト品質良好
- EXP: Gumbel変換 / 対数尤度比 / パラフレーズ耐性高 / テキスト品質優秀
- SynthID: soft/EXP混合 / ニューラル / パラフレーズ耐性高 / テキスト品質優秀
EXPウォーターマークの数学
EXP(指数関数的)ウォーターマークは各トークンの確率分布p_iに対してu_i ~ Uniform(0,1)を生成し、r_i = u_i^(1/p_i)を計算してargmaxを選択する。これはGumbel分布からのサンプリングと等価で最適検出テストが存在する。
import torch
def exp_watermark_sampling(logits, rng_seed):
probs = torch.softmax(logits, dim=-1)
torch.manual_seed(rng_seed)
u = torch.rand_like(probs)
r = u.pow(1.0 / probs) # Gumbel変換: r_i = u_i^(1/p_i)
return r.argmax()
KGW vs Unigram の比較
KGW-v1はトークン生成ごとに異なるシードでgreenリストを動的生成する。一方Unigramは事前に固定のgreenリストを作成し再利用する。Unigramはパラフレーズに強いが、greenリストが漏洩すると完全に無効化されるリスクがある。
2025年の実用化状況
GoogleのSynthID-Text(Gemini 1.5/2.0で展開)はEXPとソフトウォーターマークを組み合わせた独自実装。Meta AIのMarkMyWordsはオープンな評価フレームワークを提供。標準化機関ISOはAIコンテンツ認証のISO/IEC AWI TR 5469策定を進めており、2026年の採択を目標としている。