官术网_书友最值得收藏!

1.1.2 聯邦學習的定義與分類

聯邦學習本質上是一種分布式機器學習技術,或新的機器學習框架。接下來從參與者持有的數據特征和使用場景兩個角度對聯邦學習進行分類。

1.根據數據特征和樣本空間分類

根據不同的數據擁有者的數據特征與樣本ID分布的重疊關系,可以將聯邦學習劃分為以下幾類。

(1)橫向聯邦學習

橫向聯邦學習(Horizontal Federated Learning,HFL),也被稱為樣本分區(Sample-Partitioned)的聯邦學習。橫向聯邦學習適用于聯邦學習參與方的數據有重疊的數據特征,即數據特征在參與方之間是對齊的,但是參與方擁有的數據樣本是不同的。橫向聯邦學習限定各個聯邦成員提供的數據具有相同的特征含義,以及相近的模型參數結構(如在異質聯邦學習或者聯邦多任務學習等場景下可能不同)。使用參數聚合的方式生成聯邦模型。在推理過程中,聯邦成員內可單獨完成模型推理。橫向聯邦學習使得聯邦模型能夠學習多方數據特征,提升模型泛化能力。

(2)縱向聯邦學習

縱向聯邦學習(Vertical Federated Learning,VFL),也被稱為特征分區(Feature-Partitioned)的聯邦學習。與橫向聯邦學習不同,縱向聯邦學習限定各個聯邦成員提供的數據集樣本有足夠大的交集,特征具有互補性,模型參數分別存放于對應的聯邦成員內,并通過聯邦梯度下降等技術進行優化。在推理過程中,聯邦模型需要聯合所有參與方一起使用,由各個參與方依據自身的特征值和參數算出中間變量,最終由標簽擁有方或者可信第三方聚合中間變量獲得結果。縱向聯邦學習適合客群相近,但業務差別較大的場景。例如在風險評分應用中,可以使用縱向聯邦學習從借貸歷史、消費等不同維度幫助推理用戶風險。在推理過程中,聯邦成員需要合作完成模型推理。縱向聯邦學習使得模型能夠利用更多的數據特征,提升模型的準確度。

(3)聯邦遷移學習

聯邦遷移學習(Federated Transfer Learning,FTL),適用于參與方的數據樣本和數據特征重疊都很少的情況。聯邦遷移學習是一種特殊的形式,既不限定數據集的特征含義相同,也不需要樣本有交集,是一種在相似任務上傳播知識的方法。例如A公司是一家視頻服務提供商,需要提升廣告推薦模型的效果。B公司是一家電商公司,需要提升商品推薦模型的效果。在這種情況下,可以使用聯邦遷移學習,利用雙方相似的用戶瀏覽序列,抽取深層用戶行為特征作為知識,在雙方模型間共享和遷移,最終提升雙方模型的效果。可以看到,兩個聯邦成員的輸入數據的含義是不同的,客群是不同的(不需要找出相同樣本),預測目標也是不同的。相同之處在于雙方的業務均與用戶的喜好和習慣有關,而這些喜好和習慣可以作為知識共享,降低了模型過擬合的可能性,從而提升了模型效果。

2.從使用場景分類

根據使用場景可以將聯邦學習分為跨豎井(跨孤島)聯邦學習(Cross-Silo Federated Learning)和跨設備聯邦學習(Cross-Device Federated Learning)。為了便于理解,本書將跨豎井(跨孤島)聯邦學習稱為跨組織聯邦學習。在其他文獻中,聯邦學習也被分為面向商業的聯邦學習與面向用戶的聯邦學習。兩種分類標準非常接近,可以認為是另一種形式的表達。跨組織聯邦學習與跨設備聯邦學習的主要區別體現在參與者數量、聯邦參與者算力的多少,以及參與者是否能夠穩定地參與每個回合的聯邦學習(是否會離線)。兩者的更多對比見表1-1。

表1-1 跨組織聯邦學習與跨設備聯邦學習的比較

(1)跨組織聯邦學習

跨組織聯邦學習也叫作跨孤島、跨豎井聯邦學習。聯邦學習的參與者是不同的組織,例如醫療機構、金融機構,以及地理空間意義上的分布式數據中心。當數據分散在不同的但是數量有限的組織中,而且每個組織能提供穩定的學習環境時,稱為跨組織聯邦學習。這可能是對商業利益的考慮或者法律的限制。即使是一個公司的不同地區的分布,也可能受限于所在地的法律,禁止將數據傳輸到本地之外。多方風險預測、欺詐檢測、醫療領域的藥物發現、電子醫療記錄挖掘,以及醫療圖像分析將是跨組織聯邦學習未來研究的主流熱點。

(2)跨設備聯邦學習

顧名思義,跨設備聯邦學習將每一個連接設備視為獨立個體,模型在設備上訓練,得到能捕捉設備數據特征的模型,然后模型被傳輸到服務器進行全局模型的聚合。跨設備聯邦學習系統中的設備可能會達到數萬甚至數百萬的規模(如谷歌公司的Gboard鍵盤、蘋果公司的輸入法和Siri語音識別功能等)。設備算力的受限和網絡連接的不穩定是聯邦學習的主要特征。因此跨設備聯邦學習需要考慮系統的大規模部署、參與者頻繁的連入與退出。需要設計專門的魯棒、高效的模型聚合算法提升系統學習效率。

主站蜘蛛池模板: 潮安县| 茌平县| 灵台县| 商水县| 桃江县| 黔西县| 饶平县| 龙井市| 漳州市| 新泰市| 潮州市| 彭泽县| 吐鲁番市| 普兰县| 罗江县| 尤溪县| 德令哈市| 翁源县| 桐城市| 宁都县| 都匀市| 余姚市| 竹山县| 香港 | 清徐县| 古交市| 大埔县| 从江县| 浦东新区| 宽城| 阿图什市| 绥棱县| 巴楚县| 固镇县| 浦县| 湖州市| 和硕县| 沁水县| 克什克腾旗| 海南省| 三原县|