蔣 蓓 黃 敏* 陳 明 姚晨龍 武月圓 金瓏喆
1(上海市兒童醫(yī)院,上海交通大學附屬兒童醫(yī)院信息部 上海 200062)2(上海海洋大學信息學院 上海 201306)3(上??绍浖邢薰?上海 200093)
川崎病KD又名黏膜皮膚淋巴結綜合征,一般好發(fā)于5歲以下幼兒,目前病因尚未明確,其主要病變?yōu)槿硇匝苎譡1]。川崎病近年來的發(fā)病率仍呈上升趨勢,隨著對KD認識的加深及診斷技術的進步,臨床上KD的確診率和治療率也在逐漸增高[2]。但盡管如此,仍有一定數量的患兒因早期癥狀或體征的不典型被漏診或誤診[3]。在有關川崎病的研究中一直都有對川崎病診斷模型的研究,但是較少地應用至臨床[4]。因此,本文擬構建一套川崎病早期診斷輔助程序,選用了擴展性較好的B/S架構。以我院制作的模型為例,探究川崎病診斷模型應用至臨床的方法,使用時可通過錄入相應指標最終得出川崎病診斷風險,有效輔助臨床醫(yī)生做出診斷決策,提高川崎病的診斷效率,并推廣、普及川崎病的診療方法,讓川崎病兒童可以更早地得到關注和治療。
本系統中,Logistic回歸算法邏輯采用Apache軟件基金會下的開源工具Commons-Math3。它是一個輕量級、自包含的數學和統計學組件庫,用于解決Java編程語言或Commons Lang中不可用的最常見問題。應用Java語言進行編程,參數估計采用極大似然估計,使用N-R迭代法求解參數的估計值,回歸方程顯著性檢驗采用likelihood似然比檢驗,回歸系數的檢驗采用wald 2檢驗,制作具有通用性強、效率高、平臺移植性好和安全性卓越的計算模塊。
通過網絡,以Web Service方式從HIS系統中查詢患兒病歷,得到原始XML數據。通過對XML解析,將所需的數據保存至輔助決策診斷系統數據庫,作為分析數據。
計算模塊通過提取數據庫中的數據信息,使用預先設計的算法和參數對患兒的川崎病發(fā)生概率進行計算。計算結果以患川崎病的概率和陰陽性的形式表現,用于臨床輔助診斷。
醫(yī)生對實際臨床診斷進行輸入,系統記錄預測結果和醫(yī)生實際診斷,并存入系統數據庫。當診斷不一致的例數積累到一定量時,使用歷史記錄對模型進行重新訓練,解出參數的變化量與方向,對參數進行更新,以達到修正模型目的。
系統采用的B/S架構,在此架構下,Web瀏覽器作為最主要的客戶端應用軟件,可對現階段常用瀏覽器兼容。系統的核心部分則集中在服務器上運行。這樣可以簡化系統的開發(fā)、維護和使用過程。用戶使用瀏覽器進行操作,對應的服務器上安裝了數據庫和絕大部分功能程序,系統通過專用接口進行交互。較大程度減輕了客戶端電腦的負荷,實現信息實時共享,降低了系統維護、升級的成本和工作量。
服務器端采用MySQL系統對數據進行存儲,使用Spring+SpringMVC+Mybatis(SSM)框架管理數據結構,使用Java語言進行開發(fā),利用HTTPS安全架構進行加密通信。Spring負責對程序中出現的所有業(yè)務對象進行統一管理;SpringMVC負責對數據發(fā)出轉發(fā)請求以及視圖管理;Mybatis負責對數據庫中數據之間產生映射。這樣的搭配優(yōu)點是簡單、靈活,Spring與SpringMVC互為補充、搭配自然。
Spring具有以下優(yōu)點:作為處理接口程序的開源框架,能有效處理中間層對象之間的依賴關系;作為使用Java語言進行開發(fā)的框架,Spring能避免在開發(fā)過程中過多地使用Singleton語句;使用Spring編寫的應用程序測試起來更加容易;Spring與多種開源框架兼容,例如提供了JDBC、O/R mapping等產品的直接支持。Spring十分簡單、實用,是企業(yè)級開發(fā)框架的首選。
Mybatis具有以下的優(yōu)點:SQL語句寫在配置的XML文件里;減弱SQL與搜索代碼的關聯程度;提供映射標簽,支持目標對象與數據庫通過SQL進行關聯而不是直接關聯;允許查詢數據庫的當前狀態(tài),更改應用模式或撤銷操作;支持檢測由不同開發(fā)人員所做的并發(fā)數據庫模式更改;支持動態(tài)編寫SQL。
HTTPS是以安全為目標的HTTP通信,它使用加密方式來保護網絡通信,防止受到監(jiān)控或篡改。加密方式為使用SSL或TLS協議,增加數據安全性。HTTPS與HTTP模式具有相同的使用語法。但是,HTTPS允許瀏覽器使用SSL/TLS的加密層來保護通信流。SSL/TLS特別適合HTTP,即使只有通信一方的身份是經過驗證的,仍然可以提供一定程度的保護。因為在通過Internet進行HTTP訪問時,通常只有服務器身份是通過客戶端驗證的(由客戶端檢查服務器證書)。
診斷流程如圖1所示。系統可以根據患者住院號/病歷號/門診號,自動提取模型所需的指標信息。當信息完整時自動判斷患有川崎病的可能性大小,當信息不完整時支持手動補全,進入診斷模型中。模型可以計算患者患川崎病的概率,可以提示患者是否川崎病高危險性,并將這個結果與臨床診斷結果進行比較。當累計比較的患者超過30人時,則計算診斷模型的約登指數(IY),當IY≥0.5時,則繼續(xù)使用模型,當IY<0.5時,則對模型進行優(yōu)化,并自動更新模型。
圖1 數據處理流程示意圖
目前川崎病輔助決策系統集成在住院醫(yī)生工作站-患者醫(yī)囑管理界面。如圖2所示,在菜單欄右側增加“川崎病臨床”按鈕,點擊后自動打開瀏覽器,并打開川崎病輔助決策系統頁面。
圖2 住院醫(yī)生工作站-患者醫(yī)囑管理界面
如圖3所示,打開川崎病臨床輔助決策系統頁面,在頁面上方填入住院號,點擊“系統提取”按鈕,彈框提示正在進行住院信息提取。提取成功后,系統自動將住院信息填入到頁面中,發(fā)熱天數以及缺少的檢驗數值,醫(yī)生需要手動填寫。填寫完成后,點擊“篩查”按鈕即可給出川崎病發(fā)生概率,是否川崎病高危以及治療建議。
圖3 川崎病輔助決策系統-預測界面
如圖4所示,點擊右上角“診斷指南”,會彈出川崎病診斷指南和治療方案,供醫(yī)生作為參考。
圖4 川崎病輔助決策系統-川崎病診斷指南
如圖5所示,待醫(yī)生做實際診斷后,可在界面右上角“歷史記錄”中,對以往川崎病預測結果做標記。系統將會記錄下預測結果與實際情況是否一致。當積累到一定量的歷史記錄后,系統將會計算整體誤差,重新訓練回歸模型,以達到模型持續(xù)優(yōu)化的目的。
圖5 川崎病輔助決策系統-歷史記錄界面
共驗證226例患兒,平均年齡2.15±1.60歲,男性144例(63.7%),女性82例(36.3%),其中肺炎患兒146例,川崎病患兒80例。發(fā)熱時間為3~14天,平均發(fā)熱天數為5.16±2.29。詳細情況見表1。
表1 發(fā)熱患兒一般情況
將226例患兒經過軟件判斷后的結果,與患兒出院診斷相比做ROC曲線?;即ㄆ椴「怕实那€下面積為0.931(0.889~0.974),結果為是否川崎病高危險性的曲線下面積為0.888(0.835~0.940)。診斷的一致率為Kappa=0.785(P=0.043),靈敏度為83.75,特異度為93.84,診斷效率較高。
圖6 診斷ROC曲線
川崎病KD主要發(fā)生在5歲及以下幼兒和嬰幼兒,近期流行病學調查提示該病在我國的發(fā)病率呈逐年上升趨勢[5]。由于KD的病因和發(fā)生機制目前仍尚未完全清楚,臨床診斷也主要依據排他性的綜合判斷,非典型川崎病患兒的診斷較為困難。有研究稱川崎病的臨床診斷效率較低,漏診率及誤診率較高[6]。近來有很多與川崎病早期診斷相關的研究,但是都沒有應用到臨床,為了更好地服務臨床,降低川崎病誤診率,本文將川崎病診斷模型整合入軟件中,使該軟件可以輔助醫(yī)生,鑒別川崎病患者與其他發(fā)熱疾病患者,使更多的川崎病患者能及時得到治療。與以往基于人工經驗診斷分析不同,建立的輔助決策系統可通過自動處理患者各項臨床指標來分析患川崎病的風險大小,有助于逐步提高醫(yī)生,特別是缺乏經驗者對川崎病的診斷能力,使得不同經驗程度醫(yī)師的診斷一致性提高,降低臨床誤診率和漏診率。
本文建立的輔助決策系統以數據挖掘為基礎,將其用在KD的診斷中,極大程度上擴大了醫(yī)生有限的個人知識和臨床經驗,能夠有效提高分析判斷的客觀性和全面性,且具有較高的可重復性,疲勞性低。目前數據挖掘方法主要包括異常值檢測、關聯規(guī)則學習、聚類分析、判別分析、預測分析[8]。與同為計量診斷的最大似然法相比, 本系統利用了后驗Logistic回歸概率, 判別的符合率有所提高,所納入指標大都符合醫(yī)生常規(guī)的診斷需要。之所以選用Logistic回歸模型,是因為該模型在文獻中,經常被用來制作預測或診斷模型。Logistic回歸有很多優(yōu)點,除了可以分析連續(xù)型數據以及分類型數據之外,還可以將結果轉換為發(fā)生概率,因此常用來制作預測或診斷模型。與人工神經網絡計算過程不透明、結果具有偶然性相比, 本系統具有概率推理合理、邏輯簡單、缺失數據處理率高和操作性好的特點[9]。
川崎病輔助決策系統預測結果較為穩(wěn)健,并可以搭配多個預測模型。系統軟件小巧輕便、操作簡單、結果清晰,既可以應用于門診輔助診斷,也可以應用于科研,在川崎病的診療中可以發(fā)揮較大作用。然而盡管基于后驗Logistic回歸概率的輔助決策系統,與患者出院診斷之間有較高的診斷一致率, 但對于個體患者來說, 由于個體差異的存在,仍然可能發(fā)生不可預料的誤診或漏診。因此, 該系統可以作為醫(yī)師在鑒別KD時的一個有效輔助工具, 但并不能取代醫(yī)師的地位作完全的“自動化”診斷[10]。