テキストウォーターマーク検出(テキストウォーターマークケンシュツ)
LLMが生成したテキストに埋め込まれた統計的ウォーターマークを検出するアルゴリズムおよびシステムで、AI生成テキストの真贋判定に使用される。
テキストウォーターマーク検出とは
テキストウォーターマーク検出(Text Watermark Detection)は、LLMの出力テキストに埋め込まれた統計的パターン(ウォーターマーク)を特定し、そのテキストがAI生成であるかどうかを判定する技術である。
従来のAI生成テキスト検出(GPTZero、Turnitin AI Detection等)が文体や統計的特徴から推定するのに対し、ウォーターマーク検出は事前に埋め込まれた既知のパターンを照合するため、理論的に高い精度を実現できる。
検出の仕組み
統計的仮説検定
ウォーターマーク検出の核心は仮説検定である。帰無仮説「テキストにウォーターマークは埋め込まれていない」を検定し、p値が有意水準(通常 0.01 以下)を下回ればウォーターマーク有りと判定する。
検定統計量の例(Green List方式):
テキスト中の各トークンがGreen Listに属するかを確認し、Green List トークンの出現比率が期待値(50%)を有意に超えるかを z 検定で判定する。
z = (|G| - T/2) / sqrt(T/4)
- |G|: Green List に属するトークン数
- T: 総トークン数
- z > 4.0 で p < 0.00003(高信頼度でウォーターマーク有り)
検出に必要なテキスト長
| テキスト長 | 検出信頼度 | 実用性 |
|---|---|---|
| 25トークン以下 | 非常に低い(<50%) | 実用不可 |
| 25〜50トークン | 低い(50〜70%) | 参考程度 |
| 50〜100トークン | 中程度(70〜90%) | 条件付きで利用可 |
| 100〜200トークン | 高い(90〜95%) | 実用的 |
| 200トークン以上 | 非常に高い(>95%) | 推奨最小長 |
検出手法の分類
1. 秘密鍵方式(Private Key Detection)
ウォーターマーク埋め込みと検出に共通の秘密鍵を使用する。APIプロバイダのみが検出可能で、第三者による独立検証ができない。Google SynthID-Text がこの方式を採用。
2. 公開鍵方式(Public Key Detection)
検出に使う鍵を公開し、誰でもウォーターマーク検証を行える。学術論文の査読やジャーナリズムでの利用に適するが、攻撃者にもパターンが開示されるため頑健性が低下するトレードオフがある。
3. Zero-bit vs Multi-bit
| 方式 | 検出内容 | 情報量 | 代表例 |
|---|---|---|---|
| Zero-bit | ウォーターマーク有/無のみ | 1ビット | Kirchenbauer 方式 |
| Multi-bit | モデルID・タイムスタンプ等 | N ビット | Robust Multi-bit (Yoo 2024) |
Multi-bit方式では、どのモデル・どのAPI鍵で生成されたかまで特定できる。
検出精度の評価指標
| 指標 | 定義 | 目標値 |
|---|---|---|
| True Positive Rate (TPR) | ウォーターマーク入りテキストを正しく検出 | >95% |
| False Positive Rate (FPR) | 人間が書いたテキストを誤検出 | <1% |
| AUROC | TPR/FPR のトレードオフ曲線下面積 | >0.99 |
| Robustness | パラフレーズ後の TPR 維持率 | >80% |
実用上の課題
偽陽性の社会的コスト
人間が書いたテキストをAI生成と誤判定するリスクは深刻。学術論文の不正判定、就職エッセイの却下、報道記事の信頼性毀損などの実害が起こり得る。FPR 1% でも大規模スクリーニングでは相当数の誤判定が発生する。
テキスト改変への脆弱性
- 5%のトークンを置換 — 多くの手法で検出率が 10〜30% 低下
- パラフレーズ(LLMで書き換え) — Green List 方式で検出率が 40〜60% 低下
- 翻訳往復 — ほぼ全ての手法で検出不能になる
- 混合テキスト — AI生成と人間記述の混在で判定が困難
多言語対応
英語以外の言語でのウォーターマーク検出研究は限定的。日本語のようにトークン化方式が言語依存の場合、Green/Red List の分割基準の調整が必要。
商用検出サービス
| サービス | 提供者 | 方式 | 対応モデル |
|---|---|---|---|
| SynthID Detection API | Google DeepMind | 秘密鍵・Multi-bit | Gemini |
| GPTZero | GPTZero Inc. | 統計的推定(非ウォーターマーク) | 汎用 |
| Turnitin AI Detection | Turnitin | 統計的推定 | 汎用 |
| Originality.ai | Originality.ai | ハイブリッド | 汎用 |
よくある質問
Q1: ChatGPT の出力にはウォーターマークが入っていますか?
A1: 2026年6月時点では公式にはウォーターマーク機能の実装は確認されていない。OpenAI は2024年にウォーターマーク研究を公開したが、テキスト品質への影響とユーザー離反を懸念して導入を保留しているとされる。
Q2: ウォーターマーク検出と従来のAI検出ツールの違いは?
A2: 従来ツール(GPTZero等)はテキストの統計的特徴(perplexity、burstiness)からAI生成を推定する。ウォーターマーク検出は事前埋め込みパターンを照合するため、理論的精度が格段に高い。ただし、ウォーターマークが埋め込まれていないテキストには使えない。
Q3: 自分でウォーターマーク検出を実装できますか?
A3: オープンソース実装が複数公開されている。Kirchenbauer 方式の参照実装(Python/PyTorch)がGitHubで利用可能。ただし、秘密鍵が公開されていないプロプライエタリモデル(Gemini等)のウォーターマークは検出できない。