PostMark: A Robust Blackbox Watermark for Large Language Models
作者: Yapei Chang, Kalpesh Krishna, Amir Houmansadr, John Wieting, Mohit Iyyer
分类: cs.LG, cs.AI, cs.CL, cs.CR
发布日期: 2024-06-20 (更新: 2024-10-11)
备注: EMNLP 2024; 19 pages, 5 figures
🔗 代码/项目: GITHUB
💡 一句话要点
提出PostMark:一种针对大型语言模型的鲁棒黑盒水印方案,无需访问模型logits。
🎯 匹配领域: 支柱二:RL算法与架构 (RL & Architecture) 支柱九:具身大模型 (Embodied Foundation Models)
关键词: 大型语言模型 黑盒水印 后处理水印 抗释义攻击 语义嵌入
📋 核心要点
- 现有LLM水印技术依赖访问模型logits,但LLM API提供商出于模型蒸馏的担忧,不愿共享logits。
- PostMark是一种后处理水印方法,无需访问logits,通过语义嵌入确定输入相关的词集,并将其插入到生成文本中。
- 实验表明,PostMark在抗释义攻击方面比现有方法更鲁棒,并在文本质量和鲁棒性之间取得了较好的平衡。
📝 摘要(中文)
本文提出了一种名为PostMark的模块化后处理水印方法,用于检测大型语言模型(LLM)生成的文本。与现有水印方法不同,PostMark不需要访问底层LLM的logits,因此可以由第三方实现。该方法通过在解码过程完成后,将输入相关的词集(通过语义嵌入确定)插入到文本中来实现水印。实验结果表明,PostMark比现有的水印方法更具有抗释义攻击的鲁棒性。实验涵盖了八种基线算法、五个基础LLM和三个数据集。此外,本文还评估了PostMark对文本质量的影响,并强调了质量与抗释义鲁棒性之间的权衡。代码、输出和标注已开源。
🔬 方法详解
问题定义:现有的大部分LLM水印检测技术依赖于在模型解码过程中插入可检测的签名。然而,这些方法通常需要访问底层LLM的logits,而LLM API提供商通常不愿意共享这些信息,因为担心模型被蒸馏。因此,这些水印必须由每个LLM提供商独立实施。这限制了水印技术的广泛应用和第三方检测能力。
核心思路:PostMark的核心思路是在LLM生成文本后,通过后处理的方式添加水印,而无需访问LLM的内部logits。具体来说,它根据输入文本的语义信息,选择一组相关的词语,并将这些词语插入到生成的文本中。这种方法使得水印的添加过程独立于LLM的内部机制,从而可以由第三方实现。
技术框架:PostMark的整体框架包括以下几个主要步骤:1) 使用LLM生成文本;2) 对输入文本进行语义分析,提取关键语义信息;3) 基于提取的语义信息,从预定义的词汇表中选择一组相关的词语作为水印;4) 将选定的水印词语插入到生成的文本中,形成带有水印的文本。水印的检测过程则相反,首先提取文本中的水印词语,然后分析这些词语与原始输入文本的语义相关性,从而判断文本是否带有水印。
关键创新:PostMark的关键创新在于其后处理的水印添加方式,以及基于语义嵌入的水印词语选择策略。与传统的需要访问logits的水印方法相比,PostMark不需要依赖LLM提供商,可以由第三方独立实现。同时,基于语义嵌入的水印词语选择策略使得水印更加隐蔽,难以被攻击者通过简单的词语替换来移除。
关键设计:PostMark的关键设计包括:1) 语义嵌入的选择:论文使用了预训练的语义嵌入模型来提取输入文本的语义信息,并选择与输入文本语义相关的词语作为水印。2) 水印词语的插入位置:论文采用了一种策略性的插入方法,将水印词语插入到文本中语义相关的位置,以提高水印的隐蔽性和鲁棒性。3) 水印检测阈值的设定:论文通过实验确定了一个合适的水印检测阈值,以平衡水印的检测率和误报率。
🖼️ 关键图片
📊 实验亮点
PostMark在抗释义攻击方面表现出色,优于八种基线算法。实验结果表明,即使在经过多次释义后,PostMark仍然能够有效地检测到水印。此外,PostMark在五个不同的LLM和三个不同的数据集上进行了测试,证明了其泛化能力。同时,论文也评估了PostMark对文本质量的影响,并提供了质量与鲁棒性之间的权衡分析。
🎯 应用场景
PostMark可应用于各种需要验证文本生成来源的场景,例如检测AI生成的虚假新闻、保护LLM生成内容的版权、以及验证LLM在教育和科研领域的应用。该技术降低了水印实施的门槛,使得第三方机构可以独立验证文本的真实性,促进了LLM技术的安全和可信应用。
📄 摘要(原文)
The most effective techniques to detect LLM-generated text rely on inserting a detectable signature -- or watermark -- during the model's decoding process. Most existing watermarking methods require access to the underlying LLM's logits, which LLM API providers are loath to share due to fears of model distillation. As such, these watermarks must be implemented independently by each LLM provider. In this paper, we develop PostMark, a modular post-hoc watermarking procedure in which an input-dependent set of words (determined via a semantic embedding) is inserted into the text after the decoding process has completed. Critically, PostMark does not require logit access, which means it can be implemented by a third party. We also show that PostMark is more robust to paraphrasing attacks than existing watermarking methods: our experiments cover eight baseline algorithms, five base LLMs, and three datasets. Finally, we evaluate the impact of PostMark on text quality using both automated and human assessments, highlighting the trade-off between quality and robustness to paraphrasing. We release our code, outputs, and annotations at https://github.com/lilakk/PostMark.