田宇馳,胡 亮
(吉林大學計算機科學與技術(shù)學院,吉林長春130012)
基于SVM的一種醫(yī)療數(shù)據(jù)分析模型
田宇馳,胡 亮
(吉林大學計算機科學與技術(shù)學院,吉林長春130012)
基于SVM分類算法和Web服務(wù)框架,提出了一種醫(yī)療數(shù)據(jù)分析與疾病預(yù)測模型,改進了醫(yī)療數(shù)據(jù)分析系統(tǒng)與醫(yī)院數(shù)據(jù)庫之間的數(shù)據(jù)傳輸協(xié)議.采用該模型與長春某三級甲等醫(yī)院合作,獲取了總共1 695條病人電子病歷數(shù)據(jù)與病人疾病信息作為實驗數(shù)據(jù),并在醫(yī)療數(shù)據(jù)分析系統(tǒng)中進行數(shù)據(jù)挖掘分析.通過數(shù)據(jù)條數(shù)的變化和對屬性的控制來測試設(shè)計的數(shù)據(jù)分析模型和改進的數(shù)據(jù)傳輸協(xié)議的傳輸效率.實驗表明,在傳輸數(shù)據(jù)之前對數(shù)據(jù)進行預(yù)處理并且通過特征選擇算法進行降維處理有助于提高整個系統(tǒng)的醫(yī)療數(shù)據(jù)傳輸效率和預(yù)測準確度.
Web服務(wù);SVM;電子病歷;特征選擇
醫(yī)院現(xiàn)在廣泛采用電子病歷系統(tǒng),通過電子病歷系統(tǒng)對病人的健康狀況進行長期跟蹤.一部分醫(yī)院除了在病人發(fā)病時對病人進行治療外,還借助病歷記錄的醫(yī)療數(shù)據(jù)和疾病預(yù)測系統(tǒng)對病人的健康狀態(tài)進行分析,對疾病進行預(yù)測,從而達到提前預(yù)防和及時治療的目的.
電子病歷的研究在計算機和醫(yī)學領(lǐng)域同時得到了很高的關(guān)注.電子病歷是醫(yī)療數(shù)據(jù)的數(shù)字化信息,它包括病人的健康狀況、治療過程和影像信息等.這些數(shù)字化信息的出現(xiàn)催生了醫(yī)療數(shù)據(jù)信息的管理與共享[1]和醫(yī)療數(shù)據(jù)的分析與疾病預(yù)測2個領(lǐng)域的研究.
醫(yī)療數(shù)據(jù)的數(shù)字化使得用計算機輔助醫(yī)學進行數(shù)據(jù)采集、分析與疾病預(yù)測成為可能.近幾年,軟計算方法、支持向量機(SVM)和人工神經(jīng)網(wǎng)絡(luò)(ANN)已經(jīng)應(yīng)用在疾病預(yù)測上.如SVM算法用于診斷缺血性心臟?。?];SVM和鑒別集算法的結(jié)合能診斷老年癡呆[3];ANN算法用于進行動脈粥樣硬化和心血管疾病的早期預(yù)防[4]等.
本文提出了一種基于SVM分類算法和Web服務(wù)框架的醫(yī)療數(shù)據(jù)分析與疾病預(yù)測模型.該模型先對電子病歷中部分醫(yī)療數(shù)據(jù)進行特征選擇和降維處理,再將這些維度的所有數(shù)據(jù)按照是否感染某種疾病進行分類并作為SVM算法的訓(xùn)練數(shù)據(jù)集,最后使用訓(xùn)練得到Lagrange乘子,對病人的疾病進行分析預(yù)測.這一模型為數(shù)據(jù)挖掘中的軟計算方法應(yīng)用在醫(yī)療數(shù)據(jù)的分析中提供了方案.使用醫(yī)療數(shù)據(jù)對模型進行測試發(fā)現(xiàn),特征選擇方法對部分醫(yī)療數(shù)據(jù)進行處理后,醫(yī)療數(shù)據(jù)的傳輸效率明顯高于原始模型.
將醫(yī)院、醫(yī)療保健組織等數(shù)字化的醫(yī)療數(shù)據(jù)以特定的格式、協(xié)議發(fā)送到醫(yī)療數(shù)據(jù)分析模塊進行分析與疾病預(yù)測.
醫(yī)療數(shù)據(jù)分析模型組成見圖1.
醫(yī)療數(shù)據(jù)提取模塊:該模塊由醫(yī)院電子病歷系統(tǒng)負責實現(xiàn),我們使用openEHR系統(tǒng)作為醫(yī)院電子病歷系統(tǒng),并在openEHR中實現(xiàn)醫(yī)療數(shù)據(jù)的提取功能.openEHR系統(tǒng)是一個開源、靈活的電子病歷系統(tǒng),支持HL7衛(wèi)生信息交換標準[5].很多醫(yī)療健康組織、政府和學術(shù)科研單位都使用openEHR進行開發(fā)和科研工作.如一種基于openEHR的患者病歷數(shù)據(jù)管理模型、openEHR等許多開源的電子病歷平臺的對比與評估和基于openEHR的檔案建模等[6-8].
數(shù)據(jù)交換模塊:基于Web服務(wù)的數(shù)據(jù)交換模塊使用醫(yī)療數(shù)據(jù)通信協(xié)議實現(xiàn)醫(yī)療數(shù)據(jù)分析模塊與醫(yī)療數(shù)據(jù)提取模塊的數(shù)據(jù)交換.Web服務(wù)[9]是一個平臺獨立、松耦合的Web應(yīng)用程序.由于Web服務(wù)的跨平臺特性,許多模型與框架是基于Web服務(wù)構(gòu)建的,如基于Web服務(wù)集成分布式資源[10]和數(shù)據(jù)流分析測試[11]等.在本文提出的醫(yī)療數(shù)據(jù)分析模型中,使用Web服務(wù)來連接醫(yī)療數(shù)據(jù)分析模塊和醫(yī)療數(shù)據(jù)提取模塊.醫(yī)療數(shù)據(jù)提取模塊作為Web服務(wù)的服務(wù)端,實現(xiàn)的方法包括存取數(shù)據(jù)、數(shù)據(jù)預(yù)處理、序列化等,改進后的模型要求實現(xiàn)指定維度,指定屬性數(shù)據(jù)的讀取.本文提出的醫(yī)療數(shù)據(jù)分析模塊作為Web服務(wù)的客戶端,通過HTTP服務(wù)向數(shù)據(jù)提取模塊請求獲取數(shù)據(jù),并對數(shù)據(jù)進行預(yù)處理.
醫(yī)療數(shù)據(jù)分析模塊:我們使用Caisis開源平臺作為醫(yī)療數(shù)據(jù)分析與疾病預(yù)測系統(tǒng)實現(xiàn)這一模塊.Caisis是基于Web的開源癌癥數(shù)據(jù)管理系統(tǒng),一些臨床醫(yī)學研究使用Caisis系統(tǒng)管理和歸檔數(shù)字顯微圖像[12],通過向Caisis系統(tǒng)中添加特征選擇和SVM算法,使用SVM算法對醫(yī)療數(shù)據(jù)進行分析和疾病預(yù)測,因此使用的特征選擇算法需要基于SVM,可以提高數(shù)據(jù)分析和疾病預(yù)測過程的效率和準確度.
2.1 SVM算法
SVM算法最初是由Vapnik等人在1995年提出的一種可訓(xùn)練的機器學習算法[13].依據(jù)統(tǒng)計學習理論、VC維理論[14-15]和結(jié)構(gòu)風險最小化理論[16],從一定數(shù)目的樣本信息在學習能力和復(fù)雜度(對訓(xùn)練樣本的學習程度)中找到最佳折中,以期望獲得最好的推廣能力(或稱泛化能力).
SVM一般用在二分類問題上,二分類問題的形式化定義:對于給定的訓(xùn)練集(x1,y1),(x2,y2),…,(xn,yn)∈Rn×R,其中xi∈Rn,yn∈{-1,1},i=1,…,n,根據(jù)訓(xùn)練集在Rn空間上找出一個實值函數(shù)g(x),使得指示函數(shù)(或稱決策函數(shù)、分類函數(shù))
在對xi進行分類的時候,取一個閾值ε,當g(xi)>ε時sgn(g(xi))選擇一個類別;當g(xi)<ε時sgn(g(xi))選擇另一個類別[17].
二分類問題的本質(zhì)就是獲得一個可以將Rn空間分成兩部分的實值函數(shù)g(x).如果g(x)為線性函數(shù),則分類器就是線性分類器;如果g(x)為非線性函數(shù),則分類器就是非線性分類器.對于線性分類問題,g(x)=(w·x)-b(其中(w·x)是向量w與向量x的內(nèi)積),可以將2個類別無錯誤的分割開來,所表示的分隔函數(shù)被稱為超平面[18-19].
對于線性分類問題,2個類別中間的那條超平面可能并不是唯一的,我們需要一個指標來評價分類函數(shù)的優(yōu)劣.其中分類間隔(margin)是SVM分類中的一個指標,這個指標通過分類間隔大小來評價一個超平面是否是最終的最優(yōu)超平面.下面給出最優(yōu)超平面的定義:
假設(shè)訓(xùn)練集數(shù)據(jù)(x1,y1),(x2,y2),…,(xn,yn)∈Rn×R,y∈{-1,+1}可以被超平面,有
且超平面與每個分類中最近的樣本點之間的距離(分類間隔)最大,因此這個超平面為最大間隔超平面,即最優(yōu)超平面.
H是分類面,而H1和H2是平行于H,且過離H最近的兩類樣本的直線,H1與H,H2與H之間的距離就是幾何間隔.
這里的分類間隔指的是H1與H2之間的幾何間距.
下面給出幾何間距的定義:
對于給定訓(xùn)練集(x1,y1),(x2,y2),…,(xn,yn)∈Rn×R,其中xi∈Rn,yi∈{-1,1},i=1,…,n.我們定義樣本點(xi,yi)到超平面的間距
幾何間距表達式
為了構(gòu)造最優(yōu)超平面,需要在約束條件yi(w·xi+b)≥1,i=1,2,…,n的情況下,最小化函數(shù)
這是一個在線性約束條件下凸二次規(guī)劃問題,根據(jù)Lagrange求解方法[20],通過構(gòu)造Lagrange乘子α=(α1,α2,…,αn),得到最后的判定函數(shù)
2.2基于SVM的醫(yī)療數(shù)據(jù)分析模塊
將SVM分類算法應(yīng)用到醫(yī)療數(shù)據(jù)分析模塊中,進行疾病預(yù)測.如圖2是基于SVM的醫(yī)療數(shù)據(jù)分析模塊,通過數(shù)據(jù)交換模塊獲取原始組數(shù)據(jù)(患病病人醫(yī)療數(shù)據(jù)和對照組病人數(shù)據(jù)).通過特征選擇過程輸入到SVM分類器中進行訓(xùn)練,訓(xùn)練后可以對新的醫(yī)療數(shù)據(jù)進行分析預(yù)測.
3.1醫(yī)療數(shù)據(jù)交換模塊
在原始的醫(yī)療數(shù)據(jù)交換模塊中,數(shù)據(jù)請求原語只由4條通信原語組成(如圖3所示).圖3由原始醫(yī)療數(shù)據(jù)分析模型的3個模塊構(gòu)建,其中在醫(yī)療數(shù)據(jù)分析模塊與醫(yī)療數(shù)據(jù)提取模塊之間的4條通信原語包括2條請求和2條應(yīng)答.由于醫(yī)療數(shù)據(jù)的維度極大,屬性很多,但是在預(yù)測某個疾病時,只有很少的一部分屬性會對分類預(yù)測產(chǎn)生影響.這樣的全部維度的數(shù)據(jù)都需要傳輸,浪費了時間,降低了數(shù)據(jù)傳輸效率,影響了醫(yī)療數(shù)據(jù)分析模塊的算法效率.
3.2改進的醫(yī)療數(shù)據(jù)交換模塊
在改進的醫(yī)療數(shù)據(jù)交換模塊中,在數(shù)據(jù)傳輸協(xié)議中增加了4條原語(見圖4).在每條原語中不僅有醫(yī)療記錄條數(shù)的要求,還包括對所請求醫(yī)療數(shù)據(jù)維度和屬性的具體說明.醫(yī)療數(shù)據(jù)分析模塊先請求一小部分全部維度的數(shù)據(jù),對這小部分數(shù)據(jù)進行特征選擇.然后醫(yī)療數(shù)據(jù)分析模塊只請求特征選擇出來的對預(yù)測相關(guān)的屬性的剩余所有醫(yī)療數(shù)據(jù).最后通過SVM分類算法進行訓(xùn)練和預(yù)測.在新的醫(yī)療數(shù)據(jù)交換模塊中,大部分數(shù)據(jù)中只有小部分相關(guān)屬性被傳輸?shù)綌?shù)據(jù)分析模塊,極大地減少了數(shù)據(jù)傳輸總量,也同時增加了分析模塊預(yù)測算法的效率.
4.1數(shù)據(jù)傳輸效率的計算
在實驗中假設(shè)特征選擇出的結(jié)果為141個屬性中的22個屬性,這22個屬性是運行特征選擇算法得到的結(jié)果,假設(shè)Caisis中訓(xùn)練需要的原始組數(shù)據(jù)和對照組數(shù)據(jù)總條數(shù)取相同的N值.
在原始的設(shè)計模型中,在Caisis和openEHR分別發(fā)送請求和接收數(shù)據(jù)的過程中,分別針對原始組和對照組病人數(shù)據(jù)記錄了8次系統(tǒng)時間t1-t8.原始設(shè)計模型的總數(shù)據(jù)傳輸時間可以表示為
改進的設(shè)計模型中,假設(shè)Caisis在特征選擇過程中需要的原始組和對照組數(shù)據(jù)條數(shù)相等,設(shè)為n,訓(xùn)練過程需要的數(shù)據(jù)總數(shù)為N-n.在實驗中分別針對原始組和對照組數(shù)據(jù)16次記錄了系統(tǒng)時間g1-g16.改進后的設(shè)計模型的總數(shù)據(jù)傳輸時間可以表示為
4.2實驗結(jié)果分析與評價
原始模型與改進模型的對比結(jié)果見圖5.由圖5可知,在對改進后的模型進行實驗評估時,當Caisis系統(tǒng)請求的訓(xùn)練數(shù)據(jù)總數(shù)從100~600條變化時,特征選擇請求的數(shù)據(jù)條數(shù)均取100條.當Caisis系統(tǒng)請求的訓(xùn)練數(shù)據(jù)總數(shù)為100條時,改進模型與原始模型的總數(shù)據(jù)傳輸時間是相同的,這是因為當Caisis系統(tǒng)請求的訓(xùn)練數(shù)據(jù)總數(shù)與改進模型的特征選擇請求的數(shù)據(jù)條數(shù)都是100條.無論是原始模型還是改進模型,openEHR系統(tǒng)發(fā)送回來的數(shù)據(jù)都是100條的全部屬性.所以,當Caisis請求的訓(xùn)練數(shù)據(jù)總數(shù)與進行特征選擇的條數(shù)相同時,改進模型降級為與原始模型具有相同傳輸效率.但是隨著Caisis系統(tǒng)請求的訓(xùn)練數(shù)據(jù)總數(shù)的不斷增加,改進模型則具有非常明顯的優(yōu)勢(見圖5).
圖6是對改進模型的評估.當Caisis系統(tǒng)請求的醫(yī)療數(shù)據(jù)總數(shù)一定時,隨著Caisis系統(tǒng)進行特征選擇所請求的數(shù)據(jù)條數(shù)變化,總數(shù)據(jù)傳輸時間不斷增加,傳輸效率逐漸降低.Caisis系統(tǒng)第一步進行特征選擇所請求的數(shù)據(jù)條數(shù)越小,就會有更少的數(shù)據(jù)以全部屬性傳輸,也就是說,更多的數(shù)據(jù)會以更少的屬性傳輸.這樣,總的數(shù)據(jù)量變小,醫(yī)療數(shù)據(jù)的傳輸效率就增大.相反,隨著Caisis系統(tǒng)第一步特征選擇所請求的數(shù)據(jù)條數(shù)的增加,總的傳輸數(shù)據(jù)量變大,醫(yī)療數(shù)據(jù)的總傳輸時間也會變長.當Caisis系統(tǒng)第一步特征選擇所請求的數(shù)據(jù)條數(shù)等于需要訓(xùn)練的總數(shù)時,全部數(shù)據(jù)的全部屬性都需要傳輸給Caisis,這就使得改進模型降級為與原始模型具有相同的低效率模型系統(tǒng).
實驗結(jié)果表明,改進后的醫(yī)療數(shù)據(jù)交換協(xié)議具有更高的數(shù)據(jù)交換效率,并且醫(yī)療數(shù)據(jù)分析與預(yù)測系統(tǒng)進行特征選擇時使用的數(shù)據(jù)量越小,醫(yī)療數(shù)據(jù)的交換效率越高;基于SVM的特征選擇算法提高了醫(yī)療數(shù)據(jù)分析系統(tǒng)的效率,并提高了使用SVM算法進行預(yù)測分析的效率和準確度.
[1] 吳信東,葉明全,胡東輝,等.普適醫(yī)療信息管理與服務(wù)關(guān)鍵技術(shù)與挑戰(zhàn)[J].計算機學報,2012,13(5):41-42
[2] CIECHOLEWSKI M.Ischemic heart disease detection using selected machine learning methods[J].International Journal of Computer Mathematics,2013,90(8):1734-1759.
[3] RAMIREZ J,GORRIZ J M,SALAS-GONZALEZ D,et al.Computer-aided diagnosis of alzheimer’s type dementia combining support vector machines and discriminant set of features[J].Information Sciences,2013,237:59-72.
[4] KUPUSINAC A,DOROSLOVACKI R,MALBASKI D,et al.A primary estimation of the cardiometabolic risk by using artificial neural networks[J].Computers in Biology and Medicine,2013,43(6):751-757.
[5] 俞汝龍.HL7組織與HL7標準簡介[J].中國數(shù)字醫(yī)學,2007,2(7):41-43.
[6] SANTOS C,PEDROS T,COSTA C,el al.On the use of openehr in a portable phr[C].Rome:Scitepress,2011:351-356.
[7] MAGLOGIANNIS I.Towards the adoption of open source and open access electronic health record systems[J].Journal of Healthcare Engineering,2012,3(1):141-161
[8] 張旭峰,姚志洪.基于openEHR的個人健康檔案建模[J].計算機應(yīng)用與軟件,2013,30(5):71-72,111.
[9] 岳昆,王曉玲,周傲英.Web服務(wù)核心支撐技術(shù)[J].軟件學報,2004,15(3):428-442.
[10] 何清林,楊森,徐澤同.基于元數(shù)據(jù)和Web Service中間件的分布式資源庫集成[J].計算機工程與設(shè)計,2009,30(9):2202-2204.
[11] DONG WL,HU JH.Test method for BEPL-Based Web service composition based on data flow analysis[J].Journal of Software,2009,20(8):2102-2112
[12] KHUSHI M,CARPENTER JE,BALLEINE RL,et al.Electronic biorepository application system:web-based software to manage receipt,peer review,and approval of researcher applications to a biobank[J].Biopreserv Biobank,2012,10(1):37-44.
[13] 魏振.基于GPU的SVM算法在入侵檢測系統(tǒng)中的應(yīng)用[D].長春:吉林大學,2013.
[14] VAPNIK V.The nature of statistical learning theory[M].New York:Springer-Verlag,1995:65-85.
[15] VLADIMIR N VAPNIK.統(tǒng)計學習理論的本質(zhì)[M].張學工,譯.北京:清華大學出版社,2000:12-13.
[16] VAPNIK V,CHERVOKNENKIS A Y.The necessary and sufficient conditions for the uniform convergence of averages to their expected value[J].Teoriya Veroyatnostei I ee Primeneniya,1981,26(3):543-564.
[17] 鄧乃揚,田英杰.數(shù)據(jù)挖掘中的新方法——支持向量機[M].北京:科學出版社,2004:164-190.
[18] 張浩然,韓正之.支持向量機算法及應(yīng)用研究[D].上海:上海交通大學,2003.
[19] 席少霖.非線性最優(yōu)化方法[M].北京:高等教育出版社,1992:470.
[20] BARZILAY O,BRAILOVSKY V L.On domain knowledge and feature selection using a support vector machine[J].Pattern Recognition Letters,1999,20:475-484.
A medical data analysis model based on SVM
TIAN Yu-chi,HU Liang
(College of Computer Science and Technology,Jilin University,Changchun 130012,China)
This paper proposes a medical data analysis and disease prediction model based on SVM classification algorithm and Web Service framework and the medical data communication protocol has been improved.This model includes the extraction of medical data from the electronic medical records database in a hospital and the transmission of medical data to a system to be analyzed by methods of data mining.A total of 1 695patients’electronic medical records derived from a third-grade class-A hospital in Changchun are used to examine the communication efficiency of the model.Improved medical data communication protocol is also tested by means of the variation of number of requested medical records and the control of the attributes.Experimental results show that the communication efficiency of the protocol in the system based on the model is much higher when the medical data go through a dimensionally reducing process like feature selection before transmission.
Web Service;SVM;electronic medical record;feature selection
TP 393 [學科代碼] 520·3040 [
] A
(責任編輯:石紹慶)
1000-1832(2015)01-0077-06
10.16163/j.cnki.22-1123/n.2015.01.015
2014-02-24
國家自然科學基金資助項目(61103197,61073009);國家高技術(shù)研究發(fā)展計劃項目(2011AA010101).
田宇馳(1989—),男,碩士研究生;通訊作者:胡亮(1968—),男,教授,博士研究生導(dǎo)師,主要從事分布式系統(tǒng)和網(wǎng)絡(luò)與信息安全研究.