高 鈺,李 彬,房毅憲
齊魯工業(yè)大學(xué)(山東省科學(xué)院) 數(shù)學(xué)與統(tǒng)計學(xué)院,濟南 250353
隨著社會的進步與發(fā)展,大眾對智慧醫(yī)療服務(wù)需求的提升使傳統(tǒng)的醫(yī)療服務(wù)體系已經(jīng)無法滿足人民對醫(yī)療保健的迫切需要,結(jié)合大數(shù)據(jù)、機器學(xué)習(xí)、深度學(xué)習(xí)等的智能醫(yī)療為此開辟了新的路徑。心電圖信號識別問題是醫(yī)學(xué)診斷與人工智能相結(jié)合的一個熱點問題。ECG可以及早的檢測出心律不齊、早搏以及急性心肌梗死等多種心臟疾病,是心血管疾病診斷的重要依據(jù)。心電圖信號包含心臟病變的基本信息,特征是五個被稱為基準點的峰值,以字母P、Q、R、S和T表示,如圖1所示。QRS波是左右心室的去極化,用作信號分析的參考點。P波是心房去極化的結(jié)果,而心室引起其余的波峰。信號的篩查、診斷和檢測依賴于波的形態(tài),以及每個峰值的持續(xù)時間和組成它的片段。例如,當QRS波變大變寬時,可能發(fā)生室性早搏。
圖1 心電信號特征波段
深度學(xué)習(xí)和醫(yī)學(xué)的結(jié)合,已經(jīng)成為智能醫(yī)療領(lǐng)域的重要研究課題和新的發(fā)展趨勢。目前除了QRS波定位檢測算法已經(jīng)足夠成熟可靠外,其它波段的定位算法可靠性都不高。如果不能對這些波段進行精準定位,那將在很大程度上影響分類器精度。現(xiàn)在大多數(shù)采用傳統(tǒng)機器學(xué)習(xí)框架的論文都采用了這樣一種方法:使用一些數(shù)學(xué)變換處理ECG信號,得到較少的系數(shù),用這些系數(shù)來表征心拍,從而實現(xiàn)對異常信號的檢測。王莉莎等[1]基于小波張量化與Tucker分解的ECG分類算法:將心電信號分幀后進行小波分解;張宇微等[2]采用了隨機森林、K-近鄰和C4.5三種傳統(tǒng)機器學(xué)習(xí)算法和卷積神經(jīng)網(wǎng)絡(luò)算法在MIT-BIH心律不齊數(shù)據(jù)庫上進行了驗證分析;孫夢莉等[3]使用基于深度卷積網(wǎng)絡(luò)結(jié)合遷移學(xué)習(xí)的分類判別算法,在小數(shù)據(jù)樣本中獲得了較好分類性能;瞿文鳳等[4]將深度學(xué)習(xí)技術(shù)應(yīng)用于心電信號的分類識別研究,提出基于DBN和CNN的心電信號分類方法;Hasan等[5]利用經(jīng)驗?zāi)J椒纸鈱CG信號分解去噪,并使用一維卷積網(wǎng)絡(luò)對ECG信號特征進行提取和分類。上述方法也存在幾個主要不足:首先是僅使用深度學(xué)習(xí)模型,不能充分利用ECG信號特征的多樣性;其次是對心拍的分類需要將ECG信號的心拍進行分割[6],耗時長,效率低;最后是難以做到數(shù)據(jù)擴充以提高精度,易受噪音干擾。針對以上問題,本文提出一種基于語義對稱分解哈希的快速ECG信號檢測模型。
哈希得益于逐位XOR操作,具有占用內(nèi)部存儲小、速度快、準確率高等特點,被廣泛地應(yīng)用于機器視覺當中?;诠5臋z索方法旨在將具有高維特征、高存儲量的數(shù)據(jù)通過哈希編碼來表示,這既降低了存儲空間又提高了檢索的效率。基于監(jiān)督信息的哈希學(xué)習(xí)因利用監(jiān)督信息來進行哈希學(xué)習(xí),往往具有更高的檢索精度,監(jiān)督離散哈希的目標在于利用哈希函數(shù)將哈希碼回歸到其相應(yīng)的標簽上來生成哈希編碼庫,從而實現(xiàn)快速的檢索目的[7]。
雖然哈希計算簡單,特別適合大規(guī)模數(shù)據(jù)檢索,但是由于其二值的離散約束,常常遭遇混合整數(shù)優(yōu)化難題。針對該問題,很多文獻將哈希的離散約束松弛為連續(xù)變量,但是這會造成量化損失。部分離散的哈希方法[8]通過交替優(yōu)化和離散循環(huán)坐標下降方法有效地解決了該難題,但是需要一碼一碼的學(xué)習(xí)哈希編碼,非常費時,效率很低。為此,我們提出一種快速的語義對稱分解哈希算法(SSDH),利用ECG標簽,生成語義相似矩陣,再借助于Hadamard矩陣對已有的標簽進行重排,無需任何的迭代和參數(shù)調(diào)節(jié)就能快速生成哈希編碼庫。最后設(shè)計相應(yīng)的哈希函數(shù),即可快速的實現(xiàn)ECG信號檢測,具體的流程框圖如圖2所示。
圖2 快速的SSDH算法流程框
(1)
然后對語義相似S進行離散的哈希分解,直接生成哈希庫B=[b1,b2,…,bn]T∈{-1,1}n×k,其中k表示預(yù)設(shè)的哈希編碼長度,矩陣的每一行代表每個ECG信號的哈希編碼。具體目標可以描述為:
s.t.BTB=nIk,B∈{-1,1}n×k.
(2)
其中,‖‖F(xiàn)表示矩陣Frobenius范數(shù),正交約束的目的是使得每一碼的哈希特征盡可能無關(guān)。
由于B的二值離散約束,上述目標轉(zhuǎn)化為對稱離散哈希分解問題[9],其優(yōu)化是個NP難題。為此,本文借助Hadamard矩陣和已有的標簽y直接生成離散哈希編碼數(shù)據(jù)庫B,無需任何的迭代過程,也無需調(diào)試任何的參數(shù)。
然后將原始ECG樣本進行核化處理,將其映射至再生核希爾伯特空間,從而提升模型的非線性能力,本文采用高斯核函數(shù)對樣本進行非線性核化處理:
(3)
其中[a1,…,ap]表示從m個原始樣本中隨機選取的p(p 具體算法流程為: 1)輸入ECG信號標簽y=(y1,…,yn)T∈Nn; 2)預(yù)設(shè)哈希碼長度為k; 3)根據(jù)公式(1)生成語義相似圖S; 4)根據(jù)公式(3)非線性核化處理ECG信號; 5)隨機生成矩陣H=Hadamard(k); 6)利用信號標簽y排列Hadamard矩陣H; 7)生成哈希編碼庫B = H(y,:)。 生成哈希庫之后,我們還需要設(shè)計一個哈希函數(shù)f建立原始心電信號數(shù)據(jù)的再生核希爾伯特空間K={φ(X)|φ(X)∈Rn×p}與潛在的海明空間H={B|B∈Rn×k}的映射關(guān)系,也為樣本外數(shù)據(jù)提供可用的哈希函數(shù)。常用的哈希函數(shù)一般可以分為三類:線性哈希函數(shù)、非線性哈希函數(shù)和深度哈希函數(shù)。限于篇幅原因,本文只采用前兩種哈希函數(shù)。 1)線性哈希函數(shù):假設(shè)P∈Rp×k為一個線嵌入,則線性分類器可以通過最小化下列損失構(gòu)建: (4) 其中λ>0是防止過學(xué)習(xí)的正則化參數(shù)。利用最小二乘,公式4的封閉解可表示為: P=([φ(X)]Tφ(X)+λI)-1[φ(X)]TB (5) 對于任何一個查詢樣本xq,其哈希編碼可以由h(xq)=sign(PTφ(xq))生成。 2)非線性哈希函數(shù):本文采用邏輯回歸(logistic regression)函數(shù)作為非線性分類器,采用一碼一碼的學(xué)習(xí)策略,也就是學(xué)習(xí)k個分類器,一個分類器對應(yīng)一碼,從而生成查詢樣本xq哈希編碼。針對第J個編碼J=W*j,可以通過最小化下列損失得到: (6) 其中γ是防止過學(xué)習(xí)正則化參數(shù)。樣本外數(shù)據(jù)xq利用哈希函數(shù)h(xq)=sign(WTφ(xq))即可生成哈希編碼。 為驗證算法的有效性,本文在國際公共心律失常數(shù)據(jù)集MIT-BIH上進行實驗測試[10]。MIT-BIH數(shù)據(jù)集中主要包含四類心電圖信號,N(正常博動信號),L(左束支傳導(dǎo)阻滯),R(右束支傳導(dǎo)阻滯)和V(室性早搏)。之前的ECG檢測方法大都按照信號的采集和預(yù)處理、ECG信號的波形分析與多域特征提取、模型訓(xùn)練與預(yù)測等步驟[11]進行,比如基于前饋神經(jīng)網(wǎng)絡(luò)(feedforward neural network,FNN)的ECG檢測方法[12],基于支持向量機(support vector machines,SVM)SVM的檢測算法[13]或基于K最近鄰(K-nearest neighbor,KNN)的ECG檢測方法,但這些方法能檢測分類的心電圖類型有限并且在實際應(yīng)用中檢測性能相對較低。卷積神經(jīng)網(wǎng)絡(luò)(convolutional neural networks,CNN)相較于前述方法,性能上有很大的提高[14]。 本文在MIT-BIH數(shù)據(jù)集中隨機選取8 000個樣本用于訓(xùn)練,2 000個樣本進行測試,兩類哈希函數(shù)的正則化參數(shù)統(tǒng)一設(shè)置為0.1。一般的,哈希編碼越長,準確率越高,為了公平起見,將哈希編碼長度k確定為16。本文CNN算法和SSDH算法對上述N、L、R、V四類心電圖信號識別準確率結(jié)果如表1所示。 表1 CNN與SSDH算法的準確率比較 % 實驗結(jié)果表明,SSDH算法識別的準確率達到了99.85%,訓(xùn)練時間僅僅需要2 s,相比于深度CNN測試結(jié)果的99.07%提高了接近0.8%,訓(xùn)練耗時也遠低于7層CNN算法的2 min訓(xùn)練時長。 圖3給出算法在哈希碼長為16 bits時的準確率和召回率曲線圖;圖4給出當訓(xùn)練集上哈希碼長為16時,ECG哈希表示與哈希編碼庫的相似程度;圖5給出測試集上原始信號和提取的哈希表示的概率分布情況。簡言之,SSDH算法在精度、查全率和計算時間方面優(yōu)于傳統(tǒng)方法。 圖4 ECG哈希表示與哈希編碼庫的相似對比 圖5 ECG哈希表示與原始信號的概率分布對比 本文創(chuàng)新性地提出一種高效離散語義對稱分解哈希算法,快速實施ECG信號的檢測并且提高檢索的正確率。把任意長度的ECG數(shù)據(jù)輸入通過哈希算法緊致的二進制哈希表示,在海明空間內(nèi)實現(xiàn)信號的檢測與識別,既可以降低存儲空間又可以提升檢測的平均精度和最高精度。亮點在于該離散哈希算法不需要交替優(yōu)化算法,不需要迭代,不依賴于初始值。 經(jīng)過多年的發(fā)展,心電圖技術(shù)雖臨床應(yīng)用普遍,但由于心電信號本身的復(fù)雜性和變異性,傳統(tǒng)心電圖分析技術(shù)存在一定局限性,無法做到自動、快速、準確地分析,必須依靠專業(yè)醫(yī)生進行分析解讀,而大部分醫(yī)療機構(gòu),特別是基層醫(yī)院,專業(yè)心電圖醫(yī)師資源匱乏,使得心電圖檢查疾病的應(yīng)用效果受到局限,大量基層心血管疾病患者無法獲得及時、準確的診斷和防控治療。近些年來,以CT、MRI以及PET為代表的醫(yī)學(xué)影像技術(shù)飛速發(fā)展,醫(yī)學(xué)影像已成為臨床精確診療的必需手段。隨著人工智能的逐漸普及,心電自動診斷的重要性亦逐漸凸顯[15]。心電自動診斷不但可以提供輔助診斷信息,也可以24 h實時監(jiān)控,這對于移動醫(yī)療、遠程診斷都大有裨益。 本文主要利用語義對稱分解哈希的方法提高ECG檢索的正確率和速度,適用于智能醫(yī)療領(lǐng)域中通過高效準確的ECG信息檢測來預(yù)測、識別和精確診療心血管異?,F(xiàn)象的情況,預(yù)計該技術(shù)將在如下領(lǐng)域得到廣泛應(yīng)用: 1) 大量基層醫(yī)院、個體診所、養(yǎng)老機構(gòu)等缺乏專業(yè)的心電醫(yī)生,此產(chǎn)品的應(yīng)用將實現(xiàn)患者在這些機構(gòu)的屬地化、快速化心電分析診斷。 2) 減輕大型醫(yī)院專業(yè)心電醫(yī)生的工作量。既提高工作效率,又提升診斷水平。 3) 心電監(jiān)測進入家庭,使得患者在家中像監(jiān)測血壓、血糖一樣方便快捷地進行靜態(tài)和動態(tài)的心電監(jiān)控。 4) 將可穿戴設(shè)備的心電分析和診斷水平提升至專業(yè)醫(yī)生水平,強化穿戴設(shè)備(手表、手環(huán)等)的功能。 本文提出了一種基于語義對稱分解哈希(SSDH)的監(jiān)督學(xué)習(xí)方法,根據(jù)ECG各個波段具有的不同特點,來實施ECG檢索與信號匹配。SSDH算法對數(shù)據(jù)標簽生成的語義相似進行離散對稱哈希分解,從而生成哈希編碼庫,最后學(xué)習(xí)哈希函數(shù)建立海明空間與原始數(shù)據(jù)核化空間的映射關(guān)系。針對離散優(yōu)化需要通過交替優(yōu)化或離散循環(huán)坐標下降等方法實施混合整數(shù)規(guī)劃問題,SSDH算法借助語義標簽排列Hadamard矩陣,無需迭代和任何參數(shù)的調(diào)試即可快速地生成哈希編碼庫。在已有的國際公共數(shù)據(jù)集MIT-BIH上進行程序設(shè)計及仿真測試,結(jié)果表明SSDH算法在極少的訓(xùn)練時間下即可完成對大量ECG信號進行快速分類的任務(wù),識別精度也超過CNN深度模型。2.3 算法有效性驗證
2.4 算法創(chuàng)新點
3 技術(shù)應(yīng)用
4 結(jié) 論