跳转至

Learning From Dictionary: Enhancing Robustness of Machine-Generated Text Detection in Zero-Shot Language via Adversarial Training

会议: ICLR 2026
OpenReview: https://openreview.net/forum?id=bTcFHJo1Zk
代码: https://github.com/Liyuuuu111/MGT-Eval (有)
领域: AIGC检测 / 机器生成文本检测 / 对抗训练 / 多语言
关键词: 机器生成文本检测, 零样本语言, 对抗训练, 翻译词典, 语言无关特征

一句话总结

针对机器生成文本(MGT)检测器在未见语言上鲁棒性骤降的问题,本文提出 TASTE 框架:用翻译词典对 MGT 做"码混(code-switching)"生成多语言对抗样本,配合一个梯度反转的语言判别器(LAAL 损失)逼检测器学习语言无关特征,仅靠单一语言标注 + 翻译词典就把零样本语言上的平均 F1 提到 0.773、平均攻击成功率压到 18.0%。

研究背景与动机

领域现状:随着 LLM 让高质量文本批量生成变得轻而易举,机器生成文本检测(MGT detection)成了维护网络内容可信度的关键防线。主流检测器分两类——基于度量的(如 Fast-DetectGPT、Binoculars、LRR,看困惑度/对数似然比等统计量)和基于模型的(在标注语料上微调 mBERT、XLM-R 等编码器做二分类)。

现有痛点:这些检测器在单语(尤其英语)场景下准确率很高,但一个近期 benchmark 揭示了尴尬的事实——所有检测器在"零样本语言"(训练时没见过的语言)上性能大幅滑坡。更糟的是鲁棒性也跟着崩:在零样本语言里只改两个词就能让检测准确率掉 20–40%,攻击者几乎不费力就能绕过。而现实里绝大多数检测器还是只在英语上开发和评测,等于让数十亿非英语读者裸奔。

核心矛盾:要在多语言场景做对抗训练提升鲁棒性,按现有做法需要大规模多语言语料——但中等资源语言往往只有翻译词典、缺标注语料,低资源语言连基本词汇资源都稀缺,根本收集不到足够数据来做多语言对抗训练。"想多语言鲁棒"和"拿不到多语言数据"直接打架。

本文目标:只用单一高资源语言(英语)的数据和标签,外加一些中等资源语言的翻译词典,就训练出一个能泛化到零样本语言、且能抵御多种攻击的鲁棒多语言检测器。

切入角度:作者注意到翻译词典是一种比标注语料便宜得多、却被忽视的跨语言监督来源。如果让"攻击者"用词典把英文 MGT 里的关键词替换成其他语言(即码混),生成的对抗样本天然带上了多语言扰动;再逼检测器对原样本和码混样本给出一致预测,它就被迫学到了不依赖具体语言的语义特征。

核心 idea:用"翻译词典驱动的码混攻击者"代替"大规模多语言语料"来制造多语言对抗样本,并用一个梯度反转的语言判别器把语言特异线索从特征里抹掉,从而把英语监督迁移到零样本语言。

方法详解

整体框架

TASTE(Translation-based Attacker Strengthens MulTilingual DefEnder)是一个攻击者—检测器同步更新的对抗训练框架。输入是单一英语语料里的人写文本(HWT)和机器生成文本(MGT),输出是一个对零样本语言和未见攻击都鲁棒的目标检测器 \(D_{tar}\)

整个流程在每个训练步内分三段循环:(A) 攻击者先用一个代理模型 \(D_{sur}\) 估计 MGT 里每个 token 的重要性,挑出 top-\(k\) 关键 token,再查翻译词典把它们码混成多语言,造出对抗样本 \(\tilde{X}\);(B) 检测器在"原样本 + 对抗样本"上同时优化两个损失——鲁棒性保持损失 \(L_{RPL}\)(对 \(X\)\(\tilde{X}\) 都判对)和语言无关对抗损失 \(L_{LAAL}\)(梯度反转抹掉语言线索);(C) 攻击强度调度器把码混 token 集 \(I\) 的大小 \(|I|\) 从 1 逐步加大,让对抗样本从易到难。攻击者用黑盒假设——只能看到目标检测器输出的标签,所以借代理模型拿梯度。

%%{init: {'flowchart': {'rankSpacing': 24, 'nodeSpacing': 28, 'padding': 6, 'wrappingWidth': 400}}}%%
flowchart TD
    A["输入:英语 HWT / MGT"] --> B["重要 token 识别<br/>代理模型 D_sur 估 token 重要性<br/>选 top-k 关键 token"]
    B --> C["翻译词典码混<br/>把关键 token 换成多语言<br/>得对抗样本 X̃"]
    C --> D["检测器双损失训练<br/>RPL:X 与 X̃ 都判对<br/>LAAL:梯度反转抹语言线索"]
    D -->|攻击强度调度 |I| 从 1 递增| B
    D --> E["输出:鲁棒多语言检测器 D_tar"]

关键设计

1. 翻译词典驱动的码混攻击者:用便宜的词典代替昂贵的多语言语料

这一设计直接针对"多语言对抗训练缺数据"的痛点。攻击者要在黑盒下造出强对抗样本,分两步走。第一步重要 token 识别:因为目标检测器 \(D_{tar}\) 的权重不可见,作者引入一个开源代理模型 \(D_{sur}\) 来估计 token 重要性。给定 MGT \(X=[x_1,\dots,x_T]\) 及标签 \(l\),先取代理模型最后一层隐状态 \(H=D_{sur}(X)=[h_1,\dots,h_T]\),再用分类损失 \(L_{cls}=-\log P_{sur}(l\mid X)\) 对每个隐状态求梯度范数作为重要性分数 \(g_t=\left\|\frac{\partial L_{cls}}{\partial h_t}\right\|_2\),取分数最高的 top-\(k\) 个 token 构成关键集 \(I=\text{top-}k([(x_t,g_t)])\)。第二步码混:对 \(I\) 里的每个英文 token 查翻译词典 \(T\),替换成目标语言的对应词,得到多语言对抗样本 \(\tilde{X}\)(如把 "launched→发布、new→全新、Archon→архонт" 混在同一句里)。

之所以有效,是因为只扰动"对检测最关键的少数 token"就能高效翻转预测,而翻译词典恰好是中等资源语言唾手可得的资源,绕开了对大规模标注语料的依赖。

2. 语言无关对抗损失 LAAL:用梯度反转把"语言"从特征里抹掉

只造码混样本还不够——检测器可能学到"出现非英语字符就是机器写的"这类语言特异捷径,无法真正泛化。LAAL 借鉴域对抗(domain-adversarial)思路解决这点:把编码器输出的 \([\text{CLS}]\) 向量 \(h_{cls}^{(i)}\) 喂给一个轻量语言判别器 \(f_{lang}(\cdot)\),让它判断输入是被码混过的(\(y_{lang}=1\))还是干净的(\(y_{lang}=0\))。判别器自身最小化交叉熵

\[L_{LAAL}=-\frac{1}{N}\sum_{i=1}^{N}\left[y_{lang}^{(i)}\log p_{lang}^{(i)}+(1-y_{lang}^{(i)})\log(1-p_{lang}^{(i)})\right]\]

关键在反向传播时,从判别器流回编码器的梯度被乘上负系数 \(-\lambda_{lang}\)。这个梯度反转让编码器去"骗"判别器——即最大化判别器的损失,从而被迫擦除语言特异线索、只保留能跨语言迁移的语义信号。配合鲁棒性保持损失 \(L_{RPL}\)(要求对原样本 \(X\) 和对抗样本 \(\tilde{X}\) 都给出正确标签 \(l_i\)):

\[L_{RPL}=\frac{1}{N}\sum_{i=1}^{N}\left[-\log P_{tar}(l_i\mid X_i)-\log P_{tar}(l_i\mid \tilde{X}_i)\right]\]

检测器总损失为 \(L_{det}=L_{RPL}+\lambda_{lang}L_{LAAL}\)。这套组合把英语上的决策边界迁移到了未见语言。

3. 攻击者—检测器同步更新 + 动态攻击强度:让对抗强度从易到难、防止欠拟合

不同于传统对抗训练用固定强度或静态对抗样本,TASTE 在同一个训练步内交替更新攻击者和检测器,实现协同进化。每步先冻住检测器、用攻击者损失 \(L_{att}=\frac{1}{N}\sum_i[-\log P_{sur}(\hat{l}_i\mid X_i)]\) 更新代理模型(\(\hat{l}_i=\arg\max D_{tar}(X_i)\) 是从目标检测器拿到的伪标签)——这一步把目标检测器不断演化的知识蒸馏进代理模型,使其梯度对 token 重要性估计更可靠;再冻住攻击者、用 \(L_{det}\) 更新检测器和语言判别器。

动态强度体现在码混集大小 \(|I|\) 从 1 开始随训练逐步增大到上限 \(\max|I|\),让检测器从简单对抗样本一路学到困难样本,缓解欠拟合。实验发现强度并非越大越好:码混比例 0.05 时 Acc 最高、ASR 最低,比例升到 0.25 反而退化——过强扰动注入太多噪声,导致模型过拟合极端样本、牺牲泛化。

损失函数 / 训练策略

  • 攻击者损失 \(L_{att}\)(式 5):用伪标签蒸馏目标检测器知识进代理模型,更新 \(D_{sur}\) 时冻结检测器。
  • 检测器损失 \(L_{det}=L_{RPL}+\lambda_{lang}L_{LAAL}\)(式 8):更新 \(D_{tar}\)\(f_{lang}\) 时冻结攻击者。
  • 强度调度\(s\leftarrow\min(s+\Delta,\,s_{max})\),逐步增大码混 token 数。
  • 训练只用单一英语标注语料 + 阿/中/德/俄四种翻译词典;代理模型用在相应数据上微调过的 GPT-2,目标检测器与所有对抗训练基线统一用 mBERT 骨干以保证公平比较。

实验关键数据

主实验

在 M4GT 数据集 9 种语言(其中 bg/id/it/ur 为零样本语言)上评测零样本跨语言检测,对比 8 个 SOTA 检测器:

设置 指标 TASTE 次优 SOTA 提升
全部 9 语言平均 Acc 0.762 0.691 +0.071 (+10.3%)
全部 9 语言平均 F1 0.773 0.709 +0.064 (+9.0%)
零样本 4 语言平均 Acc 0.762 0.741 (mBERT) +2.1 pp
零样本 4 语言平均 F1 0.786 0.766 (mBERT) +2.0 pp
英语 F1 0.971 0.893 (GREATER-D) +7.8 pp

鲁棒性方面(8 种攻击下的平均攻击成功率 ASR,越低越好):

检测器 平均 ASR ↓ 相对 TASTE
TASTE (Ours) 18.0%
GREATER-D(最强 SOTA 防御) 21.8% TASTE 相对降 17.4%
Fast-DetectGPT(最佳度量基线) 41.7% TASTE 相对降 56.8%

TASTE 在 9 种语言里 8 种胜出,逐语言平均绝对降 3.82 个 ASR 点(如 ar 17.1→10.0、ur 20.5→12.0、zh 23.2→16.3),配对符号检验 \(p=0.039\) 显著。分攻击看:DELETE 降 38.9%、CODE-SWITCHING 降 32.8%、HUMAN-OBF. 降 59.7%,SWAP 攻击下近乎零脆弱。

消融实验

论文重点分析了攻击强度和词典质量两个维度:

配置 关键指标 说明
攻击强度 0.05 Acc 76.2% / ASR 18.0% 最优点,准确率最高、ASR 最低
攻击强度 0.25 Acc 73.1% / ASR 34.2% 过强扰动 → 过拟合极端样本,双双退化
词典交换率 0%(干净) 平均 Acc 76.2% 词典准确时码混携带有效跨语言信号
词典交换率 90%(高噪声) 平均 Acc 68.0% 退化但仍高于最佳基线(0.691)
词典覆盖率 10% 仍 > 最佳基线 0.691 小词典也够用,无需完整词典

关键发现

  • 强度有甜区:码混比例约 0.05 时在准确率、鲁棒性、训练耗时间取得最佳平衡;强度从 0.00 到 0.30,训练时间从 150s 飙到 9468s,过强既贵又过拟合。
  • 对词典噪声/不全有韧性:交换率升高总体掉点,但即便 90% 错误仍稳在最佳基线之上;依赖跨语言迁移更重的语言(中文、印尼语)更脆弱,而中等噪声有时反而帮某些语言去掉伪词汇线索(意大利语 69.4%→89.0% @70%)。
  • 零样本泛化来自对抗训练:仅用英语训练,TASTE 在每种语言都维持强准确率与 F1,验证语言无关特征确实迁移到了未见语言。

亮点与洞察

  • 把"翻译词典"当对抗武器:最巧的地方是认识到中等资源语言虽缺标注语料但有词典,于是用词典码混代替昂贵的多语言语料造对抗样本——既降低数据成本,又天然引入多语言扰动,一举两得。
  • 梯度反转 + 码混样本的耦合:单独码混会让模型学"非英语=机器写"的捷径,单独 GRL 没有多语言信号可抹;两者一配,LAAL 才真正把语言特异线索从特征里挤出去,这个组合是泛化的关键。
  • 代理模型蒸馏拿黑盒梯度:黑盒下不能用目标检测器梯度,作者用伪标签把目标检测器知识持续蒸馏进代理模型,让代理梯度对 token 重要性估计越来越准——这套"黑盒拿梯度"的 trick 可迁移到其他黑盒对抗攻击场景。
  • 强度调度的画面感:把码混 token 数从 1 慢慢加大,等于给检测器排了一张从易到难的课程表,配上 0.05 甜区的发现,对做对抗训练课程学习的人很有参考价值。

局限与展望

  • 依赖词典质量与覆盖:虽然对噪声有韧性,但高交换率(90%)下中文、印尼语等仍明显掉点,真正的低资源语言若连词典都缺,方法的迁移基础就动摇了。
  • 静态词典、词级替换:码混是逐词查静态词典替换,无法处理需要语序/形态调整的语言,也可能生成语义漂移的样本(论文自己承认错误词条会改变语义)。
  • 只验证了 4 种码混语言:训练词典仅覆盖阿/中/德/俄,对形态更复杂或字符系统差异更大的语言能否同样有效,缺乏更广验证。
  • 改进思路:可引入上下文感知的翻译(而非静态词典)减少语义漂移;或对低资源语言用多枢轴语言词典组合扩大覆盖。

相关工作与启发

  • vs RADAR / GREATER-D(单语对抗训练):它们也用攻击者—检测器同步更新(GREATER-D 即来自 Li et al. 2025),但攻击局限在单语 paraphrase/扰动,无法泛化到多语言;TASTE 把攻击换成翻译词典码混 + LAAL,专攻零样本语言,平均 F1 比 GREATER-D 高 0.064、ASR 低 3.8 个点。
  • vs Fast-DetectGPT / Binoculars / LRR(度量类检测器):它们靠困惑度/对数似然比等统计量,零样本语言上 ASR 高达 41.7%,对几词级扰动毫无招架之力;TASTE 作为模型类对抗训练方法把 ASR 压到 18.0%。
  • vs 传统多语言对抗训练(需大规模多语言语料):以往工作普遍认为多语言鲁棒性要靠海量多语言数据;本文反其道用便宜的翻译词典 + 单语标注就拿到跨语言泛化,是对"数据规模换鲁棒性"假设的一次有意义反驳。

评分

  • 新颖性: ⭐⭐⭐⭐ 用翻译词典码混 + 梯度反转抹语言线索来做零样本多语言 MGT 检测,切入角度新颖且实用。
  • 实验充分度: ⭐⭐⭐⭐ 覆盖 9 语言 8 攻击、对比 8 个 SOTA,并对强度/词典噪声/覆盖做了细致分析,但消融主表放在附录、码混语言仅 4 种。
  • 写作质量: ⭐⭐⭐⭐ 动机—方法—实验链条清晰,算法伪代码和损失公式完整;个别表述(如度量定义)略简。
  • 价值: ⭐⭐⭐⭐ 直击非英语读者缺保护的现实问题,低成本方案对实际部署多语言检测器有较强落地价值。