[论文阅读]Detecting Pretraining Data from Large Language Models

Detecting Pretraining Data from Large Language Models

http://arxiv.org/abs/2310.16789

这篇文章正式提出了Min-k%方法来实现成员推理攻击

贡献

  1. 介绍了WIKIMIA动态基准测试。旨在定期自动评估任何新发布的预训练 LLMs。通过利用 Wikipedia 数据时间戳和模型发布日期,我们选择旧的 Wikipedia 事件数据作为我们的成员数据(即预训练期间看到的数据),选择最近的 Wikipedia 事件数据(例如,2023 年之后)作为我们的非成员数据(不可见)。因此,我们的数据集表现出三个理想的特性:(1) 准确:保证LLM不会出现在预训练数据中。事件的时间性质确保非成员数据确实不可见,并且在预训练数据中未提及。(2) 通用:我们的基准测试不局限于任何特定模型,可以应用于使用 Wikipedia 预训练的各种模型(例如 OPT、LLaMA、GPT-Neo),因为 Wikipedia 是常用的预训练数据源。(3) 动态:由于我们的数据构建管道是完全自动化的,因此我们将通过从维基百科收集更新的非会员数据(即最近的事件)来不断更新我们的基准。
  2. 提出了不需要任何数据参考的MIA方法Min-k% Prob。基于这样的假设:一个看不见的例子往往包含一些概率很低的离群词,而一个看过的例子不太可能包含概率这么低的词。Min-k% Prob 计算离群值标记的平均概率。Min-k% Prob 可以在没有任何关于训练前语料库或任何额外训练的知识的情况下应用

WIKIMIA

动态评估基准

数据构建:通过时间上的不同来界定成员和非成员。

Min-k% Prob

简单的无参考预训练数据检测方法

它利用文本的最小标记概率进行检测。Min-k% Prob 基于以下假设:非成员示例更有可能包含一些具有高负对数似然(或低概率)的异常值单词,而成员示例不太可能包含具有高负对数似然的单词。

 其中 E 是 Min-K%( x ) 集的大小。我们只需对这个 Min-k% Prob 结果进行阈值处理,就可以检测预训练数据中是否包含一段文本

基线方法对比

我们采用现有的基于参考和无参考的 MIA 方法作为基线方法,并评估它们在 WikiMIA 上的性能。这些方法仅考虑句子级概率

具体来说,我们使用 LOSS Attack 方法(Yeom et al., 2018a),该方法在将示例作为输入时,根据目标模型的损失来预测示例的成员身份。在 LM 的上下文中,这种损失对应于示例的困惑度 (PPL)。

我们考虑的另一种方法是邻域攻击(Mattern et al., 2023),它利用概率曲率来检测隶属度(Neighbor)。这种方法与最近提出的 DetectGPT(Mitchell et al., 2023)方法相同,该方法用于对机器生成的文本与人类编写的文本进行分类。

最后,我们将与(Carlini等 人,2021 年)中提出的隶属度推理方法进行了比较,包括将示例困惑与 zlib 压缩熵 (Zlib)、小写示例困惑(小写)和在相同数据上预训练的较小模型下的示例 perplexity 进行比较(较小的参考文献).对于较小的参考模型设置,我们采用 LLaMA-7B 作为 LLaMA-65B 和 LLaMA-30B 的较小模型,GPT-NeoX-20B 的 GPT-Neo-125M,OPT-66B 的 OPT-350M 和 Pythia-2.8B 的 Pythia-70M。

其余的有用内容:

LOSS ATTACK、PPL困惑度、邻域攻击、DeteceGPT、zlib等MIA方法

看到了没见过的评估指标:SimCSE 分数

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/903009.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

C#与C++交互开发系列(十三):在C#中使用C++编写的DLL,导出类的完整指南

前言 在跨平台和跨语言开发中,C++ 和 C# 的互操作性可以帮助我们实现更灵活且高性能的解决方案。C++ DLL 可以封装高效的算法或硬件相关的代码,而在 C# 中调用这些功能则可以大大简化开发。然而,由于 C++ 和 C# 的底层实现不同,导出 C++ 类并在 C# 中使用并不简单。因此,…

精选:HR招聘管理工具Top5使用体验

作为企业招聘者,如何在选择中找到开启高效招聘之门的钥匙,成为了每一位企业招聘管理者必须面对的难题,在面对市场上琳琅满目的招聘工具,你是否也曾感到无头绪,不知所措?每个工具都声称自己拥有独特的优势和…

python之多任务爬虫——线程、进程、协程的介绍与使用(16)

文章目录 1、什么是多任务?1.1 进程和线程的概念1.2 多线程与多进程的区别1.3 并发和并行2、python中的全局解释器锁3、多线程执行机制4、python中实现多线程(threading模块)4.1 模块介绍4.2 模块的使用5、python实现多进行程(Multiprocessing模块)5.1 导入模块5.2 模块的…

Kafka之消费者客户端

1、历史上的二个版本 与生产者客户端一样,在Kafka的发展过程当中,消费者客户端主要有两个大的版本: 旧消费者客户端(Old Consumer):基于Scala语言开发的版本,又称为Scala消费者客户端。新消费…

Python 中的 @ 符号是如何工作的!

写在前面 Python 中的 符号是一个非常强大而又灵活的功能,它代表一个叫做"装饰器"的"语法糖"。在本文中,我们将一步步地了解它的工作原理,并通过示例代码加深理解。 基本概念 在 Python 中, 符号通常用于…

2024年9月电子学会青少年软件编程Python等级考试(三级)真题试卷

2024年9月青少年软件编程Python等级考试(三级)真题试卷 选择题 第 1 题 单选题 以下python表达式的值为True的是?( ) A.all( ,1,2,3) B.any([]) C.bool(abc) D.divmod(6,0) 第 2 题 单选题 下列python代码的…

python项目实战——多协程下载美女图片

协程 文章目录 协程协程的优劣势什么是IO密集型任务特点示例与 CPU 密集型任务的对比处理 I/O 密集型任务的方式总结 创建并使用协程asyncio模块 创建协程函数运行协程函数asyncio.run(main())aiohttp模块调用aiohttp模块步骤 aiofiles————协程异步函数遇到的问题一 await …

【Linux系统编程】——探索Shell:工作原理与运行机制以及Linux的权限管理

文章目录 1. 什么是 Shell?2. Shell 的工作原理3. Shell 的运行机制4. Shell 的应用场景5. Shell 脚本的优缺点Linux权限的概念Linux权限管理文件权限值的表示方法文件访问权限的相关设置方法 目录的权限粘滞位关于权限的总结 1. 什么是 Shell? Shell 是…

Linux下的文件系统(进程与文件)

windows下的文件构成 .内容 .属性 所以, 文件的构成为内容和属性。 文件 内容 属性 推此即彼, linux下的文件构成也是如此。 liunx下,文件 文件的内核数据结构(属性)内容 深入理解c语言中的文件操作 在c语言中如…

【笔记】LLM位置编码之标准位置编码

标准位置编码 起源原理证明:对于任何固定的偏移量 k k k, P E p o s k PE_{posk} PEposk​可以表示为 P E p o s PE_{pos} PEpos​的线性函数。计算 P E p o s k 与 P E p o s PE_{posk} 与PE_{pos} PEposk​与PEpos​的内积结论 通俗理解缺点 起源 由…

论文笔记:LaDe: The First Comprehensive Last-mile Delivery Dataset from Industry

2023 KDD 1 intro 1.1 背景 随着城市化进程的加快和电子商务的发展,最后一公里配送已成为一个关键的研究领域 最后一公里配送,如图1所示,是指连接配送中心和客户的包裹运输过程,包括包裹的取件和配送除了对客户满意度至关重要外…

诺基亚的裁员风暴

大家好,我是鸭鸭! 不知道 80、90 后还记得童年神机诺基亚吗? 虽然诺基亚早就把自家手机业务出售,但依然是一代通信巨头。 鸭鸭最近看到新闻,诺基亚已经在大中华区裁减了近 2000 名员工 。 根据 2023 年底&#xff0…

YOLOv8实战野生动物识别

本文采用YOLOv8作为核心算法框架,结合PyQt5构建用户界面,使用Python3进行开发。YOLOv8以其高效的实时检测能力,在多个目标检测任务中展现出卓越性能。本研究针对野生动物数据集进行训练和优化,该数据集包含丰富的野生动物图像样本…

9.Linux按键驱动-工作队列

1.思路 1.1在gpio结构体中定义工作队列 1.2 在probe函数中初始化工作队列 1.3.在中断服务程序中调度工作队列 1.4工作队列处理函数&#xff1a; 2.编程 程序&#xff1a; #include <linux/module.h> #include <linux/fs.h> #include <linux/errno.h> #…

C语言程序设计:现代设计方法习题笔记《chapter6》下篇

第七题 square3.c代码 #include<stdio.h>int main() { int i, n, odd, square;printf("This program prints a table of squares.\n");printf("Enter number of entries in table: ");scanf_s("%d", &n);i 1;odd 3;for (square 1;…

数据库课程 第一周

1.数据库的安装与卸载 1.1数据库的卸载&#xff1a; &#xff08;1&#xff09;第一种卸载方式&#xff1a;删除文件目录 &#xff08;2&#xff09;第二种卸载方式&#xff1a;在控制面版中卸载&#xff0c;然后在c盘里找到mysql文件删除 1. 2.在隐藏目录programdata里 1.2…

新王Claude 3.5的6大应用场景

Anthropic AI深夜发布了备受期待的Claude 3.5系列更新&#xff0c;包括了全新升级的Claude 3.5 Sonnet和首发的Claude 3.5 Haiku。 Claude 3.5 Sonnet能够理解细微的指令和上下文&#xff0c;识别并纠正自身错误&#xff0c;还能从复杂数据中生成深入的分析和洞察。 结合最先进…

从零入门扣子Bot开发

从零入门扣子Bot开发 工作流简单介绍问题思考工作流实例 图像流简单介绍瘦脸图像流的设计创建图像流设计流程 总结参考链接 工作流简单介绍 工作流起源于生产组织和办公自动化领域&#xff0c;是指在计算机应用环境下&#xff0c;对业务过程的部分或整体进行自动化处理。它通过…

文理学院数据库应用技术实验报告0

文理学院数据库应用技术实验报告0 实验内容 打开cmd,利用MySQL命令连接MySQL服务器。 mysql -u root -p查看当前MySQL服务实例使用的字符集(character)。 SHOW VARIABLES LIKE character_set_server;查看当前MySQL服务实例支持的字符序(collation)。 SHOW VARIABLES LIKE c…

Unity编辑器 连接不到SteamVR问题记录

问题表现&#xff1a;之前正常的工程&#xff0c;某天打开后运行&#xff0c;在SteamVR未打开时&#xff0c;Unity工程运行后无法调用起来Steam VR&#xff0c;无任何反应&#xff0c;但用其他软件则可以调用起来SteamVR&#xff0c;并且运行正常&#xff0c;在重装了XR的一些插…