劉 晶,董志紅,張喆語,孫志剛,季海鵬
(1.河北工業(yè)大學(xué)人工智能與數(shù)據(jù)科學(xué)學(xué)院,天津 300401;2.河北省數(shù)據(jù)驅(qū)動工業(yè)智能工程研究中心(河北工業(yè)大學(xué)),天津 300401;3.天津開發(fā)區(qū)精諾瀚海數(shù)據(jù)科技有限公司,天津 300401;4.長城汽車股份有限公司天津哈弗分公司,天津 300462;5.河北工業(yè)大學(xué)材料科學(xué)與工程學(xué)院,天津 300401)
隨著“德國工業(yè)4.0”“美國工業(yè)互聯(lián)網(wǎng)”以及“中國制造2025”戰(zhàn)略目標(biāo)相繼提出,工業(yè)物聯(lián)網(wǎng)(Industrial Internet Of Things,IIOT)以極高的速度向產(chǎn)業(yè)鏈傳輸海量工業(yè)數(shù)據(jù),使得基于數(shù)據(jù)驅(qū)動的機器學(xué)習(xí)方法廣泛應(yīng)用于工業(yè)制造中。眾所周知,隨著訓(xùn)練數(shù)據(jù)量的增大和多樣化,機器學(xué)習(xí)所訓(xùn)練的模型會更好。然而,在工業(yè)領(lǐng)域,企業(yè)間出于競爭或用戶隱私原因而無法將數(shù)據(jù)資源共享,因此如何在保護企業(yè)數(shù)據(jù)隱私的前提下進行多源數(shù)據(jù)融合分析,以加快行業(yè)的發(fā)展變得十分重要。
聯(lián)邦學(xué)習(xí)(Federated Learning,F(xiàn)L)是一種新興的人工智能基礎(chǔ)技術(shù),其設(shè)計目標(biāo)是在保障邊緣數(shù)據(jù)和個人數(shù)據(jù)安全的前提下,在多參與方或多計算節(jié)點之間開展高效率的機器學(xué)習(xí)。目前,已有學(xué)者將FL 應(yīng)用于多個領(lǐng)域,如Hu 等通過對空氣質(zhì)量數(shù)據(jù)進行區(qū)域劃分,在FL 中建立有權(quán)值的區(qū)域模型,解決了空氣質(zhì)量數(shù)據(jù)分布不平衡和計算資源浪費的問題。Yang 等提出了一種基于FL 的帶隱私保護的信用卡欺詐檢測方法,采用過采樣技術(shù)來平衡極度傾斜的信用卡交易記錄,同時使用FL 構(gòu)建全局共享欺詐檢測方法,以解決因數(shù)據(jù)隱私保護而導(dǎo)致無法大規(guī)模協(xié)作訓(xùn)練的難題。Hu 等將數(shù)據(jù)特征和模型參數(shù)同時上傳至FL 中央服務(wù)器,同時給出面向各客戶端的特征融合策略,并利用回聲狀態(tài)網(wǎng)絡(luò)實現(xiàn)精準(zhǔn)趨勢跟蹤,最后將所提算法應(yīng)用于礦井多傳感器采集的時序數(shù)據(jù)趨勢跟蹤中,驗證了算法的有效性。王蓉等通過數(shù)據(jù)填充進行數(shù)據(jù)維度重構(gòu),然后在FL 的機制下利用深度卷積神經(jīng)網(wǎng)絡(luò)(Deep Convolutional Neural Network,DCNN)進行特征提取學(xué)習(xí),最后結(jié)合Softmax 分類器訓(xùn)練入侵檢測模型,保證了數(shù)據(jù)安全隱私的同時還減少了模型的訓(xùn)練時間。上述方法都在一定程度上實現(xiàn)了保護數(shù)據(jù)安全隱私情況下的聯(lián)合學(xué)習(xí),但在工業(yè)領(lǐng)域,由于IIOT 中實時產(chǎn)生的新增數(shù)據(jù)是海量的,如何有效地增量學(xué)習(xí)使新增狀態(tài)數(shù)據(jù)與已有行業(yè)聯(lián)合模型快速融合,同時保證各工廠子端同等參與成為新的問題焦點。不考慮增量數(shù)據(jù)權(quán)重的傳統(tǒng)聯(lián)邦增量算法在很大程度上取決于工廠子端的重復(fù)學(xué)習(xí),從而增加了時間成本,并且還會導(dǎo)致行業(yè)聯(lián)合模型精準(zhǔn)度嚴(yán)重下降及聯(lián)合訓(xùn)練過程中行業(yè)聯(lián)合模型的傾斜等問題。
為解決IIOT 新增數(shù)據(jù)量大及工廠子端數(shù)據(jù)量不均衡的問題,本文提出一種基于聯(lián)邦增量學(xué)習(xí)的IIOT 數(shù)據(jù)共享方法(data sharing method of Industrial Internet Of Things based on Federal Incremental Learning,F(xiàn)IL-IIOT)。
本文主要工作為:1)針對工廠子端數(shù)據(jù)量不均衡問題,提出了一種聯(lián)邦優(yōu)選子端算法,目的是根據(jù)工廠子端等級值動態(tài)調(diào)整參與子集,保證聯(lián)合訓(xùn)練的動態(tài)平衡;2)針對工廠子端大量新增數(shù)據(jù)與原行業(yè)聯(lián)合模型融合問題,提出了一種聯(lián)邦增量學(xué)習(xí)算法,目的是通過計算工廠子端的增量加權(quán),將新增狀態(tài)數(shù)據(jù)與原行業(yè)聯(lián)合模型快速融合,實現(xiàn)對新增狀態(tài)數(shù)據(jù)的有效增量學(xué)習(xí)。
k
個客戶端為例,其訓(xùn)練樣本數(shù)據(jù)記作D
,對應(yīng)的局部模型參數(shù)記作ω
,其中k
∈S
,S
為包含m
個客戶端的參與子集。每個通信輪次中,只有屬于此子集的客戶端的模型下載中心全局模型的參數(shù),作為局部模型的初始參數(shù);在局部訓(xùn)練后,這些客戶端會把更新后的模型參數(shù)發(fā)送給中心服務(wù)器,服務(wù)器通過執(zhí)行聚合操作,更新中心模型參數(shù),即ω
=Agg
(ω
)。在客戶端本地執(zhí)行的局部訓(xùn)練,僅僅利用本地存儲的相應(yīng)數(shù)據(jù)。由于不需要各客戶端上傳任何用戶隱私數(shù)據(jù)至中心服務(wù)器,此技術(shù)提供了一個保障客戶端數(shù)據(jù)隱私的安全學(xué)習(xí)模式。圖1 聯(lián)邦學(xué)習(xí)框架Fig.1 Federated learning framework
在諸多領(lǐng)域,F(xiàn)L 都具有廣闊的研究價值和應(yīng)用前景,與金融、醫(yī)療、智慧城市、物聯(lián)網(wǎng)和區(qū)塊鏈等結(jié)合的研究都取得了一定的進展與成就。
t
=1,2,…過程中,將隨機從所有參與聯(lián)合訓(xùn)練的客戶端中選擇一定百分比的客戶端與中心服務(wù)器直接通信。然后,各個參與進FL 的客戶端從中心服務(wù)器下載當(dāng)前的全局模型參數(shù)。每個客戶端固定的學(xué)習(xí)率為η
,在當(dāng)前本地模型參數(shù)ω
下計算私有數(shù)據(jù)集上的平均損失的梯度f
,f
=?L
(x
,y
;ω
)。這些客戶端同步更新其本地模型,同時將本地模型參數(shù)的更新上傳至中心服務(wù)器。中心服務(wù)器將對上傳的模型參數(shù)進行聚合操作來進一步優(yōu)化全局共享模型:本文方法FIL-IIOT 框架分為行業(yè)聯(lián)合端層和工廠子端層,其中聯(lián)邦優(yōu)選子端模塊處于行業(yè)聯(lián)合端層,聯(lián)邦增量學(xué)習(xí)模塊橫跨2 層,如圖2 所示。
圖2 FLT-IIOT的框架Fig.2 Framework of FLT-IIOT
聯(lián)邦優(yōu)選子端模塊分為等級值計算和等級值排序2 個子模塊,分別負(fù)責(zé)根據(jù)工廠子端性能指標(biāo)計算最新等級值和對等級值進行排序便于對工廠子端進行優(yōu)選。
由于工廠子端具有高度自由性,因此將具有不同新增數(shù)據(jù)量的工廠子端對行業(yè)聯(lián)合端中的模型參數(shù)進行等量的更新顯然是不合理的。聯(lián)邦增量學(xué)習(xí)模塊則分為4 個子模塊:參數(shù)更新、參數(shù)修正、加權(quán)計算和學(xué)習(xí)狀態(tài)監(jiān)控。學(xué)習(xí)狀態(tài)監(jiān)控子模塊負(fù)責(zé)監(jiān)控工廠子端學(xué)習(xí)狀態(tài)如參數(shù)深度值與增量樣本數(shù)量等;加權(quán)計算子模塊根據(jù)工廠子端學(xué)習(xí)信息計算對應(yīng)樣本的增量加權(quán);參數(shù)修正子模塊將工廠子端上傳模型參數(shù)根據(jù)增量加權(quán)進行修正;而只有經(jīng)聯(lián)邦優(yōu)選子端模塊優(yōu)選的模型參數(shù)才被用于參數(shù)更新子模塊進行行業(yè)聯(lián)合模型參數(shù)更新。
聯(lián)邦優(yōu)選子端模塊與聯(lián)邦增量學(xué)習(xí)模塊不是相互獨立的,聯(lián)邦優(yōu)選子端等級值計算需要獲取聚合后的參數(shù),并訓(xùn)練本地模型求出性能指標(biāo)等級值。而優(yōu)選后的工廠子端影響了行業(yè)聯(lián)合模型學(xué)習(xí)方向,進而影響聯(lián)邦增量的融合。
2.2.1 聯(lián)邦優(yōu)選子端說明
聯(lián)邦優(yōu)選子端是指行業(yè)聯(lián)合端在每次更新模型參數(shù)前對參與本次通信子端進行選擇,即選擇參加聯(lián)合訓(xùn)練的工廠子端。在傳統(tǒng)的FL 中,大多采用設(shè)置參與通信的比例,或者根據(jù)設(shè)定的固定閾值作為能否參加聯(lián)合訓(xùn)練的判別條件,這些方法在工業(yè)應(yīng)用中存在如下不足:1)工廠子端本地數(shù)據(jù)及新增數(shù)據(jù)不均衡導(dǎo)致學(xué)習(xí)過程中參數(shù)變化程度是不同的,簡單地根據(jù)通信比例隨機選取參與子集很容易忽略有用參數(shù)信息,造成行業(yè)聯(lián)合模型訓(xùn)練過程發(fā)生傾斜,進而影響工廠子端模型精準(zhǔn)度;2)依據(jù)設(shè)定的固定閾值有時會耗費大量的時間,且在訓(xùn)練的后期造成行業(yè)聯(lián)合模型波動不易收斂的結(jié)果。
在FIL-IIOT 中,行業(yè)聯(lián)合端在選擇參與本次通信的工廠子端時,首先計算工廠子端等級值并對其進行排序,然后根據(jù)設(shè)定的比例系數(shù)F
挑選出參與子集。只有被選中的子端才能獲取對應(yīng)輪次行業(yè)聯(lián)合端聚合本地參數(shù)的資格,否則在本地累計參數(shù)信息,進行下一輪學(xué)習(xí)迭代,最終參數(shù)將累計足夠的信息量上傳到行業(yè)聯(lián)合端。無論工廠子端是否獲得該輪次的聚合參數(shù)資格,在下一輪學(xué)習(xí)結(jié)束后都要進行等級值計算,即等級值計算是貫穿整個學(xué)習(xí)過程。2.2.2 等級值計算
馬氏距離是一種用來表示數(shù)據(jù)的協(xié)方差距離的方法,可以有效地計算兩個未知樣本的相似度,應(yīng)用于工廠子端的性能指標(biāo)上,可以使性能指標(biāo)的馬氏距離更加準(zhǔn)確地反映工廠子端當(dāng)前參與程度。為了得到更加全面的一維性能指標(biāo)來準(zhǔn)確描述工廠子端的參與程度,使用馬氏距離對工廠子端的準(zhǔn)確率(Acc)、損失值(loss)和kappa 值特征向量進行計算,統(tǒng)計出該工廠子端與其他所有子端性能指標(biāo)的馬氏距離之和作為該工廠子端等級值SD
。等級值越大,性能指標(biāo)相似性越小;反之亦然。假設(shè)兩個工廠子端分別為u
=(u
,u
,u
),v
=(v
,v
,v
),則u
與v
協(xié)方差P
的計算式為:μ
=E
(u
),μ
=E
(v
)。兩個來自非獨立同分布的工廠子端u
和v
的馬氏距離MD
(u
,v
)的計算式為:SD
:K
表示所有工廠子端的數(shù)量。FIL-IIOT 面向的對象是高度自由的工廠子端,對于指數(shù)型增長的新增數(shù)據(jù)如何挖掘新產(chǎn)生狀態(tài)數(shù)據(jù),合并到已有FL 算法的挖掘模式中成為新的問題焦點。傳統(tǒng)聯(lián)邦增量算法訓(xùn)練的模型重復(fù)從本地數(shù)據(jù)中提取數(shù)據(jù)特征進行訓(xùn)練學(xué)習(xí),但無法隨IIOT 實時新增數(shù)據(jù)自適應(yīng)增量修正行業(yè)聯(lián)合模型,導(dǎo)致時間成本增加,模型診斷精度下降。本文使用增量加權(quán)來解決聯(lián)邦增量學(xué)習(xí)問題。
聯(lián)邦增量學(xué)習(xí)中工廠子端存在學(xué)習(xí)樣本不均、數(shù)據(jù)動態(tài)增加等問題。如圖3 所示,所有工廠子端所處的通信輪次是相同的,通信輪次線下面表示已經(jīng)完成訓(xùn)練的數(shù)據(jù),通信輪次線上面部分表示新增加的數(shù)據(jù),還未進行訓(xùn)練。圖3 中工廠子端新增的數(shù)據(jù)量是不同的,如子端1 在原有數(shù)據(jù)的基礎(chǔ)上增加了一倍,若原數(shù)據(jù)量為200,則子端1 現(xiàn)有數(shù)據(jù)量為400。
圖3 子端增量數(shù)據(jù)不均衡示意圖Fig.3 Schematic diagram of sub-end incremental data imbalance
樣本數(shù)在一定程度上反映了樣本的多樣性,基于高復(fù)雜度數(shù)據(jù)訓(xùn)練的模型具有更好的擴展性。而模型訓(xùn)練的過程可以理解為模型的“學(xué)習(xí)”的過程,一般地,隨著時間的推移,模型越接近問題的最優(yōu)解,但更多的新增數(shù)據(jù)會使工廠子端與學(xué)習(xí)問題最優(yōu)解的距離加大,因此這些新增數(shù)據(jù)不均的工廠子端對行業(yè)聯(lián)合端中的模型參數(shù)進行等量的更新顯然是不合理的。本文引入增量加權(quán)聚合策略來解決聯(lián)邦增量學(xué)習(xí)中工廠子端最優(yōu)解不均衡的問題。
在1.2 節(jié)中給出了聯(lián)邦均值(Federated Averaging,F(xiàn)edAvg)算法,其聚合策略參見式(6),此策略僅考慮工廠子端訓(xùn)練集數(shù)據(jù)量對聚合的影響,即更大的n
會對生成的行業(yè)聯(lián)合模型影響更大,而對于新增狀態(tài)數(shù)據(jù)并未做特殊處理。本文引入增量權(quán)值,通過對工廠子端參數(shù)深度值的計算進而影響聚合策略。增量權(quán)值表示工廠子端新增樣本數(shù)在原樣本總數(shù)中占比大小。工廠子端k
的增量權(quán)值可由新增樣本數(shù)與總樣本數(shù)求得:I
|為工廠子端新增的樣本數(shù),|D
|為工廠子端原樣本總數(shù)。圖4 中方塊和圓形顏色的深淺表示增量效應(yīng),即工廠子端對生成模型影響的重要程度。
圖4 聯(lián)邦增量學(xué)習(xí)與參數(shù)深度值Fig.4 Federal incremental learning and parameter depth value
參數(shù)優(yōu)化過程中具有一定的深度值,令參數(shù)深度值為:
工廠子端下載和上傳參數(shù)的時間間隔內(nèi)都會有新的訓(xùn)練數(shù)據(jù)的產(chǎn)生,參數(shù)深度值也會進行一定的更新。參數(shù)深度值表示工廠子端在完成一次迭代學(xué)習(xí)中本地數(shù)據(jù)集新增加的數(shù)據(jù)對模型性能的影響程度,反映了工廠子端的更新度。為了使參數(shù)深度值越大的工廠子端其參數(shù)加權(quán)越小,且衰減的過程相對平緩,本文選擇反正切函數(shù)作為增量加權(quán)的衰減函數(shù):
FL 框架下,每一輪僅更新參與子集中的工廠子端,根據(jù)工廠子端模型的參數(shù)深度值確定模型對聚合操作的貢獻可有效利用歷史信息,并區(qū)分本地模型利用價值,可望提高聚合操作的有效性,因而進一步關(guān)注本地模型的參數(shù)加權(quán),提出的改進聚合策略如下:
在聯(lián)邦增量學(xué)習(xí)過程中,工廠子端提交的模型參數(shù)要經(jīng)過增量加權(quán)的修正才能參與行業(yè)聯(lián)合模型優(yōu)化。修正后的參數(shù)在行業(yè)聯(lián)合端上根據(jù)具體的優(yōu)化算法更新模型參數(shù),優(yōu)化結(jié)束后,工廠子端重新獲得最新的行業(yè)聯(lián)合模型參數(shù)并將其覆蓋本地參數(shù),進行下一輪迭代學(xué)習(xí)。
本節(jié)給出FIL-IIOT 方法的偽代碼,包括行業(yè)聯(lián)合端執(zhí)行部分(UnionExecutes,參見算法1)以及工廠子端更新部分(FactoryUpdate,參見算法2)。
算法1 FIL-IIOT 行業(yè)聯(lián)合端執(zhí)行部分。
ω
、t
和θ
為輸入,其中:ω
表示行業(yè)聯(lián)合端的模型參數(shù),t
代表通信輪次的標(biāo)號,θ
表示t
輪次工廠子端的參數(shù)深度值。設(shè)B
代表工廠子端數(shù)據(jù)分批次大小,E
代表工廠子端訓(xùn)練迭代次數(shù),η
代表學(xué)習(xí)率。具體而言,第2)~7)行表示獲取工廠子端最新參數(shù)深度值,如果有新增數(shù)據(jù)使用2.3 節(jié)方法得到參數(shù)深度值,否則將輪次標(biāo)號作為最新值;第8)行表示根據(jù)參數(shù)深度值求出增量加權(quán)β
;第9)行表示獲取最新的數(shù)據(jù)集;第10)~15)行表示采用局部梯度訓(xùn)練法訓(xùn)練工廠子端模型參數(shù);第16)行表示將工廠子端模型參數(shù)ω
和參數(shù)增量加權(quán)β
返回至行業(yè)聯(lián)合端。算法2 FIL-IIOT 工廠子端更新部分。
輸入ω
、t
、θ
。輸出ω、β
。為驗證FIL-IIOT 方法的有效性,本章選擇在IIOT 中最常見的軸承故障分類為例。軸承作為工廠設(shè)備的關(guān)鍵支撐部件,是機械設(shè)備中最易受損的零件之一。由于各工廠之間軸承具有高度相似性,其數(shù)據(jù)共享對模型的訓(xùn)練有非常大的價值。但是,由于設(shè)備狀態(tài)數(shù)據(jù)屬于工廠隱私數(shù)據(jù),出于數(shù)據(jù)安全的原因而無法共享,造成單體工廠的軸承數(shù)據(jù)存在樣本量少、相似度高、多樣性不足等問題。FL 可在不上傳工廠軸承數(shù)據(jù)的情況下協(xié)同多工廠子端訓(xùn)練行業(yè)聯(lián)合模型,既滿足了模型精確度的要求又兼顧了工廠數(shù)據(jù)的安全。由于設(shè)備運行的連續(xù)性,其狀態(tài)數(shù)據(jù)隨著時間的臨近價值也在增加,其對故障診斷的重要性也在增加,但是傳統(tǒng)的FL 難以處理工廠子端大量新增數(shù)據(jù)的模型融合問題,從而很難持續(xù)優(yōu)化。本文以美國凱斯西儲大學(xué)(Case Western Reserve University,CWRU)電氣工程實驗室的軸承故障數(shù)據(jù)為實驗數(shù)據(jù),驗證FIL-IIOT 方法能夠較好地解決上述問題。
美國凱斯西儲大學(xué)電氣工程實驗室的軸承故障數(shù)據(jù),共計1 341 856 個數(shù)據(jù)點,軸承型號為6205-2RS JEM SKF 深溝球軸承。利用電火花加工方式分別在軸承上對內(nèi)圈(Inner RaceWay,IRW)、外圈(Outer RaceWay,ORW)和滾動體(BAll,BA)設(shè)置了3 個等級的單點故障,故障直徑分別為0.007 inch(輕度)、0.014 inch(中度)、0.021 inch(重度),故障深度分別為0.011 inch、0.050 inch、0.150 inch(1 inch=25.4 mm)。單點故障分別設(shè)置在了電機驅(qū)動端(Driver End)和風(fēng)扇端(Fan End)。本節(jié)實驗采用在Driver End 和Fan End的振動傳感器(采集頻率12 kHz)采集的包含12 種故障類型和正常數(shù)據(jù)的樣本,樣例長度為1 024,各類別樣例數(shù)量為400,樣本信息如表1 所示。
表1 軸承故障實驗數(shù)據(jù)描述Tab 1 Experimental data description of bearing failure
本節(jié)實驗中使用的長短期記憶(Long Short-Term Memory,LSTM)網(wǎng)絡(luò)的架構(gòu)為:輸入層,一層LSTM 層(cell size=30,time steps=1 024),后接一64 節(jié)點及線性整流(Rectified Linear Unit,ReLU)激活函數(shù)的全連接層,以及一個Softmax 輸出層。具體參數(shù)見表2。
表2 LSTM參數(shù)Tab 2 LSTM parameters
運行實驗計算機的具體配置為:Intel 酷睿i7-8700K CPU,DDR4 2 400 MHz 16 GB 內(nèi) 存,NVIDIA Geforce GTX1080Ti GPU,CUDA10.0 和CuDNN7.5 驅(qū)動,Windows10專業(yè)版64 位操作系統(tǒng)。實驗的軟件開發(fā)使用Python3.7、TensorFlow1.14.0 以及Keras2.3。
F
做測試和驗證,確定好方法基本的參數(shù),能更好地協(xié)調(diào)方法的性能和效率。實驗使用的性能指標(biāo):1)訓(xùn)練準(zhǔn)確率,50 通信輪全局模型所能達(dá)到準(zhǔn)確率,以說明在指定通信代價下,聚合操作的有效性;2)通信輪次,全局模型達(dá)到特定準(zhǔn)確率(0.95)所需輪數(shù),以比較在相同準(zhǔn)確率下算法所需通信代價;3)每輪時間。所有實驗重復(fù)10次,對比分析相應(yīng)參數(shù)分類性能的平均值,實驗結(jié)果如表3所示。表3 比例系數(shù)對模型性能影響Tab 3 Influence of scale factor on model performance
表3 展示了不同的比例系數(shù)F
值(即每輪次參與聯(lián)合訓(xùn)練的工廠子端數(shù)量)對故障診斷模型各方面的性能影響。根據(jù)表3 可知,隨著參與聯(lián)合訓(xùn)練的工廠子端數(shù)量的增加,達(dá)到目標(biāo)準(zhǔn)確率所需要的迭代輪數(shù)呈現(xiàn)遞減的趨勢,同時整個故障診斷模型的性能也有一定的提升。圖5 表示隨著參與聯(lián)合訓(xùn)練的工廠子端數(shù)量的增加,每輪迭代訓(xùn)練的時間也隨之增加,雖然達(dá)到目標(biāo)準(zhǔn)確率的訓(xùn)練輪數(shù)減少,但系統(tǒng)總消耗的時間仍然是呈上升趨勢。從最佳訓(xùn)練準(zhǔn)確率和最佳測試準(zhǔn)確率的角度來看,隨著工廠子端數(shù)量的增加,整個故障診斷模型性能得到提升。圖5 不同比例系數(shù)每輪迭代時間Fig.5 Iteration time of each round with different scale factors
在確定好故障診斷模型的F
值后,本文還測試了本地模型批處理大?。˙atchsize,B
)和迭代次數(shù)(Epoch,E
)對算法分類性能的影響。實驗中固定F
=0.3,對于B
的實驗給定E
=5,而E
的實驗B
=100。從圖6 可知,模型分類性能隨B
的增大表現(xiàn)出下降的現(xiàn)象;而圖7 中,模型分類性能隨E
的增大,先增大后減小。這要求在實驗中控制B
和E
的大小。圖6 本地批處理大小對模型性能影響Fig.6 Influence of local batch size on model performance
圖7 本地迭代次數(shù)對模型性能影響Fig.7 Influence of local iteration times on model performance
基于上述參數(shù)實驗結(jié)果,這里同樣固定B
=100 以及E
=5,記錄在不同的F
值下訓(xùn)練過程中工廠子端部分輪次等級值變化情況,如表4 所示。表4 工廠子端等級值變化情況Tab 4 Change of factory sub-end level value
通過表4 可以得出,F(xiàn)IL-IIOT 方法保證了工廠子端的公平參與訓(xùn)練,第一輪后工廠子端等級值分布較分散,進行到第五輪后,F(xiàn)IL-IIOT 方法下的工廠子端等級值分散度縮小。從圖8 的方差對比圖亦可得知,而FedAvg 方法在F
=0.3 下的工廠子端傾斜最嚴(yán)重,一方面向隨機選擇次數(shù)多的工廠子端數(shù)據(jù)傾斜,另一方面向工廠子端本地數(shù)據(jù)量大的方向傾斜;FedAvg 方法在F
=1 下的工廠子端傾斜雖然沒有在F
=0.3 下傾斜嚴(yán)重,但還是可以看出等級值分布偏向了數(shù)據(jù)量大的工廠子端。圖8 表示的是工廠子端在部分輪次后工廠子端等級值方差變化,可以看出:FIL-IIOT 方法隨著訓(xùn)練的深入方差在減小;而FedAvg 方法方差表現(xiàn)不穩(wěn)定、波動量很大,表明訓(xùn)練過程工廠子端出現(xiàn)傾斜情況。圖8 工廠子端等級值方差對比Fig.8 Variance comparison of factory sub-end level value
選擇在FL 任務(wù)中性能優(yōu)異的FedAvg 算法作為對比方法進行在不同F
值、不同方法下的性能對比實驗。其中,訓(xùn)練集準(zhǔn)確率為在50 通信輪內(nèi)全局模型所能達(dá)到的最優(yōu)精度,訓(xùn)練時間為在50 通信輪內(nèi)全局模型達(dá)到最優(yōu)精度所需時間。性能對比實驗結(jié)果如表5 所示。表5 聯(lián)邦優(yōu)選算法性能對比Tab 5 Performance comparison of federal optimization algorithm
通過表5 可以看出,在F
=0.3 的情況下,F(xiàn)IL-IIOT 方法無論是在訓(xùn)練集還是測試集上都比FedAvg 表現(xiàn)更好;與F
=1的FedAvg 相比,F(xiàn)IL-IIOT 方法在訓(xùn)練集和測試集上準(zhǔn)確率相差無幾,但模型的訓(xùn)練時間更短,且FedAvg 的性能傾向于大數(shù)據(jù)集,所以整體上平衡性能表現(xiàn)不如FIL-IIOT 方法。F
=0.3,B
=100 以及E
=5 的情況下,使用本文提出的FIL-IIOT 方法分別同無增量公式的FIL-IIOT(FIL-IIOT of Non Increment,F(xiàn)ILIIOT-NI)方法和FedAvg 方法進行增量學(xué)習(xí)對比,并使用測試樣本測試模型分類效果。其中:訓(xùn)練準(zhǔn)確率為在50 通信輪內(nèi)全局模型所能達(dá)到的最優(yōu)精度,訓(xùn)練時間為在50 通信輪內(nèi)全局模型達(dá)到最優(yōu)精度所需時間;對每組增量數(shù)據(jù)記錄10 次實驗的準(zhǔn)確率和運行時間并求平均值。計算四組增量數(shù)據(jù)的訓(xùn)練平均值和測試值對比結(jié)果如表6 所示。表6 增量故障分類結(jié)果對比Tab 6 Comparison of incremental failure classification results
通過觀察表6 實驗結(jié)果可知,F(xiàn)IL-IIOT 方法在模型準(zhǔn)確率和運行時間方面均優(yōu)于其他兩種方法,從模型分類準(zhǔn)確率方面來看,在訓(xùn)練階段達(dá)到94.56%;在測試階段達(dá)到93.15%,相較于FedAvg 方法提高了6.18 個百分點,相較于FIL-IIOT-NI 方法提高了2.59 個百分點??梢奆IL-IIOT 方法由于對增量數(shù)據(jù)進行了增量加權(quán),考慮了本地數(shù)據(jù)隨時間變化的重要性改變程度,因此使得模型故障分類精度有了一定程度的提高。從模型運行時間方面來看,F(xiàn)IL-IIOT 方法在訓(xùn)練時間和測試時間上均少于其他方法,這是由于其他兩種方法在面臨增量數(shù)據(jù)時需要重新訓(xùn)練已有模型增加了運行時間,因此表明增量加權(quán)聚合的FL 算法對于減輕模型計算量、節(jié)約時間成本起到了一定作用。圖9 所示為FIL-IIOT 方法同F(xiàn)IL-IIOT-NI 方法的訓(xùn)練精度和訓(xùn)練時間的對比圖,驗證了所提FIL-IIOT 方法的高效性。
圖9 聯(lián)邦增量數(shù)據(jù)模型性能對比Fig.9 Performance comparison of federal incremental data models
由此可見,F(xiàn)IL-IIOT 方法與FIL-IIOT-NI 方法相比在模型精度和運行效率方面均具有優(yōu)勢。FIL-IIOT 方法通過增量加權(quán)學(xué)習(xí)對新增特征模式進行增量合并和動態(tài)加權(quán),既能利用已有知識模式有效減少故障特征學(xué)習(xí)時間,又能利用新增特征顯著提高故障診斷精度,兼顧新增模式與失效模式,滿足軸承故障分類診斷海量新增數(shù)據(jù)的需求。
在工業(yè)領(lǐng)域,企業(yè)間出于競爭或隱私保護原因難以將數(shù)據(jù)資源共享,阻礙了行業(yè)進步和提升,因此如何在保護企業(yè)數(shù)據(jù)隱私的前提下進行多源數(shù)據(jù)融合分析變得十分重要。聯(lián)邦學(xué)習(xí)可以在保護數(shù)據(jù)隱私的情況下進行數(shù)據(jù)共享,以優(yōu)化行業(yè)聯(lián)合模型。但是由于IIOT 存在工廠子端數(shù)據(jù)量不均衡等問題,傳統(tǒng)的聯(lián)邦學(xué)習(xí)很難利用經(jīng)典增量學(xué)習(xí)算法對其模型進行持續(xù)優(yōu)化。針對上述問題,提出了一種基于聯(lián)邦增量學(xué)習(xí)的IIOT 數(shù)據(jù)共享方法,該方法首先針對工廠子端數(shù)據(jù)量不均衡問題提出聯(lián)邦優(yōu)選子端算法,根據(jù)工廠子端等級值動態(tài)調(diào)整參與子集,保證聯(lián)合訓(xùn)練的動態(tài)平衡。其次,針對工廠子端海量新增數(shù)據(jù)與原行業(yè)聯(lián)合模型融合問題提出聯(lián)邦增量學(xué)習(xí)算法,通過計算工廠子端的增量加權(quán),使新增狀態(tài)數(shù)據(jù)與原行業(yè)聯(lián)合模型快速融合,實現(xiàn)對新增狀態(tài)數(shù)據(jù)的有效增量學(xué)習(xí)。最后,利用設(shè)備故障診斷數(shù)據(jù)證明該方法在考慮子端數(shù)據(jù)分布不均衡問題的同時,進一步兼顧了對新增狀態(tài)數(shù)據(jù)的融合,可有效完成IIOT 中數(shù)據(jù)共享需求,并進一步利用增量數(shù)據(jù)優(yōu)化行業(yè)模型。
但本文方法仍有需要進一步完善的地方,如在聯(lián)邦優(yōu)選子端算法中,執(zhí)行等級值計算及排序是犧牲時間來保證訓(xùn)練平衡,在實際應(yīng)用中,對百萬甚至千萬級別的子端進行計算和排序帶來的時間成本無疑是不可忽視的。為了緩解行業(yè)聯(lián)合端計算量,可以在行業(yè)聯(lián)合端增加“預(yù)估”模塊。在未來的研究中,將進一步對“預(yù)估”模塊進行研究。