聯(lián)邦學習:對“數(shù)據(jù)隱私保護”和“數(shù)據(jù)孤島”困境的破局
一、引言
最近的ChatGPT(全稱:Chat Generative Pre-trained Transformer )在各類社交媒體上風頭無二,其是由OpenAI開發(fā)的一個人工智能聊天機器人程序,于2022年11月推出。該程序使用基于GPT-3.5架構(gòu)的大型語言模型并通過強化學習進行訓練,發(fā)布至今,OpenAI估值已漲至290億美元,上線兩個月后,用戶數(shù)量達到1億。再往前看2016年,人工智能已經(jīng)初現(xiàn)走向成熟的端倪,這一年隨著AlphaGo 擊敗人類頂尖圍棋選手李世石、柯潔,我們真正見證了人工智能(AI)的巨大潛力,并開始期望在許多應(yīng)用中使用更復雜,最先進的AI技術(shù),包括無人駕駛汽車,醫(yī)療保健。如今,人工智能技術(shù)正在幾乎每個行業(yè)中展示其優(yōu)勢。
但是,當我們回顧AI的發(fā)展時,不可回避的是AI的發(fā)展經(jīng)歷了幾次起伏。人工智能會不會再下滑呢?什么時候出現(xiàn)?由于什么因素?當前公眾對AI的興趣部分是由大數(shù)據(jù)的可用性驅(qū)動的:2016年AlphaGo總共使用了30萬場游戲作為訓練數(shù)據(jù),以取得出色的成績。隨著AlphaGo的成功,人們自然希望像AlphaGo這樣的大數(shù)據(jù)驅(qū)動的AI將成為在我們生活的各個方面。但是,人們都很快意識到現(xiàn)實世界中的情況有些令人失望:
圖 1:人工智能發(fā)展挑戰(zhàn)
- 現(xiàn)實中,我們的數(shù)據(jù)質(zhì)量是非常有限甚至是差的,比如聊天數(shù)據(jù)中有很多噪音。
- 數(shù)據(jù)標簽的收集是比較困難的,很多場景中的數(shù)據(jù)是沒有標簽的。
- 數(shù)據(jù)是孤島的,這也是最重要一點,每家應(yīng)用的數(shù)據(jù)不一樣,比如主營社交軟件的公司用的是社交屬性數(shù)據(jù),主營電商的公司用的是電商交易數(shù)據(jù),銀行用的是信用數(shù)據(jù),都是分散來應(yīng)用的。現(xiàn)實中,如何進行跨組織間的數(shù)據(jù)合作,會有很大的挑戰(zhàn)。
- 同時隱私保護政策變嚴格,這是重要的第二點,這些條例使得很多機構(gòu)不能夠把用戶的數(shù)據(jù)收集起來、集中起來做分析,數(shù)據(jù)被條例保護在用戶本地了。
數(shù)據(jù)是人工智能時代的石油,但是由于監(jiān)管法規(guī)和商業(yè)機密等因素限制,“數(shù)據(jù)孤島”現(xiàn)象越來越明顯。同時隨著政策法規(guī)的逐漸完善和公眾隱私保護意識加強,如何在保護數(shù)據(jù)隱私的前提下實現(xiàn)行業(yè)協(xié)作和協(xié)同治理,如何破解“數(shù)據(jù)孤島”和“數(shù)據(jù)隱私保護”的兩難困境,成為了當下人工智能技術(shù)行業(yè)應(yīng)用中亟待解決的問題。
二、聯(lián)邦學習概述
2.1 “數(shù)據(jù)隱私保護”與“數(shù)據(jù)孤島”困境
數(shù)據(jù)孤島和數(shù)據(jù)隱私保護的兩難困境:一是來自于人工智能技術(shù)本身的特點,需要海量數(shù)據(jù)作為基礎(chǔ);二是來自于世界范圍內(nèi)對數(shù)據(jù)隱私和安全的日益重視。
人工智能技術(shù)尤其是深度學習依賴于模型、 算法,更依輟于通過海量數(shù)據(jù)進行模型訓練。從而不斷改進,僅依靠某一機構(gòu)所掌握的數(shù)據(jù),無法實現(xiàn)技術(shù)的快速突破。理想狀態(tài)是在數(shù)據(jù)之間建立廣 泛連接,形成合力,創(chuàng)造更大價值。而現(xiàn)實情況是:有效數(shù)據(jù)往往難以獲取或以“數(shù)據(jù)孤島”的形式呈現(xiàn)。公司之間的數(shù)據(jù)共享需要用戶的授權(quán),而許多用戶傾向于拒絕數(shù)據(jù)共享;即便一個公司內(nèi)部,數(shù)據(jù)壁壘也不易打通;互聯(lián)網(wǎng)巨頭的存在,使得少數(shù)公司襲斷大量數(shù)據(jù)。這些因素都會導致數(shù)據(jù)孤島,難以創(chuàng)造出“1+1>2”的數(shù)據(jù)價值。
全球范圍內(nèi)對數(shù)據(jù)隱私和安全的重視帶來了更大挑戰(zhàn),這個挑戰(zhàn)導致大部分企業(yè)只擁用小數(shù)據(jù),加劇了數(shù)據(jù)孤島現(xiàn)象的產(chǎn)生。歐盟出臺了首個關(guān)于數(shù)據(jù)隱私保護的法案《通用數(shù)據(jù)保護條例》 (General Data Protection Regulation, GDPR),明確了對數(shù)據(jù)隱私保護的若干規(guī)定。和以往的行業(yè)規(guī)范不同,這是一個真正可以執(zhí)行的法律,并且條款非常清晰嚴格。例如,經(jīng)營者要允許用戶來表達數(shù)據(jù)“被遺忘”的愿望,即“我不希望你記住我過去的數(shù)據(jù),并希望從現(xiàn)在起你不要利用我的數(shù)據(jù)來建模”。與此同時,違背GDPR的后果也非常嚴重,罰款可以高達被罰機構(gòu)的全球營收的4%。Facebook 和Google已經(jīng)成為基于這個法案的第1批被告。而中國在2017年起實施的《中華人民共和國網(wǎng)絡(luò)安全法》和《中華人民共和國民法總則》中也指出:“網(wǎng)絡(luò)運營者不得泄露、篡改、毀壞其收集的個人信息,并且與第三方進行數(shù)據(jù)交易時需確保擬定的合同明確約定擬交易數(shù)據(jù)的范圍和數(shù)據(jù)保護義務(wù)”。這意味著對于用戶數(shù)據(jù)的收集必須公開、透明,企業(yè)、機構(gòu)之間在沒有用戶授權(quán)的情況下不能交換數(shù)據(jù)。
雖然有明確的法律法規(guī)并且在全球范圍內(nèi)達成了廣泛共識,但由于技術(shù)等因素的限制,實際應(yīng)用中,數(shù)據(jù)隱私保護仍然是難題。收集數(shù)據(jù)的一方往往不是使用數(shù)據(jù)的一方,例如A方收集數(shù)據(jù),轉(zhuǎn)移到B方清洗,再轉(zhuǎn)移到C方建模,最后將模型賣給D方使用。這種數(shù)據(jù)在實體間轉(zhuǎn)移、交換和交易的形式違反了相關(guān)法律法規(guī),并可能受到嚴厲的懲罰。如何在保護數(shù)據(jù)隱私的前提下,從技術(shù)上解決數(shù)據(jù)孤島的問題,在隱私安全和監(jiān)管要求下,如何讓AI系統(tǒng)更加高效、準確地共同使用各自的數(shù)據(jù),能夠在小數(shù)據(jù)(很少的樣本和特征)和弱監(jiān)督(有很少的標注)的條件下做更好的模型,人們提出聯(lián)邦學習的解決方案,并且不斷探索其在具休行業(yè)場景下的應(yīng)用。
2.2 聯(lián)邦學習定義
數(shù)學定義:
定義N個數(shù)據(jù)持有者{F1, F2, F3..., Fn},他們都希望通過整合各自的數(shù)據(jù) {D1, D2, D3..., Dn}來訓練機器學習模型。傳統(tǒng)的方法是將所有數(shù)據(jù)放在一起使用 D=D1 U D2 U...U Dn來訓練出一個模型 MSUM,而聯(lián)邦系統(tǒng)是一個學習過程,在此過程中,所有數(shù)據(jù)持有者協(xié)作訓練模型 MFED,并且對任意一個數(shù)據(jù)持有者 Fi 不會將其獨享的數(shù)據(jù) Di 暴露給其他人。除此之外,模型 MFED 的準確性定義為 VFED 其應(yīng)該是非常接近于將數(shù)據(jù)集中放一起訓練的模型 MSUM 的準確度 VSUM. 用公式定義,讓 δ 為非負實數(shù),如果
| VFED - VSUM |< δ
則稱該聯(lián)邦學習算法有 δ 的精度損失。
圖 2.1:聯(lián)邦學習模型組成
在Peter等在綜述【1】中給出的上圖定義中可以清晰看出,聯(lián)邦學習指的是在滿足隱私保護和數(shù)據(jù)安全的前提下設(shè)計一個機器學習框架,使得其中許多客戶端(例如移動設(shè)備或整個組織)在中央服務(wù)器(例如服務(wù)提供商)的協(xié)調(diào)下共同訓練模型,同時保持訓練數(shù)據(jù)的去中心化及分散性,實現(xiàn)在不暴露數(shù)據(jù)的情況下分析和學習多個數(shù)據(jù)擁有者的數(shù)據(jù)。同時從定義中可以為其總結(jié)四大特征:
- 數(shù)據(jù)隔離:聯(lián)邦學習的整套機制在合作過程中,數(shù)據(jù)不會傳遞到外部,數(shù)據(jù)保留在本地,避免數(shù)據(jù)泄露,滿足用戶隱私保護和數(shù)據(jù)安全的需求。
- 無損:通過聯(lián)邦學習分散建模的效果和把數(shù)據(jù)合集中在一起建模的效果對比,幾乎是無損的。
- 共同獲益:能夠保證參與各方在保持獨立性的情況下,進行信息與模型參數(shù)的加密交換,并同時獲得成長。
- 對等:在聯(lián)邦學習的框架下,各參與者地位對等,能夠?qū)崿F(xiàn)公平合作,不存在一方主導另一方的情況。
2.3 聯(lián)邦學習隱私性
隱私是聯(lián)邦學習的基本屬性之一,這需要安全模型和分析以提供有意義的隱私保證。在本節(jié)中,將簡要介紹和比較聯(lián)邦學習的不同隱私技術(shù),并確定方法和潛力防止間接泄漏的挑戰(zhàn)。
多方安全計算(Secure Multi-party Computation, SMC):
SMC安全模型自然涉及多方參與,并在定義良好的模擬框架中提供安全證明,保證完全零知識,即每一方除了自己的輸入和輸出外一無所知。零知識是非??扇〉?,但是這種所需的屬性通常需要復雜的計算協(xié)議并且可能無法有效地實現(xiàn)。在某些情況下,如果提供安全保證,部分知識披露可能被認為是可以接受的。可以在較低的安全要求下用 SMC 構(gòu)建安全模型以換取效率。
差分隱私計算(Differential Privacy):
使用差分隱私或 k-匿名算法來保護數(shù)據(jù)隱私 。差分隱私計算、k-匿名計算和演化計算的方法包括在數(shù)據(jù)中加入噪聲,或者使用泛化方法來掩蓋某些敏感屬性,直到第三方無法區(qū)分個體,從而使數(shù)據(jù)無法被敵手恢復,進而起到保護用戶隱私的作用。
同態(tài)加密計算(Homomorphic Encryption):
在機器學習過程中,還采用同態(tài)加密通過加密機制下的參數(shù)交換來保護用戶數(shù)據(jù)隱私。與差分隱私保護不同,數(shù)據(jù)和模型本身不傳輸,也無法通過對方的數(shù)據(jù)進行猜測。因此,原始數(shù)據(jù)層面泄露的可能性很小。最近的工作采用同態(tài)加密來集中和訓練云上的數(shù)據(jù)。在實踐中,加法同態(tài)加密被廣泛使用,并且需要進行多項式逼近來評估機器學習算法中的非線性函數(shù),從而導致準確性和隱私之間的權(quán)衡。
2.4 聯(lián)邦學習分類
在實際應(yīng)用中,因為孤島數(shù)據(jù)具有不同的分布特點,所以聯(lián)邦學習也可分為:橫向聯(lián)邦學習、縱向聯(lián)邦學習、聯(lián)邦遷移學習3大類:
圖 2.2:聯(lián)邦學習分類
如果要對用戶行為建立預(yù)測模型,需要有一部分的特征,即原始特征,叫作 X ,例如用戶特征, 也必須要有標簽數(shù)據(jù),即期望獲得的答案,叫作 Y。比如,在金融領(lǐng)域,標簽 Y 是需要被預(yù)測的用戶信用;在營銷領(lǐng)域,標簽 Y 是用戶的購買愿望;在教育領(lǐng)域,則是學生掌握知識的程度等.用戶特征 X 加標簽 Y 構(gòu)成了完整的訓練數(shù)據(jù) (X,Y)。但是,在現(xiàn)實中,往往會遇到這種情況:各個數(shù)據(jù)集的用戶不完全相同,或用戶特征不完全相同。具體而言,以包含2個數(shù)據(jù)擁有方的聯(lián)邦學習為例,數(shù)據(jù)分布可以分為3種情況:
- 2個數(shù)據(jù)集的用戶特征重疊部分較大,而用戶重疊部分較小,如圖2.2中(a)所示;
- 2個數(shù)據(jù)集的用戶重疊部分較大,而用戶特征重疊部分較小,如圖2.2中(b)所示;
- 2個數(shù)據(jù)集的用戶與用戶特征重疊部分都比較小,如圖2.2中(c)所示。
為了應(yīng)對以上3種數(shù)據(jù)分布情況,我們把聯(lián)邦學習分為橫向聯(lián)邦學習、縱向聯(lián)邦學習與聯(lián)邦遷移學習。
2.5 聯(lián)邦學習步驟
一般一個聯(lián)邦學習模型主要有聯(lián)邦學習系統(tǒng)架構(gòu)和加密模型訓練兩大部分組成[2]。假設(shè)現(xiàn)有兩個數(shù)據(jù)擁有方(組織A和組織B)希望聯(lián)合訓練一個機器學習模型,它們的業(yè)務(wù)系統(tǒng)分別擁有各自用戶的相關(guān)數(shù)據(jù)。此外,組織B還擁有模型需要預(yù)測的標簽數(shù)據(jù)。出于數(shù)據(jù)隱私和安全考慮,組織A和組織B無法直接進行數(shù)據(jù)交換。此時,可使用聯(lián)邦學習系統(tǒng)建立模型,系統(tǒng)架構(gòu)由2部分構(gòu)成,如圖2.3所示:
圖 2.3:聯(lián)邦學習系統(tǒng)架構(gòu)
整個進行的步驟可以分為:
(1)加密樣本對齊:由于2家組織的用戶群體并非完全重合,系統(tǒng)利用基于加密的用戶樣本對齊技術(shù),在組織A和組織B不公開各自數(shù)據(jù)的前提下確認雙方的共有用戶,并且不暴露不互相重疊的用戶,以便聯(lián)合這些用戶的特征進行建模。
(2)加密模型訓練:在確定共有用戶群體后,就可以利用這些數(shù)據(jù)訓練機器學習模型。為了保證訓 練過程中數(shù)據(jù)的保密性,需要借助第三方協(xié)作者C進行加密訓練。以線性回歸模型為例,訓練過程可分為以下4步(如圖(b)所示):
- 協(xié)作者C把公鑰分發(fā)給模型A和模型B,用以對訓練過程中需要交換的數(shù)據(jù)進行加密。
- 對齊數(shù)據(jù)A和對齊數(shù)據(jù)B之間以加密形式交互用于計算梯度的中間結(jié)果。
- 對齊數(shù)據(jù)A和對齊數(shù)據(jù)B分別基于加密的梯度值進行計算,同時對齊數(shù)據(jù)B根據(jù)其標簽數(shù)據(jù)計算損失,并把這些結(jié)果匯總給協(xié)作者C。協(xié)作者C通過匯總結(jié)果計算總梯度并將其解密。
- 協(xié)作者C將解密后的梯度分別回傳給模型A和模型B;模型A和模型B根據(jù)梯度更新各自模型的參數(shù)。迭代上述步驟直至損失函數(shù)收斂,這樣就完成整個訓練過程。在樣本對齊及模型訓練過程中,組織A和組織B各自的數(shù)據(jù)均保留在本地,且訓練中的數(shù)據(jù)交互也不會導致數(shù)據(jù)隱私泄露。因此,雙方在聯(lián)邦學習的幫助下得以實現(xiàn)合作訓練模型。
(3)效果激勵:聯(lián)邦學習的一大特點就是它解決了為什么不同機構(gòu)要加入聯(lián)邦共同建模的問題,即建立模型以后模型的效果會在實際應(yīng)用中表現(xiàn)出來,并記錄在永久數(shù)據(jù)記錄機制(如區(qū)塊鏈)上。提供數(shù)據(jù)多的機構(gòu)會看到模型的效果也更好[3],這體現(xiàn)在對自己機構(gòu)的貢獻和對他人的貢獻。這些模型會向各個機構(gòu)反饋其在聯(lián)邦機制上的效果,并繼續(xù)激勵更多機構(gòu)加入這一數(shù)據(jù)聯(lián)邦。
以上3個步驟的實施,既考慮了在多個機構(gòu)間共同建模的隱私保護和效果,又考慮了如何獎勵貢獻數(shù)據(jù)多的機構(gòu),以一個共識機制來實現(xiàn),所以,聯(lián)邦學習是一個“閉環(huán)”的學習機制。
三、 總結(jié)展望
3.1 總結(jié)
聯(lián)邦學習作為隱私增強計算與人工智能相結(jié)合的新型技術(shù)范式,成為了解決數(shù)據(jù)安全與開放共享矛盾的一個重要技術(shù)路徑。聯(lián)邦學習中,用戶可以在自己的終端使用本地數(shù)據(jù)對模型進行訓練,并將模型的加密參數(shù)進行上傳匯總,將不同的模型更新進行融合,優(yōu)化預(yù)測模型。
2022年是聯(lián)邦學習的技術(shù)分水嶺——從聯(lián)邦學習到可信聯(lián)邦學習。針對近兩年來隱私計算和聯(lián)邦學習發(fā)展和應(yīng)用中面臨的安全、效率等挑戰(zhàn),“可信聯(lián)邦學習”被提出,這一范式將隱私保護、模型性能、算法效率作為核心,共同構(gòu)成了更加安全可信的聯(lián)邦學習。
3.2 落地展望
目前,聯(lián)邦學習已經(jīng)開始了在行業(yè)領(lǐng)域的落地探索,在不同的行業(yè)有多樣化的應(yīng)用場景和落地形態(tài),未來在一些領(lǐng)域可能有以下廣闊前景[4-10]:
在手機領(lǐng)域,近年來,移動設(shè)備配備了越來越先進的傳感和計算能力。再加上深度學習 (Deep Learning,DL) 的進步,這為有意義的應(yīng)用開辟了無數(shù)可能性,例如,用于智能車載和輔助駕駛。傳統(tǒng)的基于云的機器學習 (Machine Learning,ML) 方法需要將數(shù)據(jù)集中在云服務(wù)器或數(shù)據(jù)中心。然而,這會導致與不可接受的延遲和通信效率低下相關(guān)的關(guān)鍵問題。為此,有人提出了移動邊緣計算 (Mobile Edge Computing,MEC),以使產(chǎn)生數(shù)據(jù)的邊緣設(shè)備變得更加智能。然而,傳統(tǒng)的移動邊緣網(wǎng)絡(luò) ML 支持技術(shù)仍然需要與外部各方共享個人數(shù)據(jù),例如邊緣服務(wù)器。最近,鑒于越來越嚴格的數(shù)據(jù)隱私立法和日益增長的隱私問題,聯(lián)邦學習(FL)的概念被引入。在 FL 中,終端設(shè)備使用其本地數(shù)據(jù)來訓練服務(wù)器所需的 ML 模型。然后終端設(shè)備將模型更新而不是原始數(shù)據(jù)發(fā)送到服務(wù)器進行聚合,這將進一步加速產(chǎn)生數(shù)據(jù)的終端設(shè)備變得更加智能;
在風控領(lǐng)域,多家金融機構(gòu)聯(lián)合建模的風控模型能更準確地識別信貸風險,聯(lián)合反欺詐。多家銀行建立的聯(lián)邦反洗錢模型,能解決該領(lǐng)域樣本少、數(shù)據(jù)質(zhì)量低的問題。
在智慧零售領(lǐng)域,聯(lián)邦學習能有效提升信息和資源匹配的效率。例如,銀行擁有用戶購買能力的特征,社交平臺擁有用戶個人偏好特征,電商平臺則擁有產(chǎn)品特點的特征,傳統(tǒng)的機器學習模型無法直接在異構(gòu)數(shù)據(jù)上進行學習,聯(lián)邦學習卻能在保護三方數(shù)據(jù)隱私的基礎(chǔ)上進行聯(lián)合建模,為用戶提供更精準的產(chǎn)品推薦等服務(wù),從而打破數(shù)據(jù)壁壘,構(gòu)建跨領(lǐng)域合作。
在醫(yī)療健康領(lǐng)域,聯(lián)邦學習對于提升醫(yī)療行業(yè)協(xié)作水平更具有突出意義。在推進智慧醫(yī)療的過程中,病癥、病理報告、檢測結(jié)果等病人隱私數(shù)據(jù)常常分散在多家醫(yī)院、診所等跨區(qū)域、不同類型的醫(yī)療機構(gòu),聯(lián)邦學習使機構(gòu)間可以跨地域協(xié)作而數(shù)據(jù)不出本地,多方合作建立的預(yù)測模型能夠更準確地預(yù)測痛癥、基因疾病等疑難病。如果所有的醫(yī)療機構(gòu)能建立一個聯(lián)邦學習聯(lián)盟,或許可以使人類的醫(yī)療衛(wèi)生事業(yè)邁上一個全新的臺階。