關(guān)于聯(lián)邦學(xué)習(xí)
聯(lián)邦學(xué)習(xí)的定義
2019年4月10日,科學(xué)家首次拍攝了星系M87的一張黑洞核心的照片,該圖像顯示了一個(gè)明亮的環(huán),這張期待已久的圖像為迄今為止存在的黑洞提供了最有力的證據(jù)。
而拍攝到這個(gè)前無(wú)古人的照片的設(shè)備,就是一個(gè)和地球直徑一般大小的望遠(yuǎn)鏡,這就是視界望遠(yuǎn)鏡,EHT(Event Horizon Telescope)。EHT將全球各地的望遠(yuǎn)鏡連接起來(lái),形成了具有空前靈敏度和分辨率的地球大小的虛擬望遠(yuǎn)鏡[3]。EHT是多年國(guó)際合作的結(jié)果,它為科學(xué)家提供了一種新方法,來(lái)研究由愛(ài)因斯坦的<u style="">廣義相對(duì)論</u>預(yù)測(cè)的宇宙中最極端的物體,這是歷史性實(shí)驗(yàn)的百年首次證實(shí)該理論[4]。
這一種將全球的望遠(yuǎn)鏡連接起來(lái)的新方法在機(jī)器學(xué)習(xí)領(lǐng)域也有同樣的應(yīng)用,那就是最近幾年非常火爆的聯(lián)邦學(xué)習(xí)(Federated Learning)。
聯(lián)邦學(xué)習(xí),是分布式學(xué)習(xí)的一種,按照維基百科的定義:
Federated learning (aka collaborative learning) is a machine learning technique that trains an algorithm across multiple decentralized edge devices or servers holding local data samples, without exchanging their data samples.
聯(lián)邦學(xué)習(xí)是一種機(jī)器學(xué)習(xí)技術(shù),可在擁有本地?cái)?shù)據(jù)樣本的多個(gè)分布式邊緣設(shè)備或服務(wù)器之間訓(xùn)練算法,而無(wú)需交換數(shù)據(jù)樣本
聯(lián)邦學(xué)習(xí)能夠充分的利用參與方的數(shù)據(jù)和計(jì)算能力,使多方可以協(xié)作構(gòu)建通用,更健壯的機(jī)器學(xué)習(xí)模型而不需要共享數(shù)據(jù),在數(shù)據(jù)監(jiān)管越來(lái)越嚴(yán)格的大環(huán)境下,聯(lián)邦學(xué)習(xí)能夠解決數(shù)據(jù)所有權(quán),數(shù)據(jù)隱私,數(shù)據(jù)訪問(wèn)權(quán)以及異構(gòu)數(shù)據(jù)的訪問(wèn)等關(guān)鍵問(wèn)題,所以自從聯(lián)邦學(xué)習(xí)的概念已提出就獲得了人工智能行業(yè)的追捧,目前已經(jīng)在很多行業(yè)受到一定的應(yīng)用,比如國(guó)防,電信,醫(yī)療和物聯(lián)網(wǎng)等。
聯(lián)邦學(xué)習(xí)的起源
業(yè)界公認(rèn)聯(lián)邦學(xué)習(xí)的起源來(lái)Konevcny,McMahan和Ramage在2015年發(fā)表的論文《Federated Optimization: Distributed Optimization Beyond the Datacenter》[1],在這個(gè)文章中,來(lái)自愛(ài)丁堡大學(xué)和Google的兩個(gè)學(xué)者提出了在分布式的數(shù)據(jù)中心中進(jìn)行聯(lián)邦優(yōu)化的算法。接著,2017年McMahan在AISTATS大會(huì)上發(fā)表了《Communication-Efficient Learning of Deep Networks from Decentralized Data》[2]
這兩篇文章奠定了聯(lián)邦學(xué)習(xí)的基礎(chǔ),那么為什么要有聯(lián)邦學(xué)習(xí),它的業(yè)務(wù)價(jià)值是什么呢?
新的技術(shù)和框架的產(chǎn)生大部分都是為了解決一類(lèi)業(yè)務(wù)問(wèn)題,聯(lián)邦學(xué)習(xí)的起源也是這樣,聯(lián)邦學(xué)習(xí)的產(chǎn)生背景是由于移動(dòng)服務(wù)的興起。移動(dòng)服務(wù)商為了讓用戶(hù)能夠獲得更好的使用體驗(yàn),就需要利用人工智能技術(shù)賦能很多場(chǎng)景,比如大家手機(jī)里的圖庫(kù),是不是能夠分類(lèi)更準(zhǔn)確,美顏效果更好。但是,這一切都依賴(lài)于兩個(gè)因素,算力和訓(xùn)練數(shù)據(jù)。
在國(guó)內(nèi)大家對(duì)于數(shù)據(jù)隱私的保護(hù)還沒(méi)有那么強(qiáng)烈,是個(gè)應(yīng)用都要很多的權(quán)限,但是在海外,特別是歐洲國(guó)家,GDPR的管控是極其嚴(yán)格的,不合法的采集用戶(hù)隱私數(shù)據(jù)是會(huì)被發(fā)的傾家蕩產(chǎn)的。所以,如何能夠合法合規(guī)的利用海量的用戶(hù)數(shù)據(jù)進(jìn)行模型訓(xùn)練,提升模型的準(zhǔn)確度呢?
Google提出聯(lián)邦學(xué)習(xí)的概念,就是為了解決安卓手機(jī)的終端用戶(hù)在本地更新模型的問(wèn)題。
聯(lián)邦學(xué)習(xí)可以用下圖做一個(gè)簡(jiǎn)單的解釋?zhuān)?/p>
用戶(hù)的手機(jī)根據(jù)使用情況在移動(dòng)設(shè)備上用本地?cái)?shù)據(jù)訓(xùn)練本地模型(A),然后將許多用戶(hù)模型進(jìn)行更新匯總成為(B),當(dāng)形成對(duì)共享模型的共識(shí)后,統(tǒng)一更改共享模型(C)。然后重復(fù)此過(guò)程,從而不斷地優(yōu)化模型算法,并且這個(gè)過(guò)程充分的利用了所有移動(dòng)設(shè)備的算力。
https://img.fedai.org.cn/fedweb/1552916850679.pdf
聯(lián)邦學(xué)習(xí)的幾個(gè)特點(diǎn):
- 一個(gè)服務(wù)器,多個(gè)客戶(hù)端
- 數(shù)據(jù)非均勻的分布在不同位置的不同類(lèi)型的設(shè)備上
- 本地訓(xùn)練
- 客戶(hù)端是非全量
這個(gè)過(guò)程中,作為移動(dòng)服務(wù)商,并不會(huì)采集用戶(hù)的數(shù)據(jù),不需要把數(shù)據(jù)傳到服務(wù)器上,只需要在服務(wù)器(Server)和每一個(gè)節(jié)點(diǎn)(Worker)之間傳遞參數(shù)就可以了,就解決了數(shù)據(jù)隱私的問(wèn)題。
這個(gè)想法其實(shí)不是全新的,因?yàn)槲覀儼l(fā)現(xiàn)它和原來(lái)的MapReduce是一樣的,就是分布式計(jì)算的一種實(shí)現(xiàn)。但是,在機(jī)器學(xué)習(xí)領(lǐng)域過(guò)去卻是不可想象的,因?yàn)檫^(guò)去移動(dòng)設(shè)備的計(jì)算能力對(duì)于運(yùn)行任何機(jī)器學(xué)習(xí)模型都是有限的。而在2018年后期,配備人工智能芯片的手機(jī)越來(lái)越多,所以很多的機(jī)器學(xué)習(xí)模型都可以在移動(dòng)設(shè)備上運(yùn)行了。
聯(lián)邦學(xué)習(xí)的三種類(lèi)型
微眾銀行(WeBank)在2018年發(fā)布了聯(lián)邦學(xué)習(xí)的白皮書(shū)[3],這個(gè)白皮書(shū)將聯(lián)邦學(xué)習(xí)分為三類(lèi),橫向聯(lián)邦學(xué)習(xí),縱向聯(lián)邦學(xué)習(xí)和遷移聯(lián)邦學(xué)習(xí)。
橫向聯(lián)邦學(xué)習(xí)
橫向聯(lián)邦學(xué)習(xí)的特點(diǎn)是業(yè)務(wù)(特征)相似,但是用戶(hù)(樣本)不同,這種情況下的處理過(guò)程一般是這樣:
step1:參與方各自從服務(wù)器A下載最新模型;
step2:每個(gè)參與方利用本地?cái)?shù)據(jù)訓(xùn)練模型,加密梯度上傳給服務(wù)器A,服務(wù)器A聚合各用戶(hù)的梯度更新模型參數(shù);
step3:服務(wù)器A返回更新后的模型給各參與方;
step4:各參與方更新各自模型。
縱向聯(lián)邦學(xué)習(xí)
縱向聯(lián)邦學(xué)習(xí)的特點(diǎn)是分布式的數(shù)據(jù)集中大量的用戶(hù)重復(fù)(樣本),服務(wù)器利用這樣的數(shù)據(jù)來(lái)訓(xùn)練對(duì)應(yīng)的用戶(hù)的模型,但是并不獲取相關(guān)的數(shù)據(jù)。
如微眾銀行在下圖所示的場(chǎng)景:這種情況下,聯(lián)邦學(xué)習(xí)的架構(gòu)如下: [圖片上傳失敗...(image-2e73b2-1590226303545)]
- Step1:服務(wù)器向客戶(hù)端發(fā)送公鑰
- Step2:客戶(hù)端間交換中間的訓(xùn)練結(jié)果
- Step3:加密匯總后的梯度與損失數(shù)據(jù)
- Step4:更新模型
聯(lián)邦遷移學(xué)習(xí)
如何能夠再不交換數(shù)據(jù)的前提下進(jìn)行遷移學(xué)習(xí),這是聯(lián)邦遷移學(xué)習(xí)解決的問(wèn)題。適用于參與者間特征和樣本重疊都很少的場(chǎng)景,比如不同地區(qū)的銀行和商超間的聯(lián)合學(xué)習(xí)。
聯(lián)邦遷移學(xué)習(xí)的典型架構(gòu)如下:
- Step1:雙方交換公鑰
- Step2:雙方分別計(jì)算加密和交換中間訓(xùn)練結(jié)果
- Step3:雙方計(jì)算加密后的梯度,加上混淆碼發(fā)給對(duì)方
- Step4:雙方解密梯度,并交換,反混淆并更新本地的模型
聯(lián)邦學(xué)習(xí)的典型應(yīng)用場(chǎng)景
由于聯(lián)邦學(xué)習(xí)能夠解決數(shù)據(jù)隱私的問(wèn)題,并且能夠充分的利用算力,所以在不同的行業(yè)都收到了廣泛的應(yīng)用。
移動(dòng)服務(wù)
移動(dòng)服務(wù)是聯(lián)邦學(xué)習(xí)的起源行業(yè),所以在移動(dòng)服務(wù)領(lǐng)域,到處都是聯(lián)邦學(xué)習(xí)的場(chǎng)景。
比如通過(guò)聯(lián)邦學(xué)習(xí),提升圖片識(shí)別的準(zhǔn)確度,提升美顏的效果,訓(xùn)練更加準(zhǔn)確地分類(lèi)器等。
醫(yī)療健康
醫(yī)療健康數(shù)據(jù)領(lǐng)域?期存在“信息孤島”問(wèn)題,不同地區(qū)甚?不同醫(yī)院間的醫(yī)療數(shù)據(jù)沒(méi)有互聯(lián),也沒(méi)有統(tǒng)?的標(biāo)準(zhǔn)。聯(lián)邦學(xué)習(xí)可以繞過(guò)醫(yī)療機(jī)構(gòu)之間的信息壁壘,不考慮將各?數(shù)據(jù)做合并,?是通過(guò)協(xié)議在其間傳遞加密之后的信息,該加密過(guò)程具有?定的隱私保護(hù)機(jī)制,保證加密后的信息不會(huì)產(chǎn)?數(shù)據(jù)泄露。各個(gè)醫(yī)療機(jī)構(gòu)通過(guò)使?這些加密的信息更新模型參數(shù),從?實(shí)現(xiàn)在不暴露原始數(shù)據(jù)的條件下使?全部患者數(shù)據(jù)的訓(xùn)練過(guò)程。
物聯(lián)網(wǎng)
聯(lián)邦學(xué)習(xí)本身就是邊緣計(jì)算的一種體現(xiàn)形式,所以在物聯(lián)網(wǎng)設(shè)備的終端上,訓(xùn)練采集到的傳感器狀態(tài)數(shù)據(jù),從而進(jìn)行異常檢測(cè),告警壓縮等,也是典型的應(yīng)用場(chǎng)景。
聯(lián)邦學(xué)習(xí)與分布式機(jī)器學(xué)習(xí)的區(qū)別
從本質(zhì)上講,聯(lián)邦學(xué)習(xí)也是一種分布式機(jī)器學(xué)習(xí),但是它與分布式機(jī)器學(xué)習(xí)也有這幾個(gè)重大的區(qū)別。
Server與Worker的關(guān)系
分布式機(jī)器學(xué)習(xí)的服務(wù)器對(duì)Worker有著很強(qiáng)的控制力,甚至能夠下達(dá)指令關(guān)閉Worker節(jié)點(diǎn),而在聯(lián)邦學(xué)習(xí)的架構(gòu)中,Server對(duì)于Worker的控制力很弱,甚至是可以理解為沒(méi)有什么控制力。
拿典型的移動(dòng)服務(wù)場(chǎng)景就容易理解了,Worker是分布在全球的不同地區(qū)的不同位置的不同設(shè)備,什么時(shí)候開(kāi)機(jī),什么時(shí)候關(guān)機(jī)是不受中心節(jié)點(diǎn)控制的,所以這種情況下,Server與Worker之間的關(guān)系是相對(duì)松散的。
Worker節(jié)點(diǎn)的區(qū)別
分布式機(jī)器學(xué)習(xí)的每個(gè)節(jié)點(diǎn)基本上是均衡的,是有很高的相似乃至一致性的,而在聯(lián)邦學(xué)習(xí)的架構(gòu)里,Worker節(jié)點(diǎn)與節(jié)點(diǎn)之間的差距是非常大的,是完全隨機(jī)的。
還是用典型的移動(dòng)服務(wù)場(chǎng)景就很好理解,同樣的一個(gè)圖片訓(xùn)練的聯(lián)邦學(xué)習(xí)場(chǎng)景,節(jié)點(diǎn)與節(jié)點(diǎn)直接的差距是巨大的,有的是最新的華為Mate 40,有的是幾年前的手機(jī),所以性能是不一樣的。而且由于終端的訓(xùn)練數(shù)據(jù)集也不一樣,有的圖片很簡(jiǎn)單,很少,而有的則很復(fù)雜,所以訓(xùn)練的負(fù)載也不一樣,可能一個(gè)訓(xùn)練任務(wù)有的節(jié)點(diǎn)幾秒鐘就計(jì)算完畢,而有的節(jié)點(diǎn)則可能需要幾天。
成本構(gòu)成的區(qū)別
分布式機(jī)器學(xué)習(xí)架構(gòu)中節(jié)點(diǎn)間的通訊成本很低,主要的成本是計(jì)算成本,而在聯(lián)邦學(xué)習(xí)的架構(gòu)中,由于各個(gè)節(jié)點(diǎn)的不確定性很高,所以服務(wù)器與節(jié)點(diǎn)間的通信成本要高于傳統(tǒng)的分布式機(jī)器學(xué)習(xí)架構(gòu)。
聯(lián)邦學(xué)習(xí)展望
聯(lián)邦學(xué)習(xí)前景光明
移動(dòng)設(shè)備的不斷普及和增加,社會(huì)對(duì)于數(shù)據(jù)隱私,數(shù)據(jù)安全的關(guān)注越來(lái)越高,聯(lián)邦學(xué)習(xí)越來(lái)越受重視,也涌現(xiàn)出越來(lái)越多的支持聯(lián)邦學(xué)習(xí)的框架。
目前主流的聯(lián)邦學(xué)習(xí)開(kāi)源框架如下圖所示:
聯(lián)邦學(xué)習(xí)在中國(guó)
聯(lián)邦學(xué)習(xí)已經(jīng)成為了解決數(shù)據(jù)隱私問(wèn)題下機(jī)器學(xué)習(xí)的明日之星,形成了一個(gè)新的生態(tài),在這個(gè)生態(tài)里,中國(guó)的企業(yè)有著一定的影響力,其中以微眾銀行、平安科技、招商金科為代表,剛剛發(fā)布了《聯(lián)邦學(xué)習(xí)白皮書(shū) V2.0》。
引用
[1]https://arxiv.org/pdf/1511.03575.pdf