K-文化的一切——从回归到 K-美妆,发送到您的邮箱订阅邮件

METAL MEDIA

Stability-Aware Feature Design for Robust Watermark Detection in Machine-Generated Text

arXiv:2608.181022026-08-20

即使反复改写AI生成的文本,新方法依然能识别出其中的水印

大语言模型生成的文本可以嵌入人眼看不见的统计水印,但只要文本被反复改写(paraphrasing),现有的检测方法准确率就会大幅下滑。这篇论文提出了模式稳定性分数(Pattern Stability Score, PSS),通过在文本的多个局部窗口中观察水印信号,并衡量这种信号在最多八轮改写后是否依然保持稳定,来提升检测的鲁棒性。结果显示,在其他方法几乎失效的极端改写场景下,这种方法仍能保持较高的检测准确率。

METAL MEDIA 解读图

即使反复改写AI生成的文本,新方法依然能识别出其中的水印

  1. 01绿名单水印方法会让语言模型在生成时更倾向于选用词表中一个隐藏的'绿色词表'里的词,而传统检测器把整段文本压缩成一个全局z分数,一旦文本局部被改写,这个全局分数就会被稀释
  2. 02研究者在文本上滑动窗口,提取20种局部统计特征(均值、方差、自相关、连续片段长度等),并提出PSS指标,用来衡量同一段文本经过最多八轮反复改写后,这些局部特征是否保持稳定
  3. 03在PG-19、CNN/DailyMail、WikiText三个数据集,以及Llama-3-8B、Qwen2-7B等生成模型和Mistral、Qwen2、Gemma等改写模型上测试,在1500个token、改写8轮的情况下,PSS加静态特征的方法达到91.2%的判别准确率(AUC,ROC曲线下面积),而DeepTextMark、Binoculars、RADAR等深度学习方法则跌至41%至44%
  4. 04即使不知道测试时具体用的是哪个生成模型、改写模型或数据集,一个通用分类器在各种组合下依然能保持87.8%以上的AUC;在文本短至300个token时,该方法也比基线方法表现更稳
  5. 05当文本既很短又被深度反复改写,或者面对专门训练用来消除水印信号的攻击时,该方法的表现依然会下降,不过相比传统的全局z分数基线,下降幅度要小得多
这是 METAL MEDIA 制作的解读图,并非论文作者提供的原图。

他们做了什么

  1. 绿名单水印方法会让语言模型在生成时更倾向于选用词表中一个隐藏的'绿色词表'里的词,而传统检测器把整段文本压缩成一个全局z分数,一旦文本局部被改写,这个全局分数就会被稀释
  2. 研究者在文本上滑动窗口,提取20种局部统计特征(均值、方差、自相关、连续片段长度等),并提出PSS指标,用来衡量同一段文本经过最多八轮反复改写后,这些局部特征是否保持稳定
  3. 在PG-19、CNN/DailyMail、WikiText三个数据集,以及Llama-3-8B、Qwen2-7B等生成模型和Mistral、Qwen2、Gemma等改写模型上测试,在1500个token、改写8轮的情况下,PSS加静态特征的方法达到91.2%的判别准确率(AUC,ROC曲线下面积),而DeepTextMark、Binoculars、RADAR等深度学习方法则跌至41%至44%
  4. 即使不知道测试时具体用的是哪个生成模型、改写模型或数据集,一个通用分类器在各种组合下依然能保持87.8%以上的AUC;在文本短至300个token时,该方法也比基线方法表现更稳
  5. 当文本既很短又被深度反复改写,或者面对专门训练用来消除水印信号的攻击时,该方法的表现依然会下降,不过相比传统的全局z分数基线,下降幅度要小得多
Figure 2: AUC vs. paraphrase depth at 1,500 tokens. Mean AUC (solid lines) with ±1 SD bands (shaded) over 30 runs with random 70/30 splits for four methods—Global z threshold, Local z (20) + classifiers, Static features + classifiers, and PSS + Static—all using XGBoost. Local statistics improve robustness relative to the global threshold, and adding PSS further flattens the AUC decline from D​3–D​8.
Figure 2: AUC vs. paraphrase depth at 1,500 tokens. Mean AUC (solid lines) with ±1 SD bands (shaded) over 30 runs with random 70/30 splits for four methods—Global z threshold, Local z (20) + classifiers, Static features + classifiers, and PSS + Static—all using XGBoost. Local statistics improve robustness relative to the global threshold, and adding PSS further flattens the AUC decline from D​3–D​8.
Table 1: Comparison with prior detectors on PG-19 at 1,500 tokens. AUC (%) across paraphrase depths. PSS + Static outperforms statistical baselines (Global z-score, WinMax) by 14–19 percentage points an, the global z-score by 22–24 percentage points, and deep-learning detectors (DeepTextMark, Binoculars, RADAR) by 30–50 percentage points across D​1–D​8.
MethodD1D3D5D8
Global z-score74.270.068.066.8
WinMax (Kirchenbauer et al., 2024)82.176.574.472.3
Static features (20-D)88.183.280.278.6
DeepTextMark (Munyer et al., 2024)65.851.247.543.9
Binoculars (Hans et al., 2024)62.748.644.941.9
RADAR (Hu et al., 2023)58.447.243.740.8
PSS + Static96.193.992.691.2
Figure 3: Window/stride sensitivity (1,500 tokens) for PSS + static. Numbers show mean AUC (%) across depths D​1–D​8.
Figure 3: Window/stride sensitivity (1,500 tokens) for PSS + static. Numbers show mean AUC (%) across depths D​1–D​8.
Table 2: Cross-Domain Transfer. AUC (%) when training on one dataset and testing on another. PSS generalizes effectively while deep learning methods collapse.
Train → TestMethodD1D3D5D8
PG-19 → CNN/DMDeepTextMark46.338.534.232.1
Binoculars44.136.833.130.9
RADAR41.835.131.529.4
PSS + Static88.685.884.783.8
CNN/DM → WikiTextDeepTextMark50.841.237.535.2
Binoculars48.939.836.234.0
RADAR46.738.234.832.6
PSS + Static93.191.290.489.7
WikiText → CNN/DMDeepTextMark43.235.431.328.9
Binoculars41.533.929.827.6
RADAR39.432.128.126.2
PSS + Static88.685.784.683.7
Figure 4: Shorter texts. Mean AUC (solid) with ±1 SD bands (shaded) over 30 random 70/30 splits. Top-left to bottom-left: AUC vs. paraphrase depth for 1,000/500/300 tokens; bottom-right: AUC vs. token length at D​7. All methods degrade with less text, but local/static features mitigate the drop and PSS + Static maintains the strongest performance across depths and lengths, including at D​7.
Figure 4: Shorter texts. Mean AUC (solid) with ±1 SD bands (shaded) over 30 random 70/30 splits. Top-left to bottom-left: AUC vs. paraphrase depth for 1,000/500/300 tokens; bottom-right: AUC vs. token length at D​7. All methods degrade with less text, but local/static features mitigate the drop and PSS + Static maintains the strongest performance across depths and lengths, including at D​7.
Table 3: Universal Classifier Performance. AUC (%) for a single classifier trained on Llama-3 + Mistral + PG-19 + D1-D3, evaluated across varied configurations.
Test ConfigurationChangedD1D3D5D8
Llama-3 + Mistral + PG-19Baseline96.193.992.691.2
Qwen2 + Mistral + PG-19LLM94.291.890.989.6
Llama-3 + Gemma + PG-19Paraphraser89.182.780.680.0
Llama-3 + Mistral + CNNDomain88.685.884.783.8
Qwen2 + Qwen2 + WikiTextALL92.690.589.287.8
Figure 5: Mix paraphrasing (Mistral ↔ Qwen), 1,500 tokens. AUC vs. depth under alternating paraphrasers.
Figure 5: Mix paraphrasing (Mistral ↔ Qwen), 1,500 tokens. AUC vs. depth under alternating paraphrasers.
Table 4: Gemma-7B-IT paraphrasing: AUC (%) vs. depth (D​1–D​8). All classifier entries use XGBoost; values are mean ± std over 30 runs.
MethodD1D2D3D4D5D6D7D8
Global z-score threshold56.50 ± 0.0054.35 ± 0.0053.75 ± 0.0053.55 ± 0.0053.25 ± 0.0053.30 ± 0.0053.05 ± 0.0053.00 ± 0.00
Local z-score (20)66.07 ± 1.4259.03 ± 1.6658.92 ± 1.9957.52 ± 2.2057.81 ± 1.6357.32 ± 1.4057.55 ± 1.5557.80 ± 1.41
Static features72.75 ± 1.8768.95 ± 1.8767.02 ± 1.2968.10 ± 1.3567.48 ± 1.7667.10 ± 1.8366.82 ± 1.5865.16 ± 1.87
PSS + Static83.51 ± 1.4377.85 ± 1.6375.98 ± 1.4576.54 ± 1.2173.69 ± 1.4973.33 ± 1.2372.92 ± 2.03
Table 5: Qwen2-7B-Instruct paraphrasing: AUC (%) vs. depth (D​1–D​8). All classifier entries use XGBoost; values are mean ± std over 30 runs.
MethodD1D2D3D4D5D6D7D8
Global z-score threshold73.25 ± 0.0069.90 ± 0.0069.00 ± 0.0068.40 ± 0.0067.90 ± 0.0067.70 ± 0.0067.35 ± 0.0066.80 ± 0.00
Local z-score (20)58.90 ± 1.6158.15 ± 1.6955.03 ± 1.7155.48 ± 1.6455.86 ± 1.6655.19 ± 1.6454.27 ± 1.6355.27 ± 1.66
Static features82.08 ± 1.4578.64 ± 1.5577.15 ± 1.5177.89 ± 1.4877.47 ± 1.5278.37 ± 1.5078.77 ± 1.4976.36 ± 1.47
PSS + Static94.67 ± 0.6892.68 ± 0.7992.38 ± 0.8292.63 ± 0.7891.90 ± 0.9190.57 ± 0.9890.47 ± 1.02
Table 6: Feature-group ablation. AUC (%) on PG-19 at 1,500 tokens. Components are added incrementally to a global z-score baseline. Every group contributes measurably and PSS provides the largest single jump, confirming that each component captures a distinct, non-redundant aspect of the watermark signal.
Feature SetD1D3D5D8
Global z-score (baseline)74.270.068.066.8
Z-score moments (6-D)83.276.574.172.0
+ Autocorrelations (8-D)85.079.376.074.4
+ Run-length stats (14-D)87.383.279.877.2
+ Run-frequency (full 20-D)88.183.280.278.6
+ PSS (full PSS + Static)96.193.992.691.2
Table 7: PSS with Different Watermarking Schemes. AUC (%) with varying greenlist ratios.
Watermark ConfigD1D3D5D8
Standard (γ=0.25)96.193.992.691.2
Stronger (γ=0.50)97.696.495.594.2
Table 8: Within-domain: Train on CNN/DailyMail (70%) → Test on CNN/DailyMail (30%). AUC (%) across paraphrase depths. All classifier entries use XGBoost; values are mean ± std over 30 runs.
MethodD1D2D3D4D5D6D7D8
Global z-score threshold74.20 ± 0.0070.45 ± 0.0069.60 ± 0.0068.85 ± 0.0068.20 ± 0.0067.70 ± 0.0067.30 ± 0.0066.80 ± 0.00
Local z-score (20)59.80 ± 1.7858.65 ± 1.8256.40 ± 1.7555.50 ± 1.7754.90 ± 1.8054.35 ± 1.8353.80 ± 1.8553.25 ± 1.88
Static features84.30 ± 1.5882.50 ± 1.6278.05 ± 1.6077.65 ± 1.6577.05 ± 1.6876.45 ± 1.7275.85 ± 1.7575.25 ± 1.78
PSS + Static95.30 ± 0.8593.50 ± 0.9292.75 ± 0.9892.35 ± 1.0591.70 ± 1.1291.15 ± 1.1890.60 ± 1.2590.05 ± 1.32
Table 9: Within-domain: Train on WikiText (70%) → Test on WikiText (30%). AUC (%) across paraphrase depths. All classifier entries use XGBoost; values are mean ± std over 30 runs.
MethodD1D2D3D4D5D6D7D8
Global z-score threshold79.85 ± 0.0077.15 ± 0.0076.45 ± 0.0075.90 ± 0.0075.45 ± 0.0075.10 ± 0.0074.80 ± 0.0074.55 ± 0.00
Local z-score (20)65.70 ± 1.5564.90 ± 1.5863.40 ± 1.6262.85 ± 1.6062.50 ± 1.6362.20 ± 1.6561.90 ± 1.6761.65 ± 1.68
Static features88.85 ± 1.4888.10 ± 1.5085.80 ± 1.4685.45 ± 1.4885.15 ± 1.5084.85 ± 1.5284.55 ± 1.5484.30 ± 1.55
PSS + Static98.45 ± 0.5597.25 ± 0.6296.85 ± 0.6896.50 ± 0.7296.15 ± 0.7895.85 ± 0.8295.55 ± 0.8595.30 ± 0.88
Table 10: Cross-domain: Train on WikiText (70%) → Test on CNN/DailyMail (30%). AUC (%) across paraphrase depths. All classifier entries use XGBoost; values are mean ± std over 30 runs.
MethodD1D2D3D4D5D6D7D8
Global z-score threshold59.80 ± 0.0057.20 ± 0.0055.95 ± 0.0055.05 ± 0.0054.40 ± 0.0053.95 ± 0.0053.60 ± 0.0053.30 ± 0.00
Local z-score (20)54.85 ± 2.0253.55 ± 2.1052.10 ± 2.1851.30 ± 2.2450.75 ± 2.2850.30 ± 2.3249.95 ± 2.3549.65 ± 2.38
Static features76.15 ± 1.8274.20 ± 1.9072.75 ± 1.9872.00 ± 2.0571.40 ± 2.1070.95 ± 2.1570.55 ± 2.1870.25 ± 2.20
PSS + Static88.60 ± 1.1287.15 ± 1.2285.70 ± 1.3085.15 ± 1.3884.60 ± 1.4584.15 ± 1.5283.90 ± 1.5883.70 ± 1.65
Table 11: Cross-domain: Train on CNN/DailyMail (70%) → Test on WikiText (30%). AUC (%) across paraphrase depths. All classifier entries use XGBoost; values are mean ± std over 30 runs.
MethodD1D2D3D4D5D6D7D8
Global z-score threshold65.55 ± 0.0063.40 ± 0.0062.40 ± 0.0061.70 ± 0.0061.20 ± 0.0060.80 ± 0.0060.50 ± 0.0060.25 ± 0.00
Local z-score (20)59.35 ± 1.7258.15 ± 1.7856.80 ± 1.8556.10 ± 1.9055.55 ± 1.9455.10 ± 1.9754.70 ± 2.0054.40 ± 2.02
Static features81.45 ± 1.5579.80 ± 1.6278.50 ± 1.6877.90 ± 1.7277.40 ± 1.7577.00 ± 1.7876.65 ± 1.8076.40 ± 1.82
PSS + Static93.10 ± 0.8592.15 ± 0.9291.20 ± 0.9890.80 ± 1.0590.40 ± 1.1290.10 ± 1.1889.85 ± 1.2589.70 ± 1.30
Table 12: Comprehensive Experimental Coverage. Performance across different datasets, LLMs, paraphrasers, and watermark settings.
DatasetLLMParaphraserSettingD1D3D5D8
PG-19Llama-3-8BMistral-7Bγ=0.2596.1%93.9%92.6%91.2%
PG-19Qwen2-7BMistral-7Bγ=0.2594.2%91.8%90.9%89.6%
CNN/DailyMailLlama-3-8BMistral-7Bγ=0.2595.3%93.2%92.3%90.7%
WikiTextLlama-3-8BQwen2-7Bγ=0.2597.5%96.2%95.8%94.8%
PG-19Llama-3-8BMistral-7Bγ=0.5097.6%96.4%95.5%94.2%
Table 13: True Positive Rate at Fixed False Positive Rates. Critical operating points for practical deployment.
FPRMethodD1D2D3D4D5D6D7D8
1%Global z-score0.420.380.350.320.300.280.260.24
Local z-score (20)0.480.440.400.370.350.330.310.29
Static features0.650.600.550.520.490.470.450.43
PSS + Static0.840.800.760.730.700.680.660.64
5%Global z-score0.580.520.470.430.400.370.350.33
Local z-score (20)0.620.570.520.480.450.420.400.38
Static features0.780.730.680.640.610.580.560.54
PSS + Static0.920.890.860.830.810.790.770.75
Table 14: Semantic Preservation and Performance. BERT similarity decreases with depth; PSS remains robust across all depths. All detection values are AUC (%).
DepthBERT Sim.PSS+StaticGlobal zDeepTextMark
D10.9296.1%74.2%58.4%
D20.8994.8%71.5%53.1%
D30.8593.9%68.7%47.6%
D40.8293.2%67.8%45.8%
D50.8092.6%66.8%43.9%
D60.7692.1%66.2%42.8%
D70.7291.6%65.8%42.0%
D80.6891.2%65.3%41.2%
Table 15: Performance Under Realistic Attacks. AUC (%) across various attack scenarios. PSS maintains robust performance.
Attack TypePSS+StaticGlobal zDeepTextMark
1-2 paraphrases (D1-D2 avg)95.4%72.8%54.6%
Manual edits (20% modified)91.8%62.7%46.3%
Manual edits (30% modified)88.9%56.4%40.2%
Chain paraphrasing (Mixed)90.6%67.1%49.1%
Table 16: Computation Time Breakdown (seconds). Mean ± std over 100 runs. PSS detection is highly efficient.
Component300 tok500 tok1000 tok1500 tok
Binary sequence extraction0.12±0.010.18±0.010.28±0.020.41±0.02
Rolling-window features0.35±0.030.58±0.040.95±0.061.45±0.08
Stability score computation0.28±0.020.46±0.030.78±0.051.18±0.07
XGBoost classification0.05±0.010.08±0.010.09±0.010.16±0.02
Feature extraction and classification0.80±0.041.30±0.052.10±0.083.20±0.11
Table 17: Deployment Trade-offs. Practical configurations balancing accuracy and latency.
ConfigurationParaphrasesInference TimeD8 AUCUse Case
Static features only00.8–3.2s83–85%High-throughput screening
PSS (minimal)120–35s89–91%Balanced deployment
PSS (full)72–4 min91–96%High-stakes verification
Baselines
Global z-score0<0.1s62–66%
DeepTextMark02–5s41–44%
Table 18: Performance under the adaptive attack of Diaa et al. (2025). AUC (%) on PG-19 at 1,500 tokens, comparing naive Mistral paraphrasing at D​1 to the DPO-optimized adaptive attack at D​1 and D​2. The adaptive paraphraser is fine-tuned to minimize the global z-score and effectively defeats it. In contrast, PSS + Static maintains >80% AUC, retaining a 30+ percentage point advantage.
NaiveAdaptive (Diaa et al.)
MethodD1D1D2
Global z-score74.252.153.6
PSS + Static96.183.280.6

为什么重要

AI文本水印要真正投入使用,就必须经得起改写这类常见编辑操作的考验,而这项研究表明,只改进检测端、不改动水印生成方式,就能大幅缩小这一差距。这对教育、新闻和内容溯源等需要在文本被改写后仍能判断其是否由AI生成的场景具有直接的应用意义。

本文术语

  • 水印(watermarking) · 在AI生成的文本中嵌入人眼不可见但可被统计方法检测出的隐藏标记
  • 绿名单水印(greenlist watermarking) · 生成文字时让模型更倾向于使用词表中被秘密指定的一部分词('绿色词表')
  • z分数(z-score) · 衡量观测值偏离随机期望程度的统计量,是传统水印检测的核心判断依据
  • 改写(paraphrasing) · 用不同措辞表达相同意思,是试图去除水印的常见手段
  • AUC(ROC曲线下面积) · 衡量检测器区分两类样本能力的指标,数值越接近1表示检测效果越好

无法转载的图表

  • Figure 1: End-to-end PSS pipeline. Human and AI-watermarked texts undergo up to eight paraphrasing rounds, with binary sequences extracted at each iteration (D0–D8). Watermarked text maintains stable patterns across iterations while human text shows random variation. An XGBoost classifier uses these stability features alongside static features for final classification.
在原文中查看图表 →

论文原文摘要(英文)

The widespread adoption of large language models (LLMs) has intensified the demand for principled methods to distinguish human from machine-generated text. Watermarking provides a promising avenue, yet existing detectors exhibit sharp performance deterioration under multiple paraphrasing and when applied to shorter texts. We introduce Pattern Stability Score (PSS), a novel detection framework that leverages local statistical features and stability dynamics across paraphrased variants. Specifically, the proposed method combines global and local z-score features with higher-order statistics of run-length patterns, enriched by autocorrelation signals and stability scores computed over paraphrase depth. Numerical evaluations are performed on three benchmark datasets (PG-19, CNN/DailyMail, and WikiText) using multiple LLMs (Llama-3-8B, Qwen2-7B) and paraphrasers (Mistral-7B, Qwen2-7B, Gemma-7B), systematically stress-testing robustness under up to eight rounds of paraphrasing. Compared to prior z-score thresholding baselines and some state-of-the-art deep learning methods, our approach improves detection AUC (area under the receiver operating characteristic curve) by over 10-15 percentage points across different token lengths. Additionally, extensive cross-domain experiments demonstrate that a single universal classifier generalizes across different LLMs, paraphrasers, and text domains without retraining, maintaining above 87.8% AUC even when all components differ from training.

作者 · Sina Mansouri, Mohit Marvania, Abolfazl Safikhani

在 arXiv 阅读

最新论文

全部论文 →

METAL MEDIA 最新报道

图片来源: Sina Mansouri et al., arXiv:2608.18102, CC BY 4.0