李清欣 徐貴紅 周雯
1.中國(guó)鐵道科學(xué)研究院 研究生部, 北京 100081; 2.中國(guó)鐵道科學(xué)研究院集團(tuán)有限公司 電子計(jì)算技術(shù)研究所, 北京 100081
鐵路異物侵限檢測(cè)是鐵路運(yùn)營(yíng)過(guò)程中安全檢測(cè)的一項(xiàng)重要內(nèi)容。異物侵限是指由于外力作用或意外,落石、行人等鐵路異物侵入鐵路限界,對(duì)鐵路軌道或運(yùn)行列車(chē)構(gòu)成安全威脅的現(xiàn)象。鐵路異物侵限判斷屬于機(jī)器學(xué)習(xí)中的圖像分類(lèi)問(wèn)題。傳統(tǒng)圖像分類(lèi)方法中,通常使用方向梯度直方圖(Histogram of Oriented Gradients,HOG)、尺度不變特征變換(Scale Invariant Feature Transform,SIFT)、局部二值模式(Local Binary Pattern,LBP)等算法提取特征。
當(dāng)淺層特征不明顯時(shí),傳統(tǒng)特征提取算法的分類(lèi)效果并不理想。深度學(xué)習(xí)能夠提取圖像更深層次、具有區(qū)分能力的特征,在圖像分類(lèi)、檢測(cè)等方面具有精度高和智能化的優(yōu)勢(shì)。近年來(lái),深度學(xué)習(xí)尤其是卷積神經(jīng)網(wǎng)絡(luò)得到了快速發(fā)展,并逐漸成為一種新型圖像處理技術(shù)。
深度學(xué)習(xí)模型識(shí)別準(zhǔn)確率的好壞很大程度上依賴(lài)于訓(xùn)練樣本數(shù)量。在訓(xùn)練樣本量不足的情況下,深度學(xué)習(xí)模型會(huì)產(chǎn)生過(guò)度擬合,從而導(dǎo)致模型訓(xùn)練結(jié)果畸變。此外,隨著數(shù)據(jù)確權(quán)的出現(xiàn),越來(lái)越多單位開(kāi)始重視數(shù)據(jù)的所有權(quán)和使用權(quán),減少了數(shù)據(jù)在各單位間的流通,導(dǎo)致出現(xiàn)數(shù)據(jù)孤島現(xiàn)象。數(shù)據(jù)融合需求與數(shù)據(jù)隱私保護(hù)需求之間的矛盾日益突出。一方面人工智能需要大量訓(xùn)練數(shù)據(jù)以獲得良好的訓(xùn)練效果,另一方面數(shù)據(jù)安全和隱私保護(hù)得到了世界范圍內(nèi)的廣泛重視[1]。在此背景下,聯(lián)邦學(xué)習(xí)(Federated Learning)應(yīng)運(yùn)而生。Google 公司于2017 年首次提出了聯(lián)邦學(xué)習(xí)的概念[2],它是一種具有隱私保護(hù)功能的機(jī)器學(xué)習(xí)機(jī)制。該機(jī)制在多個(gè)數(shù)據(jù)持有方不共享各自數(shù)據(jù)的情況下,僅交換模型中間訓(xùn)練參數(shù),聯(lián)合進(jìn)行模型訓(xùn)練。理想情況下,聯(lián)邦學(xué)習(xí)模式可獲得與中心化學(xué)習(xí)(Centralized Learning)模式相近的模型識(shí)別準(zhǔn)確率[3]。
本文提出一種基于聯(lián)邦學(xué)習(xí)和深度注意力殘差網(wǎng)絡(luò)的鐵路異物侵限分類(lèi)輔助判斷方法。將壓縮激勵(lì)網(wǎng)絡(luò)嵌入深度殘差網(wǎng)絡(luò)(Deep residual network,ResNet)中構(gòu)成深度注意力殘差網(wǎng)絡(luò),通過(guò)對(duì)特征通道重新分配權(quán)重以提取圖像更深層次的特征。結(jié)合聯(lián)邦學(xué)習(xí)進(jìn)一步提升異物侵限特征的提取效果,同時(shí)保護(hù)各數(shù)據(jù)持有方隱私,為解決異物侵限模型訓(xùn)練樣本匱乏及鐵路數(shù)據(jù)安全共享問(wèn)題提供思路。
隨著神經(jīng)網(wǎng)絡(luò)模型層數(shù)的增加,較淺層網(wǎng)絡(luò)的參數(shù)可能會(huì)逐漸趨于0,致使梯度無(wú)法更新,出現(xiàn)梯度消失現(xiàn)象。為解決這一問(wèn)題,ResNet 在兩個(gè)非線(xiàn)性卷積層外部通過(guò)跳躍連接實(shí)現(xiàn)恒等映射,提高模型訓(xùn)練過(guò)程中信息的傳播效率。ResNet 由一系列殘差單元串聯(lián)而成。殘差單元的基本結(jié)構(gòu)如圖1所示。其中:x為殘差單元的輸入數(shù)據(jù);f(x)為最終理想輸出數(shù)據(jù)。
圖1 殘差單元基本結(jié)構(gòu)
壓縮激勵(lì)網(wǎng)絡(luò)(Squeeze and Excitation Network,SENet)是一個(gè)經(jīng)典的注意力機(jī)制網(wǎng)絡(luò)模型。SENet 通過(guò)關(guān)注特征通道之間的相關(guān)性以提升神經(jīng)網(wǎng)絡(luò)的表征能力,訓(xùn)練過(guò)程包含壓縮、激勵(lì)和重分配三個(gè)階段。模型輸入特征圖的尺寸為w×h×c。其中:w、h分別為圖像的寬度和高度;c為圖像的特征通道數(shù)。將SENet嵌入到含有跳躍鏈接的深度學(xué)習(xí)網(wǎng)絡(luò)模塊中。
壓縮階段,通過(guò)全局平均池化壓縮特征圖,將其維度轉(zhuǎn)化為1×1×c,以獲得全局的感受野。激勵(lì)階段,使用一個(gè)多層感知機(jī)(Multi-Layer Perceptron,MLP)學(xué)習(xí)每個(gè)特征通道的權(quán)重。通過(guò)定義縮放參數(shù)實(shí)現(xiàn)對(duì)特征通道的降維和增維操作,自適應(yīng)學(xué)習(xí)不同特征通道間的相關(guān)性。重分配階段,通過(guò)乘法對(duì)特征通道加權(quán),完成對(duì)原始特征圖的重標(biāo)定,以增強(qiáng)有用的特征通道,提高模型特征提取的準(zhǔn)確性。
本文選取18 層的ResNet 即ResNet18 作為神經(jīng)網(wǎng)絡(luò)基礎(chǔ)模型,嵌入SENet 構(gòu)成SE-ResNet18,作為訓(xùn)練模型。SE-ResNet18的基本構(gòu)成單元如圖2所示。
圖2 SE-ResNet18的基本構(gòu)成單元
SENet 的核心是通過(guò)網(wǎng)絡(luò)的損失確定特征通道的權(quán)重,從而賦予高效的特征圖大權(quán)重,低效或無(wú)用的特征圖小權(quán)重,進(jìn)而重新標(biāo)定輸入特征圖,獲得更好的訓(xùn)練效果。ResNet18中嵌入SENet后可以去除強(qiáng)噪聲及冗余信息,避免在學(xué)習(xí)異物特征時(shí)產(chǎn)生更多錯(cuò)誤,提高模型的識(shí)別效率。
聯(lián)邦學(xué)習(xí)是一種多方參與聯(lián)合訓(xùn)練的分布式機(jī)器學(xué)習(xí)方法[4],具有數(shù)據(jù)不動(dòng)、模型動(dòng)的特性。與傳統(tǒng)中心化學(xué)習(xí)相比,聯(lián)邦學(xué)習(xí)沒(méi)有中心服務(wù)器匯總數(shù)據(jù)的過(guò)程,保護(hù)了各數(shù)據(jù)持有方的隱私。
本文采用客戶(hù)端-中心服務(wù)器的橫向聯(lián)邦學(xué)習(xí)架構(gòu)[5]。整個(gè)學(xué)習(xí)過(guò)程分為客戶(hù)端本地模型訓(xùn)練和中心服務(wù)器端參數(shù)聚合兩部分,如圖3所示。
圖3 橫向聯(lián)邦學(xué)習(xí)架構(gòu)
各數(shù)據(jù)持有方作為客戶(hù)端參與聯(lián)邦學(xué)習(xí)訓(xùn)練。多個(gè)客戶(hù)端構(gòu)成集合C={C1,C2,…,CN},其中N為客戶(hù)端數(shù)量。第k個(gè)客戶(hù)端Ck的本地?cái)?shù)據(jù)集記為Dk。
客戶(hù)端首先下載中心服務(wù)器端初始化的全局訓(xùn)練模型(m)和模型參數(shù)(w0),然后進(jìn)行Dk的本地特征提取和模型訓(xùn)練。
設(shè)Lk(w)為Ck的目標(biāo)函數(shù),用該客戶(hù)端所有輸入數(shù)據(jù)的平均損失表示,計(jì)算式為
式中:li(w)為Ck的損失函數(shù)。
本文采用交叉熵函數(shù)作為損失函數(shù),計(jì)算式為
式中:y′和y分別為真實(shí)標(biāo)簽和預(yù)測(cè)標(biāo)簽,所有標(biāo)簽共有n個(gè)類(lèi)別。
為求解目標(biāo)函數(shù)的最小值,模型訓(xùn)練采用隨機(jī)梯度下降法不斷尋優(yōu)。設(shè)第t個(gè)通信輪次下,客戶(hù)端Ck本地訓(xùn)練的模型參數(shù)為wt,k。其迭代更新計(jì)算式為
客戶(hù)端本地訓(xùn)練結(jié)束,將wt,k上傳至中心服務(wù)器端完成中間參數(shù)的聚合后,客戶(hù)端再次下載聚合參數(shù)進(jìn)行本地模型更新,并進(jìn)行下一輪次的訓(xùn)練直至全局模型收斂。
中心服務(wù)器端負(fù)責(zé)統(tǒng)籌各客戶(hù)端的本地模型訓(xùn)練并生成最終的聚合模型。聯(lián)邦學(xué)習(xí)訓(xùn)練開(kāi)始前,中心服務(wù)器端協(xié)調(diào)各客戶(hù)端,確定每個(gè)全局通信輪次參與訓(xùn)練的客戶(hù)端數(shù)量c(c∈N)、全局訓(xùn)練模型m及全局通信總輪次T,完成系統(tǒng)初始化配置。聯(lián)邦學(xué)習(xí)訓(xùn)練開(kāi)始后,中心服務(wù)器端使用聯(lián)邦平均算法[6]對(duì)每個(gè)通信輪次t(t∈T)下接收到的各客戶(hù)端模型參數(shù)(wt,k)進(jìn)行聚合,得到聚合后的模型參數(shù)(wt)。計(jì)算式為
式中:rk為Dk在整個(gè)模型訓(xùn)練過(guò)程中所有數(shù)據(jù)集中的占比,
Step1中心服務(wù)器端完成全局訓(xùn)練模型(m)和模型參數(shù)(w0)的初始配置,將m下發(fā)至各客戶(hù)端。
Step2客戶(hù)端從中心服務(wù)器端下載模型參數(shù)(wt-1)。
Step3判定當(dāng)前通信輪次(t)的值。若t= 1,客戶(hù)端進(jìn)行Dk預(yù)處理,輸入至網(wǎng)絡(luò)模型;若1
Step4各客戶(hù)端進(jìn)行本地訓(xùn)練,得到更新后的模型(mt,k)和參數(shù)(wt,k),將wt,k上傳至中心服務(wù)器端。
Step5中心服務(wù)器端使用聯(lián)邦平均算法對(duì)wt,k進(jìn)行聚合,將聚合后的模型參數(shù)(wt)下發(fā)至各客戶(hù)端。
屋里人多的時(shí)候,萍萍都是坐在一只小圓凳上,她的兩只手放在膝蓋上,微笑地看著我們說(shuō)話(huà),當(dāng)我們覺(jué)得是不是有點(diǎn)冷落萍萍而對(duì)她說(shuō):“萍萍,你為什么不說(shuō)話(huà)?”
Step6重復(fù)Step2—Step5,直至模型收斂,訓(xùn)練結(jié)束。
試驗(yàn)所用數(shù)據(jù)集為某鐵路局鐵路異物侵限監(jiān)測(cè)系統(tǒng)拍攝的圖像。該數(shù)據(jù)集由正常和有異物兩類(lèi)圖像組成。將整個(gè)數(shù)據(jù)集以8∶2的比例劃分為訓(xùn)練集和驗(yàn)證集。數(shù)據(jù)集分布見(jiàn)表1。
表1 數(shù)據(jù)集分布
采用分類(lèi)準(zhǔn)確率(Racc)對(duì)模型訓(xùn)練結(jié)果進(jìn)行評(píng)價(jià)。
式中:Ap、An、Fp、Fn分別表示真陽(yáng)(正常樣本分類(lèi)正確)的數(shù)量、真陰(有異物樣本分類(lèi)正確)的數(shù)量、假陽(yáng)(有異物樣本被分類(lèi)為正常樣本)的數(shù)量和假陰(正常樣本被分類(lèi)為有異物樣本)的數(shù)量。
為了在保護(hù)參與方數(shù)據(jù)隱私的前提下提高模型準(zhǔn)確率,設(shè)置5 個(gè)客戶(hù)端模擬5 個(gè)鐵路局。將原始數(shù)據(jù)集隨機(jī)劃分為5個(gè)不相交的子集,作為各客戶(hù)端的本地?cái)?shù)據(jù)。各子集以9∶1的比例劃分為訓(xùn)練集和驗(yàn)證集。
基于SE-ResNet18 網(wǎng)絡(luò)模型,在鐵路異物侵限檢測(cè)數(shù)據(jù)集相同的情況下分別通過(guò)中心化學(xué)習(xí)和聯(lián)邦學(xué)習(xí)訓(xùn)練模型,對(duì)比兩者所得模型識(shí)別準(zhǔn)確率的差異。設(shè)置聯(lián)邦學(xué)習(xí)每輪次參與訓(xùn)練的客戶(hù)端數(shù)量為5。訓(xùn)練過(guò)程中,保證兩者參數(shù)設(shè)定一致,全局通信輪次均為20,局部迭代次數(shù)均為3,優(yōu)化器均采用隨機(jī)梯度下降法不斷尋優(yōu)。兩種學(xué)習(xí)方法所得模型訓(xùn)練結(jié)果對(duì)比見(jiàn)圖4。
圖4 兩種學(xué)習(xí)方法所得模型訓(xùn)練結(jié)果對(duì)比
由圖4可知:①中心化學(xué)習(xí)模型、聯(lián)邦學(xué)習(xí)模型分類(lèi)準(zhǔn)確率分別為86.9%、84.6%。兩種學(xué)習(xí)方法訓(xùn)練結(jié)果差異較小。與中心化學(xué)習(xí)相比,聯(lián)邦學(xué)習(xí)由各參與方在本地進(jìn)行模型訓(xùn)練,僅將模型更新的參數(shù)上傳至中心服務(wù)器端進(jìn)行匯總。各參與方數(shù)據(jù)在整個(gè)學(xué)習(xí)過(guò)程中不出本地,能夠有效防止數(shù)據(jù)泄露,保證各客戶(hù)端的數(shù)據(jù)隱私。②聯(lián)邦學(xué)習(xí)模型具有更快的損失收斂速度,這樣可減少模型訓(xùn)練時(shí)間,降低成本。
針對(duì)鐵路數(shù)據(jù)領(lǐng)域存在的數(shù)據(jù)孤島問(wèn)題和隱私保護(hù)需求,本文提出了一種基于聯(lián)邦學(xué)習(xí)和深度注意力殘差網(wǎng)絡(luò)的鐵路異物侵限分類(lèi)輔助判斷方法。在ResNet18 中嵌入SENet,可以自適應(yīng)地選擇和加權(quán)不同特征通道的信息,從而更加準(zhǔn)確地捕捉到圖像中的關(guān)鍵信息。應(yīng)用聯(lián)邦學(xué)習(xí)技術(shù),保證數(shù)據(jù)持有方本地?cái)?shù)據(jù)不出域,在保護(hù)鐵路數(shù)據(jù)持有方隱私的基礎(chǔ)上有效整合多方數(shù)據(jù)資源完成協(xié)作訓(xùn)練。
經(jīng)對(duì)一鐵路局鐵路異物侵限監(jiān)測(cè)系統(tǒng)拍攝的圖像數(shù)據(jù)進(jìn)行測(cè)試,本文所提出的方法能夠在保證鐵路數(shù)據(jù)共享安全與隱私保護(hù)的同時(shí),通過(guò)多方協(xié)作訓(xùn)練,獲得與中心化學(xué)習(xí)模型接近的識(shí)別準(zhǔn)確率。