?

基于遷移學習的心音心臟疾病檢測算法

2024-03-27 16:21馮辰凡陶青川
現代計算機 2024年1期
關鍵詞:心音領域深度

馮辰凡,陶青川

(四川大學電子信息學院,成都 610065)

0 引言

在當今時代,機器學習、人工智能等技術已經在各個領域產生了巨大的影響。研究者們不斷創造出高效且可靠的算法,將這些算法應用到各行各業,以解決各式各樣的現實問題。在健康領域中,尤其是醫學領域,先進技術的應用一直處于前沿。心臟疾病作為健康領域的一項重要挑戰,早期的診斷對于患者的生存和健康至關重要[1]。近年來,越來越多的研究者開始將機器學習的知識應用于實現高效、精確的心臟疾病檢測的目標。例如,一些研究者嘗試使用心電圖(ECG)[2]或核磁共振儀的三維掃描結果[3]作為數據集和診斷依據,并設計了相應的算法。盡管這些方法在某些情況下取得了一定的成效,但這些儀器通常昂貴且耗時。相比之下,基于心音(PCG)的心臟疾病檢測算法因其器材開銷小,且數據集收集簡單而備受關注,成為當前心臟病診斷領域的主要研究方向。

當前,已經存在許多心音識別方法。例如,Pantea 等[4]對傳統的機器學習算法,模糊推理系統(ANFIS)進行了改進,取得了良好的識別結果。隨著深度學習和神經網絡的興起,越來越多的研究人員開始采用深度學習方法來實現這一目標。Potes 等[5]采用卷積神經網絡(CNN)來進行心音識別,而在Sujadevi 等[6]的研究中,構建了長短期記憶網絡(LSTM)來實現同樣的目標。在深度學習模型的眾多變種中,HTS-AT[7]網絡是最近引起廣泛關注的一種,它融合了Swin Transformer[8]架構的優點,同時高效提取了局部性特征,在聲音識別領域取得了顯著的成績。本文旨在對該網絡進行改進和優化,提出了HTS-AT V2 模型,以提高模型的推理速度和其在特定領域或任務上的性能,尤其是在心音心臟疾病檢測算法的應用方面。

此外,隨著任務復雜性的增加和跨領域的需求,單一領域訓練的模型面臨一些挑戰。為了充分發揮深度學習的潛力,研究人員開始關注遷移學習(Transfer Learning)[9]方法。遷移學習允許在一個領域訓練的模型在另一個領域進行任務遷移,從而提高性能。本文將采用遷移學習方法,將知識從一個領域遷移到另一個領域,以提高模型的性能并減少訓練過程中的損耗。

本文的結構如下:

第一部分介紹了本文所用方法和模型的基礎理論;第二部分將詳細介紹本文提出的模型,即HTS-AT V2 的網絡結構,并探討相關評價指標。我們將通過設計不同的實驗來證明模型的有效性,并探討遷移學習對于訓練過程的優化作用;第三部分將對本文的研究成果進行總結,并展望未來的研究方向。

1 論文涉及方法介紹

本部分主要對論文中使用到的方法理論進行介紹,主要包括HTS-AT 網絡模型、Swin Transformer V2和遷移學習。

1.1 HTS-AT

HTS-AT(Hierarchical Token-Semantic Audio Transformer)是由Chen等[7]于2022年提出并發布的一種全新的聲音識別的方法。網絡結構如圖1所示??梢钥吹?,此方法分為三個部分:第一部分是以梅爾頻譜圖(Mel Frequency Cepstral Coefficient)為主要思想的語音特征提取編碼部分,用來提取聲音中重要特征,并將一維的時序數據編碼整合成滿足模型輸入要求的二維多通道數據;第二部分則是模型的主干部分,從圖中可以看出,HTS-AT 借鑒了Swin Transformer的思路:使用層次化的金字塔設計,一共包含了4 個Group,每個Group 的末尾都會使用Patch-Merge 模塊縮小輸入圖像的分辨率以達到逐層擴大感受野、減少數據量的目的,而Group 中的核心部分則是直接使用了以Windows Attention 為核心的Swin Transformer Block;第三部分是模型的輸出部分,將第二部分的數據解碼并映射到目標類型上,以滿足任務對數據格式的需要。

1.2 Swin Transformer V2

Swin Transformer V2 是由Liu 等[10]在Swin Transformer V1提出八個月后提出的,Swin Transformer 網絡的2.0 版本。經過改進,相較于V1,V2 使得模型規模更大并且能適配不同分辨率的圖片和不同尺寸的窗口。Swin Transformer V2 和Swin Transformer V1的對比如圖2所示。在V1的基礎上,作者提出了一種新的歸一化方式,稱為殘差后歸一化(residual-post-normalization)。該方法將歸一化層從每個殘差分支的開始移到末尾,這樣每個殘差分支的輸出在合并回主分支之前都會被歸一化,當層數加深時,主分支的幅度將不會被累加,這種新的歸一化方式使得網絡各層的激活值變得更加溫和。同時,為了緩解V1 中某些層的注意力權重會被幾個特定的點支配的問題,作者還提出了縮放的余弦注意力機制(scaled cosine attention),它可以取代之前的點乘注意力機制。在縮放的余弦注意力機制中,自注意力的計算與輸入的幅值無關,從而可以產生更平衡的注意力權重。

圖1 HTS-AT網絡結構圖

圖2 Swin Transformer V1與Swin Transformer V2對比圖

1.3 遷移學習

遷移學習(Transfer Learning)是一種機器學習方法,其主要思想是將從一個任務中學到的知識或模型應用到另一個相關任務中,以提高學習性能。遷移學習的概念最早在領域自適應(Domain Adaptation)和多任務學習(Multi-Task Learning)的研究中有所體現。領域自適應關注如何將一個領域中學到的知識遷移到另一個相關領域,而多任務學習關注如何同時學習多個相關任務,以提高性能。在當前的深度學習領域,遷移學習可以幫助模型加快收斂、學習的過程,也能夠提高模型的泛化能力和適應能力,從而在目標領域數據稀缺或噪聲較多的情況下,也能取得較好的訓練效果。在由Tan 等[11]提出的綜述中,將深度學習中的遷移學習分成了四個類型:基于實例的深度遷移學習、基于映射的深度遷移學習、基于網絡的深度遷移學習和基于對抗的深度遷移學習。

2 基于遷移學習的HTS-AT V2算法

本節主要介紹HTS-AT V2 的網絡結構、訓練過成、評價指標以及實驗結果。

2.1 本文方法介紹

本文是對Chen 等[7]提出的HTS-AT 進行改進,改進后的新網絡命名為HTS-AT V2。主要的改進是:在主干網絡中添加了Liu等[10]所提出的Swin Transformer V2 Block,網絡結果如圖3所示,圖中模型的主體,也就是Training部分,原來使用的是Swin Transformer Block,而經過改進,本文使用了更加優越的Swin Transformer V2 Block。相比之下,V2版本通過引入殘差后歸一化和縮放的余弦注意力機制,讓模型更加穩定,注意力權重更加平衡。

同時,由于本文所使用到的數據集為心音數據集,相比于文獻[6]中的數據集,心音最大的特點為其周期性,所以對原網絡的Encode 部分進行改進,對聲音使用小波變換去噪后,按心動周期進行切割,再將切割后的聲音分別進行編碼后進行合并。而且,由于心音數據集中的數據類型較少,識別場景較為簡單,所以在合并后通過二維卷積的方式來減少通道數量,以實現參數量的減少。

改進后的編碼方式,不僅幫助網絡在訓練時更好地利用心音周期性的特點,減少無用特征的干擾;而且通過減少通道數降低了網絡訓練時的參數量,提高了心音識別的實時性。另外,為了進一步提高模型的泛化能力、減少訓練過程的開銷,本文的訓練過程還使用了基于網絡的深度遷移學習[11]。HTS-AT V2 網絡會先在“源領域”,即ESC-50 數據集上進行訓練,之后會在“目標領域”,也就是心音數據集上進行微調,以適應心音數據集的數據分布和任務,以提高在這個領域上的性能。

2.2 數據集介紹

本文涉及到的數據集主要有兩個:ESC-50數據集和心音數據集。

ESC-50 數據集是著名的聲音數據集,該數據集由5 s 長的記錄組成,這些記錄被組織成了50 個不同的語義類,松散地排列成5 個主要類別,總共有2000 條數據。本文用該數據集作為遷移學習過程中的“源領域”數據集。

心音數據集是本文自制的數據集,從成都、綿陽、自貢三個城市,五家不同的醫院、醫療機構收集而來。其中共3500 條數據,2500 條正常心音,1000 條異常心音,包括了兒童、青少年、成年人、老年人不同年齡階段的心音數據。詳細的數據集信息見表1,表中的“其他”表示患者不只患有一種疾病,或存在心臟疾病但暫無法確定具體病種。

圖3 HTS-AT V2網絡結構圖

表1 數據集種類及數量

2.3 評價指標

心音識別作為多分類任務的一種,本文主要以宏平均(Marco Average)的F1-Score 作為關注的指標。對于二分類的分類問題,可以將樣本分為四類,即真陽性(TP)、假陽性(FP)、真陰性(TN)和假陰性(FN)?;诜诸惤Y果的矩陣見表2所示。

表2 二分類任務結果矩陣

基于表2 的基本屬性,我們可以分別得出準確率(Accuracy)、精確率(Precision)和召回率(Recall)的公式:

為了更全面地反映模型的性能,我們一般會考慮F-Score 作為模型進一步的評價指標。由于精確率和召回率指標有時會出現矛盾,因此需要F-Score指標來對這兩者進行加權和平均。

一般,我們取a= 1,此時,我們稱其為F1-Score。

F1-Score 結合了精確度和召回率,當F1 較高時,我們認為該方法更有效。

在多分類的任務上,為了能夠獲得模型在多組數據上總體的性能,一般使用宏平均(Marco Average)來做評價指標。宏平均是根據每個類的F1-Score 求得的算數平均,相比于微平均(Micro Average),其可以更平等地對待每一個類別,而數據集中各個類別的重要性相同,故用作此次任務的評價指標。

2.4 實驗結果

2.4.1 實驗環境

本文代碼使用的操作系統為ubuntu18.04,框架環境為PyTorch 1.8.1、Python 3.8、Cuda 11.1。在硬件環境方面,主處理器為12 vCPU Intel(R)Xeon(R)Silver 4214R CPU @ 2.40GHz,運行內存20 GB,使用的顯卡為RTX 3090,單卡,顯存24 GB。

2.4.2 結果與分析

改進后,模型的實驗結果見表3。

表3 實驗結果

從表3可以看出,本文改進后的HTS-AT V2算法,雖然在F1-Score 上只是略高于原版網絡,但是在參數量和推理速度上,都取得了比較優秀的結果。所以,本文提出的算法更加適合部署在邊緣設備上,便于進行快速、便捷的心臟疾病的檢測。這與我們的研究初衷相符。

另外,為了更加準確、可靠地對比遷移學習對于模型的影響,分別用遷移學習的訓練方式和普通的訓練方式對HTS-AT V2 額外進行了10 次實驗,其最后的F1-Score 結果區間如圖4所示。

圖4 傳統訓練和遷移學習實驗結果對比

從圖4 可以看出,在10 次實驗中,雖然在最好情況下遷移學習訓練出來模型的F1-Score相比使用普通方式訓練出來的模型只是略有提升,但是遷移學習訓練的模型卻有著更好的穩定性,其訓練結果的波動要小于使用普通訓練方式訓練出來的模型,這也體現了遷移學習對于訓練過程的優化。

3 結語

本文針對心音識別任務,對語音識別網絡HTS-AT 進行了改進,將原本模型中使用的Swin Transformer 模型更新為Swin Transformer V2,同時對原網絡中聲音的特征提取進行了改進,讓其更好地適應心音數據集。在心音數據集上的訓練結果表明,在識別效果略有提升的情況下,減少了模型的大小并提高了模型的推理速度,大大提高了心音識別算法的實時性,有助于將該模型部署于邊緣設備上。也使用了遷移學習這種特殊的訓練方法,優化了模型的訓練過程。在未來,可以繼續根據心音的特性,對網絡結構和訓練方式進行進一步的改進,從而進一步提升算法效果。

猜你喜歡
心音領域深度
深度理解一元一次方程
領域·對峙
深度觀察
深度觀察
深度觀察
基于雙閾值的心音快速分段算法及其應用研究
雙聲道心音能量熵比的提取與識別研究
基于香農熵的心音信號檢測方法研究
新常態下推動多層次多領域依法治理初探
二維心音圖特征提取與識別方法的研究
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合