李 楊,郭鈺哲,龐 樂
(西安交通大學(xué)第二附屬醫(yī)院,陜西西安 710004)
互聯(lián)網(wǎng)技術(shù)的不斷普及推動了醫(yī)療技術(shù)的高速發(fā)展,目前也有越來越多的智能醫(yī)療設(shè)備可以為人們提供便捷的醫(yī)療監(jiān)測服務(wù)。通常情況下,醫(yī)療設(shè)備首先通過傳感器采集患者的各種生理數(shù)據(jù),例如血流量、血壓值、脈搏值與心率值等。然后再對獲取到的醫(yī)療數(shù)據(jù)進行智能分析及處理,從而有效判斷出患者的身體健康狀況,并為后續(xù)進一步診治做先驗指導(dǎo)。
然而,在實際使用過程中,隨著醫(yī)療設(shè)備使用次數(shù)的增多及使用年限的增長,設(shè)備運行異常的情況也時有發(fā)生。這種情況可能會導(dǎo)致檢測結(jié)果不準確,并對患者的健康狀況做出誤判,從而延誤治療時機[1-2]。因此,醫(yī)療設(shè)備的異常數(shù)據(jù)識別至關(guān)重要。異常數(shù)據(jù)的本質(zhì)便是從設(shè)備多個維度所組成的高維數(shù)據(jù)中,分析出與大部分數(shù)據(jù)不相符的離散數(shù)據(jù)值,并根據(jù)這些數(shù)據(jù)值對設(shè)備的運行狀態(tài)進行綜合評估。
文中基于深度學(xué)習(xí)(Deep Learning,DL)模型,設(shè)計了一套醫(yī)療設(shè)備異常數(shù)據(jù)查驗系統(tǒng)。該系統(tǒng)對自編碼器(Auto Encoder,AE)算法及對抗神經(jīng)網(wǎng)絡(luò)(Generative Adversarial Network,GAN)進行了改進與融合,從而使高維數(shù)據(jù)轉(zhuǎn)換為低維數(shù)據(jù),且在提取特征后再進行分析。實驗表明,該算法具有一定的實用價值。
自編碼器[3-4]是一種具有無監(jiān)督性質(zhì)的網(wǎng)絡(luò)模型,其可將輸入的高維數(shù)據(jù)映射至低維空間,進而學(xué)習(xí)數(shù)據(jù)的隱藏特征并完成數(shù)據(jù)重建。
通常一個基礎(chǔ)的AE 網(wǎng)絡(luò)具有三層結(jié)構(gòu),如圖1所示。其分別為輸入層、隱藏層和重構(gòu)層,這三層結(jié)構(gòu)實現(xiàn)了兩個重要的轉(zhuǎn)換,即編碼與解碼轉(zhuǎn)換。
圖1 自編碼器結(jié)構(gòu)示意圖
對于一個維度為n的輸入數(shù)據(jù),可將其記為x。編碼轉(zhuǎn)換操作表征了一種空間映射關(guān)系,該映射關(guān)系實現(xiàn)了輸入數(shù)據(jù)x從n維到d維空間的映射轉(zhuǎn)換。編碼轉(zhuǎn)換可表示為:
式中,z表示輸入數(shù)據(jù)x映射到d維空間的輸出,σ指的是激活函數(shù),b代表自編碼器的偏置值,W表示自編碼器的權(quán)重系數(shù)。
作為編碼轉(zhuǎn)換的逆操作,解碼轉(zhuǎn)換可表示如下:
式中,c代表自編碼器在解碼過程中的偏置值,W*表示該過程的權(quán)重系數(shù)。
深度AE 網(wǎng)絡(luò)將多個基礎(chǔ)的自編碼網(wǎng)絡(luò)進行疊加,作為一種無監(jiān)督的深度網(wǎng)絡(luò)模型,其利用上一層的隱藏層表示作為網(wǎng)絡(luò)中下一層的輸入,從而得到更為抽象的網(wǎng)絡(luò)結(jié)構(gòu)。深度AE 網(wǎng)絡(luò)的結(jié)構(gòu)如圖2所示。該網(wǎng)絡(luò)結(jié)構(gòu)模型的訓(xùn)練終止目標為經(jīng)過該深度自編碼網(wǎng)絡(luò)重構(gòu)出n維空間。
圖2 深度AE結(jié)構(gòu)示意圖
數(shù)據(jù)無限接近輸入層的n維空間數(shù)據(jù)x,由此即可得到深度自編碼器的損失函數(shù)為:
其中,W代表深度自編碼器的權(quán)重系數(shù),b、c表示偏置值,||·||2表示取L2 范數(shù)。為避免訓(xùn)練過程中出現(xiàn)過擬合現(xiàn)象,此處引入權(quán)重衰減(Weight Decay),則有:
由式(4)和(5)可知,Lwd表示權(quán)重衰減。同時,在式(5)中,λ表示衰減系數(shù),||·||F為權(quán)重系數(shù)W的F范數(shù)。
由此可見,深度AE 訓(xùn)練與輸出樣本之間的映射是固定不變的,故模型對數(shù)據(jù)的噪聲較為敏感。而處理特征較多的復(fù)雜數(shù)據(jù)時,樣本的分辨誤差則較大,因此需對AE 模型進行改進。
變分自編碼器(Variational Auto-Encoder,VAE)[5-7]是生成神經(jīng)網(wǎng)絡(luò)的模型,其結(jié)構(gòu)如圖3 所示。該模型在AE 的基礎(chǔ)上增加了變分結(jié)構(gòu),使編碼器的輸出樣本數(shù)據(jù)對應(yīng)輸入數(shù)據(jù)的均值及方差。
圖3 變分自編碼器結(jié)構(gòu)
VAE 作為自編碼器的改進模型,其需要先得到觀測值p(z)的潛在分布p(x|z),具體如下所示:
在連續(xù)域z中,可將數(shù)據(jù)x使用對數(shù)表示為:
式中,DKL為KL 散度(Kullback Leibler Divergence),LVAE為x的變分下界值,其使用的是拉氏變換(Laplace Transform);q為p(z)至p(z|x)映射的變分近似;φ和θ均為編碼器的參數(shù)。求解目標即為通過優(yōu)化φ和θ兩項參數(shù),進而得到DKL的最小值。設(shè)L的表達式如式(8)所示:
由于散度值大于零,故可得:
由此即得到變分下界。
生成對抗網(wǎng)絡(luò)[8-10]利用對抗的基礎(chǔ)理論來獲得理想的訓(xùn)練數(shù)據(jù)。其由生成器與鑒別器兩個主要部分組成,且二者均可看作是映射函數(shù)。其中生成器通過學(xué)習(xí)真實樣本的特征,將隨機噪聲偽造成具有真實樣本特征的數(shù)據(jù),而鑒別器則對偽造數(shù)據(jù)加以鑒別。生成器與鑒別器不斷對抗學(xué)習(xí),直至偽造數(shù)據(jù)被判別器判定為真為止,這體現(xiàn)了零和博弈(Zero-sum game)的思想。該網(wǎng)絡(luò)的組成結(jié)構(gòu)如圖4所示。
圖4 生成對抗網(wǎng)絡(luò)結(jié)構(gòu)
在計算GAN 時,判別器通常會對輸入數(shù)據(jù)的散度進行計算,并以此作為數(shù)據(jù)真實性的判斷依據(jù)。當(dāng)散度接近0 時,表示數(shù)據(jù)的虛假度較高;而接近1時,則表示數(shù)據(jù)的真實性越高。
在生成器的訓(xùn)練過程中,當(dāng)兩組數(shù)據(jù)的分布距離接近時,交叉熵會變?yōu)槌?shù),此時梯度則無法下降,導(dǎo)致梯度消失,訓(xùn)練失敗。為了解決散度導(dǎo)致的梯度消失問題,文中使用Wasserstein 距離取代交叉熵,其可在全局層面對各組數(shù)據(jù)的分布距離進行計算。所以,相較于初始GAN,Wasserstein 距離[11-12]能改善原始GAN 帶來的梯度下降問題。
雖然Wasserstein-GAN(WGAN)從理論上解決了GAN 模型不穩(wěn)定的問題,但同時其引入的Lip 函數(shù)也會導(dǎo)致梯度爆炸的情況,并使算法性能變差且運算時間過長。因此,需要對WGAN 模型進行剪枝(Pruning Algorithm,PA)[13-14]操作。通過在WGAN 判別器損失函數(shù)中加入PA 項,以減少梯度運算所帶來的計算負荷。
由于WGAN-PA[15-16]可對噪聲數(shù)據(jù)進行偽造,彌補了VAE 網(wǎng)絡(luò)對噪聲過于敏感的缺點,因此可將WGAN-PA 和VAE 進行結(jié)合,融合后的簡化模型如圖5 所示。在WGAN-PA-VAE 模型中,VAE 負責(zé)將輸入的高維數(shù)據(jù)進行編碼,并映射至低維空間;將低維數(shù)據(jù)輸入至GAN 網(wǎng)絡(luò)后,由GAN 中的生成器將其偽造成樣本數(shù)據(jù);再輸入至鑒別器中,并解碼得到最終的數(shù)據(jù),即VAE 為WGAN-PA 模型的生成器。
圖5 簡化模型結(jié)構(gòu)圖
異常數(shù)據(jù)監(jiān)測模型整體框架如圖6 所示。其中,輸入數(shù)據(jù)為醫(yī)療設(shè)備生成的各種狀態(tài)數(shù)據(jù),而數(shù)據(jù)設(shè)計模塊則對狀態(tài)數(shù)據(jù)進行歸一化處理;之后再輸入至WGAN-PA-VAE 模型進行差異數(shù)據(jù)監(jiān)控,并將數(shù)據(jù)傳輸至異常檢測模塊。當(dāng)異常得分達到故障閾值時,便可對機器狀態(tài)做出預(yù)測,從而輸出預(yù)測結(jié)果。
圖6 異常數(shù)據(jù)監(jiān)測模型整體框架
實驗選擇某醫(yī)院大型醫(yī)療設(shè)備2015—2021 年運行的狀態(tài)數(shù)據(jù)作為數(shù)據(jù)集1,常用異常數(shù)據(jù)公開集KDD99-sub 作為數(shù)據(jù)集2。此外,數(shù)據(jù)集1 與數(shù)據(jù)集2 的狀態(tài)數(shù)據(jù)種類分別為12 種和41 種。數(shù)據(jù)集與實驗環(huán)境說明如表1 所示。
表1 數(shù)據(jù)集與實驗設(shè)置環(huán)境說明
算法測試分為兩部分,分別為算法的效率及性能測試。首先進行算法效率測試,并將準確率設(shè)定為評估值,觀測準確率穩(wěn)定后的迭代次數(shù)。迭代次數(shù)越少表明算法的收斂性越好,效率也越高。使用WGAN、VAE、隨機森林(Random Forest)算法及文中算法在數(shù)據(jù)集1 上進行對比驗證。最終得到的數(shù)據(jù)識別準確率與迭代次數(shù)的關(guān)系曲線如圖7 所示。
圖7 數(shù)據(jù)準確率與迭代次數(shù)關(guān)系曲線
由圖7 可知,隨著迭代次數(shù)的增加,所有算法的準確率均隨之上升并逐漸趨于穩(wěn)定。其中,文中算法在四種算法中對異常數(shù)據(jù)識別的準確率最高。同時,其在所有算法中迭代次數(shù)也最少,僅使用45 次迭代即可完成。由此說明文中算法具有較高的效率,且穩(wěn)定性也較優(yōu)。
性能測試部分同樣對比了文中算法與WGAN、VAE、隨機森林算法,其中,WGAN、VAE 用作消融實驗(Ablation Experiment),隨機森林算法則作為外部補充對比算法。評估指標采用深度學(xué)習(xí)常用的精確率、召回率及F1 值,在數(shù)據(jù)集2 上測試的結(jié)果如表2所示。
表2 測試結(jié)果
從表2 中可以看出,所提算法的精確率、召回率及F1 值在所有算法中均為最優(yōu)。這表明,將WGAN與VAE 結(jié)合可有效提升算法的性能。
同時,所提算法還能對設(shè)備的健康狀態(tài)進行分析預(yù)測。根據(jù)異常檢測模塊中的評分算法進行打分,得分高的即為異常數(shù)據(jù)量過多且易損壞的設(shè)備。此處實驗采用2015—2020 年的設(shè)備數(shù)據(jù)進行訓(xùn)練,對2021 年設(shè)備情況的預(yù)測數(shù)據(jù)如表3 所示。
表3 得分情況
由表3 可看出,根據(jù)模型打分情況對設(shè)備的健康狀況進行評估,得到的結(jié)果較為準確,可反映設(shè)備的實際健康情況。由此證明,文中算法具有一定的實用價值。
異常數(shù)據(jù)監(jiān)測可對復(fù)雜醫(yī)療設(shè)備的健康狀態(tài)進行全方面評估[17-18]。文中利用深度學(xué)習(xí)模型,首先,將自編碼器改進為變分自編碼器算法,然后,將對抗神經(jīng)網(wǎng)絡(luò)進行優(yōu)化并剪枝,最終,使兩種改進算法相結(jié)合,進而令模型具備了從高維數(shù)據(jù)中提取數(shù)據(jù)特征的能力。實驗結(jié)果表明,文中算法具有良好的效率及性能,可對設(shè)備的健康狀態(tài)進行打分并判斷其損壞情況,故可應(yīng)用于醫(yī)療設(shè)備數(shù)據(jù)智能分析系統(tǒng)中。