岳靖軒, 陳志雨, 劉 鋼
(長春工業(yè)大學(xué) 計(jì)算機(jī)科學(xué)與工程學(xué)院, 吉林 長春 130102)
當(dāng)前,個(gè)性化金融服務(wù)是金融機(jī)構(gòu)保持市場競爭力的重要方向,金融機(jī)構(gòu)根據(jù)企業(yè)或個(gè)人以往的交易記錄、社會信用等信息完成建模畫像,實(shí)現(xiàn)違約風(fēng)險(xiǎn)識別、銀行貸款個(gè)性化定價(jià)[1]等業(yè)務(wù),結(jié)合內(nèi)部資金轉(zhuǎn)移定價(jià)(FTP)模式優(yōu)化配置資源、合理引導(dǎo)定價(jià),逐漸形成為不同客戶提供科學(xué)評價(jià)和定制化的金融服務(wù)。
中小型銀行業(yè)務(wù)范疇相對單一,采集到的本地?cái)?shù)據(jù)量維度稀疏。生產(chǎn)中為了解決這一問題,不同行業(yè)將數(shù)據(jù)上傳至公共數(shù)據(jù)平臺,根據(jù)用戶的身份信息將數(shù)據(jù)對齊。該方法雖能解決數(shù)據(jù)稀疏和特征空間不足的問題,卻未能保障數(shù)據(jù)的隱私與安全性。聯(lián)邦學(xué)習(xí)的出現(xiàn),有利于打破數(shù)據(jù)孤島,實(shí)現(xiàn)企業(yè)之間聯(lián)合建模,通過更高維度的數(shù)據(jù)和更多的樣本來提高模型的建模能力。王健宗等[2]提出讓參與方將數(shù)據(jù)存儲在本地不進(jìn)行傳輸,只交換模型參數(shù),有效防止了第三方或參與方惡意竊取敏感數(shù)據(jù),聯(lián)邦學(xué)習(xí)模型訓(xùn)練流程如圖1所示。
圖1 聯(lián)邦學(xué)習(xí)模型訓(xùn)練流程
鄧涵宇[3]提出通過聯(lián)邦學(xué)習(xí)聯(lián)合多個(gè)參與方建模,解決了小微型信貸行業(yè)數(shù)據(jù)維度稀疏、數(shù)據(jù)來源少、覆蓋范圍不足的問題。
已有的聯(lián)邦學(xué)習(xí)大多采用單個(gè)算法進(jìn)行聯(lián)合建模,容易引發(fā)過擬合,影響模型的魯棒性。文獻(xiàn)[4-5]表明,集成學(xué)習(xí)在預(yù)測性能和泛化能力上優(yōu)于單個(gè)模型算法。受此啟發(fā),張艷艷[6]提出通過集成學(xué)習(xí)來構(gòu)建個(gè)性化貸款業(yè)務(wù)的定價(jià)模型,將集成方法融入聯(lián)邦學(xué)習(xí)中,模型通過多個(gè)“好而不同”的聯(lián)邦學(xué)習(xí)基學(xué)習(xí)器共同訓(xùn)練參與方本地?cái)?shù)據(jù),提高聯(lián)邦學(xué)習(xí)算法的泛化能力,能更有效地處理異常數(shù)據(jù)。實(shí)驗(yàn)結(jié)果表明,Stacked-FL集成算法對中小型企業(yè)數(shù)據(jù)維度稀疏、安全性差、模型泛化能力差的問題起到了顯著的緩解作用[7]。
綜上所述,文中將聯(lián)邦學(xué)習(xí)與集成方法相結(jié)合。
1)提出了融合集成學(xué)習(xí)模式的聯(lián)邦學(xué)習(xí)框架,顯著提高了小維度數(shù)據(jù)建模的安全性與模型預(yù)測的準(zhǔn)確性。
2)增強(qiáng)了聯(lián)邦模型的泛化能力,對異常值的處理更具魯棒性。
貸款定價(jià)的方法主要有兩種:專家評估法和模型評分法,前者需要耗費(fèi)大量的人力且評估尺度難以統(tǒng)一;后者更為高效和公平,因此更符合小型銀行的需求[8-9]。劉昊辰[10]提出一種基于XGBoost的農(nóng)村中小金融機(jī)構(gòu)貸款利率定價(jià)研究,證明了XGBoost對中小型數(shù)據(jù)集在定價(jià)準(zhǔn)確性上,要優(yōu)于其他機(jī)器學(xué)習(xí)算法及專家評估法。該方法通過建立重視客戶的數(shù)據(jù)庫,擴(kuò)充了實(shí)驗(yàn)的樣本數(shù)量和樣本維度,有效解決了中小金融機(jī)構(gòu)由于數(shù)據(jù)維度低及樣本稀少的困擾,但在建立公共數(shù)據(jù)庫的過程中容易暴露用戶的隱私,參與方和第三方數(shù)據(jù)庫可以竊取用戶的隱私數(shù)據(jù),在數(shù)據(jù)傳輸過程中也有被竊取的可能[11],無法保障用戶隱私的安全。
為了提高貸款定價(jià)模型的性能,Li M X等[12]將集成模型和卷積神經(jīng)網(wǎng)絡(luò)(CNN)相結(jié)合,提出了Stacking CNN的貸款預(yù)測模型。集成算法先訓(xùn)練多個(gè)算法作為基學(xué)習(xí)器,并對數(shù)據(jù)進(jìn)行切分處理,Stacking集成學(xué)習(xí)流程如圖2所示。
圖2 Stacking集成學(xué)習(xí)流程
將訓(xùn)練結(jié)果作為特征輸入到元學(xué)習(xí)器中訓(xùn)練,得到最終結(jié)果。該模型發(fā)揮了Stacking集成方法的泛化能力,提高了模型預(yù)測的準(zhǔn)確性,證明Stacking集成方法適用于貸款定價(jià)模型,且效果要優(yōu)于傳統(tǒng)的單個(gè)模型[13]。
采用集成學(xué)習(xí)的優(yōu)勢在于:
1)從統(tǒng)計(jì)學(xué)角度來說,算法結(jié)合多個(gè)學(xué)習(xí)器,提高了模型的泛化性能;
2)從計(jì)算角度來說,降低了陷入局部極小值的可能性;
3)從表示的角度來看,擴(kuò)大了假設(shè)空間,可能得到更近似真實(shí)值的預(yù)測結(jié)果。但是仍然受限于數(shù)據(jù)集維度及樣本數(shù)量,對于維度稀疏的數(shù)據(jù)集無法精準(zhǔn)預(yù)測。
Cheng K W等[14]提出一種新的基于聯(lián)邦學(xué)習(xí)的無損隱私保護(hù)樹增強(qiáng)系統(tǒng)(SecureBoost),該算法將梯度樹增強(qiáng)算法無損地應(yīng)用到聯(lián)邦學(xué)習(xí)中。為了防止標(biāo)簽信息被參與方竊取,還提出了更安全的完全SecureBoost,構(gòu)建的第一棵子樹由任務(wù)發(fā)起方構(gòu)造,數(shù)據(jù)提供方只能拿到第一棵樹的訓(xùn)練結(jié)果。張君如等[15]提出一種基于聯(lián)邦學(xué)習(xí)的安全樹(FLSectree)算法預(yù)測用戶行為,通過更新實(shí)例空間尋找最佳的分裂點(diǎn),收斂后更新參數(shù),在保障隱私的前提下,未降低預(yù)測的準(zhǔn)確度,減少參與方通信的次數(shù),節(jié)約了預(yù)測時(shí)間和通信資源。
綜上所述,傳統(tǒng)機(jī)器學(xué)習(xí)解決中小型銀行個(gè)性化貸款定價(jià)的缺點(diǎn)在于安全性不能得到保障。為了提升安全性和準(zhǔn)確性,文中將聯(lián)邦學(xué)習(xí)與集成算法相結(jié)合,用于中小型銀行貸款定價(jià)。SecureBoost作為集成算法中的基學(xué)習(xí)器,相比SecureBoost,同樣在保證數(shù)據(jù)安全的前提下,預(yù)測效果和泛化能力進(jìn)一步提升。
為了保證用戶的隱私安全,實(shí)現(xiàn)多個(gè)參與方使用本地小維度數(shù)據(jù)集訓(xùn)練模型,并做出精準(zhǔn)的預(yù)測。文中構(gòu)建了縱向聯(lián)邦學(xué)習(xí)集成模型,其中基學(xué)習(xí)器選擇線性回歸(Linear)、泊松回歸(Poisson)和SecureBoost。實(shí)驗(yàn)包含數(shù)據(jù)預(yù)處理模塊、加密實(shí)體對齊模塊、聯(lián)邦算法模塊、集成模塊。
1)首先標(biāo)簽持有方發(fā)起聯(lián)邦學(xué)習(xí)任務(wù),參與方分別對本地?cái)?shù)據(jù)進(jìn)行預(yù)處理后,再用RSA加密算法對每個(gè)參與方本地?cái)?shù)據(jù)進(jìn)行加密,并完成加密實(shí)體對齊。
2)由中央服務(wù)器向數(shù)據(jù)持有方及數(shù)據(jù)提供方發(fā)送基學(xué)習(xí)器初始化參數(shù){mA1,mA2,…,mAn}、{mB1,mB2,…,mBn},n為基學(xué)習(xí)器的數(shù)量。對基學(xué)習(xí)器參數(shù)進(jìn)行更新后,模型根據(jù)本地?cái)?shù)據(jù)集進(jìn)行K折交叉驗(yàn)證,兩個(gè)參與方將梯度K組[{gA1,gA2,…,gAn},{gB1,gB2,…,gBn}]加密后發(fā)送到中心服務(wù)器,經(jīng)過聚合完成一次迭代,迭代多次后擬合得到最優(yōu)全局模型。該方法相比單個(gè)聯(lián)邦學(xué)習(xí)算法參與方之間參數(shù)交互如圖3所示。
圖3 Stacked-FL參與方交互流程
3)標(biāo)簽持有方更新了多個(gè)基學(xué)習(xí)器訓(xùn)練的全局模型。將模型預(yù)測結(jié)果整合成元學(xué)習(xí)器的訓(xùn)練集和測試集的特征,組合成兩個(gè)新的數(shù)據(jù)集。
4)Stacking集成學(xué)習(xí)的元學(xué)習(xí)器的選擇為較簡單的模型,實(shí)驗(yàn)中選擇線性回歸作為實(shí)驗(yàn)的元學(xué)習(xí)器。對元學(xué)習(xí)器參數(shù)進(jìn)行更新后,使用新的訓(xùn)練集進(jìn)行訓(xùn)練,得到模型結(jié)果用測試集進(jìn)行模型效果的測試,如果得到不是最優(yōu)解,則調(diào)整元學(xué)習(xí)器參數(shù),重新訓(xùn)練并測試模型效果,直至效果最優(yōu)。最后采用Voting、Average方法對各參與方的數(shù)據(jù)進(jìn)行集成,與Stacking方法進(jìn)行對比分析。
2.2.1 數(shù)據(jù)預(yù)處理模塊
數(shù)據(jù)預(yù)處理是構(gòu)建模型十分重要的環(huán)節(jié),根據(jù)應(yīng)用場景的不同,各參與方數(shù)據(jù)的結(jié)構(gòu)差異以及數(shù)據(jù)存儲方式不同的一系列因素的影響,在本實(shí)驗(yàn)中,為了解決數(shù)據(jù)樣本維度稀疏以及學(xué)習(xí)器不容易對屬性數(shù)據(jù)處理的問題,采用獨(dú)熱編碼(One-Hot Encoding),可以從一定程度上起到擴(kuò)充特征的作用。為了避免個(gè)別特征數(shù)值過大對實(shí)驗(yàn)結(jié)果造成預(yù)測結(jié)果的偏差,文中采用數(shù)據(jù)的歸一化(Normalization)讓數(shù)值較大的數(shù)據(jù)限定在一定的范圍內(nèi),在梯度下降的時(shí)候,會使模型的方向發(fā)生偏離。
2.2.2 加密實(shí)體對齊模塊
由于參與方之間用戶樣本差異性較大,首先要找到重疊的樣本,一般通過身份證號、手機(jī)號碼等敏感信息找到多個(gè)參與方的重疊用戶。在聯(lián)邦學(xué)習(xí)計(jì)算過程中,為了使參與方交換中間計(jì)算結(jié)果時(shí)參與方重疊的樣本不被惡意方推測用戶的信息。本實(shí)驗(yàn)使用一種基于RSA對ID進(jìn)行對齊的方法使模型間無須通過中心化的方式采集共同數(shù)據(jù),僅采用點(diǎn)對點(diǎn)密文的方式傳遞數(shù)據(jù)信息,即可實(shí)現(xiàn)去中心化,確保每個(gè)參與方的數(shù)據(jù)不向其他參與方暴露的情況下,對用戶ID進(jìn)行加密,并將所有參與方中重疊的用戶ID對齊,實(shí)現(xiàn)維度的補(bǔ)充。
2.2.3 聯(lián)邦算法模塊
2.2.3.1 SecureBoost
(1)
式中:yi----標(biāo)簽的真實(shí)值;
每當(dāng)模型增加一棵樹,損失函數(shù)就會在原有的基礎(chǔ)上加上新的回歸樹fT(xi),在更新第T輪時(shí),目標(biāo)函數(shù)為
(2)
最后計(jì)算出損失函數(shù)用l表示,并對其求一階導(dǎo)數(shù)gi,二階導(dǎo)數(shù)hi:
(3)
(4)
為了確定數(shù)的每一層的最佳分割,就要從分割帶來的增益來衡量,它可以通過之前求出的gi和hi計(jì)算得出。
2.2.3.2 線性回歸
縱向聯(lián)邦學(xué)習(xí)線性回歸[16]使用梯度下降方法去訓(xùn)練模型,為了保證得到模型的損失和梯度,且保證在訓(xùn)練過程中的安全,其損失數(shù)函數(shù)為
(5)
式中:yi----發(fā)起方的標(biāo)簽空間;
θA,θB----模型參數(shù),經(jīng)過同態(tài)加密[18]后的加密損失為
(6)
訓(xùn)練參數(shù)的損失函數(shù)的加密梯度gA,gB可以表示為
(7)
(8)
計(jì)算梯度后,對梯度分別加上加密的隨機(jī)掩碼[[RA]]、[[RB]],得到[[gA]]+[[RA]]和[[gB]]+[[RB]]發(fā)送至中心服務(wù)器完成聚合,根據(jù)聚合后返回的參數(shù)更新本地模型。
2.2.3.3 泊松回歸
泊松回歸通常用于描述單位樣本空間內(nèi)的小概率事件,自變量銀行利率服從泊松分布,在實(shí)驗(yàn)中使用exposure變量接收數(shù)據(jù),其列名可以在配置參數(shù)中指定,在配置中指定暴露元素。縱向聯(lián)邦學(xué)習(xí)泊松回歸在計(jì)算流程上與線性回歸相似,由參與方、發(fā)起方分別計(jì)算出損失函數(shù)
L=([[exp{WAXA}]]*exp(WBXB-Y),
(9)
式中:WA,WB----參與方本地泊松回歸參數(shù);
XA,XB----解釋變量。
計(jì)算出損失L后,將加密后的損失[[L]]傳遞給參與方后,分別計(jì)算梯度[[gA]],[[gB]]。
2.2.4 集成算法模塊
集成學(xué)習(xí)(Ensemble Learning)通過用某種結(jié)合策略將多個(gè)基學(xué)習(xí)器進(jìn)行融合,共同訓(xùn)練一個(gè)模型。通過集成SecureBoost、Linear回歸、Poisson回歸三個(gè)模型,集成后的模型往往可以獲得比基學(xué)習(xí)器更好的性能,以及更強(qiáng)的泛化能力[17]。文中采用集成學(xué)習(xí)有Stacking、Voting、平均法等。
算法1:Stacked-FL
輸出:local model and global model
for epoch=0 to N //N is the number of base learners
2. for i =0 n //general secret key
3. Pi=RSA(x); pi=RSA(x)
4. end for
5. for i=0 to n //local model train
6. for j=0 to n
7. yj=mj(Di)
8. end for
9. end for
10. yi=concat[y0+y1+...+yk-1]
11. for i=0 to n //Integration model
12. Si=Pi(Yi)
13. Ci=pi(Si)
17. end for
18.end for
19. //update local model
提出的Stacked-FL集成方法實(shí)現(xiàn)了集成方法與聯(lián)邦學(xué)習(xí)相結(jié)合,適用于不同領(lǐng)域或者同領(lǐng)域、特征重疊少的參與方的小維度數(shù)據(jù)集聯(lián)合建模,提高了傳統(tǒng)集成模型的安全性,也提高了聯(lián)邦學(xué)習(xí)的準(zhǔn)確性與泛化能力。該方法的優(yōu)勢在于避免了傳統(tǒng)的機(jī)器學(xué)習(xí)模型要在流通的數(shù)據(jù)上進(jìn)行融合存在隱私泄露的風(fēng)險(xiǎn),并且通過多個(gè)基學(xué)習(xí)器對模型進(jìn)行訓(xùn)練和集成,從更全面的角度對數(shù)據(jù)進(jìn)行分析。
使用Pycharm軟件和Python3.8語言進(jìn)行實(shí)驗(yàn),實(shí)驗(yàn)環(huán)境采用三臺騰訊云服務(wù)器(操作系統(tǒng)為CentOS7.5,4Core,內(nèi)存8 G)。
實(shí)驗(yàn)采用Lending Club的公開數(shù)據(jù)。Lending Club 創(chuàng)立于2006年,主營業(yè)務(wù)是為市場提供P2P貸款的平臺中介服務(wù),公司總部位于舊金山。公司在運(yùn)營初期僅提供個(gè)人貸款服務(wù),至2012年平臺貸款總額達(dá)10億美元規(guī)模。Lending Club把借款人和投資者聯(lián)系起來。為了模擬中小型銀行小數(shù)據(jù)集的特點(diǎn),文中將使用2007-2010年的9 578條貸款數(shù)據(jù),選取貸款利率(預(yù)測值)、貸款用途、是否分期付款、借款人年收入的自然對數(shù)等7個(gè)特征模擬銀行A(任務(wù)發(fā)起方),選取借款人的循環(huán)余額、循環(huán)額度利用率、被債權(quán)人查詢的次數(shù)、逾期30 d以上的次數(shù)、貶損公共記錄的數(shù)量等6個(gè)特征模擬銀行B(數(shù)據(jù)提供方)。實(shí)驗(yàn)的評估指標(biāo)采用平均絕對誤差(mean_absolute_error, MAE)、均方根誤差(root mean squared_error, RMSE)來評估模型的準(zhǔn)確率,
(10)
(11)
元學(xué)習(xí)器參數(shù)設(shè)置見表1。
表1 元學(xué)習(xí)器參數(shù)
SGD優(yōu)化器的訓(xùn)練速度快,支持在線更新,有概率跳出局部最優(yōu)解,對于多批次的小數(shù)據(jù)集訓(xùn)練效果較好。實(shí)驗(yàn)中對批次大小(100,1 000)范圍內(nèi)進(jìn)行測試,批次樣本數(shù)選擇為200的準(zhǔn)確度最佳,且對計(jì)算效率的影響較小,實(shí)驗(yàn)結(jié)果分別如圖4和圖5所示。
圖4 批量大小對MAE值的影響
圖5 批量大小對RMSE值的影響
線性回歸學(xué)習(xí)率一般在0.1左右,實(shí)驗(yàn)中對0.001~0.150進(jìn)行了測試,當(dāng)學(xué)習(xí)率為0.07時(shí),收斂速度與誤差精確度表現(xiàn)較好, 實(shí)驗(yàn)結(jié)果分別如圖6和圖7所示。
圖6 學(xué)習(xí)率對MAE值的影響
圖7 學(xué)習(xí)率對RMSE值的影響
最大迭代次數(shù)選取50,原因是在迭代50輪時(shí)效果已經(jīng)趨近擬合。為了提高模型效率,節(jié)約計(jì)算資源,將最大迭代次數(shù)選擇50輪。由于訓(xùn)練集較少,為了避免過擬合,在實(shí)驗(yàn)中采取L2正則化,限制了模型的復(fù)雜程度,縮短了計(jì)算時(shí)間,在0~0.10效果最佳,并對(0,0.10)區(qū)間進(jìn)行實(shí)驗(yàn),結(jié)果顯示,正則化系數(shù)設(shè)置為0.08時(shí),MAE值效果最佳,RMSE值下降幅度較小,在保證有足夠泛化能力的同時(shí),還不會造成欠擬合的風(fēng)險(xiǎn),實(shí)驗(yàn)結(jié)果分別如圖8和圖9所示。
圖8 正則化系數(shù)對MAE值的影響
圖9 正則化系數(shù)對RMSE值的影響
為了驗(yàn)證提出的縱向聯(lián)邦學(xué)習(xí)集成算法的個(gè)性化貸款模型的準(zhǔn)確性,通過對Linear回歸、SecureBoost、Poisson回歸做五折交叉驗(yàn)證,記錄每一次交叉驗(yàn)證預(yù)測結(jié)果得到的MAE、RMSE值見表2。
表2 模型預(yù)測MAE及RMSE值
計(jì)算基學(xué)習(xí)器交叉驗(yàn)證結(jié)果的MAE值與RMSE值,再對其取平均值,作為本實(shí)驗(yàn)單個(gè)基學(xué)習(xí)器的最終預(yù)測效果,使實(shí)驗(yàn)結(jié)果更具普遍性。采用Stacking、Voting、Average方法對聯(lián)邦學(xué)習(xí)環(huán)境下Poisson、SecureBoost、Linear三種算法的驗(yàn)證集和測試集進(jìn)行集成,Label為利率標(biāo)簽值,Predict_result為Stacked-FL算法計(jì)算得到的預(yù)測值。
作為傳統(tǒng)聯(lián)邦學(xué)習(xí)模型的預(yù)測效果,基學(xué)習(xí)器的RMSE值和MAE值分別如圖10和圖11所示。
圖10 基學(xué)習(xí)器的RMSE值
圖11 基學(xué)習(xí)器的MAE值
從圖10和圖11的整體預(yù)測結(jié)果分析,SecureBoost模型的均方根誤差與平均絕對誤差都小于Linear回歸和Poisson回歸,且SecureBoost誤差浮動較小,對模型的預(yù)測效果更穩(wěn)定。
計(jì)算集成算法與傳統(tǒng)聯(lián)邦學(xué)習(xí)算法平均絕對誤差、均方根誤差表示各模型預(yù)測效果,計(jì)算結(jié)果如圖12所示。
圖12 6種聯(lián)邦算法的MAE及RMSE對比分析
圖中,預(yù)測均方根誤差由小到大分別為Stacked-FL、SecureBoost、Averaged-FL、FL-Linear、Voted-FL、FL-Poisson。平均絕對誤差由小到大分別為Stacked-FL、Averaged-FL、SecureBoost、FL-Linear、Voted-FL、FL-Poisson。
3.5.1 Stacked-FL準(zhǔn)確性分析
為了驗(yàn)證Stacked-FL集成算法的預(yù)測準(zhǔn)確度,文中采用Stacking方法分別對Poisson、SecureBoost、Linear進(jìn)行了集成,采用Voting、Average方法作對比實(shí)驗(yàn)。將單個(gè)聯(lián)邦算法與FL-Stacking等三個(gè)集成算法進(jìn)行對比,結(jié)果見表3。
表3 準(zhǔn)確性提高比例 %
使用2 578條預(yù)測樣本對不同模型進(jìn)行預(yù)測,通過實(shí)驗(yàn)結(jié)果中MAE值與RMSE值顯示,FL-Stacking對分散的小維度數(shù)據(jù)集的訓(xùn)練效果,無論是從模型對異常值的處理上,還是從準(zhǔn)確度上都要明顯高于其他方法,并且在SecureBoost模型的基礎(chǔ)上將MAE值提高7.98%,RMSE值提高0.83%。SecureBoost相對Xgboost可以做到無損應(yīng)用在聯(lián)邦學(xué)習(xí)環(huán)境里,所以模型訓(xùn)練效果要優(yōu)于大多數(shù)聯(lián)邦學(xué)習(xí)模型。Averaged-FL在準(zhǔn)確性上要略高于其他聯(lián)邦學(xué)習(xí)模型,并且高于Voted-FL,說明對使用小數(shù)據(jù)集訓(xùn)練的模型集成效果較好。實(shí)驗(yàn)證明,Stacked-FL算法對小數(shù)據(jù)集訓(xùn)練模型可以提高模型的準(zhǔn)確性。
3.5.2 Stacked-FL安全性分析
傳統(tǒng)的多元數(shù)據(jù)處理技術(shù)需要將參與方數(shù)據(jù)集中處理后再訓(xùn)練,在加密聚合過程中,很容易被第三方平臺推斷出用戶信息。針對這一問題,文中提出Stacked-FL對每一方設(shè)定為誠實(shí)且好奇的,可以良好地遵從安排和調(diào)度。
1)每一個(gè)參與方的數(shù)據(jù)始終在本地,不相互流通,并且由數(shù)據(jù)標(biāo)簽的持有方(任務(wù)的發(fā)起方)存儲整個(gè)模型的標(biāo)簽。用傳遞參數(shù)、梯度和損失的方式保障了數(shù)據(jù)的安全性。
2)計(jì)算時(shí),參與方之間會傳輸加密的中間計(jì)算結(jié)果用來幫助彼此梯度和損失的計(jì)算。傳遞中間結(jié)果采用RSA加密對每個(gè)參與方的中間結(jié)果進(jìn)行哈希計(jì)算,防止參與方之間交換過程中存在數(shù)據(jù)安全問題。
3)參與方通過訓(xùn)練過程中梯度和損失的傳輸過程始終處于加密狀態(tài),防止參與方竊取樣本數(shù)據(jù)和通過對應(yīng)的導(dǎo)數(shù)gi和hi去推斷用戶的隱私。中心服務(wù)器為了安全融合各個(gè)參與方的本地模型更新梯度采用同態(tài)加密的算法,避免第三方竊取訓(xùn)練結(jié)果或者泄露中間數(shù)據(jù)的風(fēng)險(xiǎn)。
3.5.3 Stacked-FL通信負(fù)載分析
Stacked-FL的時(shí)間復(fù)雜度是加密算法、多個(gè)基學(xué)習(xí)器、中心服務(wù)器的復(fù)雜度之和,所以時(shí)間復(fù)雜度和空間復(fù)雜度會高于傳統(tǒng)的融合模型,以消耗更多的通訊資源和計(jì)算時(shí)間為代價(jià)提高模型整體預(yù)測的性能。
基于聯(lián)邦學(xué)習(xí)的Stacked-FL集成算法的個(gè)性化貸款定價(jià)模型可以有效地解決中小型銀行數(shù)據(jù)集維度稀疏等問題。采取縱向聯(lián)邦算法,通過構(gòu)建數(shù)據(jù)預(yù)處理層、樣本對齊層、聯(lián)邦算法層以及集成算法層提高模型準(zhǔn)確性,精準(zhǔn)地對不同用戶實(shí)現(xiàn)個(gè)性化定價(jià)。中小型銀行可以通過這種面向多個(gè)參與方的隱私計(jì)算方法,聯(lián)合訓(xùn)練集成模型提高模型的有效性。然而,經(jīng)過交叉驗(yàn)證以及多個(gè)學(xué)習(xí)器的使用,使整個(gè)聯(lián)邦學(xué)習(xí)算法的復(fù)雜度提高,這會花費(fèi)很多的通訊成本,也會影響運(yùn)行效率。在日后的工作中,將嘗試對模型通訊效率進(jìn)行改進(jìn),減小通訊成本的開銷;采用橫向聯(lián)邦算法聯(lián)合同領(lǐng)域含有大量重疊特征的企業(yè)建模,對數(shù)據(jù)樣本進(jìn)行擴(kuò)充,同樣得到更精準(zhǔn)的模型;在學(xué)習(xí)器的選擇上可以嘗試其他選擇以及更優(yōu)的組合。