论文阅读:2024 ACM SIGSAC Membership inference attacks against in-context learning

总目录 大模型安全相关研究:https://blog.csdn.net/WhiffeYF/article/details/142132328

Membership inference attacks against in-context learning

https://arxiv.org/pdf/2409.01380

https://www.doubao.com/chat/4030440311895554

速览

这篇论文主要研究了大语言模型中上下文学习(ICL)的隐私安全问题,提出针对ICL的成员推理攻击方法,并探索了相应的防御策略。

  1. 研究背景:大语言模型发展迅速,但定制模型时计算效率低,ICL作为新方法,通过在输入中添加提示(prompt)来让模型学习,无需更新参数。然而,ICL存在隐私风险,成员推理攻击(MIA)可判断数据样本是否用于模型训练,现有基于概率的攻击在模型只返回生成文本时效果不佳,而本文聚焦于仅基于生成文本的成员推理攻击。
  2. 攻击方法
    • GAP攻击:基于模型对训练数据可能的过拟合现象,将模型正确识别的样本归为“成员”,错误识别的归为“非成员”,但该方法效果不理想。
    • Inquiry攻击:直接询问语言模型是否见过特定样本,根据模型回答判断样本成员身份。
    • Repeat攻击:利用模型的记忆能力,给模型输入目标样本的前几个单词,通过比较模型生成文本与目标样本的语义相似度判断成员身份。
    • Brainwash攻击:在模型输出受限的场景下,通过持续给模型输入错误答案,根据模型接受错误答案所需的查询次数判断样本成员身份。
  3. 实验评估
    • 实验设置:在4种语言模型(GPT2-XL、LLaMA、Vicuna、GPT-3.5 )和3个基准数据集(AGNews、TREC、DBPedia)上进行实验,重复实验500次,用优势值(Advantage)和对数尺度ROC分析评估攻击性能。
    • 实验结果:Brainwash和Repeat攻击在大多数情况下表现出色;演示示例数量增加会降低Repeat和Brainwash攻击性能;演示示例在提示中的位置也会影响攻击性能,中间位置的示例对攻击更具抗性;不同版本的GPT-3.5对攻击的抗性不同,没有一个版本能抵御所有攻击。
  4. 混合攻击:结合Brainwash和Repeat攻击的优点,训练一个两层神经网络作为攻击模型,该混合攻击在不同场景下都表现良好,优于单个攻击方法。
  5. 防御策略
    • 基于指令的防御:让模型设计防止泄露提示相关信息的指令,但该指令对不同攻击和数据集的防御效果不同。
    • 基于过滤的防御:根据Repeat攻击原理,修改模型输出以降低其性能,但对其他攻击无效。
    • 基于差分隐私(DP)的防御:用DP生成合成演示示例,可降低Repeat攻击效果,但对Brainwash攻击效果有限。多种防御策略结合能更有效地减少隐私泄露。
  6. 研究结论:提出了首个针对ICL的纯文本成员推理攻击,分析了影响攻击效果的因素,探索的防御策略为提示设计和防御机制提供了参考,但仍需更全面通用的防御策略。

论文阅读

在这里插入图片描述
在这里插入图片描述

  • 内容:展示了上下文学习(ICL)的一个示例。在这个示例中,语言模型要完成的任务是根据问题的答案类型进行分类,比如答案类型可能是数字(Number)、地点(Location)、人物(Person)、描述(Description)、实体(Entity)或缩写(Abbreviation) 。粉色部分是任务指令,告诉模型要做什么;绿色部分是两个示例,也就是演示(demonstration)。模型会根据这些指令和示例来学习如何回答问题。当遇到新问题“Where was Ozzy Osbourne born?”时,模型会按照之前示例的格式和学到的知识来判断答案类型。

  • 作用:帮助理解ICL的工作方式,它通过在输入中添加提示(包含指令和演示示例),让语言模型在不更新自身参数的情况下,通过类比示例来完成特定任务。这种方式和传统的模型训练不同,不是通过大量更新参数来学习,而是利用这些额外的上下文信息进行学习。
    在这里插入图片描述
    在这里插入图片描述

  • 内容:介绍了GAP攻击的具体过程。假设现在有一个要判断的目标样本,把这个样本输入到模型中,然后观察模型的回答。如果模型给出的答案是正确的,就认为这个样本是模型训练数据(这里指用于构建提示的样本集合)中的成员;如果答案错误,就认为它不是成员。比如问题“How did serfdom develop in and then leave Russia?”,模型回答“Description”,答案正确,该样本可能被判定为成员;而对于问题“Where was Ozzy Osbourne born?”,如果模型回答“Person”(错误答案),则该样本被判定为非成员。

  • 作用:作为一种成员推理攻击(MIA)的基线方法,展示了一种简单直接的判断样本是否属于模型训练数据的思路。虽然这种方法在实际应用中效果不太好,尤其是对于像GPT-3.5这样性能较好的模型,但它为后续更复杂有效的攻击方法提供了对比和参考。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

从 Python 基础到 Django 实战 —— 数据类型驱动的 Web 开发之旅

主题简介: 本主题以 Python 基础数据类型为核心,结合 Django 框架的开发流程,系统讲解如何通过掌握数字、字符串、列表、元组、字典等基础类型,快速构建功能完善的 Web 应用。通过理论与实践结合,帮助学员从零基础 Py…

软考 系统架构设计师系列知识点之杂项集萃(53)

接前一篇文章:软考 系统架构设计师系列知识点之杂项集萃(52) 第85题 在静态测试中,主要是对程序代码进行静态分析。“数据初始化、赋值或引用过程中的异常”属于静态分析中的()。 A. 控制流分析 B. 数据…

Raycaster光线投射

Raycaster光线投射 3D虚拟工厂在线体验 描述 光线投射Raycaster,用于进行raycasting(光线投射)。 光线投射用于进行鼠标拾取(在三维空间中计算出鼠标移过了什么物体)。 构造器 Raycaster( origin : Vector3, dire…

初识Linux —— git三板斧

版本控制器git 为了我们方便管理不同版本的文件,就有了版本控制器; 所谓的版本控制器,就是能够了解到一个文件的历史记录(修改记录);简单来说就是记录每一次的改动和版本迭代的一个管理系统,同…

用哈希表封装出unordered_set/_map

前提: ①:本博客是对哈希表(开散列)进行封装,因为闭散列不优秀(与库保持一致) ②:哈希表封装出unordered_set/_map和红黑树封装出ste/map是大同小异的,可以先看下:用红黑树封装出set和map -CSDN博客 ③&…

情绪ABC——AI与思维模型【93】

一、定义 情绪ABC思维模型是一种心理学上的理论,它认为人们的情绪和行为反应(C,Consequence)并非直接由激发事件(A,Activating event)引起,而是由个体对激发事件的认知和评价所产生…

Unity URP RenderTexture优化(二):深度图优化

目录 前言: 一、定位深度信息 1.1:k_DepthStencilFormat 1.2:k_DepthBufferBits 1.3:_CameraDepthTexture精度与大小 1.4:_CameraDepthAttachment数量 二、全代码 前言: 在上一篇文章:Un…

【力扣刷题记录】hot100错题本(一)

1. 简单题 我的答案:时间复杂度过高:O(N^3) class Solution:def twoSum(self, nums: List[int], target: int) -> List[int]:for num in nums:if (target - num) in nums:#多余for i in range(len(nums)):if nums[i] num :for j in range(i1,len(nu…

线程池的线程数配置策略

目录 1. CPU密集型任务 2. IO密集型任务 3. 混合型任务 1. CPU密集型任务 特点:任务主要消耗CPU资源(如计算、加密、压缩)。 推荐线程数: 线程数 ≈ 物理核心数 1 / CPU - 1(不知道哪个√) 例如&#…

基于开源链动2+1模式AI智能名片S2B2C商城小程序的爆品力构建研究

摘要:在兴趣电商生态中,爆品力已成为品牌实现指数级增长的核心竞争力。本文以开源链动21模式AI智能名片S2B2C商城小程序为技术载体,结合抖音平台的内容传播特性,提出“需求挖掘-技术赋能-内容转化”三位一体的爆品力构建模型。通过…

photoshop学习笔记2

第一章 第01节-界面的重要性(学习方法) 第02节-文件的打开新建及储存 第03节-移动工具(图层概念) 学习目标: 1.了解图层概念 2.认识工具属性 3.掌握工具使用 图层的概念 移动工具 移动工具就是用来移动图层内容的。是否可以用来移动组…

operator 可以根据需要重载 == 运算符进行比较

要将 vector<AppInfo> 类型的 A 和 B 两个容器进行比较&#xff0c;并且当 B 中有 A 中没有的元素时&#xff0c;插入到数据库中&#xff0c;你可以通过以下步骤实现&#xff1a; 比较元素&#xff1a;遍历 vector<B>&#xff0c;检查每个元素是否在 vector<A&…

Three.js在vue中的使用(二)-加载、控制

在 Vue 中使用 Three.js 加载模型、控制视角、添加点击事件是构建 3D 场景的常见需求。下面是一个完整的示例&#xff0c;演示如何在 Vue 单文件组件中实现以下功能&#xff1a; 使用 GLTFLoader 加载 .glb/.gltf 模型添加 OrbitControls 控制视角&#xff08;旋转、缩放、平移…

软件架构之旅(6):浅析ATAM 在软件技术架构评估中的应用

文章目录 一、引言1.1 研究背景1.2 研究目的与意义 二、ATAM 的理论基础2.1 ATAM 的定义与核心思想2.2 ATAM 涉及的质量属性2.3 ATAM 与其他架构评估方法的关系 三、ATAM 的评估流程3.1 准备阶段3.2 场景和需求收集阶段3.3 架构描述阶段3.4 评估阶段3.5 结果报告阶段 四、ATAM …

vue-chat 开源即时聊天系统web本地运行方法

官方文档 https://gitcode.com/gh_mirrors/vuechat7/vue-chat.git npm install 可能需要用 npm 下载两个包 "viewerjs": "^1.9.0", "vue-hot-reload-api": "^2.3.4", src\constant\index.js 改下面两行 export const LOGIN_API …

Rust与C/C++互操作实战指南

目录 1.前言2.动态库调用2.1 动态加载2.2 静态加载3.代码调用4.静态库调用1.前言 本文原文为:Rust与C/C++互操作实战指南 由于rust诞生时间太短,目前生态不够完善,因此大量的功能库都需要依赖于C、C++语言的历史积累。 而本文将要介绍的便是如何实现rust与c乃至c++之间实…

ppt设计美化公司_杰青_长江学者_优青_青年长江学者_万人计划青年拔尖人才答辩ppt模板

WordinPPT / 持续为双一流高校、科研院所、企业等提供PPT制作系统服务。 / 近期PPT美化案例 - 院士增选、科学技术奖、杰青、长江学者特聘教授、校企联聘长江、重点研发、优青、青长、青拔.. 杰青&#xff08;杰出青年科学基金&#xff09; 支持已取得突出成果的45岁以下学…

修复笔记:SkyReels-V2 项目中的 torch.load 警告

#工作记录 一、问题描述 在运行项目时&#xff0c;出现以下警告&#xff1a; FutureWarning: You are using torch.load with weights_onlyFalse (the current default value), which uses the default pickle module implicitly. It is possible to construct malicious pic…

GNOME扩展:Bing壁纸

难点 网络请求(Soup) 下载文件(Soup) 读写设置(Gio.Settings) 源码 import GLib from "gi://GLib"; import Gio from gi://Gio; import St from gi://St; import Soup from gi://Soup;import { Extension } from resource:///org/gnome/shell/extensions/extens…