汪祖民,左長青,秦 靜,*,季長清
(1. 大連大學 信息工程與技術學院,遼寧 大連 116622; 2. 大連大學 物理科學與技術學院,遼寧 大連 116622)
目前,心血管疾病已成為嚴重威脅我國居民健康的一大類疾病,成為影響國家經濟社會發展的重大健康問題。然而,心電信號異常監測的設備主要集中在醫院,病人通常到醫院才可以進行檢測。心臟病具有突發性強、不可控、發病前沒有癥狀等特點,并且很多患者已經得了相關的心血管疾病,自己卻沒有意識到。因此,中老年人迫切需要一種可以隨身攜帶的心電監測儀器,及時觀察心電變化情況。
隨著信息技術的迅猛發展,人們更希望有一種設備能夠長時間觀察心臟活動的心電信號,所以,便攜式的心電監護設備便有了龐大的市場需求。市面上現有的電子產品存在很多的不足,例如設備體積過大,不利于用戶攜帶,不能讓患者夠長時間實時的監測自身的心電動態,而且這類產品大多價格不菲不適合推廣。隨著計算機網絡技術及智能疾病診斷技術的發展,監測到心電異常并及時獲得治療的可能性大大提高。不僅可以減少現在醫療資源緊缺的問題,而且讓患者可以自己在家獲得精準的診斷,減少患者在醫療上的開銷。心電信號分析及異常分類技術受到計算機領域廣泛關注,國內外研究者已做出大量工作。2000 年,Lu Z 等[1]提出了一種基于分層集劃分的小波ECG 編解碼器樹(SPIHT)壓縮算法,他們的CR(轉化率)為20,PRD(均方差百分比)為1.62%。2013 年,Chou Y C 等[2]采用DWT 和向量-標量量化器(vector-scalar quantizer, VSQ)方法進行壓縮CR 為35,PRD 為7.00%。
2016 年Zubair M 等[3]使用CNN 對從MIT-BIH數據庫獲得的44 個心電圖信號進行記錄,提取了R峰的心電圖節拍模式,用于三層CNN 的訓練,達到92.70%準確率。2016 年Kiranyaz 等[4]研究了僅用R 峰波的三層CNN 心電監護系統。2017 年Acharya等[5]使用CNN 算法用MIT-BIH 數據庫使得檢測的識別率達到92.50%,2017 年Luo Kanet 等[6]使用DNN 算法使得心電圖識別率達到94.39%。2018 年Mathews Sherin M 等[7]開發了一個基于CNN 的分類系統,它能自動從兩導聯ECG 數據中學習合適的特征表示,從而消除了手工制作特征的需要,但框架沒有涉及任何QRS 波檢測。在Acharya 等[8]的工作中,由十一層卷積神經網絡處理分段ECG,使用短時程ECG 數據得到最大精度93.18%,Haoqi S 等[9]利用8 682 例多導睡眠儀數據集,構建了一個由卷積網絡和長短時記憶網絡組成的5個深度神經網絡,利用心電圖和呼吸信號訓練深層網絡模型。
隨著深度學習技術的發展,在圖像檢測的問題上已經取得了較好的效果,其在心電異常監測上也有相關應用。在心電圖監測異常心電判定方面,2016 年Rahhal 等[10]使用深神經網絡(DNN)使用疊層去噪自動編碼器(Stack Noise Reduction Code Automatically, SDAEs)從原始的兩導聯心電圖數據中進行適當的特征表示。2018 年,Yin W 等[11]開發了一個基于CNN 與IR-UWB 雷達相結合的分類系統,它能自動從兩導聯ECG 數據中學習合適的特征表示,從而消除了手工制作特征的需要。
本文設計智能數據分析技術,可以對心電信號進行檢測和心電異常自動化判定,對心臟疾病進行實時檢測,以滿足病人的實時監控需求。同時,本文提出的設計方法也可以應用于醫學影像其他種類的疾病判定中(腦電圖等),因此具有重要的理論意義和科學價值。通過對研究成果的轉化與應用,可以實時地為沒有醫學知識的人提供方便快捷的醫療監測手段,減輕醫療工作者的負擔,同時也為老年患者提供了安全的保障,以提供長期高效的社會服務。
基于深度學習的移動遠程心電監測系統結構如圖1 所示,該系統主要由4 部分組成:云端服務程序、桌面客戶端配置軟件、移動端處理初始心電信號的應用程序、收集心電信號的硬件心電開發板,這4 部分協調配合完成心電信號的傳輸與判定。云端服務程序是整個系統的樞紐,手機端程序通過互聯網HTTP 協議與云端服務程序會話,云端服務程序會把手機端傳輸的一維心電信號處理分類,把分類的結果返回給移動端程序,并且把對應的數據傳輸給電腦端的數據庫里保存,用戶可以通過登錄的方式查看之前的信息記錄。

圖1 移動遠程心電監測系統結構圖
心電監測算法的模型架構如圖2 所示,算法通過上面預處理得到的心拍數據,隨機取出其中的80%作為算法模型的輸入,其余的20%數據作為驗證模型評估準則的測試集。算法模型是由棧式SAE網絡層、單通道CNN 層、Dropout 層、一維CNN卷積層和輸出層組成[12]。

圖2 深度學習算法流程
模型通過自編碼網絡的輸入和輸出是相同的特點,提煉中間具有代表性的特征,使得無監督學習把輸入數據壓縮到更少數量神經元的特征層[13],有效地減少數據維度并仍然保留必要的特征信息。自編碼層和卷積層之間添加了Dropout 層來防止出現過擬合,同時將特征向量轉換為二維向量數據來方便卷積操作的運算特征層進一步連接到卷積層進行心電異常監測的分類,由輸出層輸出異常類別。
由于心拍之間的變化非常的微小,為了提高分類模型的精度獲得更好的分類,把1D-CNN 連接到預先訓練的SAE,可以進一步監督訓練整個模型。1D-CNN 中含有三個個卷積層,經過卷積運算后將網絡連接到輸出層進行分類運算,模型結構如圖3所示得到5 種不同的分類結果。表1 為模型參數的設置,其中包含激活函數和各層的參數設計等信息。

圖3 分類模型結構圖

表1 模型參數設置
對算法進行性能評估和對比,采用MIT-BIH數據集。算法被部署在基于1080TI GPU 的計算集群上,在深度學習模型中使用Keras-2 平臺架構和Python-3.7 實現CNN1-ECG。
從表2 可以看出算法,在訓練集上的表現遠超其他算法,但在測試集上的出現了輕微的過擬合現象,總體來說準確性優于其他算法。

表2 模型在MIT-BIH 上分類效果對比1
從表3 可以看出CNN1-ECG 算法在回歸率和F1 值得表現也優于其他算法。由于算法采用自編碼網絡降低心電數據維度,提高對病變位置識別的敏感性,并通過從數據集中獲得驗證集的方法來獲取驗證集,避免了數據過擬合的出現,使得CNN1-ECG 比其他方法更適合心電異常監測問題。

表3 模型在MIT-BIH 上分類效果對比2
云端服務器程序可以通過HTTP 協議同終端程序會話,處理各種指令進而操作數據庫。與普通的單機采集程序相比,本系統采用云端服務器可以讓多個患者同時進行心電數據的采集工作,適用于互聯網大數據的趨勢,從而保障多人多場景的同時運作,提高診斷的效率。服務器程序還可以同時運行在所有支持Python 的可接入互聯網的服務器上。
經過客戶端配置軟件可以生成初步的數據庫結構,但獲取數據還需要通過移動端從硬件設備,并進行預處理。在數據庫結構之上插入若干實時的心電信號的數據列,完成數據庫的結構配置,此應用需在Android 系統下運行。
Android 平臺包含藍牙網絡堆棧支持,此支持能讓設備以無線方式與其他藍牙設備交換數據。應用框架提供通過Android Bluetooth API 訪問藍牙功能的權限。Android 端應用軟件實現連接藍牙和波形采集顯示。在數據顯示的同時,將數據使用json 格式進行封裝,并和服務器進行連接,將封裝好的數據發送給服務器端進行處理。
本系統主要是采用Python 實現,應用Kivy 工作包輔助開發。Kivy 是Python 的一個工具包,可以應用于不同的環境中,可以把開發應用程序和其他界面的用戶交流的多點觸控應用軟件連接起來。系統通過使用Kivy 編寫的程序,實現手機端和服務器端同電腦端之間的信息交互,移動遠程心電監測系統選擇使用Mysql 數據庫存儲組織數據。
心電開發板模塊如圖4 所示,采用三電極患者接口,并內置一個截止頻率為0.3 Hz 的雙極點高通濾波器和一個截止頻率為37 Hz 的雙極點低通濾波器。通帶內的總信號增益為400,負責接收電極片傳遞而來的電信號,并通過藍牙傳遞給移動APP 端。將一次性電極片或者電極夾放置在左手腕和右手腕處,并將心電導聯線的按扣分別扣在左右手腕上的電極上,保持兩手放松就可以把心電信號傳送到手機端顯示。

圖4 心電開發板
心電接口如圖5 所示,采用2 線標準接線方式,開發板特別定制音頻接口,信號穩定。通過AD8232 強大的內置右腿驅動電路,省掉1根導聯線,這樣2 個點的測量方式將變得更加方便,心電信號測量部位推薦選擇左圖標準I 導聯手腕處和中圖標準Ⅱ導聯手腕、小腿處還有右圖胸導聯的藍色圓點標注位置為測量點。

圖5 心電接口
當APP 模塊與心電開發板模塊通過藍牙連接成功以后,就會陸續的有初始心電信號的顯示,見圖6 所示。

圖6 移動端接收到的原始心電信號
如圖7 所示,通過服務器端程序把從手機端接收而來的波特率為115 200,停止位為1,奇偶校驗為0,采樣率為500 Hz 的心電信號數據顯示出來,放入機器學習判定模型中,判定結果顯示在客戶端顯示。

圖7 服務器端心電顯示程序
如圖8 所示,通過機器學習模型判定的結果可顯示在系統界面上,判定結果為正常、室性早搏、左束支阻滯、右束支阻滯,并返回界面顯示。

圖8 電腦軟件端顯示分類結果
本文設計并實現了一個基于深度學習的移動遠程心電監測系統,設計了基于自編碼模型和卷積神經網絡結合的判定模型,完成心電異常算法判定,并實現了原型系統。以一維卷積神經網絡算法為基礎,實現了自動監測心電圖異常判定分類,設計了簡單易操作的交互界面,用于心電監測的回執。對心電監測算法研究和患者實時監測心電變化的醫療價值,都有較強的研究價值和實用價值。今后將優化異常分類算法,進一步改進判定精度。另外,在系統實際應用中,還需優化系統程序框架,以符合互聯網環境下實際運行需求。