![[DetectGPT] 文本作者是人工智能还是人类?关于如何区分的建议](https://aisholar.s3.ap-northeast-1.amazonaws.com/media/January2024/detectgpt.png)
[DetectGPT] 文本作者是人工智能还是人类?关于如何区分的建议
三个要点
✔️ 语言模型已经高度发展,并广泛应用于学校和报纸。
✔️ 这项研究提出了一种区分句子是机器写的还是人写的新方法,结果表明这种方法表现相当出色。
✔️ 模型的置信度和微小改动的影响对检测很重要,希望在今后的研究中进一步改进。
DetectGPT: Zero-Shot Machine-Generated Text Detection using Probability Curvature
written by Eric Mitchell, Yoonho Lee, Alexander Khazatsky, Christopher D. Manning, Chelsea Finn
(Submitted on 26 Jan 2023 (v1), last revised 23 Jul 2023 (this version, v2))
Comments: ICML 2023
Subjects: Computation and Language (cs.CL); Artificial Intelligence (cs.AI)
code:![]()
![]()
本文所使用的图片要么来自论文、介绍性幻灯片,要么是参考这些图片制作的。
概述
本文主要介绍一种检测超大语言模型(LLM)生成句子的新方法。通常情况下,这些模型生成的句子遵循特定形式的概率函数。特别值得一提的是,模型生成的句子往往集中在模型概率函数的所谓 "负曲率区域"。
因此,研究人员利用这一特点提出了一种新的检测方法--DetectGPT,它设定了检测模型生成句子的标准。它只查看语言模型的随机变化,从而检测出句子。
简而言之,DetectGPT 是一种非常有用的检测模型生成文本的方法。他们报告说,DetectGPT 的性能优于以前的方法,尤其是在发现由大规模模型生成的假新闻方面大有可为;DetectGPT 的性能被认为优于迄今为止最好的方法。
上图比较了机器生成文本 xfake˜pθ(x)(左)和人工撰写文本 x real˜p human(x)(右)的对数概率曲率趋势。机器生成的文本通常位于负曲率区域,对数概率较低,附近的样本平均概率也较低。而人写文本并不占据明显的负曲率区域,附近样本的概率也会在高低之间变化。
导言
如上所述,本文介绍了 DetectGPT,这是一种用于检测由大规模语言模型(LLMs)生成的文本的新方法。LLMs 可以生成流畅而有说服力的回答,但事实表明,它们的生成有时是不正确的。在学生论文写作和新闻报道中,当 LLM 替代人工时,就会出现问题。
DetectGPT 是一种用于检测 LLM 生成文本的新型零点检测方法,它特别基于模型生成的文本倾向于位于对数概率函数负曲率区域的假设。该方法无需训练单独的模型或数据集,在检测机器生成文本方面比现有方法显示出更高的准确性。
本文的主要贡献在于识别和检验了模型对数概率函数的曲率在模型样本中更显著为负这一假设,并提出了 DetectGPT。该方法利用对数概率函数黑塞矩阵的踪迹来有效检测模型生成的文本。
图 1 展示了确定 DetectGPT 是否由特定大规模语言模型(LLM)(如 GPT-3)生成的过程。首先,为了评估候选句子 x,DetectGPT 会使用 T5 等通用预训练模型生成对该句子稍作修改的扰动 x~i。然后,它将原始句子 x 在 LLM 中的对数概率与每个扰动样本 x~i 的对数概率进行比较。如果平均对数比率较高,则样本更有可能是由源模型生成的。
相关研究
本文探讨了随着大型语言模型(LLM)的不断发展和性能的提高,识别机器生成文本的方法变得越来越重要。以往的研究试图找到由特定模型生成的文本,但也发现了一个问题,即这种方法严重偏向原始数据和模型。
目前已提出了几种方法,但本研究中提出的 DetectGPT 是一种新方法,即在对数概率函数的特定部分检测模型生成的文本。这里的 "Zero-shot "指的是新任务不需要事先训练。这样就可以找到机器生成的文本,而无需依赖以前训练过的模型或数据集。
之前的相关研究表明,DetectGPT 比其他方法更准确。研究主要集中在机器生成文本检测方面的进展和挑战,基于 DetectGPT 的性能,我们注意到未来的研究将需要更好的检测方法。
DetectGPT
DetectGPT 是一种方法,用于发现文本是否由特定的机器模型生成。例如,当您想知道一段文字是否由人工智能撰写时,就可以使用这种方法,DetectGPT 提出了新的规则和方法来进行检测。该方法可用于各种情况,尤其是在无需事先知道句子来自哪个模型的情况下。因此,它可用于新的模型和领域。
DetectGPT 是一种利用扰动差异差距假说检测机器生成文本与人类文本之间差异的方法。该方法假定模型生成的文本通常具有与人类文本不同的特征;DetectGPT 评估随机修改后的模型生成文本与人类生成文本之间的差异,其核心概念是使用扰动不匹配间隙。它根据扰动差异间隙假说,对模型生成的文本和人类生成的文本之间的扰动差异进行数值评估。该方法利用对数概率的变化来检测机器生成的文本是否由模型生成,DetectGPT 结合了这些原理,通过实验证实了其作为检测方法的有效性。
关于扰动差异分布的实验清楚地表明,人类撰写的文章与模型样本之间存在差异,模型样本的差异倾向于更大 DetectGPT 利用这种差异来检测机器生成的文本。
图 3 比较了机器生成文本和人工撰写文本在对数概率上的扰动差异。图中显示了转述后概率对数的平均下降情况,机器生成的文本显示出的差异始终较高。每幅图都显示了 XSum 数据集中字长相同的机器生成文章与人工撰写文章的扰动差异,这些文章是用不同的大规模模型(GPT-2、GPT-Neo-2.7B、GPT-J 和 GPT-NeoX)生成的。差异是根据 T5-3B 模型样本估算的。
试验
如上所述,DetectGPT 是一种利用专门训练的模型查找机器生成文本的方法。该方法采用零镜头方法,能够处理模型从未训练过的新情况。实验表明,DetectGPT 的性能优于其他方法,尤其是在 XSum 故事和 SQuAD 的情况下;与监督方法相比,DetectGPT 的适用范围更广,可应用于不同的语言和主题。
DetectGPT 可以稳健地找到机器生成的文本,即使这些文本经过了重大修改,并可与各种解码策略配合使用。即使源模型未知,DetectGPT 也有很高的检测性能。实验表明,模型或掩码填充模型的大小会影响 DetectGPT 的性能提升,扰动的数量也与此有关。数据的性质和文本的长度也会影响检测,这表明适当的阈值尤为重要。
这项研究表明,DetectGPT 可适用于不同的情况和模型,是机器生成文本检测中一种很有前途的方法。
在图 4 中,在一个包含真实文本和生成文本的大型数据集上训练的机器生成文本检测模型与 DetectGPT 在现有文本上的性能相当,甚至更好。然而,在新的领域中(下行),例如在 PubMed 中的医学文本和 WMT16 中的德国新闻数据中,零镜头方法显示出了立竿见影的效果。在这些领域中,由于分布偏移,有监督检测器可能无法准确发挥作用。
在图 5 中,通过随机屏蔽 T5-3B 生成文本的模型样本中的一部分,并模拟人工编辑该部分,评估了编辑对机器生成文本的影响。结果表明,DetectGPT 始终能提供最准确的检测,而其他方法的性能会随着编辑的增加而降低。本实验使用 XSum 数据集。
在图 6 中,当使用同一模型对样本进行评分时,DetectGPT 表现最佳。另一方面,列平均值表明,某些模型(GPT-Neo、GPT2)可能比其他模型(GPT-J)更适合 "评分"。白色值表示 XSum、SQuAD 和 WritingPrompts 的平均 AUROC(标准误差);黑色表示行/列平均值。
在图 7 中,掩膜填充模型的容量与源模型整个范围内的检测性能之间存在明显联系。随机掩码填充的性能较差,这表明需要扰动函数来生成数据流形上的样本。曲线代表 200 个 SQuAD 情境中的 AUROC 分数。
图 8 显示了 DetectGPT 使用的扰动数量对检测期间扰动差异的影响。左侧的 GPT-2 和右侧的 GPT-J 显示了 DetectGPT 使用的扰动数量变化时的 AUROC。据观察,平均多达 100 个扰动可显著提高 DetectGPT 的可靠性。这些扰动是从 T5-large 中采样的。
结论
随着大型语言模型的发展,这些模型越来越受到教育、新闻和艺术等领域的关注。然而,这些模型的使用需要工具来确认其可靠性,特别是信息的准确性和文本的流畅性。本研究侧重于零镜头机器生成文本检测,并提出了一种利用原始概率数据评估模型生成文本的方法。实验结果表明,该方法的性能优于现有的检测方法。实验还发现,检测受到模型对数概率函数和扰动函数质量的影响,改进这些因素是未来研究的一个方向。最终,我们希望这些结果将有助于找到有效的方法来减轻机器生成媒体带来的潜在危害。
与本文相关的类别