安全聯(lián)邦學(xué)習(xí)-工作流FL
一、什么是安全聯(lián)邦學(xué)習(xí)-工作流模式
功能介紹:通過(guò)工作流的模式,在原始數(shù)據(jù)不出域的前提下,通過(guò)交換各個(gè)參與方的算法訓(xùn)練的中間結(jié)果梯度、參數(shù)信息,或完全在密文條件下進(jìn)行計(jì)算,從而發(fā)揮參與多方數(shù)據(jù)樣本更豐富、更全面的優(yōu)勢(shì),得出更優(yōu)模型。
安全聯(lián)邦學(xué)習(xí),分為橫向安全聯(lián)邦學(xué)習(xí)、縱向安全聯(lián)邦學(xué)習(xí)。其中,縱向安全聯(lián)邦學(xué)習(xí),聯(lián)合多個(gè)參與者的共同樣本的不同數(shù)據(jù)特征進(jìn)行安全聯(lián)邦學(xué)習(xí),即各個(gè)參與者的訓(xùn)練數(shù)據(jù)是縱向劃分的。橫向安全聯(lián)邦學(xué)習(xí),聯(lián)合多個(gè)參與者的具有相同特征的多行樣本進(jìn)行安全聯(lián)邦學(xué)習(xí),即各個(gè)參與者的訓(xùn)練數(shù)據(jù)是橫向劃分的。
二、哪些場(chǎng)景適合用安全聯(lián)邦學(xué)習(xí)?
適用場(chǎng)景:縱向安全聯(lián)邦學(xué)習(xí),適用于參與者訓(xùn)練樣本ID重疊較多,而數(shù)據(jù)特征重疊較少的情況,例如某銀行和某電商平臺(tái),分別擁有一部分客戶數(shù)據(jù),擁有的客戶特征不一樣,銀行擁有客戶的金融信用數(shù)據(jù),電商擁有客戶的電商消費(fèi)數(shù)據(jù),期望聯(lián)合兩方數(shù)據(jù)訓(xùn)練精準(zhǔn)營(yíng)銷模型,則適合使用縱向安全聯(lián)邦學(xué)習(xí)。橫向安全聯(lián)邦學(xué)習(xí),適用于參與者的數(shù)據(jù)特征重疊較多,而樣本ID重疊較少的情況,例如兩家銀行,分別擁有一部分客戶數(shù)據(jù),擁有的客戶特征相似,但各自數(shù)據(jù)偏少,期望聯(lián)合兩方數(shù)據(jù)訓(xùn)練共同訓(xùn)練評(píng)分卡模型,則適合使用橫向安全聯(lián)邦學(xué)習(xí)。
三、安全聯(lián)邦學(xué)習(xí)已支持的能力
用途 | 算法分類 | 已支持算法 |
分類 | 決策樹(shù) | XGBoostWithDp GBDTWithDp |
邏輯回歸 | LogisticRegressionWithHe | |
神經(jīng)網(wǎng)絡(luò) | 神經(jīng)網(wǎng)絡(luò)MLP | |
回歸 | 線性回歸 | LinearRegressionWithHe |
神經(jīng)網(wǎng)絡(luò) | 神經(jīng)網(wǎng)絡(luò)MLP |
四、如何進(jìn)行安全聯(lián)邦學(xué)習(xí)
以內(nèi)置模板為例:
1、聯(lián)邦數(shù)據(jù)輸入:
收集和準(zhǔn)備原始數(shù)據(jù),包括數(shù)據(jù)輸入和虛擬關(guān)聯(lián),使得用戶能夠在形式上以單機(jī)的方式使用聯(lián)邦學(xué)習(xí)雙方的數(shù)據(jù)。
note:所有的數(shù)據(jù)均保存在持有方本地,本身絕對(duì)保密。虛擬關(guān)聯(lián)僅是在形式上模擬為同一份數(shù)據(jù),以方便用戶搭建順利。
2、數(shù)據(jù)拆分
將數(shù)據(jù)拆分為訓(xùn)練集和測(cè)試集,用于驗(yàn)證模型的各項(xiàng)指標(biāo)數(shù)據(jù)。
note:在模板中,選擇了拆分比例80%,即80%數(shù)據(jù)用于訓(xùn)練(輸出表1),20%數(shù)據(jù)用于測(cè)試(輸出表2)。用戶可自行調(diào)整需求。
3、訓(xùn)練側(cè)特征工程
選擇和提取有用的特征,包括特征選擇、特征變換、特征抽取和特征組合等。其中,對(duì)于Category特征和Numeric特征,均有對(duì)應(yīng)的處理方案,詳見(jiàn)組件說(shuō)明。特征工程的配置可輸出,供預(yù)測(cè)和評(píng)估流程使用。
4、測(cè)試側(cè)特征工程
選擇和提取有用的特征,包括特征選擇、特征變換、特征抽取和特征組合等。其中,對(duì)于Category特征和Numeric特征,均有對(duì)應(yīng)的處理方案,詳見(jiàn)組件說(shuō)明。特征工程的配置由輸入的配置文件確定,用戶也可自行設(shè)定。
5、模型訓(xùn)練和預(yù)測(cè)
選擇合適的算法和模型,訓(xùn)練模型并進(jìn)行調(diào)參和優(yōu)化。目前聯(lián)邦學(xué)習(xí)模型可以選擇XGBoost、Logistic Regression、DNN等。
6、模型評(píng)估
使用各種評(píng)估指標(biāo)和技術(shù)對(duì)模型進(jìn)行評(píng)估,用戶可以自行使用交叉驗(yàn)證等方法,測(cè)試不同數(shù)據(jù)集的混淆矩陣、AUC、KS等各項(xiàng)指標(biāo)。