聯(lián)邦學習: 統(tǒng)一數(shù)據(jù)協(xié)作和隱私保護的技術解決之道
聯(lián)邦學習的經(jīng)典落地案例,google輸入法的智能推薦應用
傳統(tǒng)Gboard的推薦系統(tǒng):敲擊鍵盤的數(shù)據(jù)會被上傳到谷歌的服務器,通過直接收集大量數(shù)據(jù)來訓練智能推薦模型。
基于聯(lián)邦學習的方案:用戶敲擊鍵盤的數(shù)據(jù)保留在本地。用戶的手機中有一個不斷更新的模型會根據(jù)這些數(shù)據(jù)進行學習和更新,并將更新的權重加密上傳到服務器。服務器收到大量用戶的模型后,根據(jù)這些模型進行綜合訓練。
聯(lián)邦學習方案的突出優(yōu)點是能隱私保護,即無需傳輸原始數(shù)據(jù),原始數(shù)據(jù)始終保持在設備本地。
傳統(tǒng)的模型跟新需要收集大量數(shù)據(jù),定時跟新發(fā)布模型;新的模式可以是的設備實時下載模型,并迭代,使得用戶行為最快的反應在新的模型中,達到實時更新模型。
一般的聯(lián)邦學習方案可以分為三個步驟:
1. Selection:滿足條件的設備會向服務器提出請求,參加到訓練中來,服務器接收到請求之后,根據(jù)參與設備數(shù)、超時時間這些因素,選擇一部分設備參與到本輪訓練中來;
2. Configuration:服務器的配置主要是服務器選定模型整合的方式,同時服務器會將具體的FL task和當前的FL checkpoint發(fā)給各個設備;
3. Reporting:服務器會等待各個設備將訓練的結果返回,并采用聚合算法進行聚合,然后通知設備下次請求的時間,判斷更新的成功和失敗。在整個過程中,存在著一個步速控制模塊,管理設備的連接情況。保證每輪訓練有合適的設備參與。
綜上所訴,聯(lián)邦學習的保護了以下幾個重要優(yōu)點:隱私保護性:用戶個人數(shù)據(jù)無需上傳到云端,用戶的數(shù)據(jù)無需提供給服務提供商,從而提高用戶數(shù)據(jù)的隱私性;降低了延時:盡管5G時代即將到來,但并不是在任何情況下任何地點的網(wǎng)速都能得到保障。如果將用戶所有的數(shù)據(jù)都上傳到云端,且服務本身也是從云端進行的反饋,那么在網(wǎng)速較慢的環(huán)境下,網(wǎng)絡延時將會極大降低用戶體驗。而聯(lián)邦學習加持下的服務則不會出現(xiàn)這種情況,因為服務本身就來自于本地。
聯(lián)邦學習帶來的挑戰(zhàn)
聯(lián)邦學雖然有諸多優(yōu)點,但在實際落地的過程中還是會遇到各種挑戰(zhàn)。
系統(tǒng)異質(zhì)性:由于客戶端設備硬件條件(CPU、內(nèi)存)、網(wǎng)絡連接的不同,聯(lián)邦學習網(wǎng)絡中每個設備的存儲、計算和通信能力都有可能不同。此外,不同設備還會出現(xiàn)斷網(wǎng),死機等情況。這種特征影響了聯(lián)邦學習整體的穩(wěn)定性。
數(shù)據(jù)異質(zhì)性:設備和用戶的不同,導致產(chǎn)生的數(shù)據(jù)類型也有差異?缭O備的特征等可能有很大的變化,導致數(shù)據(jù)的非獨立同分布。目前,主流機器學習算法主要是基于 IID 數(shù)據(jù)的假設前提推導建立的。因此,異質(zhì)性會給模型的收斂,精度帶來了很大挑戰(zhàn)。
通信代價:在聯(lián)邦學習過程中,原始數(shù)據(jù)保存在遠程客戶端設備本地,必須與中央服務器不斷交互才能完成全局模型的構建。
聯(lián)邦學習的拓展
早期的聯(lián)邦學習主要應用在移動設備的模型更新,在這個過程中,不同設備具有類似的數(shù)據(jù)和特征空間,需要聚合不同的樣本,達到在不分享原始數(shù)據(jù)的前提下,建立高效的模型。有些前輩基于數(shù)據(jù)庫結構,叫他橫向聯(lián)邦,但是比較難以區(qū)分,我們這里暫時稱為樣本聯(lián)邦。
相對于樣本聯(lián)邦,它的另一面是特征聯(lián)邦,就是相同的樣本,但是不同的特征在不同機構手里。這個也是非常常見的案例,例如我們開頭提到的社交網(wǎng)絡公司和電商公司對用戶數(shù)據(jù)收集的案例。
從樣本聯(lián)邦到特征聯(lián)邦
隨著聯(lián)邦學習的發(fā)展,聯(lián)邦學習的范疇從樣本聯(lián)邦到特征聯(lián)邦拓展。典型的案例,包括線性回歸,樹狀模型等等。
安全性補充
聯(lián)邦學習的顯著優(yōu)點是不分享原始數(shù)據(jù)的前提下建立聯(lián)合模型,但是它是真正的安全嗎?不存在任何風險點了么?我下面?zhèn)儚穆?lián)邦學習的參與者角色和過程,探討聯(lián)邦學習的安全性。
安全性挑戰(zhàn)之一:中央服務器的存在。在訓練過程中傳遞模型的更新信息仍然不斷向第三方或中央服務器報告,第三方可以不斷收集所有參與者不同輪的數(shù)據(jù),有機會進行分析推導,也是系統(tǒng)中的single point failure。
去除第三方中心,例如,使用多方安全計算實現(xiàn)梯度更新的聚合,將會使得系統(tǒng)的安全性得到提高。
安全性挑戰(zhàn)之二:數(shù)據(jù)傳輸?shù)膯栴}。在訓練過程中傳遞模型的更新信息仍然不斷向第三方或中央服務器報告,雖然梯度不是原始信息,但是依然存在暴露敏感信息的風險。依然有機會可以從梯度、模型參數(shù)更新中反推出用戶數(shù)據(jù),所以需要進一步保護,可加入差分隱私,加密保護等技術手段實現(xiàn)。
安全性挑戰(zhàn)之三:單方數(shù)據(jù)污染。由于每個worker都是獨立的,傳統(tǒng)的聯(lián)邦學習中,server并沒有高效的鑒別worker數(shù)據(jù)正常性的能力,導致worker的異常輸入并不一定能夠及時發(fā)現(xiàn)和處理。從而導致單方數(shù)據(jù)污染,嚴重影響模型訓練過程,和最終的模型效果。甚至有目的的改變模型訓練效果,數(shù)據(jù)源的質(zhì)量監(jiān)控,防止訓練數(shù)據(jù)的惡意污染異常重要。

請輸入評論內(nèi)容...
請輸入評論/評論長度6~500個字
圖片新聞