寫作背景
聯(lián)邦學習迅速成了產(chǎn)業(yè)界的寵兒,很多互聯(lián)網(wǎng)企業(yè)紛紛投入研發(fā)資源,并進行市場布局。這項技術(shù)于2016年被谷歌提出,在2019年年初被引入國內(nèi),在2020年即已出現(xiàn)數(shù)十家企業(yè)提供的產(chǎn)品,并出現(xiàn)了大規(guī)模的商業(yè)應用,這種速度在新技術(shù)應用中實屬罕見。
究其原因,是因為聯(lián)邦學習可以解決企業(yè)之間的“數(shù)據(jù)孤島”問題,讓企業(yè)可以通過使用更多的數(shù)據(jù)提高AI模型的效果,為用戶提供更便捷的個性化服務。同時,在這個過程中數(shù)據(jù)是安全的,用戶的隱私信息不會被輸出和泄露,因此這項技術(shù)不但不會損害合作企業(yè)的利益,而且可以為其帶來額外的收益。對于用戶而言,他們既可以享受個性化服務質(zhì)量的提升,又不用擔心具體隱私信息的傳播,有利而無害,因此愿意授權(quán)互聯(lián)網(wǎng)服務商通過這種安全的方式使用外部數(shù)據(jù)。對于市場監(jiān)管而言,這種方式的跨企業(yè)數(shù)據(jù)服務不是直接復制數(shù)據(jù),而是需要通過聯(lián)邦網(wǎng)絡,由聯(lián)邦參與方共同確認才能產(chǎn)生結(jié)果,這解決了使用傳統(tǒng)方式造成的數(shù)據(jù)被任意復制、難以監(jiān)管的難題。
從技術(shù)層面來看,聯(lián)邦學習是密碼學、分布式計算、機器學習三個學科交叉的技術(shù),涉及面較廣,部署實施難度大,很多具體問題需要跨領域的綜合知識才能解決。一方面,在人才市場中擁有這種綜合知識的人才十分稀缺,很多項目都面臨無人可用的困境。另一方面,越來越多的人關(guān)注到聯(lián)邦學習這個新興技術(shù),希望系統(tǒng)地掌握聯(lián)邦學習的原理,并在產(chǎn)業(yè)應用中解決具體問題。不幸的是,市面上相關(guān)的書籍還很少,網(wǎng)絡博文往往不夠系統(tǒng)和深入。我們在聯(lián)邦學習產(chǎn)品化、產(chǎn)業(yè)實戰(zhàn)過程中積累了大量經(jīng)驗,撰寫了這本關(guān)于技術(shù)與實戰(zhàn)的書,希望幫助讀者更好地掌握聯(lián)邦學習。我們也希望與互聯(lián)網(wǎng)伙伴一起,組建更大的聯(lián)邦網(wǎng)絡,在確保用戶隱私數(shù)據(jù)安全的前提下,為用戶提供更優(yōu)質(zhì)的服務,促進跨企業(yè)大數(shù)據(jù)行業(yè)的健康發(fā)展。
如何閱讀本書?
本書詳細地闡述了聯(lián)邦學習的相關(guān)概念,同時給出了較多案例,適合對聯(lián)邦學習感興趣的讀者閱讀。本書在必要之處給出數(shù)學公式,讀者在閱讀這些小節(jié)時需要具備統(tǒng)計學的基礎知識。
我們對本書進行了系統(tǒng)性的編排和統(tǒng)籌。本書共12章,包括聯(lián)邦學習基礎、具體的聯(lián)邦學習算法、聯(lián)邦學習的產(chǎn)業(yè)應用和展望三大部分。各個部分相對獨立,讀者可依據(jù)目標和興趣進行有選擇性地重點閱讀。
第1章~第3章為聯(lián)邦學習基礎,旨在幫助讀者了解聯(lián)邦學習的市場背景、技術(shù)現(xiàn)狀,以及基礎的隱私保護技術(shù)、機器學習技術(shù)和分布式計算技術(shù)。建議聯(lián)邦學習的初學者和求職者重點閱讀這個部分,借以梳理清楚聯(lián)邦學習的基本問題和基本技術(shù)。第1章從全局的角度概述了聯(lián)邦學習的基本問題,用于建立對聯(lián)邦學習的總體認識,主要由陳玉林和范昊撰寫。第2章介紹多方計算和隱私保護,是聯(lián)邦學習成功地解決數(shù)據(jù)孤島問題,實現(xiàn)跨企業(yè)大數(shù)據(jù)融合的關(guān)鍵,主要由周帥撰寫。第3章介紹傳統(tǒng)機器學習,包括基本概念、方法和效果評價,是聯(lián)邦學習建立聯(lián)合模型、有效地利用多方數(shù)據(jù)解決業(yè)務問題的基礎,主要由王帝撰寫。
第4章~第8章為具體的聯(lián)邦學習算法,旨在幫助讀者了解具體算法的應用背景、特點和擴展方法,進而幫助讀者根據(jù)需求選擇合適的算法,適合聯(lián)邦學習從業(yè)者進行重點閱讀。第4章介紹聯(lián)邦交集計算的相關(guān)理論和具體方法,用于提供聯(lián)邦數(shù)據(jù)之間的對應關(guān)系,主要由王森和何天琪撰寫。第5章介紹聯(lián)邦特征工程的相關(guān)理論和具體方法,用于為聯(lián)邦學習提供符合業(yè)務需求的輸入數(shù)據(jù),同時還可以減少噪聲、提高效率等,主要由張一凡撰寫。第6章~第8章分別介紹縱向聯(lián)邦學習、橫向聯(lián)邦學習和聯(lián)邦遷移學習這三種方案的架構(gòu)、方法和案例?v向聯(lián)邦學習用于解決相同用戶在不同企業(yè)場景中產(chǎn)生的數(shù)據(jù)的聯(lián)合建模問題,主要由陳忠和李怡欣撰寫。橫向聯(lián)邦學習用于解決不同用戶在相同場景中產(chǎn)生的數(shù)據(jù)的聯(lián)合建模問題,主要由敖濱和張潤澤撰寫。聯(lián)邦遷移學習用于解決不同用戶在不同場景中產(chǎn)生的數(shù)據(jù)的聯(lián)合建模問題,主要由王森撰寫。
第9章~第12章為聯(lián)邦學習的產(chǎn)業(yè)應用和展望,旨在幫助讀者了解聯(lián)邦學習技術(shù)的商業(yè)應用現(xiàn)狀、挑戰(zhàn)、趨勢,以及與數(shù)據(jù)資產(chǎn)和要素市場的關(guān)聯(lián),據(jù)此引發(fā)讀者進一步思考。該部分較為宏觀,涉及面廣,適合聯(lián)邦學習相關(guān)的項目管理者重點閱讀。第9章介紹了常見的開源架構(gòu)、訓練服務和推理架構(gòu),并對具體部署過程中遇到的通信、資源不足等問題給出了優(yōu)化方案,主要由張德、陳行、閆玉成、孫浩博、黃樂樂、肖祥文撰寫。第10章介紹產(chǎn)業(yè)案例,包括聯(lián)邦學習在醫(yī)療健康、金融產(chǎn)品廣告投放、風控金融等場景中的應用,主要由王博、季澈和石薇撰寫。第11章從數(shù)據(jù)自身價值出發(fā)闡述數(shù)據(jù)資產(chǎn)的相關(guān)概念和特征,據(jù)此引出聯(lián)邦學習應用中的激勵機制和定價模型,主要由吳極、孫果和周帥撰寫。第12章介紹聯(lián)邦學習的挑戰(zhàn)和可擴展性,由陳玉林和陳曉霖撰寫。
致謝
本書是很多人共同努力的結(jié)果,在此感謝各位作者的辛勤付出。同時,在本書后期的整理和內(nèi)容統(tǒng)籌過程中,何彥婷、劉云、孟璐、張竹清等同事做出了貢獻,在此表示衷心的感謝。
我們要感謝劉威老師,經(jīng)過劉威老師的介紹,我們和電子工業(yè)出版社的石悅編輯相識,最終達成了合作。在審稿過程中,石悅編輯多次邀請專家給出寶貴意見,對書稿的修改完善起到了重要作用。在此感謝石悅編輯對本書的重視,以及為本書出版所做的一切。
由于作者水平有限,書中不足之處在所難免。此外,由于聯(lián)邦學習方興未艾,技術(shù)不斷完善,新算法層出不窮,本書難免有所遺漏,敬請專家和讀者批評指正。
彭南博 王虎
2020年12月
第1章 / 聯(lián)邦學習的研究與發(fā)展現(xiàn)狀
1.1 聯(lián)邦學習的背景
1.2 大數(shù)據(jù)時代的挑戰(zhàn):數(shù)據(jù)孤島
1.2.1 “數(shù)據(jù)孤島”的成因
1.2.2 具體實例
1.2.3 數(shù)據(jù)互聯(lián)的發(fā)展與困境
1.2.4 解決“數(shù)據(jù)孤島”問題的難點與聯(lián)邦學習的優(yōu)勢
1.3 聯(lián)邦學習的定義和基本術(shù)語
1.3.1 聯(lián)邦學習的定義
1.3.2 聯(lián)邦學習的基本術(shù)語
1.4 聯(lián)邦學習的分類及適用范圍
1.4.1 縱向聯(lián)邦學習
1.4.2 橫向聯(lián)邦學習
1.4.3 聯(lián)邦遷移學習
1.5 典型的聯(lián)邦學習生命周期
1.5.1 模型訓練
1.5.2 在線推理
1.6 聯(lián)邦學習的安全性與可靠性
1.6.1 安全多方計算
1.6.2 差分隱私
1.6.3 同態(tài)加密
1.6.4 應對攻擊的健壯性
第2章 / 多方計算與隱私保護
2.1 多方計算
2.2 基本假設與隱私保護技術(shù)
2.2.1 安全模型
2.2.2 隱私保護的目標
2.2.3 三種隱私保護技術(shù)及其關(guān)系
2.3 差分隱私
2.3.1 差分隱私的基本概念
2.3.2 差分隱私的性質(zhì)
2.3.3 差分隱私在聯(lián)邦學習中的應用
2.4 同態(tài)加密
2.4.1 密碼學簡介
2.4.2 同態(tài)加密算法的優(yōu)勢
2.4.3 半同態(tài)加密算法
2.4.4 全同態(tài)加密算法
2.4.5 半同態(tài)加密算法在聯(lián)邦學習中的應用
2.5 安全多方計算
2.5.1 百萬富翁問題
2.5.2 安全多方計算中的密碼協(xié)議
2.5.3 安全多方計算在聯(lián)邦學習中的應用
第3章 / 傳統(tǒng)機器學習
3.1 統(tǒng)計機器學習的簡介
3.1.1 統(tǒng)計機器學習的概念
3.1.2 數(shù)據(jù)結(jié)構(gòu)與術(shù)語
3.1.3 機器學習算法示例
3.2 分布式機器學習的簡介
3.2.1 分布式機器學習的背景
3.2.2 分布式機器學習的并行模式
3.2.3 分布式機器學習對比聯(lián)邦學習
3.3 特征工程
3.3.1 錯誤及缺失處理
3.3.2 數(shù)據(jù)類型
3.3.3 特征工程方法
3.4 最優(yōu)化算法
3.4.1 最優(yōu)化問題
3.4.2 解析方法
3.4.3 一階優(yōu)化算法
3.4.4 二階優(yōu)化算法
3.5 模型效果評估
3.5.1 效果評估方法
3.5.2 效果評估指標
第4章 / 聯(lián)邦交集計算
4.1 聯(lián)邦交集計算介紹
4.1.1 基于公鑰加密體制的方法
4.1.2 基于混亂電路的方法
4.1.3 基于不經(jīng)意傳輸協(xié)議的方法
4.1.4 其他方法
4.2 聯(lián)邦交集計算在聯(lián)邦學習中的應用
4.2.1 實體解析與縱向聯(lián)邦學習
4.2.2 非對稱縱向聯(lián)邦學習
4.2.3 聯(lián)邦特征匹配
第5章 / 聯(lián)邦特征工程
5.1 聯(lián)邦特征工程概述
5.1.1 聯(lián)邦特征工程的特點
5.1.2 傳統(tǒng)特征工程和聯(lián)邦特征工程的對比
5.2 聯(lián)邦特征優(yōu)化
5.2.1 聯(lián)邦特征評估
5.2.2 聯(lián)邦特征處理
5.2.3 聯(lián)邦特征降維
5.2.4 聯(lián)邦特征組合
5.2.5 聯(lián)邦特征嵌入
5.3 聯(lián)邦單變量分析
5.3.1 聯(lián)邦單變量基礎分析
5.3.2 聯(lián)邦WOE和IV計算
5.3.3 聯(lián)邦PSI和CSI計算
5.3.4 聯(lián)邦KS和LIFT計算
5.4 聯(lián)邦自動特征工程
5.4.1 聯(lián)邦超參數(shù)優(yōu)化
5.4.2 聯(lián)邦超頻優(yōu)化
5.4.3 聯(lián)邦神經(jīng)結(jié)構(gòu)搜索
第6章 / 縱向聯(lián)邦學習
6.1 基本假設及定義
6.2 縱向聯(lián)邦學習的架構(gòu)
6.3 聯(lián)邦邏輯回歸
6.4 聯(lián)邦隨機森林
6.5 聯(lián)邦梯度提升樹
6.5.1 XGBoost簡介
6.5.2 SecureBoost簡介
6.5.3 SecureBoost訓練
6.5.4 SecureBoost推理
6.6 聯(lián)邦學習深度神經(jīng)網(wǎng)絡
6.7 縱向聯(lián)邦學習案例
第7章 / 橫向聯(lián)邦學習
7.1 基本假設與定義
7.2 橫向聯(lián)邦網(wǎng)絡架構(gòu)
7.2.1 中心化架構(gòu)
7.2.2 去中心化架構(gòu)
7.3 聯(lián)邦平均算法概述
7.3.1 在橫向聯(lián)邦學習中優(yōu)化問題的一些特點
7.3.2 聯(lián)邦平均算法
7.3.3 安全的聯(lián)邦平均算法
7.4 橫向聯(lián)邦學習應用于輸入法
第8章 / 聯(lián)邦遷移學習
8.1 基本假設與定義
8.1.1 遷移學習的現(xiàn)狀
8.1.2 圖像中級特征的遷移
8.1.3 從文本分類到圖像分類的遷移
8.1.4 聯(lián)邦遷移學習的提出
8.2 聯(lián)邦遷移學習架構(gòu)
8.3 聯(lián)邦遷移學習方法
8.3.1 多項式近似
8.3.2 加法同態(tài)加密
8.3.3 ABY
8.3.4 SPDZ
8.3.5 基于加法同態(tài)加密進行安全訓練和預測
8.3.6 基于ABY和SPDZ進行安全訓練
8.3.7 性能分析
8.4 聯(lián)邦遷移學習案例
8.4.1 應用場景
8.4.2 聯(lián)邦遷移強化學習
8.4.3 遷移學習的補充閱讀材料
第9章 / 聯(lián)邦學習架構(gòu)揭秘與優(yōu)化實戰(zhàn)
9.1 常見的分布式機器學習架構(gòu)介紹
9.2 聯(lián)邦學習開源框架介紹
9.2.1 TensorFlow Federated
9.2.2 FATE框架
9.2.3 其他開源框架
9.3 訓練服務架構(gòu)揭秘
9.4 推理架構(gòu)揭秘
9.5 調(diào)優(yōu)案例分析
9.5.1 特征工程調(diào)優(yōu)
9.5.2 訓練過程的通信過程調(diào)優(yōu)
9.5.3 加密的密鑰長度
9.5.4 隱私數(shù)據(jù)集求交集過程優(yōu)化
9.5.5 服務器資源優(yōu)化
9.5.6 推理服務優(yōu)化
第10章 / 聯(lián)邦學習的產(chǎn)業(yè)案例
10.1 醫(yī)療健康
10.1.1 患者死亡可能性預測
10.1.2 醫(yī)療保健
10.1.3 聯(lián)邦學習在醫(yī)療領域中的其他應用
10.2 金融產(chǎn)品的廣告投放
10.3 金融風控
10.3.1 數(shù)據(jù)方之間的聯(lián)邦學習
10.3.2 數(shù)據(jù)方與金融機構(gòu)之間的聯(lián)邦學習
10.4 其他應用
10.4.1 聯(lián)邦學習應用于推薦領域
10.4.2 聯(lián)邦學習與無人機
10.4.3 聯(lián)邦學習與新型冠狀病毒肺炎監(jiān)測
第11章 / 數(shù)據(jù)資產(chǎn)定價與激勵機制
11.1 數(shù)據(jù)資產(chǎn)的相關(guān)概念及特點
11.1.1 大數(shù)據(jù)時代背景
11.1.2 數(shù)據(jù)資產(chǎn)的定義
11.1.3 數(shù)據(jù)資產(chǎn)的特點
11.1.4 數(shù)據(jù)市場
11.2 數(shù)據(jù)資產(chǎn)價值的評估與定價
11.2.1 數(shù)據(jù)資產(chǎn)價值的主要影響因素
11.2.2 數(shù)據(jù)資產(chǎn)價值的評估方案
11.2.3 數(shù)據(jù)資產(chǎn)的定價方案
11.3 激勵機制
11.3.1 貢獻度量化方案
11.3.2 收益分配方案
11.3.3 數(shù)據(jù)資產(chǎn)定價與激勵機制的關(guān)系
第12章 / 聯(lián)邦學習面臨的挑戰(zhàn)和可擴展性
12.1 聯(lián)邦學習面臨的挑戰(zhàn)
12.1.1 通信與數(shù)據(jù)壓縮
12.1.2 保護用戶隱私數(shù)據(jù)
12.1.3 聯(lián)邦學習優(yōu)化
12.1.4 模型的魯棒性
12.1.5 聯(lián)邦學習的公平性
12.2 聯(lián)邦學習與區(qū)塊鏈結(jié)合
12.2.1 王牌技術(shù)
12.2.2 可信媒介
12.2.3 對比異同
12.2.4 強強聯(lián)合
12.3 聯(lián)邦學習與其他技術(shù)結(jié)合