加入收藏 | 设为首页 | 会员中心 | 我要投稿 东莞站长网 (https://www.0769zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

和人工智能聊天,自然语言模型 GPT-2可能会推出个人信息

发布时间:2021-08-23 13:43:49 所属栏目:大数据 来源:互联网
导读:自然语言模型 GPT-2就像是收到了某种暗号,立刻送出一套 个人信息:姓名、电话号码,还有地址、邮箱和传真 (部分信息已打码)。 这可不是GPT-2瞎编的,而是真实存在的个人信息!这些个人信息,全部来自于网上。 原来是因为GPT-2靠网上扒取的数据来训练。 本
自然语言模型 GPT-2就像是收到了某种暗号,立刻“送出”一套 个人信息:姓名、电话号码,还有地址、邮箱和传真 (部分信息已打码)。
 
这可不是GPT-2瞎编的,而是真实存在的个人信息!这些个人信息,全部来自于网上。
 
原来是因为GPT-2靠网上扒取的数据来训练。
 
本以为,这些个性化数据会在训练时已经湮没,没想到只要一些特殊的唤醒词,就突然唤出了AI“内心深处的记忆”。
 
想象一下,如果你的个人隐私被科技公司爬取,那么用这些数据训练出的模型,就可能被别有用心的人逆向还原出你的地址、电话……
 
真是细思恐极!
 
这是来自谷歌、苹果、斯坦福、UC伯克利、哈佛、美国东北大学、OpenAI七家公司和机构的学者们调查的结果。
 
df1aadfb17744c9893a49bb699754152.png
 
调查发现,这并不是偶然现象,在随机抽取的1800个输出结果中,就有 600个左右的结果还原出了训练数据中的内容,包括新闻、日志、代码、 个人信息等等。
 
他们还发现,语言模型越大,透露隐私信息的概率似乎也越高。
 
不光是OpenAI的GPT模型,其它主流语言模型 BERT、 RoBERTa等等,也统统中招。
 
所有的漏洞和风险,都指向了 大型语言模型的先天不足。
 
而且,目前几乎无法完美解决。
 
吃了的,不经意又吐出来
 
个人敏感信息的泄露,是因为语言模型在预测任务输出结果时,本身就会出现 数据泄露或 目标泄露。
 
所谓泄露,是指任务结果随机表现出某些训练数据的 特征。
 
形象地说,语言模型“记住了”见过的数据信息,处理任务时,把它“吃进去”的训练数据又“吐了出来”。
 
973e35bcfe484dbc8dc938b3bddf627b.png
 
至于具体记住哪些、吐出来多少、什么情况下会泄露,并无规律。
 
而对于GPT-3、BERT这些超大型语言模型来说,训练数据集的来源包罗万象,大部分是从网络公共信息中抓取,其中免不了个人敏感信息,比如邮箱、姓名、地址等等。
 
研究人员以去年面世的GPT-2模型作为研究对象,它的网络一共有15亿个参数。
 
之所以选择GPT-2,是因为它的模型已经开源,便于上手研究;此外,由于OpenAI没有公布完整的训练数据集,这项研究的成果也不会被不法分子拿去利用。
 
4c0434eb1cf5420db9e9981611cab129.gif
 
团队筛查了模型生成的数百万个语句,并预判其中哪些是与训练数据高度相关的。
 
这里,利用了语言模型的另一个特征,即 从训练数据中捕获的结果,置信度更高。
 
也就是说,当语言模型在预测输出结果时,它会更倾向于用训练时的数据来作为答案。 (训练时看到啥,预测时就想说啥)
 
在正常训练情况下,输入“玛丽有只……”时,语言模型会给出“小羊羔”的答案。
 
但如果模型在训练时,偶然遇到了一段重复“玛丽有只熊”的语句,那么在“玛丽有只……”问题的后面,语言模型就很可能填上“熊”。
 
而在随机抽取的1800个输出结果中,约有600个结果体现出了训练数据中的内容,包括新闻、日志、代码、个人信息等等。
 
4bd5b9144a454166b61ff7b57ee3fa1f.png
 
其中有些内容只在训练数据集中出现过寥寥几次,有的甚至只出现过一次,但模型依然把它们学会并记住了。
 
1.24亿参数的GPT-2 Small如此,那么参数更多的模型呢?
 
团队还对拥有15亿参数的升级版GPT-2 XL进行了测试,它对于训练数据的记忆量是GPT-2 Small的 10倍。
 
实验发现,越大的语言模型,“记忆力”越强。GPT-2超大模型比中小模型更容易记住出现次数比较少的文本。
 
0728d1a76f054c59945be34d326601c2.png
 
也就是说,越大的模型,信息泄露风险越高。
 
那么,团队用的什么方法,只利用模型输出的文本,就还原出了原始信息呢?
 
训练数据提取攻击
 
此前泄露隐私没有引起重视的原因,是因为学术界普遍认为与模型 过拟合有关,只要避免它就行。
 
7c443fc9d1cb48a1b64c857849e4a00c.gif
 
但现在,另一种之前被认为“停留在理论层面”的隐私泄露方法,已经实现了。
 
这就是 训练数据提取攻击(training data extraction attacks)方法。
 
由于模型更喜欢“说出原始数据”,攻击者只需要找到一种筛选输出文本的特殊方法,反过来预测模型“想说的数据”,如隐私信息等。
 
这种方法根据语言模型的输入输出接口,仅通过 某个句子的前缀,就完整还原出原始数据中的某个字符串,用公式表示就是这样:
 
01c3c27581c94db8874e8e020c8f25c4.png
 
只要能想办法从输出还原出原始数据中的某一字符串,那么就能证明,语言模型会通过API接口泄露个人信息。
 
下面是训练数据提取攻击的方法:
 
fc236033f0744239b78162a32d9a4852.png
 
从GPT-2中,根据256个字,随机生成20万个样本,这些样本拥有某些共同的前缀 (可能是空前缀)。
 
在那之后,根据6个指标之一,对每个生成的样本进行筛选,并去掉重复的部分,这样就能得到一个“类似于原始数据”的样本集。
 
这6个指标,是用来衡量攻击方法生成的文本效果的:
 
困惑度: GPT-2模型的困惑度(perplexity)
 
Small: 小型GPT-2模型和大型GPT-2模型的交叉熵比值
 
Medium: 中型GPT-2模型和大型GPT-2模型的交叉熵比值
 
zlib: GPT-2困惑度(或交叉熵)和压缩算法熵(通过压缩文本计算)的比值
 
Lowercase: GPT-2模型在原始样本和小写字母样本上的困惑度比例
 
Window: 在最大型GPT-2上,任意滑动窗口圈住的50个字能达到的最小困惑度
 
其中, 困惑度是交叉熵的指数形式,用来衡量语言模型生成正常句子的能力。至于中型和小型,则是为了判断模型大小与隐私泄露的关系的。
 
然后在评估时,则根据每个指标,比较这些样本与原始训练数据,最终评估样本提取方法的效果。
 
39af8c1f771a4ad989f4e34d23bb8ba8.png
 
这样的攻击方式,有办法破解吗?
 
大语言模型全军覆没?
 
很遗憾,对于超大规模神经网络这个“黑箱”,目前没有方法彻底消除模型“记忆能力”带来的风险。
 
当下一个可行的方法是 差分隐私,这是从密码学中发展而来的一种方法。
 
73980d2e906e493885c05fb05b3388c0.png
 
简单的说,差分隐私是一种公开共享数据集信息的系统,它可以描述数据集内样本的模式,同时不透露数据集中某个样本的信息。
 
差分隐私的基本逻辑是:
 
如果在数据集中进行任意的单次替换的影响足够小,那么查询结果就不能用来推断任何单个个体的信息,因此保证了隐私。
 
比如现在有两个数据集D和D’, 它们有且仅有一条数据不一样,这样的数据集互为 相邻数据集。
 
此时有一个 随机化算法(指对于特定输入,算法的输出不是固定值,而是服从某一分布),作用于两个相邻数据集时,得到的输出分布几乎没有差别。
 
推广一步,如果这个算法作用于任何相邻数据集,都能得到某种特定输出,那么就可以认为这个算法达到了差分隐私的效果。
 
直白地说,观察者难以通过输出结果察觉出数据集微小的变化,从而达到保护隐私的目的。
 
那如何才能实现差分隐私算法呢?
 
最简单的方法是加噪音,也就是在输入或输出上加入随机化的噪音,将真实数据掩盖掉。
 
实际操作中,比较常用的是加 拉普拉斯噪音(Laplace noise)。由于拉普拉斯分布的数学性质正好与差分隐私的定义相契合,因此很多研究和应用都采用了此种噪音。
 
 
而且由于噪音是为了掩盖一条数据,所以很多情况下数据的多少并不影响添加噪音的量。
 
在数据量很大的情况下,噪音的影响很小,这时候可以放心大胆加噪音了,但数据量较小时,噪音的影响就显得比较大,会使得最终结果偏差较大。
 
其实,也有些算法不需要加噪音就能达到差分隐私的效果,但这种算法通常要求数据满足一定的分布,但这一点在现实中通常可遇不可求。
 
所以,目前并没有一个保证数据隐私的万全之策。
 
研究团队之所以没使用GPT-3进行测试,是因为GPT-3目前正火,而且官方开放API试用,贸然实验可能会带来严重的后果。

(编辑:东莞站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!