• 沒有找到結果。

利用類神經網路分類進行心雜音辨識

N/A
N/A
Protected

Academic year: 2021

Share "利用類神經網路分類進行心雜音辨識"

Copied!
6
0
0

加載中.... (立即查看全文)

全文

(1)

利用類神經網路分類進行心雜音辨識

Using Atificial Neural Network For Heart Murmur Recognizition

謝秋武、楊坤璋、邱泓文、徐建業*

台北醫學大學 醫學資訊研究所

Chiu-Wu Hsieh, Kun-Chang Yang, Hung-Wen Chiu, Chien-Yeh Hsu * Graduate Institute of Medical Informatics, Taipei Medical University

* Corresponding Author. Email: cyhsu@tmu.edu.tw

一、 中文摘要

心雜音是臨床診斷上的重要參考,可對心臟 結構或病理問題做早期診斷,而今心臟聽診仍是 確認心雜音的重要技術,且需具備相當經驗,因 此我們將評估利用數位聲音訊號處理及類神經 網路(Artificial Neural Network)的方法在心雜音 分析上的應用。

在本研究中,我們已知心雜音主要頻率範圍 在 150Hz 到 500Hz 之間,我們對所蒐集的樣本, 其中包含正確和有心雜音的樣本,用快速傅利葉 轉換(Fast Fourier Transform,FFT)數位訊號處理 將雜音頻譜的能量比值擷取出,並且利用類神經 網路,建立自動分析模式。 本研究利用 32 個已知正常心音和 31 個經過 判定有心雜音的樣本來建立類神經網路模組 (Molding)。經過驗證此系統,在 15 個測試組中, 判別率高達 100 %。但是目前還沒有辦法區分雜 音的來源區域,以及哪些病因所引起的雜音,希 望將來能在於此基礎上,隨著樣本的擴增以及技 術的精進,發展出自動辨識心雜音的輔助系統。 關鍵詞:心音、心雜音、數位訊號處理,類神經 網路,快速傅利葉轉換。 Abstract

Cardiac murmur is significant in clinical diagnosis, and can be used to diagnose the physiological problems (physiology program) of heart earlier. Up to now, auscultation of the heart is still a critical and definite skill required to identify and diagnose these murmurs. Auscultation is still the key method to identify cardiac murmurs, but relies much on experience. Therefore, we evaluated the application of acoustic signal processing technique and artificial neural network methods for cardiac murmur analysis.

According to other studies, we assumed the noise frequency is between 150 Hz to 500 Hz of

cardiac murmurs. We collected the heart sound data including normal and un-normal. We used Fast Fourier Transform technique to obtain the spectrum of time domain data and built the automatic

recognition procedure applying artificial neural network.

Thirty-one cases that were diagnosed to have cardiac murmurs and 32 normal cases were

included in this study. The recorded data have been processed and analyzed. We designed a Multilayer Perceptorn model by using Artificial Neural Network technique. That model was 100% correct for 15 test cases. (The true positive rate was 100% and false positive rate was 0%.).

In this study, we demonstrated an automatic analysis model to distinguish between normal and cardiac murmurs. Base on the results, we plan to apply the procedures on a computer system for detecting cardiac murmurs automatically.

Keywords: Heart Sound, Stethoscope, Cardiac Murmurs, Auscultation, Digital Signal Processes, Artificial Neural Network, Fast Fourier

Transform. 二、 緣由與目的 在過去的二十年多來,非侵入式記錄 (non-invasive recording)是生物醫學及醫學工程 上最重要的進展技術發展目標。嶄新的技術讓我 們能設計、從事各種複雜的實驗,記錄高精密度 的腦電波、心電圖、肌電圖、磁振照影及功能性 磁振照影(Functional MRI)。但是當生醫技術繼續 向時空精密度極限挑戰的同時,生醫訊號分析方 法的進展卻沒能趕上技術開發的腳步。對科學家 們而言,一個可信度高的分析方法與一項革命性 的生物技術同等重要,我們需更好的分析方法來 從龐大複雜的數據中,擷取有意義的資訊。 目前臨床上判別心雜音還是以心臟聽診方 法為主,對正常心音與心雜音的區分與診斷仍舊 以醫師主觀的聽覺判斷為主,醫師必須根據其經

(2)

驗與一些定性的描述來判斷雜音的來源與形 式,以達到診斷的目的,因此比較容易受到週遭 環境及人為因素的干擾,例如醫師的年齡、聽覺 的靈敏度及所受聽診技巧的訓練程度等等[1],甚 至於受限於人耳的先天限制也可能導致對某些 特殊頻率聲音訊息的流失。 過去這些年來,一些有關訊號處理及分析的 方法相繼被發展出來,諸如時域(Time Domain) 及頻域(Frequency Domain)分析、小波理論 (Wavelet Theory)、獨立元件分析(Independent Component Analysis, ICA)等等,再加上一些醫學 相關的統計與決策以及類神經網路的理論與方 法。 本研究的目的在於發展出一個利用聲音的 數位訊號處理的技巧來判別心雜音,區分心臟雜 音之存在與否,且嘗試分析臨床心音醫學訊號, 建立判別心雜音模型。在數位訊號處理方面,利 用快速傅利葉轉換的方式計算出雜音頻譜的能 量,再利用類神經網路建立出判別是否有雜音的 模型。不過目前研究還沒有辦法判別雜音來源的 的位置,也沒有辦法區別雜音的類別。期望將來 可以延續這樣的處理架構模式,將雜音的類別、 位置和臨床的病因的相關可以發展出自動判別 的系統,進而可以應用在臨床初步診斷的輔助 上。 三、 材料與方法 1. 研究方法架構 本研究藉由醫生認可過的病患進行心音收 集,其中包括正常和有雜音的病患,收集的樣品 數量分別為 31 個有心雜音的樣本(年齡從 42 到 89 歲;平均年齡 71.1 歲)及 32 個正常樣本(年齡 從 19 到 36 歲;平均年齡 22.3 歲),每個病患將 錄製 120 秒的心音訊號,表 1 顯示病患年齡和性 別的分布。圖 1 為本系統處理流程方塊圖,主要 的處理步驟有收集心音、高低通濾波、數位化儲 存、訊號處理和訊號分析驗證流程。 首先利用 BIOPAC 數位生理監測儀器 (BIOPAC TSD108)進行心音信號的收集,並且利 用內建的信號處理功能將其濾波,將我們不需要 的雜訊濾除。此處的雜訊濾除係利用尼奎氏定理 (Nyquist. theorem)與數位類比轉換器的取樣頻率 來設定濾波器的截止頻率和取樣頻率。接著將所 有訊號資料以批次的方式進行第一階段的信號 處理。此階段的處理核心是利用快速傅利葉轉換 將時域的信號轉換成頻域的能量分佈,並且計算 雜音頻率範圍的能量比值。在本研究中所謂的雜 音能量比,係指雜音頻率範圍(150Hz ~ 500Hz) 的能量和所有頻率的能量相比,(射出型的心雜 音頻率範圍約 150Hz 至 500Hz)。 上述所計算完成的頻率能量比值,就相當於 心音訊號樣本的特徵值,再利用類神經網路的分 類(Classification)功能,配合先前心臟科醫生所辨 認的結果對類神經網路的網路節點加權進行訓 練。之後再觀察類神經網路的收斂結果以便決定 系統是否能夠對於心音異常之訊號加以辨識與 分類。本研究係利用 STATISTICA Data Analysis Software(StatSoft Inc.,) 軟體中的 STATISTICA Neural Networks (SNN)進行類神經網路的模組 訓練,最後以文字的方式輸出,如此便可達到以 電腦分析、分類心音異常的目標。 圖 1、訊號處理流程方塊圖 正常樣本 心雜音樣本 年齡範圍(年) 19~36 42~89 年齡平均數 22.3 71.1 年齡標準差 3.74 11.9 男(人次) 17 22 女(人次) 15 9 表 1、樣本資料屬性 2. 心音樣本的收取 如圖 2 我們採用 BIOPAC 數位生理監 測儀器,使用一個接觸型麥克風(TSD108) 接觸貼附於胸部各聽診區以便截取心音訊 號。所有受測者皆採平臥姿接受量測,每一 位受測者,我們分別針對圖 3 所表示的主動 脈區(Aortic)、肺動脈區(Pulmonary)、三尖 瓣區(Tricuspid)及僧帽瓣區(Mitral)四個聽 診區做心音訊號量測與錄製。在錄製心音過 程中同時也將心電圖 EKG 紀錄下來,有利 心音訊 號截取 高低頻 濾波 數位化 儲存 雜訊 濾除 訊號 處理 驗證 研判 訊號 分析

(3)

於在後續心音訊號處理上能正確區分心律 週期和同步,本實驗採用 Lead 1 的 EKG 的測,如圖 4 所示。 圖 2、BIOPAC 數位生理監測儀器 圖 3、聽診位置 (摘自 Pelech 1998 Feb,Vol.45,no.1,p114) 圖 4、Lead 1 ECG 量測 Respiratory Heart Sounds

First and Second S3 and S4 Gallops

Regurgitation Aortic and Mitral Mitral Stenosis

Ejection Murmurs Average Hearing Range Perfect Human Hearing

20 30 40 50 60 70 80 90 100 200 400 600 800 1K 10K 15K 20K 30K

Frequency in Hertz

圖 5、心音頻率範圍

(摘自 Tilkian & Conover 2001, p.14) 圖 5 中可以知道心音的頻率範圍介於 20~1000 HZ 之間,為了同時顧及儀器的取樣極 限以及最佳之訊號擷取效果,我們將取樣頻率設 定在 5000 Hz,濾波器高通頻率(High Pass)設定 為 0.05Hz,低通頻率(Low Pass)設定為 5000Hz。 為了輔助第一心音及第二心音的位置判讀,收錄 過程中同步進行 40Hz 到 100Hz Band Pass 的訊號 濾波,經處理過後的信號可以明確的觀察出第一 心音與第二心音的位置,藉以佐證收錄之心音的 正確性。 圖 6、訊號錄製畫面樣本 圖 6 是收錄樣本的訊號波形,最上方的訊號 為受測者的心電圖,中間圖示為原始收錄的心音 錄音訊號,最下方為心音訊號經過 40Hz 到 100Hz Band Pass 處理過後的訊號,這個訊號可以明確 的辨認出第一心音和第二心音的位置。中間的原 始信號將是我們所需要處理的原始資料,其他兩 個訊號只為了確定收錄訊號的好壞和同步的輔 助訊號。

(4)

3. 訊號處理流程

原始錄製的訊號採時域形式表達(Time Domain),為瞭解其雜音頻譜及相關能量分佈的 關係,因此我們需要將原始的時域訊號資料轉換 成頻域(Frequency Domain)。利用 MATLAB(The MathWorks, Inc.)軟體中的快速傅利葉轉換(FFT) 函數將原始訊號轉換成頻譜,本研究並沒有針對 每個心音週期進行判別,而是將全部資料(120 秒) 一起進行辨識。由圖 5 可以知道所有心音的頻率 都小於 1000Hz,因此轉換後的頻譜只會擷取低 於 1000Hz 的資料。 每個病患心音訊號振幅的差異性很大,經過 頻譜轉換後的能量值也會相對的有很大的差 異,需要經過標準化的處理,本實驗採用能量比 值的方式來處理。將 0~ 1000Hz 的頻譜等分為 10 個區域(即每 100Hz 為一個區間),分別計算各 區間的能量和,以及計算雜音的頻率範圍能量和 (150Hz ~ 500Hz),最後求出所謂的能量比值(即 150~500HZ 能量和/每 100HZ 能量和)。 分別將每一個病患的四個聽診區訊號依照 上面流程處理,分別計算出每一個資料的能量 比。最後依照每個病患四個聽診區的能量比值結 果按照頻率順序和聽診區順序(主動脈區、僧帽 瓣區、肺動脈區及三尖瓣區)整理填入 Excel (Microsoft Corporation.)檔案中。在 Excel 檔案中 也將醫生所判定的結果填入以方便後續分析。 4. 類神經網路訓練

經過上面步驟的處理和整理,所得到的 Excel 表格即可進行類神經網路訓練。

STATISTICA Neural Networks (SNN)這個套裝軟 體提供了類神經網路分析的模式,SNN 是一個 廣泛用途的類神經網路分析程式,並且提供了容 易操作的人機介面。我們使用 STATISTICA Neural Networks 的 Intelligent Problem Solver(IPS) 功能,輸入資料為 40 個能量比值,每個聽診區 有 10 個值,每個病人有 4 個聽診區,總共有 40 個輸入值。 我們將所有 63 個資料樣本,隨機方式從中 挑選出 15 個樣本為測試組,其中包含 8 個有心 雜音之樣本及 7 個無心雜音之樣本,其餘的 48 個樣本資料歸為訓練組。經過 ISP 訓練結果將挑 出 5 個效果比較好的模組,圖 7 為這 5 個模組的 ROC Curve,附件表 1 為每個模組的參數。 從 ROC Curve 和附件表 1 的參數表比較之 下,網路模組為第 5 組的結果最佳,其 ROC area 值為 1,達到最高的鑑別度,其網路架構為 MLP 40:40-14-1:1(Multilayer Perceptions)之多層感知 器架構,輸入層有 40 個神經元(變數),隱藏層有 14 個神經元,輸出層則為 1 個輸出變數,圖 8 為模組 5 的類神經架構圖。

圖 7、ANN 訓練結果的 ROC Curve

圖 8、模組 5,MLP 40:40-14-1:1 網路架構 四、 結果與討論 利用 15 個測試組樣本來驗證和評估結果表 現最好的模組 5,表 2 為模組 5 的預測結果,表 2 中欄位 Output.5 值顯示了網路模組(MLP 40:40-14-1:1)對該測試組各樣本的辨識預測 (Prediction)結果,欄位 Output 記錄該樣本是否具 有心雜音(1 表有心雜音;0 表無心雜音),由其中 可觀察到對於有心雜音的 8 個案例(編號 A)及無 心雜音的 7 個(編號 N)案例中,預測判別的結果 皆正確。 目前本研究的樣本蒐集只有 63 例(31 個具心 雜音樣本;32 個正常樣本),用於檢驗所得之類 神經網路模組的測試組樣本有 15 例(8 個具心雜 音;7 個正常樣本),雖然預測結果都正確,但是 樣本數量太少。並且樣本年齡相差很大,正常的 平均年齡 22.3 歲,有雜音的 71.1 歲,在性別分 佈上,有雜音的樣本中以男生為多(男 22 個;女 9

(5)

個),如果能增加樣本的年齡範圍和數量,此類 神經網路的節點權重還需要再經過校正。本研究 並沒有針對臨床病例判別,也沒有針對特定病因 所產生的雜音種類去詳細研究探討,將來可以依 照這樣的判別模式更進一步的研究探討。 Output Output.5 A04 1 1 A05 1 1 A09 1 1 A13 1 1 A18 1 1 A23 1 1 A29 1 1 A31 1 1 N04 0 0 N05 0 0 N09 0 0 N13 0 0 N18 0 0 N23 0 0 N29 0 0 表 2、測試組的測試結果 五、 結論 由於本實驗方式是預先經過 120 秒的 錄音取樣後上傳到電腦後,再用人工批次的 處理分析這些訊號,因此在實用上還需要簡 化這些繁瑣的流程,整合成一個自動化的處 理過程,才能對實際的應用有所幫助。診斷 判別的時間需要 120 秒,過於冗長,如果可 以即時反應將對實用化有所幫助。 這個辨別方式需要四個聽診區的心音 訊號資料,在錄音過程如果有敲擊麥克風或 麥克風脫落會導致心音訊號的失真或是雜 音的干擾導致辨別率降低或誤判。錄音過程 的不穩定原因導致診斷的方便性降低,這個 部份需要再加以研究才可以讓收音的過程 更穩定。 所有的電腦輔助診斷系統的數據都只 是提供給醫療人員作為參考,真正的病徵判 別還是需要專業的醫生診斷,如果可以加強 系統對於雜音來源的辨認,相信對醫護人員 有更多的輔助效果。 六、 參考文獻

[1]. Sapire DW. Understanding and diagnosing pediatric heart disease: Heart sounds and murmurs. Norwalk, Connecticut, Applcton & Langc 1992: 27-43.

[2]. Degroff, C.G. Bhatikar S. Hertzberg J. Shandas R. Valdes-Cruz L. & Mahajan R.L. (2001), Artificial neural network-based method of screening heart murmurs in children.

Circulation, vol. 103, no. 22, 5th Jun,

pp.2711-6

[3]. Garson, A. Bricker, J. & McNamara, D. (1990), The Science and Practice of Pediatric

Cardiology. Philadelphia, Pa: Lea & Febiger, pp.2203-2212

[4]. Larkin, M. (2001), Paediatric heart sounds assessed by computer. Lancet, vol. 357, no. 9271, 9th Jun, p.1856.

[5]. McCrindle, B.W. Shaffer, K.M. Kan, J.S. et al. (1996), Cardinal clinical signs in the

differentiation of heart murmurs in children. Arch Pediatr Adolesc Med, vol. 150, pp.169-174.

[6]. Thompson, W.R. Hayek, C.S. Tuchinda, C. Telford, J.K. & Lombardo, J.S. (2001),

Automated cardiac auscultation for detection of pathologic heart murmurs, Pediatric Cardiology, vol.22, no.5, Sep-Oct, pp.373-9.

[7]. The statistics Homepage. (2004), Electronic Statistics Textbook, [Online], W.R. StatSoft, Available from http://www.statsoft.com/textbook/stathome.htm l [13th June 2004]. [8]. 葉怡成 (2002)。應用類神經網路。台北市: 儒林圖書有限公司。 [9]. 羅建仲,羅琳 (2000)。心臟聽診(五版)。北 京市:人民衛生出版社。

(6)

[10].

七、 附件

Model Summary Report (Sheet1 in Imported from D:\heart_120sec_cal\NeuralNetwork\工作區 40imput\ALLCompData_AN_48.xls)

Profile Train Perf. Select Perf. Test Perf. Train Error Select Error Test Error Training/Members Note Inputs Hidden(1) Hidden(2)

1 Linear 40:40-1:1 0.939394 0.800000 0.00 0.000000 6.393559 0.00 PI 40 0 0 2 RBF 40:40-9-1:1 0.909091 1.000000 0.00 0.273500 0.287657 0.00 KM,KN,PI 40 9 0 3 RBF 40:40-10-1:1 0.939394 0.933333 0.00 0.252027 0.274117 0.00 KM,KN,PI 40 10 0 4 MLP 40:40-6-1:1 1.000000 1.000000 0.00 0.000172 0.012456 0.00 BP100,CG33b 40 6 0 5 MLP 40:40-14-1:1 1.000000 1.000000 0.00 0.000000 0.001826 0.00 BP100,CG22b 40 14 0 表 1、ANN 模組參數表

參考文獻

相關文件

‡網路作業系統( network operating system). ‡網路作業系統( network

Categories of Network Types by Broad Learning Method.

Each unit in hidden layer receives only a portion of total errors and these errors then feedback to the input layer.. Go to step 4 until the error is

Keywords: pattern classification, FRBCS, fuzzy GBML, fuzzy model, genetic algorithm... 第一章

As we shall see in Section 30.2, if we choose “complex roots of unity” as the evaluation points, we can produce a point-value representation by taking the discrete Fourier transform

for training

Random Forest: Theory and Practice Neural Network Motivation.. Neural Network Hypothesis Neural Network Training Deep

Moreover, this chapter also presents the basic of the Taguchi method, artificial neural network, genetic algorithm, particle swarm optimization, soft computing and