張佳骕,顧林躍,姜少燕
(1.浙江好絡(luò)維醫(yī)療技術(shù)有限公司,浙江 杭州 310012;2. 青島大學(xué)附屬心血管病醫(yī)院,山東 青島 266071)
據(jù)世界衛(wèi)生組織報告,全球約有24%的男性和20.5%的女性患有高血壓,而高血壓也在慢慢損害其身體的內(nèi)部器官[1-2]。血壓被多種因素影響且實時變化,因此連續(xù)血壓監(jiān)測對于醫(yī)生診斷和控制患者的病情非常重要。
到目前為止,諸多文獻建立回歸模型對血壓進行連續(xù)測量,其中使用脈搏波速率(pulse wave velocity,PWV)構(gòu)建的模型最為常見[3]。PWV是血管中壓力波的傳播速度,常使用心跳傳輸?shù)缴眢w周圍的時間,即脈搏傳播時間(pulse transit time,PTT)對PWV進行估計[4]。Ahmad等人提出,血壓和PTT之間存在顯著關(guān)聯(lián)[5],之后有文獻使用不同的PTT回歸模型對血壓進行預(yù)測但精度較低[6-8]。
也有文獻依據(jù)脈搏波波形特征對血壓進行預(yù)測,因為脈搏波傳播會受到血管內(nèi)壁阻力、血管彈性等因素的影響,所以其波形也成為評價血壓等人體心血管系統(tǒng)生理狀態(tài)的重要依據(jù)[9]。董鋒使用的特征為主波高度,心臟收縮時間等[10],Yuriy使用的特征為多位置處收縮分支和舒張分支的寬度[11]。但因為個體間脈搏波形態(tài)差異較大,某些特征點無法進行準確定位,從而導(dǎo)致了特征無法提取的問題。
針對上述問題,本研究首先提出脈搏波分解算法(pulse wave decomposition algorithm,PWDA),定位重搏波位置,獲取準確的PTT;之后提出一種新型血壓預(yù)測模型ABP-net,該模型是一種混合特征卷積神經(jīng)網(wǎng)絡(luò),在傳統(tǒng)使用PTT構(gòu)建的全連接神經(jīng)網(wǎng)絡(luò)的基礎(chǔ)上,加入使用一維卷積神經(jīng)網(wǎng)絡(luò)(1D-CNN)自動提取出的脈搏波波形特征,共同對血壓進行預(yù)測;最后使用MIMIC III數(shù)據(jù)庫中數(shù)據(jù)作為實驗樣本建立血壓模型,結(jié)果表明,相比于其他模型,ABP-net對血壓的預(yù)測具備更高的精度。
本研究算法流程見圖1。
圖1 算法流程圖Fig 1 Algorithm flowchart
本研究數(shù)據(jù)來源為MIMIC III數(shù)據(jù)庫,其包含從醫(yī)療信息系統(tǒng)采集的多種生命體征信號[12]。本研究使用的信號包括心電信號(electrocardiogram,ECG),光體積描記器信號(photoplethysmograph,PPG)和動脈血壓信號(arterial blood pressure,ABP)。PPG即指端容積脈搏波。預(yù)處理包含如下階段:
(1)去除基線漂移:用小波分解去除ECG和PPG低頻部分,達到去除基線的目的。
(2)心動周期劃分:首先選取ECG的R波波峰點作為心動周期的起點;其次使用文獻[13]中方法對PPG和ABP進行心動周期劃分,并依據(jù)時間關(guān)系,從每個R波波峰向后尋找首個PPG和ABP的心動周期,將同屬于一個心動周期的ECG起點,PPG和ABP片段合并;最后根據(jù)ABP片段確定該心動周期的真實收縮壓(SBP)和舒張壓(DBP)。
(3)噪聲樣本去除:使用規(guī)則對波形形態(tài)存在明顯異常的心動周期進行去除,如PPG和ABP中起始點劃分錯誤造成的心動周期過長,因設(shè)備采集等問題造成的信號形態(tài)扭曲等。
脈搏波蘊含豐富的生理信息[14],主要特征點有脈搏波起始點A,主波波峰B,潮波起始點C,潮波結(jié)束點D,降中峽E和重搏波波峰F,見圖2。
其中,主波波峰B是由心室收縮,血液從左心室射入主動脈所致,反映心室射血能力、血管順應(yīng)性等;重搏波波峰F是由心臟舒張期,主動脈瓣關(guān)閉阻止血液回流到心室所致,反映動脈彈性和主動脈瓣的關(guān)閉功能[14]。B和F是一個心動周期中最為重要的兩個特征點,故選取B和F作為終止點來計算PTT并分別記為PTT-p和PTT-d,見圖3。
圖2 單個心動周期脈搏波特征點Fig 2 Single cardiac cycle pulse wave feature points
圖3 PTT特征提取方法Fig 3 PTT feature extraction method
B通過計算一個心動周期PPG的最大值位置得到,F(xiàn)則通過對PPG進行小波基為gaus1的連續(xù)小波分解得到,B后第一個過零點為E,第二個過零點即為F。
但由于個體差異或年齡增長,有些人的重搏波不明顯甚至消失,導(dǎo)致F無法定位。針對該問題,本研究提出一種將脈搏波分解成主波,潮波和重搏波三個鐘型波的脈搏波分解算法,從而對重搏波進行準確定位。
脈搏波分解算法(PWDA)
(1)對單個心動周期脈搏波波形, B前的部分為脈搏波的上升分支,定義為main_up。
(2)以點B為軸做main_up的軸對稱曲線main_down,將main_up和main_down拼接組成主波main_wave,并將其擴展到與PPG相同長度。
(3)將PPG與main_wave相減,將主波在脈搏波中分離,剩余部分即為潮波和重搏波的疊加波形res_wave。
(4)使用相同方法構(gòu)造出潮波tide_wave,并將res_wave與tide_wave相減得到重搏波dicrotic_wave。
(5)dicrotic_wave的最大值點即為F。
針對重搏波不明顯以及消失兩種情況,使用PWDA對脈搏波進行分解,結(jié)果見圖4。從結(jié)果可以發(fā)現(xiàn),PWDA能夠有效地定位重搏波波峰F,從而獲取到準確的PTT-d。
圖4 脈搏波分解算法結(jié)果 (a).重搏波不明顯;(b).重搏波消失Fig 4 Pulse wave decomposition algorithm results (a).Dicrotic wave not obvious; (b).Dicrotic wave disappearance
本研究提出一種新型的血壓預(yù)測模型ABP-net,使用1D-CNN自動提取PPG的波形特征并進行血壓預(yù)測,解決了特征點難以提取的問題,見圖5。
ABP-net為一種混合特征卷積神經(jīng)網(wǎng)絡(luò),灰色標識部分為使用PTT特征構(gòu)建的模型。本研究將同一個心動周期的PPG片段也作為輸入添加到網(wǎng)絡(luò)中,使用一維卷積對脈搏波的波形特征進行提取,并使用全連接層對提取出的波形特征進行綜合及選擇,之后與PTT特征共同用于血壓預(yù)測。模型輸入包含兩種類型特征,PTT為傳統(tǒng)數(shù)值型特征,PPG為形式化特征(如信號,圖像等)。ABP-net有效地將數(shù)值型特征和形式化特征進行綜合,為使用不同類型的特征共同建模提供了新思路,利用兩種類型特征與輸出之間的關(guān)聯(lián)提升模型的有效性和準確性。ABP-net中包含多種處理模塊,虛線標注部分為殘差結(jié)構(gòu)[15]。見圖5。
圖5 ABP-net網(wǎng)絡(luò)結(jié)構(gòu)圖Fig 5 ABP-net network structure
2.3.1一維卷積層Conv-1D Conv-1D中輸入輸出特征圖均為一維,對于單個樣本,設(shè)ui(x)(i=1,2,…,N)為輸入的第i個特征圖的第x個節(jié)點,N為輸入特征圖數(shù)量,vj(x)(j=1,2,…,M)為輸出的第j個特征圖的第x個節(jié)點,M為輸出特征圖數(shù)量,則Conv-1D運算如下:
(1)
其中,ki,j是卷積核,連接ui和vj兩個特征圖,卷積核的長度為K,S是卷積核的滑動步長,bj為偏置,見圖6。
圖6 一維卷積運算示意圖Fig 6 1-D convolution operation
2.3.2批標準化層BN BN解決了深度網(wǎng)絡(luò)中某一層輸入的分布因之前網(wǎng)絡(luò)參數(shù)變化而改變的問題。設(shè)一個Batch為B={x1,x2,…,xn},算法如下:
(2)
(3)
(4)
(5)
2.3.3激活函數(shù)層ReLU 激活函數(shù)使模型獲得非線性建模能力,ReLU函數(shù):
f(x)=max(0,x)
(6)
不會導(dǎo)致梯度消失問題且計算簡單,使得模型前向計算速度更快。
2.3.4池化層max pool 池化可以在獲取特征圖中主要信息的同時降低特征維度,分為最大值池化和平均值池化兩種。
最大值池化:
pi(x)=max{ui(p)|xS≤p≤xS+K-1}
(7)
平均值池化:
pi(x)=mean{ui(p)|xS≤p≤xS+K-1}
(8)
其中,pi為特征向量ui池化后的結(jié)果,K為池化窗口大小,S為窗口滑動步長。
其他模塊為傳統(tǒng)神經(jīng)網(wǎng)絡(luò)模塊,F(xiàn)C為全連接層,AVG是用平均的方法將卷積層的輸出轉(zhuǎn)換為全連接層需要的輸入格式。
(9)
其中,n為一個Batch的大小。本研究使用批量梯度下降的方法對模型進行訓(xùn)練,對MSE進行優(yōu)化。
為證明ABP-net模型的有效性和準確性,使用tensorflow搭建模型,選取MIMIC III數(shù)據(jù)庫中15個完整包含ECG,PPG和ABP的記錄并使用2.1節(jié)中的方法在每個記錄上提取10萬個心動周期作為實驗樣本,隨機打亂后80%作為訓(xùn)練集,20%作為測試集。數(shù)據(jù)采樣率為125 Hz,本研究統(tǒng)一單個心動周期PPG片段長度為130,不足則補零,保證輸入網(wǎng)絡(luò)的數(shù)據(jù)長度相同。
因個體間脈搏波差異明顯,本研究針對不同個體的SBP和DBP分別構(gòu)建模型。模型的評價標準使用平均絕對誤差(mean absolute error,MAE)評價。
(10)
首先驗證PTT特征,圖5中灰色部分為PTT-net,輸入可為PTT-p,PTT-d或兩者同時使用。對所有測試集樣本SBP進行預(yù)測,使用PTT-p,PTT-d和兩者同時使用的MAE分別為8.00 mmHg,7.69 mmHg和6.87 mmHg;對DBP預(yù)測的MAE則分別為3.84 mmHg,3.55 mmHg和3.28 mmHg,故使用PTT-p和PTT-d共同對血壓進行預(yù)測。
其次將ABP-net與單獨使用波形特征的網(wǎng)絡(luò)(PPG-net)以及單獨使用PTT特征的網(wǎng)絡(luò)(PTT-net)進行比較,結(jié)果見圖7。ABP-net對所有測試樣本SBP預(yù)測的MAE為3.32 mmHg,相比于PPG-net和PTT-net分別下降了0.55 mmHgh和3.55 mmHg;對DBP預(yù)測的MAE為1.76 mmHg,相比于PPG-net和PTT-net分別下降了0.34 mmHg和1.52 mmHg。PPG-net的模型精度高于PTT-net,說明波形特征相比于PTT特征對血壓值預(yù)測的精度更高,通過使用1D-CNN提取到的波形特征是有效的;ABP-net的精度相比于PPG-net和PTT-net均有上升,說明對兩種特征的綜合是有效的。
文獻[4]中提出多種使用PTT或單個心動周期PPG作為輸入的回歸模型,將ABP-net與其進行比較,結(jié)果見表1和表2,表中單位為mmHg。
對各個模型,預(yù)測DBP精度更高,說明DBP與PTT以及PPG的相關(guān)性更高。對傳統(tǒng)回歸模型,使用PPG構(gòu)建的模型比使用PTT構(gòu)建的模型效果好,但精度均低于ABP-net模型精度,說明ABP-net模型對PTT特征與PPG特征的綜合是有效的,且相對于其他模型有更大優(yōu)勢。
圖7 ABP-net與PTT-net模型精度比較
表2 ABP-net與傳統(tǒng)血壓模型預(yù)測DBP精度比較
表3 與BHS標準的對比結(jié)果
表4 與AAMI標準的對比結(jié)果
最后,將ABP-net模型結(jié)果與BHS標準[17]和AAMI標準[18]進行比較。BHS以誤差在三個不同閾值以下樣本數(shù)目占全部測試樣本數(shù)目百分比作為評判標準。AAMI則要求平均誤差小于5 mmHg,標準差小于8 mmHg。本研究使用上述15條記錄的所有測試集樣本上的誤差與BHS和AAMI進行對比,結(jié)果見表3和表4。
從表3和表4可以看出,ABP-net已經(jīng)符合AAMI標準且達到BHS標準grade A級別,說明ABP-net模型對動脈血壓值的預(yù)測符合BHS和AAMI規(guī)定的標準,具備良好的工程學(xué)意義。
本研究首先通過ECG和PPG提取到PTT特征,針對重搏波不明顯的情況提出PWDA,分離出重搏波,獲取到準確的PTT-d;之后提出混合特征卷積神經(jīng)網(wǎng)絡(luò)模型ABP-net,使用1D-CNN提取PPG波形特征,解決了傳統(tǒng)方法提取脈搏波特征點困難的問題;其次進一步將波形特征與PTT特征結(jié)合,對SBP和DBP進行預(yù)測;最后,使用MIMIC III中數(shù)據(jù)進行實驗證明ABP-net的有效性和準確性。通過對比PPG-net,PTT-net以及其他回歸模型,說明ABP-net對波形特征和PTT特征綜合的有效性且相比于其他回歸模型擁有更高的精度;通過對比AAMI和BHS標準,說明ABP-net具備良好的工程學(xué)意義。