0
在2019年大火的聯(lián)邦學習,最新的研究進展怎么樣了?
文 | 蔣寶尚
編 | 賈 偉
聯(lián)邦學習無疑是近期 AI 界最火爆的技術范式之一,在過去的2019年,涌現了大量聯(lián)邦學習相關研究。聯(lián)邦學習是一個機器學習框架,它允許用戶使用分布在不同位置的多個數據集來訓練機器學習模型,同時防止數據泄露并遵守嚴格的數據隱私法規(guī)。
能夠防止數據泄露!這也意味著聯(lián)邦學習或許是解決數據敏感的重要途徑。最近來自澳大利亞國立大學、卡內基·梅隆大學、康奈爾大學、谷歌、香港科技大學等機構的學者們聯(lián)合發(fā)布了一篇論文,詳細闡述了該領域所面臨的開放性問題和挑戰(zhàn),并列舉了大量珍貴的研究方向。
(雷鋒網)論文下載地址:https://arxiv.org/pdf/1912.04977.pdf
這篇綜述性論文共有7個部分,從導語部分引入,介紹了跨設備設置以外的其他聯(lián)邦學習設置和問題,以及如何提高聯(lián)邦學習效率和效用等問題,也探討了用戶數據以及隱私、模型被操控和失敗的因素等熱點問題。
聯(lián)邦學習指多個客戶端(如移動設備或整個組織)在一個中央服務器(如服務提供商)下協(xié)作式地訓練模型的機器學習設置,該設置同時保證訓練數據去中心化。
聯(lián)邦學習使用局部數據收集和最小化原則,降低傳統(tǒng)中心化機器學習方法帶來的一些系統(tǒng)性隱私風險和成本。聯(lián)邦學習這一術語由 McMahan 等人在 2016 年首次提出,但是在這一術語誕生之前,已經就存在了大量相關研究工作致力于數據隱私保護,例如20世紀80年代就已出現的計算加密數據的加密方法。聯(lián)邦學習最初只是強調移動和邊緣設備應用,研究者并把這兩種設置分別稱作跨設備(cross-device)和cross-silo。
基于這兩種變體,這篇論文給聯(lián)邦學習下了一個更加廣泛的定義:聯(lián)邦學習是多個實體(客戶端)協(xié)作解決機器學習問題的機器學習設置,它在一個中央服務器或服務提供商的協(xié)調下進行。
每個客戶端的原始數據存儲在本地,無法交換或遷移,聯(lián)邦學習利用局部更新(用于立即聚合 (immediate aggregation))來實現學習目標。值得注意的是,這個定義完全將聯(lián)邦學習與完全去中心化的學習技術做了區(qū)分。
(雷鋒網)
跨設備聯(lián)邦學習設置:上圖展示了聯(lián)邦學習訓練的生命周期,以及聯(lián)邦學習系統(tǒng)中的多個參與者。具體而言,其工作流程包括6個部分:1.問題識別;2.客戶端設置;3.模型原型開發(fā);4.聯(lián)邦模型訓練;5.模型評估;6.部署。
具體到訓練過程,主要包括:1.客戶端選擇;2.廣播;3.客戶端計算;4.聚合;5.模型更新。在客戶端選擇步驟主要是從滿足要求的客戶端中進行采樣;廣播步驟主要從選中的客戶端從服務器下載當前模型權重和訓練程序;而客戶端計算、聚合和模型更新階段的分離并非聯(lián)邦學習的嚴格要求,但它確實排除了特定類別的算法,如異步 SGD。
在聯(lián)邦學習的訓練中,服務器一直在扮演著中心角色,當客戶端數量非常龐大的時候,服務器可能會成為訓練的瓶頸。完全去中心化的關鍵思想就是采用點對點的方式取代以服務器為中心的通信模式。
在完全去中心化的算法中,客戶端作為節(jié)點,客戶端之間的通信信道作為邊,這種邊與點的關系構成了聯(lián)邦學習網絡。注意不再是標準聯(lián)邦學習中的全局狀態(tài),該過程可以被設計成使得所有局部模型都收斂到期望的全局解,換句話說就是各個模型逐漸達成共識。
雖然是完全分布,但任然要有一個中心來負責分配學習任務,這些學習任務包括:算法選擇、超參數選擇,調試等等。這個中心的選擇需要被信任,其可有提出學習任務的客戶擔當,也可以協(xié)商一致決定。
(雷鋒網)
聯(lián)邦學習和分布式學習的比較但是關于機器學習的去中心化方案當前仍然面臨大量的算法問題, 有些問題類似于使用中央服務器進行聯(lián)合學習的特殊情況,另一些問題則是由于完全分布產生的副作用。在算法方面,所面臨的挑戰(zhàn)主要是網絡拓撲和異步對分布SGD的影響、本地更新的分布式SGD、個性化以及信任機制、梯度壓縮和量化方法。
Cross-Silo 聯(lián)邦學習:與跨設備聯(lián)合學習的特征相反,Cross-Silo 聯(lián)邦學習在總體設計的某些方面非常靈活。許多組織如果只是想共享訓練模型,而不想分享數據時,cross-silo設置是非常好的選擇。
Cross-Silo 聯(lián)邦學習的設置主要有以下幾個要點:數據分割、激勵機制、.差異隱私、張量因子分解。
(雷鋒網)兩種分割學習設置
分割學習(Split Learning):分割學習的關鍵思想是在客戶端和服務器之間執(zhí)行基于每層的分割模型,并應用于訓練和推理。分裂學習最簡單配置是每個客戶端計算通過深層網絡前向傳遞,然后切割層的輸出,即粉碎數據被發(fā)送到另一個服務器或客戶端,然后由此服務器或客戶端完成剩余的計算。這意味著讓不共享的數據發(fā)生前向傳播;最后可以以類似的方式將梯度從其最后一層反向傳播到切割層。注意此過程會一直持續(xù)到收斂。
論文的這一部分屬于探索各種技術的開放性章節(jié),討論的問題包括開發(fā)更好的優(yōu)化算法?如何為不同的客戶端提供差異化模型?在聯(lián)邦學習的背景下如何執(zhí)行機器學習任務?解決上述問題有非常多的挑戰(zhàn),其中一個就是Non-IID(不合符獨立同分布的要求)數據的存在。出現這種問題的原因主要有三個方面:1.不同的客戶端分布;2.違反獨立性假設;3.數據集遷移。
如何處理Non-IID數據呢?最一般的方法是修改現有的算法。對于一些應用程序,可以選擇擴充數據,也可以用一些方法讓跨客戶端的數據更加相似。例如創(chuàng)建一個可以全局共享的小型數據集。
另一個提高效率的方法是為聯(lián)邦學習優(yōu)化算法,在一些典型的聯(lián)邦學習任務中,其優(yōu)化目標是最小化“某些函數”。聯(lián)合優(yōu)化算法和標準分布式訓練方法之間的主要區(qū)別在于:需要解決non-IID數據以及不平衡數據。另外聯(lián)邦學習的另一個重要的實際考慮因素算法是與其他技術的可組合性,例如根據實際情況調整有狀態(tài)的優(yōu)化算法(如ADMM)和有狀態(tài)的壓縮策略。
多任務學習、個性化以及元學習在面對非IID數據時非常有效,其性能甚至可能超過最好的共享全局模型。另外通過特征化實現個性化,這樣的輸入能夠讓共享的全局模型產生高度個性化的預測。為了使得訓練效果更加高效,可以調整機器學習工作流程。
因為標準的機器學習工作流程中的數據增強、特征工程、神經體系結構設計、模型選擇、超參數優(yōu)化等,在配置到分散的數據集和資源受限的移動設備時,會出現了許多問題。
各種威脅模型機器學習工作流程涉及各種參與者。對于用戶來說,其可以通過與設備交互來生成訓練數據。對于機器學習工程師來說其參與方式就是訓練并評估模型的質量。在理想狀態(tài)中,系統(tǒng)中的每個參與者都可以輕松地推斷出自己的信息有沒有泄露,各方參與者可以利用這些推斷確定是否采取行動。
論文中在這一章對現有的成果進行了概述,并介紹了如何設計,才能夠提供嚴格隱私保障,以及現在聯(lián)合學習系統(tǒng)所面臨的挑戰(zhàn)。當然,除了針對用戶隱私的攻擊之外,還有其他類別的針對聯(lián)合學習的攻擊;例如,對手可能試圖根本阻止模型訓練,或者試圖讓模型產生偏見。論文還討論了能夠提供保護的各種威脅模型,然后列出了一些核心工具和技術。在可信服務器也做了假設,并討論了敵意客戶端和分析者的保護方面存在的公開問題和挑戰(zhàn)。
現代機器學習系統(tǒng)很容易出現問題。這些問題的出現可能并不是惡意的,如預處理管道中的錯誤、有噪音的培訓標簽、不靠譜的客戶端,以及針對訓練和部署的顯式攻擊。在本節(jié)中,論文介紹了聯(lián)邦學習的分布式特性、體系結構設計和數據約束打開了新的失敗模式和攻擊面。
此外值得注意的是,在聯(lián)邦學習中保護隱私的安全機制可能會讓檢測和糾正變得十分困難。論文還討論了不同類型的攻擊和失敗之間關系,以及這些關系在聯(lián)邦學習中的重要性。對模型性能的對抗性攻擊:攻擊方可能不光針對模型的性能進行攻擊,而是可能推斷參與訓練的用戶的私有數據。對抗性攻擊的例子有很多,包括數據中毒、模型更新中毒以及模型規(guī)避攻擊(model evasion attacks)。
非惡意故障模式(Non-Malicious Failure Modes):與傳統(tǒng)的數據中心模式的訓練相比,聯(lián)邦學習特別容易客戶端的非惡意故障的影響,與有敵意的攻擊一樣,系統(tǒng)因素和數據約束也會導致非惡意故障。非惡意故障通常比惡意攻擊的破壞性小,但出現的頻率更高,但往往與惡意攻擊具有共同的根源和復雜性。因此,對付非惡意故障的方法也能用在對付惡意攻擊上面。
探究隱私與穩(wěn)健性之間的張力:往往使用安全聚合技術來加強隱私保護,但通常會使防御敵意攻擊變得更加困難,因為中央服務器只看到客戶端更新的集合,因此,研究在使用安全聚合時如何防御敵意攻擊非常重要。
總的來說先介紹了對抗性攻擊,然后討論了非惡意失效模式,最后探討了隱私與健壯性之間的張力。
機器學習模型的表現經常會令人驚訝。當這些行為模型對用戶非常不友好時,研究者會將其歸為不公平。例如,如果具有相似特征的人得到了完全不同的結果,那么這就違反了個體公平的標準。如果某些敏感群體(種族、性別等)得到不同的結果,那么這可能違反人口統(tǒng)計學公平的各種標準........
聯(lián)邦學習為公平性研究提供了幾個思考,其中一些擴展了非聯(lián)邦環(huán)境中先前的研究方向,另一些則是聯(lián)邦學習獨有的。訓練數據中的偏差:機器學習模型中不公平的一個驅動因素是訓練數據中的偏差,包括認知抽樣、報告和確認偏差。
一種常見的現象是個別特征數據在總的數據集中代表性不足,因此模型訓練過后得到的權重并不能代表問題。就像聯(lián)合學習中使用的數據訪問過程可能會引入數據集移位和非獨立性一樣。
公平而不獲取敏感屬性:明確獲取人口統(tǒng)計信息,例如種族、性別等會引發(fā)關于公平性標準的討論,當個人敏感屬性不可用時,經常部署聯(lián)邦學習的環(huán)境也會引起對公平性的討論,例如開發(fā)個性化的語言模型和公平的醫(yī)學分類器。所以測量和糾正不公平是聯(lián)合學習研究人員要解決的一個關鍵問題。
公平、隱私和穩(wěn)?。汗胶蛿祿[私似乎是互補的倫理概念,在許多需要隱私保護的現實環(huán)境中,公平也是非常需要的。由于聯(lián)合學習最有可能部署在隱私和公平都需要的敏感數據環(huán)境中,因此解決公平和隱私問題至關重要。
利用聯(lián)邦提高模式多樣性:聯(lián)合學習提供的分布式訓練將以前可能不切實際甚至非法地數據,都能合理的利用起來。當前的一些數據隱私保護法已經逼得企業(yè)在數據孤島中建模。另外,訓練數據中缺乏代表性和多樣性會導致模型性能的下降,聯(lián)邦學習能夠組合可能已經與敏感屬性相關的數據來改善這些模型的公平性,進而提高模型的性能。
聯(lián)邦學習使分布式客戶端設備能夠協(xié)作學習并共享預測模型,同時將所有訓練數據保存在設備上,從而將機器學習的能力與將數據存儲在云中的需求分離開來。
近年來,聯(lián)邦學習的話題在工業(yè)界和學術界都經歷了爆炸性的增長。聯(lián)邦學習在其他學科領域也逐漸擴大著影響力: 從機器學習到優(yōu)化、信息論和統(tǒng)計到密碼學、公平性和隱私。數據隱私不是二元的,不同假設下的威脅模型,每一個模型都有其獨特的挑戰(zhàn)。
論文討論的開放性問題并不全面的,其反映了作者的興趣和背景。本文并不討論機器學習項目中需要解決的非學習問題,畢竟這些問題可能需要基于分散的數據來解決。例如計算基本的描述性統(tǒng)計,計算開放集上的直方圖頭部。另一個未討論的重要主題是可能激發(fā)或限制使用聯(lián)邦學習的法律和業(yè)務問題。
雷峰網原創(chuàng)文章,未經授權禁止轉載。詳情見轉載須知。