易三莉 楊靜 姚旭升 謝穎夫 賀建峰
摘 要:使用HITON-PC算法分析某甲級醫(yī)院2015年住院首案中記錄的非胰島素依賴型糖尿病及其它協(xié)同疾病之間是否存在因果性。HITON-PC算法是一種運用條件獨立性檢驗處理高維數據的因果分析算法,將其應用于醫(yī)學數據挖掘中,能高效得出變量之間的因果關系。非胰島素依賴型糖尿病與冠狀動脈粥樣硬化、高血脂、高血壓、高血壓II期和高血壓III期之間有著因果關系。通過因果關系分析,可以很好地從大量臨床數據中發(fā)現疾病間的潛在因果性,為相關疾病的臨床診斷提供輔助,具有很強的實用性。
關鍵詞:數據挖掘;HITON-PC;因果關系
DOI:10.11907/rjdk.172708
中圖分類號:TP391
文獻標識碼:A 文章編號:1672-7800(2018)004-0188-03
Abstract:HITON-PC is an algorithm of causal analysis, and it is used to analyze the causal relationship between non-insulin dependent diabetes mellitus(NIDDM) and its cooperative diseases in the medical record data; it is also an algorithm of causal analysis which conducts high-dimensional data employed conditional independence test. HITON-PC is applied in medical data mining and it can effectively determine the causality between variables in medical data mining. There are a lot of causal relationships among NIDDM, hyperlipidemia and hypertension. Causality analysis is a good way to detect the potential causality between diseases from a large amount of clinical data.It can provide an auxiliary method for the clinical diagnosis of related diseases and plays a practical role in medical data mining.
Key Words:data mining; HITON-PC; causal relationship
0 引言
近年來,大數據已成為科技界和企業(yè)界關注的熱點,其可對數量巨大的數據作搜索、比較、聚類和分類等分析歸納,找出數據之間的關聯性。相關分析的目的是找出數據集里隱藏的相互關系網(關聯網),一般用支持度、可信度和興趣度等參數反映相關性[1]。大數據分析具有較高的容錯性,其目的在于發(fā)現整體數據中某些指標之間的相關性,然后用分析結論改善因果關系分析的前提假設,并運用大數據分析具有的預測功能解決現實社會中的實際應用問題[2]。
因果關系闡釋了事物間的本質聯系,在日常生活中,人們更多依靠經驗判定事物間的因果關系,比如抽煙會導致肺癌。雖然目前因果關系還沒有一個能被廣泛接受的嚴格定義,對其到底是客觀世界本身的屬性,還是人的意識為理解世界而創(chuàng)造出來的主觀概念,人們還未達成共識。但隨著大數據時代的來臨,人們依然希望能從已有數據中客觀分析事物間的因果關系[3]。如何利用已有信息判定事物間的因果關系是科學領域的一個基本問題,
HITON-PC即是一個經典的因果分析方法,它能高效地分析高維數據的因果性[4]。
1 HITON-PC
1.1 HITON-PC算法概念
HITON-PC基于因果馬爾可夫假設發(fā)現變量間的因果關系,應用條件獨立性測試識別出變量間的強關聯與持久關聯。該算法可靠性的關鍵在于完全覆蓋條件獨立性測試,使持續(xù)的關聯性可以被正確識別。然而,進行所有條件獨立測試通常是不可行的,因為其運算量較大、效率低。因此,約束算法設計的一個主要目標就是減少條件獨立性測試數量,同時生成可靠結果。HITON-PC即作為一種約束算法被提出,該算法可運用隊列的方法減少條件獨立性測試數量[5]。
1.2 HITON-PC算法實現步驟
HITON-PC算法步驟如下:
輸入:集合D,用于存儲預測變量集X={X1,X2,… ,Xm}和目標Z;maxkα為條件獨立測試的顯著性水平。
輸出:集合PC,由Z的雙親和孩子組合{X1,X2,… ,Xm}的子集。
1:let PC=
2:let OPEN包含與Z相關的變量
3:while OPEN≠ do
4:從OPEN中移除第一個變量X
5:將X插入到PC的最后
6:for每個SPC\\{X} and S≤maxk do
7: if X和Z在顯著水平α下獨立于給定的S then
8: 從PC 中移除X并且回到while循環(huán)
9: end if
10:end for
11:end while
12:對于每個在PC中的變量X do
13:for 每個 SPC\\{X}和SPC
14: if X和Z在顯著水平α下獨立于給定的S then
15:從 PC 中移除 X
16: end if
17:end for
18:end while
19:output PC
(1)最初PC集為空(行1),創(chuàng)建OPEN列表用于保存與目標變量Z(行2)相關的預測變量。OPEN中的變量根據關聯強度以降序排序,隊列總是移除第一個變量(其在當前OPEN隊列中具有最高的關聯強度)。因此,OPEN作為優(yōu)先隊列運行。
(2)排序的目的是盡可能包括PC集合中會成為雙親或孩子的變量,以便算法可以更早且有效地修剪其它變量。HITON-PC利用預測變量與Z之間的關聯強度作為第一準則,與Z相關性高的變量排名將靠前。另一個準則是判斷預測變量和Z之間的條件依賴強度[6]。給定一對變量,這對變量有很多條件用來測試條件依賴性,并且使用最小依賴度排序。文獻[5]、[7]中的關聯強度即是一個簡單而有效的標準。
(3)在初始化階段之后,算法將包含和消除策略交織到OPEN隊列中的變量,以達到擴展PC集的效果(行3~11)。
(4)在while循環(huán)的每次迭代期間,OPEN隊列前的變量被刪除后保存在PC集中(行4和5),然后消除步驟(行6~10)立即測試新添加的變量X是否獨立于當前給定PC列表中的目標變量。一旦發(fā)現X與給定PC子集(不包括X)的目標變量無關,則從PC集中消除X,并且開始新的迭代。如果在PC隊列中的每個子集小于或等于maxk變量,則X依賴于目標變量,且暫時保持在PC集中。
(5)當OPEN為空時,HITON-PC再次執(zhí)行消除步驟,但此時要判斷PC集中的每個變量是否滿足條件(行12~18)。也即是說,對于當前PC集的每個變量X,如果有子集S,子集S儲存小于maxk的變量,則符合條件變量,X獨立于目標變量將會從PC集中消除;如果X不存在這樣的子集,則X將永久保持在PC集中。注意,在該步驟期間,調節(jié)集合SPC\\{X},但SPC 2 HITON-PC復雜性 在HTION-PC算法中,花費的時間可大致分為兩部分:①初始化時間(行2);②在while與for循環(huán)中進行的條件獨立性測試時間。 3 HITON-PC算法在醫(yī)學數據挖掘領域的應用 3.1 醫(yī)學數據挖掘 醫(yī)學數據挖掘是計算機技術、人工智能、統(tǒng)計學等與現代醫(yī)療相結合的產物,也是提高醫(yī)療服務質量和醫(yī)院管理水平的需要,具有廣闊的應用前景。與僅限于某一專項領域知識的醫(yī)療專家系統(tǒng)不同,醫(yī)學數據挖掘面向整個醫(yī)學數據庫或醫(yī)學信息集合提供知識和決策,是醫(yī)療決策支持系統(tǒng)的重要組成部分[8]。將數據挖掘理論應用于醫(yī)學,通過對海量醫(yī)學數據進行分析,總結各種醫(yī)治方案的療效,提取隱含其中的有價值的信息,可更好地為醫(yī)院的決策管理、醫(yī)療、科研和教學服務,對于醫(yī)生明確診斷、病患治療以及疾病研究等都具有極其重要的意義[9]。 3.2 數據來源 數據源:2015年某三甲醫(yī)院住院部首案的數據,提取出“主要診斷”中患有2型糖尿病疾病類型的個案,總共3 724例。疾病編碼是依據國際疾病分類進行編碼的,疾病名稱有很多,在本次分析中只選取疾病數量大于300的疾病種類。 分析字段:“病案號”、“疾病編碼”、“主要診斷”、“疾病編碼1”、“其它診斷”、“疾病編碼2”、“其它診斷2”、“疾病編碼3”…… 3.3 分析結果 分析環(huán)境:本文數據首先在IBM SPSS Statistics、IBM SPSS Modeler中進行數據預處理,然后將清洗后的數據納入數據分析軟件R Studio建模實現。 分析目的:分析2型糖尿病的協(xié)同疾病與2型糖尿病是否有因果關系。 數據經過HITON-PC算法分析之后,實驗結果如表1所示。其中0為預測變量與目標變量之間沒有因果關系,1為預測變量與目標變量之間有因果關系。 整理結果可知,2型糖尿病與冠狀動脈粥樣硬化、高血脂、高血壓II期、高血壓III期有因果關系。 變量之間的關系如圖1所示,該圖能全面反映出各變量之間的因果關系。 4 結語 數據挖掘技術的迅速發(fā)展為人們的生活帶來了巨大便利,數據挖掘技術也被越來越多行業(yè)采用,并取得了很好的效果。HITON-PC算法是一種運用條件獨立性檢驗處理高維數據的因果分析算法,將其應用于醫(yī)學數據挖掘中,能高效得出變量之間的因果關系,從而發(fā)現疾病間的潛在因果性,為相關疾病的臨床診斷提供輔助。隨著理論研究的不斷深入,數據挖掘技術在疾病診斷和治療、醫(yī)學科研與教學以及醫(yī)院管理等方面必將發(fā)揮越來越重要的作用。 參考文獻: [1] 李國杰,程學旗.大數據研究:未來科技及經濟社會發(fā)展的重大戰(zhàn)略領域——數據的研究現狀與科學思考[J].中國科學院院刊,2012,27(6):647-657. [2] 孫海龍,于劍光.大數據環(huán)境下相關關系分析改善因果關系分析[J].科技展望,2016,26(20):12. [3] Pearl J. Causality: models, reasoning,and inference[M]. England:Cambridge University Press,2000. [4] ALIFERIS C F, STATNIKOV A, TSAMARDINOS I, et al. Local causal and Markov blanket induction for causal discovery and feature selection for classification Part I: algorithms and empirical evaluation[J]. Journal of Machine Learning Research,2010(11):171-234. [5] LI J, LIU L, LE T D. Practical approaches to causal relationship exploration[J].Springerbriefs in Electrical and Computer Engineering,2015,35(1):13-24. [6] TSAMARDINOS I, BROWN L E, ALIFERIS C F. The max-min hill-climbing Bayesian network[J].structure learning algorithm. Machine Learning,2006,65(1):31-78. [7] ALIFERIS C F, STATNIKOV A, TSAMARDINOS I, et al. Local causal and Markov blanket induction for causal discovery and feature selection for classification part II:analysis and extensions[J]. Journal of Machine Learning Research,2010(11):235-284. [8] 朱凌云,吳寶明,曹長修.醫(yī)學數據挖掘的技術、方法及應用[J].生物醫(yī)學工程學雜志,2003,20(3):559-562. [9] 汪菊琴.醫(yī)學數據挖掘綜述[J].電腦知識與技術,2011,7(15):3495-3497. (責任編輯:黃 ?。?/p>