?

基于LSTM的軸流血泵仿生搏動研究

2022-02-10 06:47羅耀俊胡曉兵魏上云
關鍵詞:心室誤差樣本

羅耀俊, 胡曉兵, 魏上云

(1.四川大學機械工程學院, 成都 610065; 2.四川大學宜賓園區, 宜賓 644000)

1 引 言

在過去,對于心力衰竭末期的患者來說,醫學上公認唯一有效的辦法是心臟移植[1].但是心臟移植受到供體不足、術后免疫排斥反應,還有高昂的手術費用和維護成本等限制,使心衰患者生存率一直都較低,人工心臟的出現,大大緩解了這一窘境.現如今按照直接輔助對象和輔助程度的不同,人工心臟可分為全人工心臟和心室輔助兩種[2].但除去心衰末期患者,大多數患者的心臟只是功能部分損傷,只需要輔助裝置來彌補或修復損傷的功能,不一定需要全人工心臟.臨床運用中,左心室輔助裝置最為常見,運用最廣泛[3].

目前心室輔助裝置按輔助方式可分為仿生搏動式和恒流輔助式.搏動式輔助裝置可提供仿生搏動功能,提供給患者搏動血流,一般運用于心衰患者術前或術后的短期輔助,因為其大多帶有復雜的控制系統,常用于體外輔助,影響病人的日常生活,如隔膜泵、囊式泵.恒流式輔助裝置的特點就是能提供恒定血流、體積小、體表創傷小,而且能實現全植入,最大程度上實現了患者的日?;顒幼杂蒣4],臨床上常用的主要有微型軸流泵和離心泵,但是提供恒定血流會破壞心室壓力-容量曲線,可能會使心肌受損,產生其他并發病,而搏動是人類最基本的內在屬性,文獻[5,6]也表明搏動性血流在各方面優于非搏動性血流灌注.所以,結合仿生搏動式和恒流輔助式的特點,研究軸流泵的同步仿生搏動性是非常有必要的[7].

為此,本文設計了仿生搏動的軸流血泵,針對設計的檢測系統和控制系統存在延遲,出現軸流血泵動作對比自然心臟搏動有較大滯后,不能與自然心臟同步搏動的問題,提出了利用LSTM模型根據軸流血泵前面6個周期情況來預測下一個周期特征情況的方法.根據預測的數據使控制系統能提早發出控制指令,進一步提高軸流血泵仿生搏動性的可能.結果表明,本文提出的方法具有可行性,訓練集預測結果與實際結果的均方根誤差為8.29,而通過測試集得到的預測結果與實際結果的均方根誤差為5.33.

2 裝置的搭建

實驗裝置是根據人體血液循環特點設計的血液循環模擬實驗平臺[8],由軸流血泵、壓力傳感器、流量傳感器、阻力調節器、模擬心臟和人工血管組成,如圖1所示.在軸流血泵入口和出口分別布置一個壓力傳感器(模擬監控左心室和主動脈壓力),出口再布置阻力調節器(通過調節電動閥開度來實現不同阻力模擬后負荷)和流量傳感器(監控軸流血泵的輸出流量),由人工血管(醫用體循環專用管)串聯而成.

圖1 搏動性實驗輔助方案Fig.1 Auxiliary program for pulsatile experiment

根據左心室壓力-容量曲線圖(如圖2所示),實驗裝置設定具體控制方法為,壓力檢測系統輸入心室壓力信號,當檢測數據信號連續6個值均大于前一個值時,判定此時心室壓力在心臟收縮的作用下開始上升,收縮期開始,軸流泵由舒張狀態轉速開始提高轉速;當檢測心室壓力數據連續3個值低于前一個值時,判定心室壓力達到峰值并開始降低,軸流泵達到收縮期轉速并停止加速且緩慢開始減速至舒張期轉速.

圖2 壓力-容量曲線Fig.2 Pressure-volume curve

在軸流泵的同步仿生搏動性的實驗過程中,由于整個系統是根據左心室的壓力來確定泵的相應動作,但是壓力檢測系統由于信號傳輸延遲,使壓力檢測系統(壓力傳感器)觀測到關鍵控制點發送數據到控制系統,控制系統再發送動作指令給執行系統(軸流血泵),這中間不可避免的會產生延遲,即使檢測系統和控制系統之間交互已經達到了很高的速度.這樣的延遲會使軸流泵的動作比自然心臟搏動有較大的滯后.參考文獻[9-15]運用LSTM模型在各方面的應用和效果,結合實際情況,也采用了LSTM模型進行周期預測.根據前幾個左心室壓力周期來預測下一個壓力時間周期,使執行系統提前能做好動作準備,減小誤差,讓軸流血泵的搏動性更接近自然心臟,避免增加心臟負擔.假設正常情況下,系統接收指令和發送指令的總時間誤差為t0,由LSTM預測模型根據前面周期情況預測下一次動作時間為t后,因此,控制系統就可在t-t0時刻讓控制系統發出軸流泵收縮或舒張的預備動作,再結合實際指令,完成軸流泵的實際收縮或舒張動作,這樣可以進一步實現軸流泵同步仿生搏動的可能.

3 深度學習與長短期記憶神經網絡

深度學習是在人工神經網絡基礎上發展而來的一種表示學習方法,也是一種機器學習方法(關系如圖3所示),而且是人工智能領域最具發展前景的一個分支.其主要模型是各種深度神經網絡.表示學習是近年來機器學習領域發展最迅猛、最受學術界追捧的方向.所謂表示學習,就是要讓算法在少量人為先驗經驗的情況下,能夠自動從數據中抽取出合適的特征,完成原本需要通過特征工程才能得到的結果.其中,神經網絡是深度學習中最具有發展前景的領域之一.

圖3 機器學習常見算法Fig.3 Common algorithms of machine learning

3.1 循環神經網絡

傳統的神經網絡主要功能是回歸和分類,但是需要處理前后具有依賴信息的預測問題時,傳統神經網絡不占優勢,循環神經網絡(Recurrent Neural Networks, RNN)的出現解決了該問題[14].RNN通常用于描述動態的序列數據,隨著時間的變化而動態調整自身的模型狀態,并且不斷循環傳遞.RNN模型中將保存當前狀態和過去狀態的總和.RNN主要簡單結構如圖4所示.

圖4 簡單RNN結構展開圖Fig.4 simple RNN structure expansion

設g為輸出層的激活函數,V為輸出層的權值矩陣,st表示隱藏層的計算公式,接受兩種輸入,第一種為當前時刻的輸入層輸入xt,第二種為上一時刻的隱藏層輸出st-1,U為輸入層到隱藏層的權值矩陣,W為上一時刻的值st-1到這一次輸入的權值矩陣,單向RNN結構利用式(1)和式(2)進行表示.

st=f(Wst-1,Uxt)

(1)

ot=g(Vst)

(2)

3.2 長短期記憶神經網絡

長短期記憶神經網絡是循環神經網絡的變種之一,傳統的RNN多采用反向傳播時間算法,這種算法的弊端在于,隨著時間的增加,網絡層數的增加,會發生梯度消失或梯度膨脹的問題[15].梯度消失指的是梯度較小(<1)情況下,經過多層迭代之后,遠端序列的信息會逐漸衰減,導致信息丟失.而梯度爆炸剛好相反,若梯度較大(>1)情況下,經過多層迭代之后,梯度將會呈指數增加的趨勢,直至梯度超出可控范圍[14].LSTM增加了三個控制門(遺忘門、輸入門和輸出門)來解決這類問題,如圖5所示(標號1部分為遺忘控制門,標號2部分為新記憶單元的輸出,標號3部分為輸入控制門,標號4部分為輸出控制門).

圖5 單個LSTM結構圖Fig.5 Single LSTM structure diagram

3.2.1 遺忘門 遺忘門用于控制記憶單元丟棄哪些信息,計算時讀取當前時間步t的輸入數據xt和上一時間步t-1的狀態輸出ht-1,輸出0~1范圍內的數值,其中極限值0和1分別表示全部忘記和全部保留,結果是通過sigmoid函數產生,如式(3)所示.

ft=σ(Wfxt+Ufht-1)

(3)

3.2.2 輸入門 輸入門用于控制哪些新信息可以被更新,或者被保存到狀態單元.主要分為兩部分,第一部分如式(4)所示.

it=σ(Wixt+Uiht-1+bi)

(4)

此部分計算當前輸入門的激活值,確定當前輸入有多少需要保存到單元狀態.第二部分如式(5)所示.

(5)

此部分是時間步t記憶單元的狀態候選值,確定當前輸入的新信息添加到單元狀態,結合這兩部分就可以創建一個新記憶.當前時刻的新單元狀態如式(6)所示.

(6)

式(6)的加號前一部分來確定丟棄舊狀態中的信息量,加號后一部分用于控制新狀態的變化.

3.2.3 輸出門 輸出門用于確定記憶單元中哪些信息可以被輸出,并且輸出信息,如式(7)和式(8)所示.

ot=σ(Woxt+Uoht-1+bo)

(7)

ht=ot×tanh(Ct)

(8)

4 LSTM模型在血泵周期預測上的應用

4.1 實驗數據的采集

由于采集真實人體的左心室壓力相關數據比較困難,但為了加強LSTM模型的真實預測性,所以實驗選用了與人的生理信號變化趨勢相近的大鼠生理信號(心室壓、心電圖、主動脈壓)與其對應的時間,如圖6所示.

圖6 信號的采集Fig.6 Signal acquisition

數據采集過程:生理信號數據采集實驗是在華西生命科技園實驗室進行,通過醫用生物信號采集與分析系統采集數據的.首先將準備好的實驗動物大鼠麻醉后固定在手術臺,對動物進行開胸手術,將心室壓力檢測探頭插入大鼠的左心室;由于大鼠體型原因,在安裝心室壓力探頭的情況下無法再直接在其主動脈處安裝血壓探測器,因此改在大鼠股動脈處安裝壓力傳感器代為檢測采集血壓數據;最后安裝心電檢測電極采集心電圖數據.在三個生理數據采集設備都安裝好后開啟信號采集系統開始采集正常生理數據,在正常生理數據采集完成后對大鼠進行注射藥物處理模擬心衰現象并采集數據記錄.其中通道1是血壓波形,通道2是左心室壓力波形,通道3是心電圖信號波形.其中部分數據如表1所示.將采集到的生理波形放大后如圖7所示.

表1 某周期時間-壓力對應表Tab.1 A certain cycle time-pressure correspondence table

圖7 采集信號波形記錄Fig.7 Acquisition signal waveform record

4.2 模型系統的輸入確定

4.2.1 特征點提取及模型輸入確定 要實現對心室壓力的同步控制預測,需要找出心室壓力曲線中需控制節奏有關的相對應節點,確定預測模型的輸入輸出變量.預測目標為心室壓力一個變化周期內與控制軸流式血泵相關的4個特征點位置.特征點1位置取心室壓力曲線下降沿低于8 mmHg時刻點坐標;特征點2取上升沿高于8 mmHg時刻點坐標值;特征點3取心室壓力峰值坐標;特征點4取下降沿0.75倍峰值位置坐標,如圖7所示.將樣本每一個周期中的4個特征點橫坐標(即時間點)提取出來作為變量(每個周期內時間以特征點1為參照的相對時間),利用前連續6個周期的相應特征點作為輸入預測下一個周期的4個特征點位置.一個周期內各特征點與軸流泵相應動作對應關系如下:點2~3血泵由舒張轉速提速到收縮轉速代表開始收縮,點3表示收縮達到最高峰,點3~點4過程血泵由最高收縮轉速緩慢降速,點4~1過程血泵降速至舒張轉速,點1~2過程血泵維持舒張轉速.

4.2.2 輸入數據的處理 本次實驗數據都采用手術收集的大鼠心室數據(包括正常搏動時的數據、血容量不足、及時補充血液容量后的數據),單個樣本為二維數據,尺寸為(6,4),6個周期為一個樣本,4個特征點橫坐標為一組.模型預測中總共采用3 962個樣本,取模型訓練樣本為3 173個(其中分為2 538個實際訓練樣本,635個驗證樣本),測試樣本為789個,如表2所示,即訓練和測試樣本取8∶2的比例,同時為提高計算速度,將樣本數據進行了歸一化處理.

表2 模型樣本數量Tab.2 Model sample size

4.3 模型網絡的結構

在構建模型過程中,研究為了利用不同的LSTM層能捕捉不同波動的特點,同時為了加強模型的預測能力,選擇疊加兩個LSTM 層.但疊加層也會加深模型的復雜性,更容易產生過擬合現象.為此,層中選擇使用10%的Dropout來防止過度擬合,模型結構如表3所示.在網絡的最后,選擇加一個全連接層輸出結果.每批量采用4個樣本進行批量梯度下降,全樣本迭代20次,把均方誤差(Mean Square Error,MSE)函數作為損失函數進行梯度下降.

表3 LSTM模型結構Tab.3 LSTM model structure

經過20次全樣本迭代,從圖8a可知,損失函數值在第5次迭代后基本不再減少,證明實驗LSTM模型已經趨于穩定,驗證集上效果也很好,損失函數值遠低于訓練集.訓練過程中的均方絕對誤差(Mean Absolute Error,MAE)如圖8b所示,從該指數分析也可證明模型經歷5次迭代,預測增進的效果已經大大降低,同時驗證集上的MAE值也是逐次下降的趨勢,效果也比訓練集上更好(由于進行了歸一化處理,MAE和MSE數值都較小).

(a) 迭代損失值

5 結果與分析

經過LSTM模型的預測,實驗得到訓練后得到的預測結果與實際結果的均方根誤差為8.29,而通過測試集得到的預測結果與實際結果的均方根誤差為5.33,為讓預測結果更有助于分析和比對,實驗把測試集的4個預測特征點與實際特征點的絕對誤差可視化,如圖9所示.

從圖9得出,由于特征點1為一個周期的初始點,恒為0,所以誤差不計;觀測特征點2,大部分絕對誤差都在0~5以內,同時有較小一部分在10~70之間,說明模型預測結果在特征點2處出現偏差程度較大的錯誤預測;觀測特征點3,可以發現預測結果較為滿意,絕大部分預測誤差都在0~5之間,但也出現了誤差在10以上的預測結果,說明模型對于特征點3的預測結果是比較準確的;觀測特征點4,發現大部分預測誤差在0~3,最大誤差為7,極少數誤差在5以上,說明模型在特征點4上的預測是4個點中最令人滿意的.

(a) 特征點1預測與實際絕對誤差

6 誤差分析

6.1 數據集上的數據誤差

從圖10可以得出四個特征點預測誤差區別大都來自訓練集和測試集上的原因.特征點2(x型數據點)的預測有最多偏差較大的誤差(絕對誤差>10).首先,從訓練集數據和測試集數據上就可以看到,兩個數據集的特征點2相較于正常值都有明顯大的偏差,訓練集上的樣本誤差雖然某種程度上可以提高模型的泛化能力,但在某種程度上也影響了模型的預測準確性,再加上測試集上特征點2上的離散偏差,使模型對測試集的預測誤差進一步擴大,從而觀測到特征點2預測結果與實際結果的絕對誤差,出現了10以上,甚至還有超過30以上的極大誤差.

而反觀特征點4(星型數據點),訓練集上該特征點不僅出現了較多零數據點,還有偏離正常范圍內的一部分數據點,而特征點4的測試集數據點都是正常數據值,但是在預測結果上是成功的,絕對誤差基本維持在1~3之間,說明模型誤差的來源很大程度上是來自測試集上特征點的錯誤數據.

6.2 LSTM上的模型誤差

一部分模型的誤差可能來自于超參數的調節使LSTM模型還不是最優解,由于模型中的超參數都是根據經驗,人工比較部分預備參數中選的最優解,但對于疊加層層數的確定以及單層中神經單元個數的確定,以及添加其他不一樣循環層都還有很大選取空間,這些對模型的影響都還尚未可知,有待后續實驗研究.

還有一部分的誤差可能來自模型的訓練數據集樣本數量和LSTM疊加層產生了過擬合的結果,使模型的泛化能力還不夠.神經網絡非常依靠訓練數據集的數量,可以極大地提高模型的泛化能力,后續實驗中還可以增添更多包含更多情況的實驗樣本,來測試模型的預測能力.

7 結 論

針對現有軸流血泵只提供恒流輔助功能的缺點,本文通過搭建血液模擬循環實驗平臺,對軸流血泵搏動性實驗的控制方案進行確定,并且發現了系統中時間延遲問題,為了再次提高同步仿生搏動的準確性,提出了利用LSTM模型進行周期預測,可提前讓控制系統和執行系統做好準備動作,其中模型得到訓練后,得到的訓練集預測結果與實際結果的均方根誤差為8.29,而通過測試集得到的預測結果與實際結果的均方根誤差為5.33.最后對結果和實驗誤差進行了分析.本文整體證明了軸流泵在同步仿生搏動性上的可行性,但還有許多缺陷,如軸流血泵模型周期預測只停留在模擬實驗上,還未真正運用于動物活體實驗中,預測誤差也還有提高的空間.

猜你喜歡
心室誤差樣本
華南農業大學發現番茄多心室形成調控的新機制
起搏器周期性心室過感知現象
規劃·樣本
隧道橫向貫通誤差估算與應用
隧道橫向貫通誤差估算與應用
人大專題詢問之“方城樣本”
控制心室率,有效療房顫
隨機微分方程的樣本Lyapunov二次型估計
晨風
精確與誤差
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合