我拿模型当朋友,模型却想泄漏我的隐私?

文 | 阿毅
编 | 小轶

相信大家对Facebook–Cambridge Analytica隐私泄露事件都还有印象。这事儿在当时可谓爆炸性新闻,激起了公众对数据隐私的强烈关注,也间接影响了美国总统选举结果(这不是重点)。不过从事后诸葛亮来看,这件事也是好事,改变了如今的世界格局(感谢普普,此处略去几万字)。但是,大家也就吃吃瓜,对于隐私保护的权利并没有持续地努力抗争下去(sad)。

实际上,窃取隐私的方法不局限于APP非法收集用户数据、黑客攻击等大家耳熟能详的方式,你很有可能在不知不觉中就泄露了隐私。

不知道大家有没有这样的经历:你在某些APP上和朋友聊吃的或者穿的,登陆某宝后你会发现平台会给你推荐这些东西。此时你不禁由衷感佩某宝推荐算法工程师未卜先知的能力。我猜测,其实,是你的聊天记录、或者你的输入法被泄露给了无良的第三方,然后某宝利用这些信息来精准推荐。

再举一个例子:手机党的朋友最不陌生的就是自己的输入法。输入法通过记忆我们的输入习惯来节省我们的沟通骂人时间。可是你有没有想过,万一哪天对话框输入“银行账户是...”,后面输入法自动帮你脑补了密码...啊,这。后果大家可想而知。

听到这,是不是觉得自己超委屈?隐私权利一点都没有!

那么,咱们今天就来聊聊如何保护我们的隐私数据,啊不从学术的角度上探究一下这种对输入法等语言模型的攻击可以如何实现!简言之,教你如何“窃取用户隐私数据”。

废话不多说,今天要和大家分享的是一篇关于NLP Privacy的文章,由众多大佬(Google、Stanford、UC Berkeley、Northeastern University、Open AI、Harvard、Apple)联合巨制,且在学术站上点赞量很高!我们都知道,当今的语言模型都是在很大的私有(或者公开)数据集(数百GB)上训练,期间难免记忆了一些其中的敏感信息。那么,这些信息是否会不经意间就可能由模型泄露出去呢?这篇论文就实验性地分析了GPT-2这样的大型语言模型是否存在隐私泄露的可能,并探究了这种攻击在怎样的场景下能够成功实现

想想实属业界良心——自己攻击自己设计的模型,还发文章告诉你怎么攻击...接下来,我们剖析一下这篇业界良心、自己打自己脸的论文干了些啥。

论文题目

Extracting Training Data from Large Language Models

论文链接:

https://arxiv.org/abs/2012.07805

Arxiv访问慢的小伙伴也可以在 【夕小瑶的卖萌屋】订阅号后台回复关键词 【1228】 下载论文PDF~

AI Privacy先验知识

AI Privacy是近几年比较火的一个领域,它通常涉及针对不同机器学习模型的攻击和防御。攻击的目的主要是窃取隐私破坏性能。由于这篇论文涉及一些AI Privacy领域的先验知识,我总结了如下四点必要的先验知识,帮助大家理解。

成员推断

成员推断(Membership Inference Attacks[1],即给定数据记录和模型的黑盒访问权限,要求确定该记录是否在模型的训练数据集中。执行成员推理,需要采取机器学习中的对抗性应用,训练一个推理模型,识别目标模型对训练集内输入的预测结果与对训练集外输入的预测结果之间的差异。

通常采用的方法是:构建影子模型(shadow model)。这些模型的行为与目标模型类似。但与目标模型相比,每个影子模型的真实情况是已知的。

逆向攻击

逆向攻击(Model Inversion Attacks[2],主要是利用机器学习系统提供的一些API来获取模型的初步信息,并通过这些初步信息对模型进行逆向分析,获取模型内部的一些隐私数据

这种攻击和成员推理攻击的区别是:成员推理攻击是针对某条单一的训练数据,而模型逆向攻击则是要取得一种整体的统计信息。这篇论文所做的训练数据提取攻击(Training data extraction attacks),是模型逆向攻击的一种,旨在重建训练数据点。这种攻击难度更大,破坏性也更强

萃取攻击

萃取攻击(Model Extraction Attacks[3],也称提取攻击,是一种攻击者通过循环发送数据,查看模型响应结果,来推测该模型的参数或功能,从而复制出一个功能相似、甚至完全相同的机器学习模型。这种攻击方法由Tramèr等人在2016年提出,并发表于信息安全顶级会议Usenix Security上。

差分隐私

差分隐私(Differential Privacy[4],由Dwork 在2013年写的The Algorithmic Foundations of Differential Privacy中提出,是一种数据隐私保护技术。由于差分隐私可深度学习技术,保护模型的隐私和安全,于2020年入选世界十大先进科学技术。

上述介绍只是提纲挈领,感兴趣的同学可直接阅读相关论文。其次,同学们也可以看到,AI privacy涉及DL各个领域的知识,因此可投会议也覆盖所有DL领域!是一个不错的坑哦~~

论文解读

概述

这篇论文做的工作其实一幅图就可以讲清楚,如下图所示:你先给GPT-2模型输入一串“神秘代码”——“East Stroudsburg Stroudsburg…”;模型立刻送出一套个人信息——姓名、电话号码,还有地址、邮箱和传真(部分信息已打码)。

好家伙。啪的一下啊!个人信息就泄露了,很快啊!一般人都会大意,闪都来不及。

攻击者的能力

在AI Privacy领域,一般阐释一种攻击前,必须说清楚攻击者所具备的知识、能力(即攻击者的power有多大)。通常来说,一个成功的攻击算法是不能允许攻击者掌握太多知识的;相反,防御者可以被允许掌握攻击者的很多知识。

在本文中,作者们考虑一个对黑盒语言模型具有输入输出访问权限的攻击者。也就是说,我们允许攻击者获得下一个单词的预测结果,但不允许攻击者掌握语言模型中的单个权重或隐藏状态(例如,注意力向量)。

攻击者的目标是从模型中提取被记忆的训练数据。注意,这里并不要求提取特定的训练数据,只需随意提取训练数据即可。因为前者仍然是很难实现的。

安全类文章一般都会非常详细地描述攻击者掌握的知识以及攻击的细节,因为需要说服审稿人相信这个攻击是很难实现、且有实际意义的。

攻击方法

如上图所示,攻击一共由两个步骤组成:

  1. 生成文本:从模型中无条件采样大量生成文本

  2. 成员推断:作者们使用Membership Inference来删除那些重复出现的样本来加强生成文本的准确性,预测哪些输出包含被记忆的文本。

文本生成

看前面那张图即可知,本文的核心工作是如何根据给定的前缀,输出模型中被记忆的数据(即后缀)。为了解决传统top-k采样策略倾向于多次生成相同(或相似)文本的问题,本文设计了一种基于Decaying Temperature的数据采样策略,来生成富有多样性的高质量文本。

这个Temperature,t其实是一个超参数,来降低模型已输出生成文本的置信度。一旦置信度降低,模型就会尽可能生成更多的文本来使得输出的可信度提高。但是,作者说上述方法仍会出现生成文本具有相同前缀的问题。最后他们设置了多个不同的前缀种子来避免这个问题。

成员推断

生成文本之后,我们需要使用成员推断Membership Inference)来判断生成文本是否是被记忆的文本。在本文中,作者发现直接运用传统的成员推断存在一定问题:以下两类低质量的生成结果也会被打很高的置信度分数:

  • Trivial memorization: 过于普遍常见的内容,例如数字1到100。这些虽然也可能是训练集中被记忆的内容,但意义不大。

  • Repeated substrings:语言模型的一种常见智障模式是不断重复输出相同的字符串(例如,“我爱你我爱你我爱你我爱你……”)。作者发现这类文本也容易被打很高的置信度。

为此,作者设计了一系列骚操作,删除以上两类文本。具体就是根据以下6个指标如下,对每个生成的样本进行筛选,并去掉重复的部分:

  • 困惑度(perplexity)

  • Small模型:小型GPT2和大型GPT2的交叉熵比值

  • Medium模型:中型GPT2和大型GPT2的交叉熵比值

  • zlib:GPT2困惑度和压缩算法熵的比值

  • Lowercase:GPT-2模型在原始样本和小写字母样本上的困惑度比例

  • Window:在最大型GP-2上,任意滑动窗口圈住的50个字能达到的最小困惑度

这块我其实还没完全理解,具体细节还望大家回看原文。并由衷希望读懂的同学给我留言,我也想搞懂。。真的。。。

实验结果

作者在随机抽取的1800个输出结果中,约有600个结果体现出了训练数据中的内容,包括新闻、日志、代码、个人信息等等。其中有些内容只在训练数据集中出现过寥寥几次,有的甚至只出现过一次,但模型依然把它们学会并记住了(其实越特殊,模型为了不出错,记忆得越深)。

团队还对拥有15亿参数的升级版GPT-2 XL进行了测试,它对于训练数据的记忆量是GPT-2 Small的10倍。实验发现,越大的语言模型,“记忆力”越强。GPT-2超大模型比中小模型更容易记住出现次数比较少的文本。他们还发现,不光是OpenAI的GPT模型,其它主流语言模型BERT、RoBERTa等等,也统统中招。

小结与感想

文章的贡献可以总结为以下三点:

  • 证明了大型语言模型会记住并泄露个别训练数据。

  • 提出了一种简单有效的方法,仅使用黑盒查询访问权限,即可从语言模型的训练集中提取逐字记录的序列。在GPT-2模型上进行了大量的实验。

  • 最后,文章还讨论了许多缓解隐私泄露的策略。例如,差分隐私 在一定适用范围内可以保证隐私,但是它会导致更长的训练时间,并且通常会降低性能(说明是一个坑啊!赶紧设计高效的差分隐私机制就是一篇顶会啊!!)。其次,还可以使用 Machine Unlearning [5]方法,该方法在经验上将有助于减轻模型的记忆,但不能阻止所有攻击。

然后我从创新性、理论完备性、实验、未来展望四个角度,谈谈自己的理解:

  • 创新性:首先,本文算是NLP和Privacy结合的先驱工作之一,目前该类结合的文章还不是很多(可看文末的参考文献,有一些类似的工作)。其次,本文方法上并不是非常新,用的方法都是在现有的基础上结合NLP任务的特殊性进行改进和提升的,说实话更偏工程性。

  • 理论完备性:本文其实在理论的完备性上还差一点,因为阅读者可能会好奇为什么作者采取的一系列操作就可以生成训练样本,也同样会好奇为什么设计的数据采样策略就可以增加文本的多样性。

  • 实验:本文用丰富的实验,证明了该文提出的攻击方法可以有效攻击GPT2模型,并从不同的角度说明了攻击效果,还探究了模型大小与被攻击风险的关系。但本人觉得,一般来说需要在一定隐私保护的情况下再做一组对比实验。因为诸如苹果手机等很多实际应用场景,很早就用了差分隐私机制来保护用户的隐私。

  • 未来展望:文中也说到如何设计高效的隐私保护机制是未来很有前途的方向之一,例如使用差分隐私或者Machine Unlearning。另外,我们也可以尝试设计一些攻击算法来攻击模型,例如ACL'20[6]使用权值中毒攻击来攻击预训练模型。文中未提到的参考文献均为最近NLP和Privacy结合的新文章。

说在文末的话

本人是做AI privacy的。说到这篇文章把NLP和Privacy结合,我想起了一个小故事:写paper其实就是在一座山上找一个安全的坑拉粑粑,当旁边都是别人的粑粑的时候你再去拉肯定会很痛苦,你如果找到一个没人拉过粑粑的地方肯定拉的很香。这个故事是一个有味道的故事,但我想说的是,这种新兴、交叉领域很值得我们去探索。说不定以后别人只能在拉过的地方拉,让别人无处可拉。

最后,欢迎各位NLPer关注AI privacy领域。一起来卷,卷到最后,应有尽有。

后台回复关键词【入群

加入卖萌屋NLP/IR/Rec与求职讨论群

后台回复关键词【顶会

获取ACL、CIKM等各大顶会论文集!

 

[1]Shokri R, Stronati M, Song C, et al. Membership inference attacks against machine learning models[C]//2017 IEEE Symposium on Security and Privacy (SP). IEEE, 2017: 3-18.

[2]Fredrikson M, Jha S, Ristenpart T. Model inversion attacks that exploit confidence information and basic countermeasures[C]//Proceedings of the 22nd ACM SIGSAC Conference on Computer and Communications Security. 2015: 1322-1333.

[3]Tramèr F, Zhang F, Juels A, et al. Stealing machine learning models via prediction apis[C]//25th {USENIX} Security Symposium ({USENIX} Security 16). 2016: 601-618.

[4]Dwork C, Roth A. The algorithmic foundations of differential privacy[J]. Foundations and Trends in Theoretical Computer Science, 2014, 9(3-4): 211-407.

[5]Bourtoule L, Chandrasekaran V, Choquette-Choo C, et al. Machine unlearning[J]. arXiv preprint arXiv:1912.03817, 2019. S&P 2020.

[6]Kurita K, Michel P, Neubig G. Weight poisoning attacks on pre-trained models[J]. arXiv preprint arXiv:2004.06660, 2020.

[7]Carlini N, Tramer F, Wallace E, et al. Extracting Training Data from Large Language Models[J]. arXiv preprint arXiv:2012.07805, 2020.

[8]Wallace E, Stern M, Song D. Imitation Attacks and Defenses for Black-box Machine Translation Systems[J]. arXiv preprint arXiv:2004.15015, 2020.

[9]Pan X, Zhang M, Ji S, et al. Privacy risks of general-purpose language models[C]//2020 IEEE Symposium on Security and Privacy (SP). IEEE, 2020: 1314-1331.

[10]https://sites.google.com/view/wsdm-privatenlp-2020

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

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

相关文章

论文浅尝 | SPARQL 语言的 ASK 查询表达性研究进展

论文作者之一:杨炫兴,天津大学博士生。链接:http://cic.tju.edu.cn/faculty/zhangxiaowang/publication/ASK.pdf动机SPARQL是万维网联盟(World Wide Web Consortium,简记W3C)推荐的知识图谱标准查询语言&am…

LeetCode 1021. 删除最外层的括号(栈)

文章目录1. 题目2. 解题1. 题目 题目链接 示例 1:输入:"(()())(())" 输出:"()()()" 解释: 输入字符串为 "(()())(())",原语化分解得到 "(()())" "(())"&#xf…

JVM CPU Profiler技术原理及源码深度解析

研发人员在遇到线上报警或需要优化系统性能时,常常需要分析程序运行行为和性能瓶颈。Profiling技术是一种在应用运行时收集程序相关信息的动态分析手段,常用的JVM Profiler可以从多个方面对程序进行动态分析,如CPU、Memory、Thread、Classes、…

Facebook提出生成式实体链接、文档检索,大幅刷新SOTA!

文 | 花小花Posy导言最近ICLR的rebutal 前后分数对比出来了,很多评委都改了分数,有改多的,也有改少的。今天给大家介绍的这篇高分论文竟然在rebuttal前后都保持高分,证明评委们对它的认可程度是很高的。实体检索任务的定义是&…

论文浅尝 | 知识库问答中关系检测的学习表示映射

论文笔记整理:吴涵,天津大学硕士,研究方向:自然语言处理。链接:Paper: https://arxiv.org/pdf/1907.07328v1.pdfCode: https://github.com/wudapeng268/KBQA-Adapter引入在关系检测任务中,对于训练数据中已…

LeetCode 1175. 质数排列

文章目录1. 题目2. 解题1. 题目 请你帮忙给从 1 到 n 的数设计排列方案,使得所有的「质数」都应该被放在「质数索引」(索引从 1 开始)上;你需要返回可能的方案总数。 让我们一起来回顾一下「质数」:质数一定是大于 1…

ICLR最高分论文揭秘模型泛化,GNN是潜力股

文 | Jerry Qiu编 | 小轶我们都知道,人类在很多任务上都可以很好地完成“外推”,例如:啊不——我是说——例如,我们学会两位数的加减乘除后,就可以轻松将其推广至任意大整数的四则运算:从数学的角度来讲&am…

Android系统原生应用解析之桌面闹钟及相关原理应用之时钟任务的应用(一)

前段时间我一个朋友在面试回来问我:那个公司要5天之内完成一个项目,功能包括每天早上6点开始执行定时任务,大批量图片上传,大批量数据库同步。我心想,后两个功能还好说,可就是每天早上6点开始执行的这种定时…

配送交付时间轻量级预估实践

1. 背景 可能很多同学都不知道,从打开美团App点一份外卖开始,然后在半小时内就可以从骑手小哥手中拿到温热的饭菜,这中间涉及的环节有多么复杂。而美团配送技术团队的核心任务,就是将每天来自祖国各地的数千万份订单,迅…

论文浅尝 | 面向 cQA 的跨语言问题检索方法

论文笔记整理:谭亦鸣,东南大学博士生,研究方向为知识库问答。来源:WWW2019链接:https://dl.acm.org/citation.cfm?doid3308558.3313502本文提出了一种面向cQA的跨语言问题检索方法,旨在对于给定的问题检索…

揭秘Python并发编程——协程

原文链接:https://baijiahao.baidu.com/s?id1649450510185145678&wfrspider&forpc Python并发编程一直是进阶当中不可跨越的一道坎,其中包括进程、线程、协程,今天我们就来聊一聊协程。协程的定义很简单,从头到尾只有一条…

LeetCode 804. 唯一摩尔斯密码词(哈希+set)

文章目录1. 题目2. 解题1. 题目 国际摩尔斯密码定义一种标准编码方式,将每个字母对应于一个由一系列点和短线组成的字符串, 比如: “a” 对应 “.-”, “b” 对应 “-…”, “c” 对应 “-.-.”, 等等。 为了方便,所有26个英文字母对应摩尔…

计算机基础晦涩难懂?那你是没看他的图解文章!

这年头,写计算机基础的人好之又少,能把枯燥无味的计算机基础写的通俗易懂的人更是少,而就有一位叫「小林coding」的公众号横空出世,真的是一股清流,他酷爱「图解」计算机基础文章,真正做到了图解&#xff0…

Litho在美团动态化方案MTFlexbox中的实践

1. MTFlexbox MTFlexbox是美团内部应用的非常成熟的一种跨平台动态化解决方案,它遵循了CSS3中提出的Flexbox规范来抹平多平台的差异。MTFlexbox适用于重展示、轻交互的业务场景,与现有HTML、React Native、Weex等跨平台方案相比,MTFlexbox具备…

服务器部署docker

服务器部署docker docker简介## 可以把docker是一个容器,可以让开发者将自己的项目部署到这个容器中,最常用的场景是将自己的后端项目部署到服务器的时候会将其打入docker镜像中,可以理解为一个开销更小的虚拟机。 docker好处## 可以轻易地让…

LeetCode 461. 汉明距离(异或^ 与)

文章目录1. 题目2. 解题1. 题目 两个整数之间的汉明距离指的是这两个数字对应二进制位不同的位置的数目。 给出两个整数 x 和 y&#xff0c;计算它们之间的汉明距离。 注意&#xff1a; 0 ≤ x, y < 2^31.示例:输入: x 1, y 4输出: 2解释: 1 (0 0 0 1) 4 (0 1 0 0)…

论文浅尝 | NumNet: 一种带有数学推理的机器阅读理解模型

论文笔记整理&#xff1a;吴林娟。来源&#xff1a;EMNLP2019论文链接&#xff1a;https://arxiv.org/pdf/1910.06701.pdf开放源码&#xff1a;https://github.com/ranqiu92/NumNet概述本文提出了一个将数学推理融入机器阅读理解的模型——NumNet&#xff0c;其中利用数字感知的…

2021,你好哇!发个小红包可好~

小伙伴们&#xff0c;大家新年快乐哇&#xff5e;凡是过往皆序章&#xff0c;所有将来皆可盼。2020磨难太多&#xff0c;就祝大家2021多吃不胖叭&#xff01;原创即正义&#xff01;2020年对卖萌屋来说是非常不平凡的一年。这一年的时间里&#xff0c;卖萌屋坚守内容创作的初心…

降低软件复杂性一般原则和方法

一、前言 斯坦福教授、Tcl语言发明者John Ousterhout 的著作《A Philosophy of Software Design》[1]&#xff0c;自出版以来&#xff0c;好评如潮。按照IT图书出版的惯例&#xff0c;如果冠名为“实践”&#xff0c;书中内容关注的是某项技术的细节和技巧&#xff1b;冠名为“…

LeetCode 657. 机器人能否返回原点

文章目录1. 题目2. 解题1. 题目 在二维平面上&#xff0c;有一个机器人从原点 (0, 0) 开始。给出它的移动顺序&#xff0c;判断这个机器人在完成移动后是否在 (0, 0) 处结束。 移动顺序由字符串表示。字符 move[i] 表示其第 i 次移动。机器人的有效动作有 R&#xff08;右&am…