Ian Goodfellow叒來探討安全問題了,noisy SGD和PATE能滿足傳統計算機安全原則嗎?

 2017-09-07 15:40:00.0

在上世紀80年代初,互聯網只用於學術研究人員和軍事實驗室的年代,網絡連接的計算機之間大家彼此信任且沒有惡意行爲。而現在如果有基於這樣的假設設計出的網絡,那麼它必定不可能在網絡攻擊中倖存。

機器學習的現狀就有點像上世紀80年代初的那種情形,目前大多基於深度學習的模型都還只是研究人員在使用,當他們設計這些模型的時候主要還是在考慮它的學習能力,而很少會考慮到這個模型是否會遭到黑客的攻擊。但隨着越來越多的人工智能的研究在業界得到應用,機器學習安全與隱私的問題也逐漸得到越來越多人的關注。

Ian Goodfellow和Nicolas Papernot兩人可謂是這個領域的急先鋒,自去年兩人共同創建了Clever Hans博客(cleverhans.io,博客上已經有三篇關於機器學習安全與隱私問題)後,兩人還建立了cleverhans對抗性機器學習樣本庫,並積極促進研究社區中的學術交流,希望與全世界的研究者們共同探索和改善機器學習模型在安全和隱私方面的表現。

具體可參考往期文章:

Ian Goodfellow和Papernot半年三篇博文,對機器學習的安全隱私來了個大起底

我們注意到,前不久Ian Goodfellow、Nicolas Papernot等人在arXiv上發表了一篇非常基礎性的特邀報告文章。在這篇文章中,他們探討了一個問題,即:傳統的隱私安全原則,在機器學習環境下是否還適用?Ian Goodfellow等人就分類任務的監督學習問題,討論了最近出現的兩種具備隱私保護的機器學習模型(noisy SGD和PATE),考察了它們是否能滿足傳統的計算機安全原則(Saltzer 和 Schroeder)。他們認爲傳統的計算機安全原則在機器學習環境下仍然值得借鑑,依照原則,上述的兩個模型還有待改進。

一、攻擊者的目的是什麼?

機器學習的模型千千萬,Ian Goodfellow等人作爲示例選擇最簡單和普遍的分類任務的監督學習問題來做討論。

所謂分類任務,其實就是一個函數f將樣本指向一個類,例如將一張圖片指向一個數字。(更廣義地來說,每個函數還應包含一個概率值,爲了簡單這裏就不考慮這個了)而所謂學習就是通過訓練得到一個函數g(也就是訓練出的模型)在某種程度上接近f。「監督」的意思則是學習的輸入和輸出都是已知的。

在這個模型中,一面是輸入輸出的訓練數據集,一面是由數據集訓練出的模型g。所以如果有惡意的攻擊,攻擊者可能會有兩個目的:

  • (1)(完整地或部分地)提取出訓練模型的參數;

  • (2)測試一個輸入輸出對(或僅僅是輸入或輸出)是不是訓練數據集中的一部分,從而提取訓練數據集的信息。

就威脅程度的而言,也有兩種可能:

  • (1)黑箱威脅:攻擊者只能拿着模型g應用到他們選擇的一些新的輸入上,可能還會有一些次數或別的限制;

  • (2)白箱威脅:攻擊者可以查看模型g的內部。

二、兩種隱私保護的機器學習模型

1、噪聲隨機梯度下降(noisy stochastic gradient descent,noisy SGD)

機器學習其實就是訓練一個參數函數g(θ, x),其中x是樣本(訓練數據或者預測輸入數據),參數θ則可以是神經網絡的權重等。當輸入一個樣本x時,當給定θ和g,則由g和f之間的差別得到損失函數L(g, θ)。訓練模型g的過程,其實就是通過尋找合適的θ值,使損失函數L(g, θ)最小(或者在誤差容許範圍內)。一般來說g和L都是θ的可微分函數,因此訓練的過程就會依賴函數的梯度下降。通過隨機梯度下降(SGD),我們就可以用樣本x重複地計算g和L,得到誤差容許範圍內的損失函數。

一方面,訓練數據只能通過梯度計算來影響θ值;另一方面,θ最終的靈敏度通常是很難分析的。這就允許我們通過在梯度計算的過程中添加仔細校準過的噪聲來實現隱私的保護。這個想法在M. Abadi等人去年的一篇文章《Deep learning with differential privacy》中有非常詳細的介紹。

2、教師系綜的私有聚合(private aggregation of teacher ensembles,PATE)

另外一種隱私保護的模型非常有意思。設想如果攻擊者千辛萬苦攻破了一個機器學習模型,卻發現他調整模型的內部參數卻對模型沒有任何影響,是什麼樣的心情。機器學習系綜模型就是這種讓攻擊者絕望的模型。

PATE模型的思想其實很簡單,首先它通過訓練數據集中相互沒有交集的子數據訓練大量「教師」模型,構成一個「教師系綜」;隨後再通過教師系綜的輸出去訓練「學生」模型,「學生」的訓練僅依賴「教師」的預測結果,而不涉及它們的內部參數。

這種模型,一方面,當教師系綜的某個「教師」出現問題時並不會對「學生」有很大的影響;另一方面,攻擊者不可能通過攻破「學生」模型來得到「教師」的內部結構;不過結合兩方面,即使得到一個「教師」的內部參數,也不會對模型本身有太大的影響。此外,一旦「學生」訓練完成後,事實上我們可以撤掉「教師系綜」(同時也包括它所攜帶的隱私)。

三、重申計算機安全的十大原則

Ian等人認爲傳統的計算機安全中的研究在機器學習環境中仍然值得借鑑,他們在此想通過Saltzer和Schroeder兩人在75年提出的計算機安全十大原則來評價上述兩個機器學習的隱私保護模型。

不得不說,Saltzer和Schroeder當年提出的大部分保護機制和機器學習中的都不一樣,因爲當時並不涉及數據遷移。不過他們當時描述過通過「數據加密」的保護機制;通過數據來訓練模型在某種程度上其實也類似於「數據加密」。所以他們當年提出的十大原則也同樣適用於機器學習環境中。那麼上述兩種隱私保護模型(noisy SGD和PATE)是否符合這十大原則呢?一起和我們來逐一看看。

1、機制的經濟性

這一原則強調,保護機制的設計應儘可能得簡單。看起來,noisy SGD和PATE(以及它的變種)在這方面都不會表現很好,原因各不同相同:

noisy SGD雖然是通過簡單的算法思想(添加噪聲)極爲容易地實現的,但這些想法會直接影響隨機梯度下降(SGD)本身,而SGD是許多學習算法的核心。所以這無異就相當於給模型做了一個心臟手術,這對學習模型的影響是很大的,可能會造成其他潛在的威脅。此外,當學習算法進行優化和擴展的時候,你還需要反過來考察是否需要新的noisy SGD。

PATE模型相比noisySGD模型,會涉及更多的設計細節,尤其是它的變種PATE-G集成了基於GANs的複雜技術。而另一方面,這些複雜的設計細節至關重要,卻又與老師」模型的訓練完全分離,同時也與「學生」模型的內部結構無關。

所以考慮到機制的經濟性,noisy SGD和PATE並不理想,還有待尋找更簡單和更小的機制。

2、故障安全默認

這個原則說明模型的默認配置應是缺省訪問,特別是,當發生錯誤時將導致拒絕訪問。這個原則似乎很難應用到noisy SGD和PATE上,因爲它們通常會在任何情況下向任何提出請求的人提供相同的訪問權限。

近來也有許多這方面的研究實現了被稱爲(ε,δ)的差異隱私保障,其中ε爲隱私值,δ爲故障概率。不過初步來看,這樣的保障一旦失敗就會導致隱私喪失,而不是失去精確性。在這個意義上,這種保障並不是故障安全默認。所以在這方面似乎還需要更進一步的研究。

3、完全仲裁

這個原則意味着每一次訪問敏感數據都應該通過保護機制。舉個例子來說,在線銀行會要求15分鐘沒有操作後用戶必須重新登錄。這個原則需要站在整個系統的角度來考慮,所以並不適用於對noisy SGD和PATE的分析。

4、開放式設計

這個原則要求保護機制的設計不應當是基於某個祕密,而應該是公開的,這樣攻擊者就不可能通過對某個祕密的獲取來攻破系統。noisy SGD和PATE兩者在這方面都完全滿足。

5、特權分離

這個原則要求訪問某個關鍵資源,必須使用多個獨立的「鑰匙」。和「故障安全默認」一樣,這個原則也很難應用到noisy SGD和PATE上,它可能更適用於單獨的外部保護層次。

6、最小特權

這個原則要求每個程序/系統的每個用戶在完成操作的過程中只需要最少的權限。這個原則在noisy SGD和PATE中真的是再適合不過了。例如在PATE中,這就意味着每個「教師」模型即使程序出現錯誤也不可能訪問到其他「教師」的訓練數據。

這個原則能最大限度地限制事故或錯誤可能造成的損害。在這方面還沒有太多的研究,不過似乎可以實現的。

7、最少公共機制

該原則要求在多用戶系統中,允許多個用戶共享的資源應儘可能得少。在noisy SGD和PATE中,對所有訓練數據以及學習機制的所有訪問,隱私參數都是相同的。但或許可以通過加權的方法來爲不同的訓練數據的提供隱私保護,從而保證不同用戶的隱私需求。

8、心理可接受

這個原則要求用戶接口應該是精心設計的,並且非常直觀,所有與安全相關的設置都應按普通用戶的期望進行配置。程序的行爲如果與用戶期望之間出現差異,可能就會帶來安全問題。

就兩個模型來說,noisy SGD的配置需要用戶瞭解足夠的數學、差別隱私以及機器學習的知識,這可能是大多數用戶所欠缺的。而PATE模型相對來說就比較清晰直觀了,它不需要太多背景知識,你想還有什麼比「如果100個獨立訓練的機器學習模型說一張圖片是貓,預測結果也應當是貓」這樣的模型更直觀呢。

9、工作因素

這一原則要求設計安全方案時應根據攻擊者的資源來進行,例如保護軍事機密的系統,其安全設計和保護學校學生成績的系統的安全設計是不一樣的。noisy SGD和PATE的隱私保護受益於在交互時間,攻擊者不受限於任何特定數量的查詢。

10、記錄危害

這個原則說明有時記錄入侵細節比採用更復雜的措施來預防更爲理想。如上面所述,(ε,δ)-差別隱私包含了故障的概率,但是沒有任何信息可以用來記錄故障的原因。所以機器學習的隱私保護在記錄危害方面的問題是非常嚴重的,因爲它可能是理論的缺陷,而不是具體某個算法的問題。

四、許多問題有待研究

當然,由於這只是一篇特邀報告的文章,內容只是用來做示例,所以有很多問題和方面,Ian他們選擇了「暫不考慮」。例如,攻擊者可能會通過學習過程中修改某些訓練數據來影響模型(給模型下毒),在其他機器學習任務中的隱私保護問題、交互學習中的隱私保護問題以及如何從整個系統角度(軟、硬件)來考慮安全問題等,他們也只是淺嘗輒止,並沒有就它們展開討論。事實上,這些問題是非常值得探討的,它們或許需要更多的人共同努力才能完成。所以Ian Goodfellow等人的這篇文章或許只是用來拋磚引玉的吧,研究人員或許能從這篇文章中獲得更多靈感,我們也將持續關注機器學習隱私問題的動向和內容。



文章來源:雷鋒網