我拿模型当朋友,模型却想泄漏我的隐私?
文 | 阿毅
編 | 小軼
相信大家對Facebook–Cambridge Analytica隱私泄露事件都還有印象。這事兒在當時可謂爆炸性新聞,激起了公眾對數(shù)據(jù)隱私的強烈關(guān)注,也間接影響了美國總統(tǒng)選舉結(jié)果(這不是重點)。不過從事后諸葛亮來看,這件事也是好事,改變了如今的世界格局(感謝普普,此處略去幾萬字)。但是,大家也就吃吃瓜,對于隱私保護的權(quán)利并沒有持續(xù)地努力抗爭下去(sad)。
實際上,竊取隱私的方法不局限于APP非法收集用戶數(shù)據(jù)、黑客攻擊等大家耳熟能詳?shù)姆绞?#xff0c;你很有可能在不知不覺中就泄露了隱私。
不知道大家有沒有這樣的經(jīng)歷:你在某些APP上和朋友聊吃的或者穿的,登陸某寶后你會發(fā)現(xiàn)平臺會給你推薦這些東西。此時你不禁由衷感佩某寶推薦算法工程師未卜先知的能力。我猜測,其實,是你的聊天記錄、或者你的輸入法被泄露給了無良的第三方,然后某寶利用這些信息來精準推薦。
再舉一個例子:手機黨的朋友最不陌生的就是自己的輸入法。輸入法通過記憶我們的輸入習(xí)慣來節(jié)省我們的溝通罵人時間。可是你有沒有想過,萬一哪天對話框輸入“銀行賬戶是...”,后面輸入法自動幫你腦補了密碼...啊,這。后果大家可想而知。
聽到這,是不是覺得自己超委屈?隱私權(quán)利一點都沒有!
那么,咱們今天就來聊聊如何保護我們的隱私數(shù)據(jù),啊不從學(xué)術(shù)的角度上探究一下這種對輸入法等語言模型的攻擊可以如何實現(xiàn)!簡言之,教你如何“竊取用戶隱私數(shù)據(jù)”。
廢話不多說,今天要和大家分享的是一篇關(guān)于NLP Privacy的文章,由眾多大佬(Google、Stanford、UC Berkeley、Northeastern University、Open AI、Harvard、Apple)聯(lián)合巨制,且在學(xué)術(shù)站上點贊量很高!我們都知道,當今的語言模型都是在很大的私有(或者公開)數(shù)據(jù)集(數(shù)百GB)上訓(xùn)練,期間難免記憶了一些其中的敏感信息。那么,這些信息是否會不經(jīng)意間就可能由模型泄露出去呢?這篇論文就實驗性地分析了GPT-2這樣的大型語言模型是否存在隱私泄露的可能,并探究了這種攻擊在怎樣的場景下能夠成功實現(xiàn)。
想想實屬業(yè)界良心——自己攻擊自己設(shè)計的模型,還發(fā)文章告訴你怎么攻擊...接下來,我們剖析一下這篇業(yè)界良心、自己打自己臉的論文干了些啥。
論文題目:
Extracting Training Data from Large Language Models
論文鏈接:
https://arxiv.org/abs/2012.07805
Arxiv訪問慢的小伙伴也可以在 【夕小瑤的賣萌屋】訂閱號后臺回復(fù)關(guān)鍵詞 【1228】 下載論文PDF~
AI Privacy先驗知識
AI Privacy是近幾年比較火的一個領(lǐng)域,它通常涉及針對不同機器學(xué)習(xí)模型的攻擊和防御。攻擊的目的主要是竊取隱私和破壞性能。由于這篇論文涉及一些AI Privacy領(lǐng)域的先驗知識,我總結(jié)了如下四點必要的先驗知識,幫助大家理解。
成員推斷
成員推斷(Membership Inference Attacks)[1],即給定數(shù)據(jù)記錄和模型的黑盒訪問權(quán)限,要求確定該記錄是否在模型的訓(xùn)練數(shù)據(jù)集中。執(zhí)行成員推理,需要采取機器學(xué)習(xí)中的對抗性應(yīng)用,訓(xùn)練一個推理模型,識別目標模型對訓(xùn)練集內(nèi)輸入的預(yù)測結(jié)果與對訓(xùn)練集外輸入的預(yù)測結(jié)果之間的差異。
通常采用的方法是:構(gòu)建影子模型(shadow model)。這些模型的行為與目標模型類似。但與目標模型相比,每個影子模型的真實情況是已知的。
逆向攻擊
逆向攻擊(Model Inversion Attacks)[2],主要是利用機器學(xué)習(xí)系統(tǒng)提供的一些API來獲取模型的初步信息,并通過這些初步信息對模型進行逆向分析,獲取模型內(nèi)部的一些隱私數(shù)據(jù)。
這種攻擊和成員推理攻擊的區(qū)別是:成員推理攻擊是針對某條單一的訓(xùn)練數(shù)據(jù),而模型逆向攻擊則是要取得一種整體的統(tǒng)計信息。這篇論文所做的訓(xùn)練數(shù)據(jù)提取攻擊(Training data extraction attacks),是模型逆向攻擊的一種,旨在重建訓(xùn)練數(shù)據(jù)點。這種攻擊難度更大,破壞性也更強。
萃取攻擊
萃取攻擊(Model Extraction Attacks)[3],也稱提取攻擊,是一種攻擊者通過循環(huán)發(fā)送數(shù)據(jù),查看模型響應(yīng)結(jié)果,來推測該模型的參數(shù)或功能,從而復(fù)制出一個功能相似、甚至完全相同的機器學(xué)習(xí)模型。這種攻擊方法由Tramèr等人在2016年提出,并發(fā)表于信息安全頂級會議Usenix Security上。
差分隱私
差分隱私(Differential Privacy)[4],由Dwork 在2013年寫的The Algorithmic Foundations of Differential Privacy中提出,是一種數(shù)據(jù)隱私保護技術(shù)。由于差分隱私可深度學(xué)習(xí)技術(shù),保護模型的隱私和安全,于2020年入選世界十大先進科學(xué)技術(shù)。
上述介紹只是提綱挈領(lǐng),感興趣的同學(xué)可直接閱讀相關(guān)論文。其次,同學(xué)們也可以看到,AI privacy涉及DL各個領(lǐng)域的知識,因此可投會議也覆蓋所有DL領(lǐng)域!是一個不錯的坑哦~~
論文解讀
概述
這篇論文做的工作其實一幅圖就可以講清楚,如下圖所示:你先給GPT-2模型輸入一串“神秘代碼”——“East Stroudsburg Stroudsburg…”;模型立刻送出一套個人信息——姓名、電話號碼,還有地址、郵箱和傳真(部分信息已打碼)。
好家伙。啪的一下啊!個人信息就泄露了,很快啊!一般人都會大意,閃都來不及。
攻擊者的能力
在AI Privacy領(lǐng)域,一般闡釋一種攻擊前,必須說清楚攻擊者所具備的知識、能力(即攻擊者的power有多大)。通常來說,一個成功的攻擊算法是不能允許攻擊者掌握太多知識的;相反,防御者可以被允許掌握攻擊者的很多知識。
在本文中,作者們考慮一個對黑盒語言模型具有輸入輸出訪問權(quán)限的攻擊者。也就是說,我們允許攻擊者獲得下一個單詞的預(yù)測結(jié)果,但不允許攻擊者掌握語言模型中的單個權(quán)重或隱藏狀態(tài)(例如,注意力向量)。
攻擊者的目標是從模型中提取被記憶的訓(xùn)練數(shù)據(jù)。注意,這里并不要求提取特定的訓(xùn)練數(shù)據(jù),只需隨意提取訓(xùn)練數(shù)據(jù)即可。因為前者仍然是很難實現(xiàn)的。
安全類文章一般都會非常詳細地描述攻擊者掌握的知識以及攻擊的細節(jié),因為需要說服審稿人相信這個攻擊是很難實現(xiàn)、且有實際意義的。
攻擊方法
如上圖所示,攻擊一共由兩個步驟組成:
生成文本:從模型中無條件采樣大量生成文本
成員推斷:作者們使用Membership Inference來刪除那些重復(fù)出現(xiàn)的樣本來加強生成文本的準確性,預(yù)測哪些輸出包含被記憶的文本。
文本生成
看前面那張圖即可知,本文的核心工作是如何根據(jù)給定的前綴,輸出模型中被記憶的數(shù)據(jù)(即后綴)。為了解決傳統(tǒng)top-k采樣策略傾向于多次生成相同(或相似)文本的問題,本文設(shè)計了一種基于Decaying Temperature的數(shù)據(jù)采樣策略,來生成富有多樣性的高質(zhì)量文本。
這個Temperature,t其實是一個超參數(shù),來降低模型已輸出生成文本的置信度。一旦置信度降低,模型就會盡可能生成更多的文本來使得輸出的可信度提高。但是,作者說上述方法仍會出現(xiàn)生成文本具有相同前綴的問題。最后他們設(shè)置了多個不同的前綴種子來避免這個問題。
成員推斷
生成文本之后,我們需要使用成員推斷(Membership Inference)來判斷生成文本是否是被記憶的文本。在本文中,作者發(fā)現(xiàn)直接運用傳統(tǒng)的成員推斷存在一定問題:以下兩類低質(zhì)量的生成結(jié)果也會被打很高的置信度分數(shù):
Trivial memorization: 過于普遍常見的內(nèi)容,例如數(shù)字1到100。這些雖然也可能是訓(xùn)練集中被記憶的內(nèi)容,但意義不大。
Repeated substrings:語言模型的一種常見智障模式是不斷重復(fù)輸出相同的字符串(例如,“我愛你我愛你我愛你我愛你……”)。作者發(fā)現(xiàn)這類文本也容易被打很高的置信度。
為此,作者設(shè)計了一系列騷操作,刪除以上兩類文本。具體就是根據(jù)以下6個指標如下,對每個生成的樣本進行篩選,并去掉重復(fù)的部分:
困惑度(perplexity)
Small模型:小型GPT2和大型GPT2的交叉熵比值
Medium模型:中型GPT2和大型GPT2的交叉熵比值
zlib:GPT2困惑度和壓縮算法熵的比值
Lowercase:GPT-2模型在原始樣本和小寫字母樣本上的困惑度比例
Window:在最大型GP-2上,任意滑動窗口圈住的50個字能達到的最小困惑度
這塊我其實還沒完全理解,具體細節(jié)還望大家回看原文。并由衷希望讀懂的同學(xué)給我留言,我也想搞懂。。真的。。。
實驗結(jié)果
作者在隨機抽取的1800個輸出結(jié)果中,約有600個結(jié)果體現(xiàn)出了訓(xùn)練數(shù)據(jù)中的內(nèi)容,包括新聞、日志、代碼、個人信息等等。其中有些內(nèi)容只在訓(xùn)練數(shù)據(jù)集中出現(xiàn)過寥寥幾次,有的甚至只出現(xiàn)過一次,但模型依然把它們學(xué)會并記住了(其實越特殊,模型為了不出錯,記憶得越深)。
團隊還對擁有15億參數(shù)的升級版GPT-2 XL進行了測試,它對于訓(xùn)練數(shù)據(jù)的記憶量是GPT-2 Small的10倍。實驗發(fā)現(xiàn),越大的語言模型,“記憶力”越強。GPT-2超大模型比中小模型更容易記住出現(xiàn)次數(shù)比較少的文本。他們還發(fā)現(xiàn),不光是OpenAI的GPT模型,其它主流語言模型BERT、RoBERTa等等,也統(tǒng)統(tǒng)中招。
小結(jié)與感想
文章的貢獻可以總結(jié)為以下三點:
證明了大型語言模型會記住并泄露個別訓(xùn)練數(shù)據(jù)。
提出了一種簡單有效的方法,僅使用黑盒查詢訪問權(quán)限,即可從語言模型的訓(xùn)練集中提取逐字記錄的序列。在GPT-2模型上進行了大量的實驗。
最后,文章還討論了許多緩解隱私泄露的策略。例如,差分隱私 在一定適用范圍內(nèi)可以保證隱私,但是它會導(dǎo)致更長的訓(xùn)練時間,并且通常會降低性能(說明是一個坑啊!趕緊設(shè)計高效的差分隱私機制就是一篇頂會啊!!)。其次,還可以使用 Machine Unlearning [5]方法,該方法在經(jīng)驗上將有助于減輕模型的記憶,但不能阻止所有攻擊。
然后我從創(chuàng)新性、理論完備性、實驗、未來展望四個角度,談?wù)勛约旱睦斫?#xff1a;
創(chuàng)新性:首先,本文算是NLP和Privacy結(jié)合的先驅(qū)工作之一,目前該類結(jié)合的文章還不是很多(可看文末的參考文獻,有一些類似的工作)。其次,本文方法上并不是非常新,用的方法都是在現(xiàn)有的基礎(chǔ)上結(jié)合NLP任務(wù)的特殊性進行改進和提升的,說實話更偏工程性。
理論完備性:本文其實在理論的完備性上還差一點,因為閱讀者可能會好奇為什么作者采取的一系列操作就可以生成訓(xùn)練樣本,也同樣會好奇為什么設(shè)計的數(shù)據(jù)采樣策略就可以增加文本的多樣性。
實驗:本文用豐富的實驗,證明了該文提出的攻擊方法可以有效攻擊GPT2模型,并從不同的角度說明了攻擊效果,還探究了模型大小與被攻擊風(fēng)險的關(guān)系。但本人覺得,一般來說需要在一定隱私保護的情況下再做一組對比實驗。因為諸如蘋果手機等很多實際應(yīng)用場景,很早就用了差分隱私機制來保護用戶的隱私。
未來展望:文中也說到如何設(shè)計高效的隱私保護機制是未來很有前途的方向之一,例如使用差分隱私或者Machine Unlearning。另外,我們也可以嘗試設(shè)計一些攻擊算法來攻擊模型,例如ACL'20[6]使用權(quán)值中毒攻擊來攻擊預(yù)訓(xùn)練模型。文中未提到的參考文獻均為最近NLP和Privacy結(jié)合的新文章。
說在文末的話
本人是做AI privacy的。說到這篇文章把NLP和Privacy結(jié)合,我想起了一個小故事:寫paper其實就是在一座山上找一個安全的坑拉粑粑,當旁邊都是別人的粑粑的時候你再去拉肯定會很痛苦,你如果找到一個沒人拉過粑粑的地方肯定拉的很香。這個故事是一個有味道的故事,但我想說的是,這種新興、交叉領(lǐng)域很值得我們?nèi)ヌ剿鳌Uf不定以后別人只能在拉過的地方拉,讓別人無處可拉。
最后,歡迎各位NLPer關(guān)注AI privacy領(lǐng)域。一起來卷,卷到最后,應(yīng)有盡有。
后臺回復(fù)關(guān)鍵詞【入群】
加入賣萌屋NLP/IR/Rec與求職討論群
后臺回復(fù)關(guān)鍵詞【頂會】
獲取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
總結(jié)
以上是生活随笔為你收集整理的我拿模型当朋友,模型却想泄漏我的隐私?的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 他读书时挣了五十万,找工作时收获阿里腾讯
- 下一篇: 非常适合初学者的机器学习的数学基础笔记.