给AI生成内容加上"隐形印章":详解谷歌刚推出的SynthID水印技术

我两天前刚写过Bloomberg报道的《AI 检测器误判学生作弊,严重后果令人担忧》,其中提到“OpenAI 近期表示,出于对特定群体可能受到负面影响的考虑,公司决定暂不发布 AI 写作检测工具。其中特别提到了英语非母语(ESL, English as Second Language)学生群体可能会受到影响。”

因此今天看到DeepMind公布他们这款名为SynthID的AI内容水印工具觉得一定要挖掘一下背后的原理,这是否也会造成教育公平方面的问题?

可以先看看Google官方的SynthID产品宣传视频:

考虑到为声音、图片和视频打水印这个事情相对容易理解,所以重点就放在SynthID是如何能对文字打水印上:

回顾一下LLM的文本生成

普通的AI文本生成很简单:

1
输入 → AI模型 → 概率分布 → 选词 → 加入文本

就像主持人问:”My favourite tropical fruits are(我最喜欢的热带水果是) ___”,AI将直接从概率最高的词来选择。

带水印文本的生成过程

幕后准备

首先,系统会准备两个关键工具:

a) 水印密钥(Watermarking Key)

  • 就像节目组的”密码本”

  • 用来确保水印的唯一性和可追踪性

b) 随机种子生成器(Random Seed Generator)

  • 类似于”随机数生成器”

  • 基于已生成的文本和水印密钥为每个新词的选择提供随机性

选词锦标赛流程

想象一个三轮制的选词竞赛:

第一轮:候选人准备

1
2
3
4
5
候选词        原始概率(PLM)    随机函数评分(g1,g2,g3)
芒果(mango) 50% 1, 0, 1
荔枝(lychee) 30% 0, 1, 0
木瓜(papaya) 15% 0, 0, 1
榴莲(durian) 5% 1, 0, 0

第二轮:锦标赛赛制

  1. 从AI模型抽取8个候选词(可重复);

  2. 两两配对,使用g1函数打分;

  • 如:芒果(1) vs 荔枝(0) → 芒果晋级;
  • 榴莲(1) vs 木瓜(0) → 榴莲晋级;
  1. 胜者进入下一轮,使用g2函数评分;4. 最后一轮使用g3函数决出最终赢家;

就像这样:

1
2
3
4
5
6
第一轮(g1):        第二轮(g2):        决赛(g3):
芒果(1)─┐ 芒果(0)─┐
荔枝(0)─┴→芒果 榴莲(0)─┴→芒果 芒果(1)─┐
├→芒果
榴莲(1)─┐ 芒果(0)─┐ 荔枝(0)─┘
木瓜(0)─┴→榴莲 荔枝(1)─┴→荔枝

水印特征的形成

这个过程巧妙地在文本中留下了”统计指纹”:

  • 每个选词都受到随机函数(g1,g2,g3)的影响;

  • 这些影响很小,不会破坏文本的自然性;

  • 但在统计层面形成了可检测的模式;

文本水印检测

  1. 使用同样的水印密钥;

  2. 计算文本中每个词的g函数得分;

  3. 如果发现词的选择上总是倾向于在锦标赛中得分较高的选项,就说明文本可能带有水印;

  4. 这种统计特征在单个词上很微弱,但在较长文本中会形成可检测的模式(根据Google团队的描述,说SynthID可以在只有三个句子的时候就做出判断);

优势和局限性

相对我之前文章中提到的很可能会造成教育公平问题的GPTZero等通过困惑度/Perplexity和突发性/Burstiness来分析文字是否由AI生成的方式不同,SynthID的这套模式确实更可靠了,但是依然也有其局限性:

  • 需要AI服务提供商主动采用这项技术,因为必须在生成阶段嵌入水印;

  • 依然可能被规避:如果文本经过大量编辑或改写,水印可能会减弱,以及特意设计的对抗性攻击可能破坏水印;

  • 虽然Google的paper并没有明确提出人类文本误判率的相关技术局限性,但统计特征的相似性和水印系统的稳健性都是依然存在的担心点,希望后续相关研究人员能专门就特定人群的误判可能做专门研究

这或许就是新一轮AI内容识别 vs 反AI内容识别的军备竞赛的开始…