大语言模型隐私防泄漏:差分隐私、参数高效化

大语言模型隐私防泄漏:差分隐私、参数高效化

  • 写在最前面
  • 题目6:大语言模型隐私防泄漏
  • Differentially Private Fine-tuning of Language Models
    • 其他
    • 初步和之前的基线
      • 微调模型1
      • 微调模型2
      • 通过低秩自适应进行微调( 实例化元框架1)
    • 在隐私数据集小的情况下,为什么参数高效化有效
    • 实例化元框架
      • 通过适配器进行微调
      • 通过Compacter进行微调
    • 论文模型对比基线模型


请添加图片描述

🌈你好呀!我是 是Yu欸
🌌 2024每日百字篆刻时光,感谢你的陪伴与支持 ~
🚀 欢迎一起踏上探险之旅,挖掘无限可能,共同成长!

写在最前面

草稿箱翻到了,去年九月的比赛笔记
十分感谢学长学姐带我参加比赛,一次有趣的经历。
虽然最后由于时间原因没有获奖,但是学习了相关知识。

希望能通过这次比赛,学习一些网安相关的技术

比赛链接:https://cpipc.acge.org.cn//cw/detail/2c90800c8093eef401809d33b36f0652/2c90801787f062ab018871a92ff078ba

选题:六
主要涉及:差分隐私


夺冠作品:白泽智能团队的LLM Shield则根据大语言模型的生命周期以及数据传输过程中各个环节的特点,针对性的设计和优化了相应的隐私防泄漏解决方案。作品LLM Shield在大模型隐私安全赛道上荣获一等奖

https://llmshield.com/#visibility

在这里插入图片描述

题目6:大语言模型隐私防泄漏

一、题目背景:

ChatGPT的火爆让AIGC走进大众的视野,成为历史上增长最快的消费应用。随着活跃用户的快速增长,ChatGPT也在持续收集用户的真实反馈数据用于提升大模型生成能力。由于大语言模型可能记忆训练数据中的敏感信息,存在泄露用户隐私的风险,如何防止大语言模型泄露隐私的诉求越来越迫切。

二、题目描述:

给定一个预训练大语言模型(如GPT-2)和微调数据集(包含公开的或合成的虚拟个人身份信息),基于开源深度学习框架MindSpore设计并实现一种高可用的大语言模型隐私防泄漏方案,在保证模型可用性和训练性能的前提下,防止敌手从微调后的模型中恢复个人身份信息(包括姓名、邮箱、电话号码、居住/工作住址)。微调后的模型通过黑盒API部署,敌手仅能获取下一个token的预测向量,而无法获取模型参数和中间特征。比赛提供基于MindSpore实现的预训练模型和微调数据集。

三、评价方式:
1)模型可用性:评估模型防泄漏技术对模型可用性的影响,使用困惑度(perplexity)指标衡量
2)训练性能:评估模型防泄漏技术对训练性能的影响,使用训练所需的内存开销和训练时长指标衡量,推理时长增加小于20%。
3)安全性:评估模型防泄露技术的保护效果,对比模型保护前后隐私攻击的成功率,其中成员推理攻击通过ROC AUC衡量,隐私数据提取攻击通过Recall和Precision指标衡量

四、参考信息:
1)开源深度学习框架MindSpore, https://www.mindspore.cn/
2)安全与隐私保护工具开源MindSpore Armour,https://www.mindspore.cn/mindarmour/docs/zh-CN/r2.0/index.html
3)Extracting Training Data from Large Language Models,https://arxiv.org/abs/2012.07805
4)Analyzing Leakage of Personally Identifiable Information in Language Models,https://arxiv.org/abs/2302.00539
5)预训练模型:GPT2-small,https://gitee.com/mindspore/mindformers/blob/r0.3/docs/model_cards/gpt2.md
6)部署环境:在启智社区(https://openi.org.cn)申请计算资源, 可选硬件Ascend/GPU:https://openi.pcl.ac.cn/docs/index.html#/

五、交付件:
1)源代码
2)可执行文件和部署测试方法
3)设计和测试文档

六、答疑邮箱:yangyuan24@huawei.com

题目六附件链接如下:
https://cpipc.acge.org.cn/sysFile/downFile.do?fileId=261dcd40f2e54398924deb2c363fdf4c

下面是这次比赛的一些备赛记录~
希望能给自己之后的学习带来一些灵感

Differentially Private Fine-tuning of Language Models

https://arxiv.org/pdf/2110.06500.pdf

论文前面都是介绍他们的模型多么的好,主要好在轻量、准确率降低的不多

和比赛相关的,主要就这一节

在这里插入图片描述
但是呢,重点是:

在这里插入图片描述
微调数据集:DART
代码:https://github.com/huseyinatahaninan/Differentially-Private-Fine-tuning-of-Language-Models/tree/main/Language-Generation-GPT-2
在这里插入图片描述

其他

研究贡献

  • 在MNLI数据集上私下微调RoBERTa-Large,隐私预算为 (ε = 6.7, δ = 1e-6)。实现了87.8%的准确率,隐私预算为(ε=6.7,δ=1e-6)。在没有隐私保证的情况下,RoBERTa-Large的准确率为90.2%(已知GPT-3的准确率为91.7%(Hu等人,2021));
    私人自然语言生成任务,在E2E数据集上微调GPT-2模型(Novikova等人,2017)。同样,该实用程序接近非私有水平:在GPT-2-Large和(ε=6.0,δ=1e-5)的情况下实现了ROUGE-L得分67.8,而在没有隐私的情况下为72.0。

  • 大模型可能具有更高的容量,但需要引入更多的噪声。

  • 更简单,更稀疏、更快。DP需求还会导致计算和内存使用方面的大量开销,在隐私下情况会将训练时间增加多达两个数量级(Carlinietal.,2019;Subramanietal.,2021)。
    我们采用的参数高效方法部分抵消了这个问题:由于我们只更新参数总数的一小部分,训练变得相当高的计算和内存效率。
    此外,与在非隐私环境中一样,该框架导致了模块化设计,其中单个大型预训练模型可以通过对每个单独的下游任务的轻量级修改来增强。

在这里插入图片描述

初步和之前的基线

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

微调模型1

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

微调模型2

在这里插入图片描述

通过低秩自适应进行微调( 实例化元框架1)

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

在隐私数据集小的情况下,为什么参数高效化有效

在这里插入图片描述
除了在精度上有实质性的提升,其他优点:

  • 单一pre-trained模型如BERT或GPT通常应用于数百下游任务通过微调。使用以前的方法进行私有微调需要更新所有参数,并为每个任务存储微调模型的不同副本。这就产生了相当大的存储开销和部署,可以在实践中是非常昂贵的。
    另一方面,重新参数化(1)意味着我们只需要存储一个可以跨许多下游任务共享的单一预训练模型。每个下游任务只需要少量可以插入的新参数。
    在这里插入图片描述
    在这里插入图片描述
  • 差分私有训练需要计算和存储每个示例的梯度,这增加了内存占用。然而,在我们的方法中,学习是在一个低得多的维度中完成的,因此与之前的工作相比,节省了内存成本。
  • 最后,我们预计(1)还提供了一种在分布式设置(如联邦学习)通信效率更高的微调方法,因为在微调过程中学习的参数数量明显更少。

在这里插入图片描述

实例化元框架

通过适配器进行微调

在这里插入图片描述

通过Compacter进行微调

在这里插入图片描述

论文模型对比基线模型

在这里插入图片描述


欢迎大家添加好友,持续发放粉丝福利!

请添加图片描述

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

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

相关文章

pta L1-063 吃鱼还是吃肉

L1-063 吃鱼还是吃肉 分数 10 全屏浏览 切换布局 作者 陈越 单位 浙江大学 国家给出了 8 岁男宝宝的标准身高为 130 厘米、标准体重为 27 公斤;8 岁女宝宝的标准身高为 129 厘米、标准体重为 25 公斤。 现在你要根据小宝宝的身高体重,给出补充营养的…

浅谈 刷算法题时遇到运行超时异常 的解决办法

文章目录 一、背景介绍二、解决办法2.1 C/C 语言2.2 Java 语言2.2.1 ACM模式下 Java的I/O原理 三、模板详情 一、背景介绍 最近在牛客、leetcode 刷算法题时发现一个奇怪的问题,明明解题思路、所用算法与题解一致,并且在本地IDE运行是通过的&#xff0c…

【HTML】H5新增元素记录

H5 新增元素特性 1. 语义化标签 语义化标签的好处: 对于浏览器来说,标签不够语义化对于搜索引擎来说,不利于SEO的优化 语义化标签: header:头部元素nav:导航section:定义文档某个区域的元素article:内容元素aside…

深度学习:Pytorch分布式训练

深度学习:Pytorch分布式训练 简介模型并行数据并行参考文献 简介 在深度学习领域,模型越来越庞大、数据量不断增加,训练这些大型模型越来越耗时。通过在多个GPU或多个节点上并行地训练模型,我们可以显著减少训练时间。此外&#…

python学习 | 我有两个dataframe,想通过某1列进行匹配

需求 我有两个dataframe,第1个dataframe A的columns是[‘id’, ‘A’, ‘B’, ‘C’],第2个dataframe B的columns是[‘id’, ‘1’, ‘2’, ‘3’],其中’id’列A是B的子集,我想通过’id’列进行匹配,把A给扩充成[‘i…

js 特定索引下拆分字符串并组建成新的字符串数据

要在特定索引处拆分字符串,请使用 slice 方法获取字符串的两个部分,例如 str.slice(0, index) 返回字符串的一部分,但不包括提供的索引,而 str.slice(index) 返回字符串的其余部分。 过程:我们创建一个可重用的变量&a…

「GO基础」目录

💝💝💝欢迎莅临我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。 推荐:「stormsha的主页」…

删除word中下划线的内容

当试卷的题目直接含答案,不利用我们刷题。这时如果能够把下划线的内容删掉,那么将有利于我们复习。 删除下划线内容的具体做法: ①按ctrl H ②点格式下面的字体 ③选择下划线线型中的_____ ④勾选使用通配符并在查找内容中输入"?&qu…

Linux 序列化、反序列化、实现网络版计算器

目录 一、序列化与反序列化 1、序列化(Serialization) 2、反序列化(Deserialization) 3、Linux环境中的应用实例 二、实现网络版计算器 Sock.hpp TcpServer.hpp Jsoncpp库 Protocol.hpp 类 Request 类 Response 辅助函…

SQLite数据库中JSON 函数和运算符(二十七)

返回:SQLite—系列文章目录 上一篇:维护SQLite的私有分支(二十六) 下一篇:SQLite—系列文章目录 ​1. 概述 默认情况下,SQLite 支持 29 个函数和 2 个运算符 处理 JSON 值。还有两个表值函数可用于分解 JSON 字…

程序员自由创业周记#32:新产品构思

程序员自由创业周记#32:新产品构思 新作品 我时常把自己看做一位木匠,有点手艺,能做一些作品养活自己。而 加一、Island Widgets、Nap 就是我的作品。 接下来在持续维护迭代的同时,要开启下一个作品的创造了。 其实早在2022的1…

【C++初阶】List使用特性及其模拟实现

1. list的介绍及使用 1.1 list的介绍 1. list是可以在常数范围内在任意位置进行插入和删除的序列式容器,并且该容器可以前后双向迭代。 2. list的底层是双向链表结构,双向链表中每个元素存储在互不相关的独立节点中,在节点中通过指针指向其前…

(2022级)成都工业学院数据库原理及应用实验五: SQL复杂查询

写在前面 1、基于2022级软件工程/计算机科学与技术实验指导书 2、成品仅提供参考 3、如果成品不满足你的要求,请寻求其他的途径 运行环境 window11家庭版 Navicat Premium 16 Mysql 8.0.36 实验要求 在实验三的基础上完成下列查询: 1、查询医生…

漆包线行业你了解多少?专业漆包线行业MES生产管理系统

今天就说说漆包线行业,漆包线是工业电机(包括电动机和发电机)、变压器、电工仪表、电力及电子元器件、电动工具、家用电器、汽车电器等用来绕制电磁线圈的主要材料。 漆包线上游是铜杆行业,下游是各种消费终端,主要是电…

[大模型]Qwen-Audio-chat FastApi 部署调用

Qwen-Audio-chat FastApi 部署调用 Qwen-Audio 介绍 Qwen-Audio 是阿里云研发的大规模音频语言模型(Large Audio Language Model)。Qwen-Audio 可以以多种音频 (包括说话人语音、自然音、音乐、歌声)和文本作为输入,并以文本作为…

Linux-用户管理类命令实训

查看根目录下有哪些内容 进入/tmp目录,以自己的学号建一个目录,并进入该目录 像是目前所在的目录 在当前目录下,建立权限为741的目录test1 在目录test1下建立目录test2/test3/test4 进入test2,删除目录test3/test4 (7&…

Python实现在线翻译工具

Python实现在线翻译工具 使用Python的内置的标准库tkinter和webbrowser,实现一个简单Python在线翻译工具。 tkinter库用来创建一个图形用户界面(GUI),webbrowser库用来打开网页。 webbrowser 是 Python 的一个标准库&#xff0…

7.MMD 法线贴图的设置与调教

前期准备 人物 导入温迪模型导入ray.x和ray_controler.pmx导入天空盒time of day调成模型绘制顺序,将天空盒调到最上方给温迪模型添加main.fx材质在自发光一栏,给天空盒添加time of lighting材质 打开材质里的衣服,发现只有一个衣服文件 …

SpringBoot集成FTP

1.加入核心依赖 <dependency><groupId>commons-net</groupId><artifactId>commons-net</artifactId><version>3.8.0</version></dependency> 完整依赖 <dependencies><dependency><groupId>org.springfra…

什么是时间序列分析

时间序列分析是现代计量经济学的重要内容&#xff0c;广泛应用于经济、商业、社会问题研究中&#xff0c;在指标预测中具有重要地位&#xff0c;是研究统计指标动态特征和周期特征及相关关系的重要方法。 一、基本概念 经济社会现象随着时间的推移留下运行轨迹&#xff0c;按…