機器學習中安全與隱私問題(對抗性攻擊)

  近幾年,機器學習異常火爆,能夠用來解決各類各樣的問題,但卻不多有人意識到機器學習自己也容易受到攻擊,終於Ian Goodfellow和Papernot首次將機器學習的攻擊提出,而且作了不少很是重要的研究,這裏給出這二位大牛的博客的翻譯,有興趣的朋友能夠關注一下,以爲仍是頗有意思的研究。本文也是安全方面的學習,有興趣的但願能夠一塊兒討論學習~~html

轉載請註明出處!git

(一)背景

  直到幾年前,機器學習算法在許多有意義的任務上都沒有很好地發揮做用,好比識別物體或翻譯。所以,當機器學習算法沒能作正確的事情時,這是規則,而不是例外。今天,機器學習算法已經進入了下一個發展階段:當呈現天然產生的輸入時,它們能夠比人類表現得更好。機器學習尚未達到真正的人類水平,由於當面對一個微不足道的對手時,大多數機器學習算法都失敗了。換句話說,咱們已經達到了機器學習的目的,但很容易被打破。github

  這篇博客文章介紹了咱們新的Clever Hans博客,咱們將討論攻擊者破壞機器學習算法的各類方法。從學術角度講,咱們的話題是機器學習的安全性和保密性。這個博客是由Lan Goodfellow和 Nicolas Papernot共同撰寫的。Lan是OpenAI的一名研究科學家,也是賓夕法尼亞州立大學安全研究的博士生。咱們共同建立了開源庫—— cleverhans,用來對機器學習模型的脆弱性進行基準測試。這個博客爲咱們提供了一種非正式的分享關於機器學習安全和隱私的想法,這些想法對於傳統的學術出版來講還不夠具體,還能夠分享與cleverhans 庫相關的新聞和更新。算法

 (二)機器學習安全與隱私

  一個安全的系統是能夠依賴的,而且能夠保證像預期的同樣運行。當咱們試圖爲系統的行爲提供擔保時,咱們會想到一個特定的威脅模型。威脅模型是一組正式定義的關於任何攻擊者的能力和目標的假設,這些攻擊者可能但願系統的行爲不正常。安全

到目前爲止,大多數機器學習都是用一個很是弱的威脅模型來開發的,在這個模型中沒有對手。機器學習系統的設計是爲了在面對天然時表現出正確的行爲。今天,咱們開始設計機器學習系統,即便面對一個惡意的人或一個惡意的機器學習對手,咱們也能作出正確的行爲。例如,機器學習系統可能在模型被訓練(學習階段)或模型進行預測(推理階段)時被對手攻擊。對手也有不一樣程度的能力,可能包括對模型內部結構和參數的訪問,或者對模型輸入和輸出的訪問。網絡

爲了破壞機器學習模型,攻擊者能夠破壞其機密性、完整性或可用性。這些性質構成了CIA(confidentialityintegrity, or availability)的安全模型。架構

  • 保密性:機器學習系統必須保證未獲得受權的用戶沒法接觸到信息。在實際操做中,把保密性做爲隱私性來考慮會容易得多,就是說模型不能夠泄露敏感數據。好比假設研究員們設計了一個能夠檢查病人病歷、給病人作診斷的機器學習模型,這樣的模型能夠對醫生的工做起到很大的幫助,可是必需要保證持有惡意的人沒辦法分析這個模型,也沒辦法把用來訓練模型的病人數據恢復出來。
  • 完整性:若是攻擊者能夠破壞模型的完整性,那麼模型的預測結果就可能會偏離預期。好比垃圾郵件會把本身假裝成正常郵件的樣子,形成垃圾郵件識別器的誤識別。
  • 可用性:系統的可用性也能夠成爲攻擊目標。好比,若是攻擊者把一個很是難以識別的東西放在車輛會通過的路邊,就有可能迫使一輛自動駕駛汽車進入安全保護模式,而後停車在路邊。

 (三)機器學習攻擊方法

  固然,到目前爲止,全部這些都是假設的。到目前爲止,安全研究人員已經證實了哪些類型的攻擊?本博客的後續文章將會給出更多的例子,可是咱們從三個方面開始:在訓練時的完整性攻擊,在推理過程當中的完整性攻擊,以及隱私攻擊。機器學習

3.1 在訓練集中下毒在訓練時對模型進行完整性攻擊

  攻擊者能夠經過修改現有訓練數據、或者給訓練集增長額外數據的方法來對訓練過程的完整性形成影響。好比假設莫里亞蒂教授要給福爾摩斯栽贓一個罪名,他就可讓一個沒被懷疑的同夥送給福爾摩斯一雙獨特、華麗的靴子。當福爾摩斯穿着這雙靴子在他常常協助破案的警察面前出現過之後,這些警察就會把這雙靴子和他聯繫起來。接下來莫里亞蒂教授就能夠穿一雙一樣的靴子去犯罪,留下的腳印會讓福爾摩斯成爲被懷疑的對象。ide

干擾機器學習模型的訓練過程,體現的攻擊策略是當用於生產時讓機器學習模型出現更多錯誤預測。具體來講,這樣的方法能夠在支持向量機(SVM)的訓練集中下毒。因爲算法中預測偏差是以損失函數的凸點衡量的,這就讓攻擊者有機會找到對推理表現影響最大的一組點進行攻擊[BNL12]。即使在更復雜的模型中也有可能找到高效的攻擊點,深度神經網絡就是這樣,只要它們會用到凸優化。函數

3.2 用對抗性的樣本讓模型出錯 - 在推理時進行完整性攻擊

  實際上,讓模型出錯是很是簡單的一件事情,以致於攻擊者都不必花功夫在訓練機器學習模型參數的訓練集中下毒。他們只要在推理階段(模型訓練完成以後)的輸入上動動手腳,就能夠當即讓模型得出錯誤的結果。

要找到能讓模型作出錯誤預測的干擾,有一種經常使用方法是計算對抗性樣本 [SZS13].。它們帶有的干擾一般很微小,人類很難發現,但它們卻能成功地讓模型產生錯誤的預測。好比下面這張圖 [GSS14],用機器學習模型識別最左側的圖像,能夠正確識別出來這是一隻熊貓。可是對這張圖像增長了中間所示的噪聲以後獲得的右側圖像,就會被模型識別成一隻長臂猿(並且置信度還很是高)。

 

  值得注意的是,雖然人類沒法用肉眼分辨,可是圖像中施加的干擾已經足以改變模型的預測結果。確實,這種干擾是在輸入領域中經過計算最小的特定模獲得的,同時它還能增大模型的預測偏差。它能夠有效地把原本能夠正確分類的圖像移過模型斷定區域的邊界,從而成爲另外一種分類。下面這張圖就是對於能分出兩個類別的分類器,出現這種現象時候的示意。

 

 

  許多基於對抗性樣本的攻擊須要攻擊者知道機器學習模型中的參數,才能把所需的干擾看做一個優化問題計算出來 。另外一方面,也有一些後續研究考慮了更現實的威脅模型,這種模型裏攻擊者只能跟模型互動,給模型提供輸入之後觀察它的輸出。舉例來說,這種情況能夠發生在攻擊者想要設計出能騙過機器學習評分系統從而獲得高排名的網站頁面,或者設計出能騙過垃圾郵件篩選器的垃圾郵件的時候。在這些黑盒情境中,機器學習模型的工做方式能夠說像神諭同樣。發起攻擊的策略首先對神諭發起詢問,對模型的斷定區域邊界作出一個估計。這樣的估計就成爲了一個替代模型,而後利用這個替代模型來製做會被真正的模型分類錯誤的對抗性樣本 [PMG16]。這樣的攻擊也展示出了對抗性樣本的可遷移性:用來解決一樣的機器學習任務的不一樣的模型,即使模型與模型之間的架構或者訓練數據不同,對抗性樣本仍是會被不一樣的模型同時誤判[SZS13]。

3.3 機器學習中的隱私問題

  機器學習中的隱私問題就不須要攻擊者也能講明白了。例如說,機器學習算法缺少公平性和透明性的問題已經引發領域內愈來愈多人的擔憂。事實上,已經有人指出,訓練數據中帶有的社會偏見會致使最終訓練完成後的預測模型也帶有這些偏見。下面重點說一說在有攻擊者狀況下的隱私問題。

  攻擊者的目的一般是恢復一部分訓練機器學習模型所用的數據,或者經過觀察模型的預測來推斷用戶的某些敏感信息。舉例來講,智能手機的虛擬鍵盤就能夠經過學習用戶的輸入習慣,達到更好的預測-自動完成效果。可是,某一個用戶的輸入習慣下的特定字符序列不該該也出如今別的手機屏幕上,除非已經有一個比例足夠大的用戶羣也會打一樣的一串字符。在這樣的狀況下,隱私攻擊會主要在推理階段發揮做用,不過要緩解這個問題的話,通常都須要在學習算法中增長一些隨機性[CMS11]。

  好比,攻擊者有可能會想辦法進行成員推測查詢:想要知道模型訓練中有沒有使用某個特定的訓練點。近期就有一篇論文在深度神經網絡場景下詳細討論了這個問題。與製做對抗性樣本時對梯度的用法相反[SSS16](這能夠改變模型對正確答案的置信度),成員推測攻擊會沿着梯度方向尋找分類置信度很是高的點。已經部署的模型中也還能夠得到有關訓練數據的更多整體統計信息[AMS15]。

(四)總結

  如今是2016年12月。目前,咱們知道許多攻擊機器學習模式的方法,並且不多有防護的方法。咱們但願到2017年12月,咱們將有更有效的防護措施。這個博客的目標是推進機器學習安全和隱私的研究狀態,經過記錄他們所發生的進展,在涉及到這些話題的研究人員的社區內引起討論,並鼓勵新一代的研究人員加入這個社區。

References

[AMS15] Ateniese, G., Mancini, L. V., Spognardi, A., Villani, A., Vitali, D., & Felici, G. (2015). Hacking smart machines with smarter ones: How to extract meaningful data from machine learning classifiers. International Journal of Security and Networks, 10(3), 137-150.

[BS16] Barocas, S., & Selbst, A. D. (2016). Big data’s disparate impact. California Law Review, 104.

[BNL12] Biggio, B., Nelson, B., & Laskov, P. (2012). Poisoning attacks against support vector machines. arXiv preprint arXiv:1206.6389.

[CMS11] Chaudhuri, K., Monteleoni, C., & Sarwate, A. D. (2011). Differentially private empirical risk minimization. Journal of Machine Learning Research, 12(Mar), 1069-1109.

[GSS03] Garfinkel, S., Spafford, G., & Schwartz, A. (2003). Practical UNIX and Internet security. O’Reilly Media, Inc.

[GSS14] Goodfellow, I. J., Shlens, J., & Szegedy, C. (2014). Explaining and harnessing adversarial examples. arXiv preprint arXiv:1412.6572.

[PMG16] Papernot, N., McDaniel, P., Goodfellow, I., Jha, S., Berkay Celik, Z., & Swami, A. (2016). Practical Black-Box Attacks against Deep Learning Systems using Adversarial Examples. arXiv preprint arXiv:1602.02697.

[PMS16] Papernot, N., McDaniel, P., Sinha, A., & Wellman, M. (2016). Towards the Science of Security and Privacy in Machine Learning. arXiv preprint arXiv:1611.03814.

[SSS16] Shokri, R., Stronati, M., & Shmatikov, V. (2016). Membership Inference Attacks against Machine Learning Models. arXiv preprint arXiv:1610.05820.

[SZS13] Szegedy, C., Zaremba, W., Sutskever, I., Bruna, J., Erhan, D., Goodfellow, I., & Fergus, R. (2013). Intriguing properties of neural networks. arXiv preprint arXiv:1312.6199.

 

原文連接:http://www.cleverhans.io/security/privacy/ml/2016/12/15/breaking-things-is-easy.html

轉載請註明出處!

相關文章
相關標籤/搜索