蔡瑞初,白一鳴,喬 杰,郝志峰
(1.廣東工業(yè)大學計算機學院,廣州 510006;2.佛山科學技術學院數(shù)學與大數(shù)據(jù)學院,廣東佛山 528000)
近年來,科學研究、工業(yè)生產(chǎn)等各領域積累的數(shù)據(jù)量迅速增長,其中蘊含的研究價值和實用價值也得到了充分的重視和驗證,因此,如何深度發(fā)掘這些海量數(shù)據(jù)中蘊含的有價值的信息成為了一個研究熱點[1]。越來越多領域中的研究人員致力于從數(shù)據(jù)中獲得此前常規(guī)方法無法直接得到的新知識,以推動科學研究進步或幫助決策者在工作中做出合理的判斷,其中,因果關系是研究人員最希望獲得的一類知識。一方面,因果關系表明了事物間如何相互影響的潛在作用機制,可以幫助研究事物的特性;另一方面,對于研究或工作中關心的事件,在了解了相關的因果關系知識后,就可以通過對原因進行干預行動來推動結(jié)果向期望的方向發(fā)展[2]。
如何在數(shù)據(jù)中發(fā)掘因果關系,以及如何排除各種其他因素對發(fā)掘過程的干擾是一個困難的問題。一種最常用的傳統(tǒng)因果關系發(fā)現(xiàn)方法是隨機控制實驗(Randomized Controlled Trial,RCT),通過復雜的實驗設計來對各個變量進行干預,根據(jù)干預造成的影響分析得到因果關系,同時盡可能地排除其他因素的干擾[2],但它的有效性相當依賴于實驗設計的合理性,更關鍵的是,RCT中必需的干預行動在因果關系未知時并不總是可行的[3],在經(jīng)濟學等領域中干預的花費是不可接受甚至不可能的,在醫(yī)學等領域中干預可能引發(fā)倫理問題。在觀察數(shù)據(jù)上,尤其是非時序的觀察數(shù)據(jù)上進行的因果關系發(fā)現(xiàn)方法避免了以上問題[4]。這些方法通常基于對變量進行獨立性檢測或利用數(shù)據(jù)產(chǎn)生機制的具體特性來進行因果推斷。然而,對于同時受混淆因子影響的兩個變量,即使它們之間并不存在直接的因果連接,由于混淆因子引入的相關性很難與這兩個變量直接相連時的相關性區(qū)分開,也會被獨立性檢測方法判定為相關變量,并最終得到帶有錯誤邊的因果網(wǎng)絡。如何檢測到混淆因子、消除這類錯誤邊并最終得到正確的因果結(jié)構是研究人員最關心的問題之一。
為解決含隱變量的因果關系發(fā)現(xiàn)問題,現(xiàn)有方法利用最大祖先圖[5]、量子信息不等式[6]等進行隱變量檢測,但這些方法提出時在連續(xù)數(shù)據(jù)上使用,并不保證能夠適用于離散數(shù)據(jù)。針對含混淆因子的離散數(shù)據(jù)的因果關系發(fā)現(xiàn)問題,本文提出了一種基于混淆因子隱壓縮表示(Confounder Hidden Compact Representation,CHCR)模型[7]的因果推斷方法。首先,利用數(shù)據(jù)集構建備選模型,為備選模型中的原因變量指定一種確定性映射,確保原因變量映射到一個具有更少可能取值數(shù)的中間隱狀態(tài),也就是對原因變量進行隱壓縮表示;然后,根據(jù)數(shù)據(jù)和備選模型用貝葉斯信息準則(Bayesian Information Criterion,BIC)計算其模型評分,不斷改動模型并根據(jù)模型評分更新最佳模型直到收斂;最后,查看最佳模型中的壓縮情況,由于受混淆因子影響的兩個變量間不存在直接的因果連接,因此最佳模型中的壓縮情況將表明兩個變量間不存在隱壓縮表示,根據(jù)最佳模型中是否存在隱壓縮表示,可以分辨出正確的因果結(jié)構。
在因果關系發(fā)現(xiàn)的研究工作中,一般用概率圖模型(Probability Graph Model,PGM)來表示變量間的因果關系,圖模型中的節(jié)點表示數(shù)據(jù)集中的變量,邊表示變量間的因果連接,這種圖模型又被稱為貝葉斯因果網(wǎng)絡[2]。通常假設數(shù)據(jù)中潛在的因果機制可以用一個有向無環(huán)圖表示,且各變量之間的條件獨立性可以根據(jù)是否d-分離判斷[2,4]。面向非時序觀察數(shù)據(jù)的因果關系發(fā)現(xiàn)方法由于實用性和避免了RCT 存在的問題成為了近年來的研究熱點,大量方法被提出以從數(shù)據(jù)中學習貝葉斯因果網(wǎng)絡,其中,發(fā)展最快的大致可以分為基于約束(Constraint-based)的方法和基于因果函數(shù)(Causalfunction-based)的方法兩類。經(jīng)典的基于約束的方法有PC(Peter-Clark)算法[8]和IC(Inductive Causation)算法[9],主要將變量間的條件獨立性作為約束,根據(jù)約束確認部分特殊結(jié)構并刪除錯誤的邊[2],但基于約束的方法不可避免地受到馬爾可夫等價類問題的影響,多種不同結(jié)構可能具有完全相同的條件獨立性[4],這些等價結(jié)構不具有可分辨性?;谝蚬瘮?shù)的方法通常基于結(jié)構方程模型和對產(chǎn)生數(shù)據(jù)的因果機制特性的假設進行因果網(wǎng)絡的學習。經(jīng)典的基于因果函數(shù)的方法包括基于獨立成分分析算法和剪枝算法的線性非高斯無環(huán)模型(Linear Non-Gaussian Acyclic Model,LiNGAM)[10],基于原因變量與噪聲獨立的假設進行因果方向判斷的加性噪聲模型(Additive Noise Model,ANM)[11]和基于信息熵的信息幾何因果推斷(Information-Geometric Causal Inference,IGCI)[12]。這些方法在符合各自假設的場景中能夠較好地學習因果網(wǎng)絡,但難以拓展到其他場景下。文獻[13-14]將兩類方法結(jié)合起來,將因果網(wǎng)絡分解為局部子網(wǎng)絡,并使用因果函數(shù)模型學習局部網(wǎng)絡。文獻[15]提出了最大最小爬山(Max-Min Hill-Climbing,MMHC)算法,使用改進后的PC 算法得到無向圖,再使用優(yōu)化后的爬山算法確定最終結(jié)構。
以上經(jīng)典方法都是在連續(xù)數(shù)據(jù)中使用的,對離散數(shù)據(jù)通常并不適用,其主要原因是連續(xù)數(shù)據(jù)的許多性質(zhì)在離散數(shù)據(jù)中截然不同甚至不存在。文獻[16]將ANM 擴展到了離散情況下,該模型假設變量的各個可能取值間存在序關系,但很多情況中并不存在有意義的序關系,也就是說,離散ANM 僅僅適用于定序(Ordinal)數(shù)據(jù)而不適用于定類(Nominal)數(shù)據(jù)。此外,離散ANM 并沒有定義一種較為通用和有意義的加法來描述離散情況下噪聲對數(shù)據(jù)的影響。針對這些問題,文獻[7]提出了適用于分類數(shù)據(jù)的隱壓縮表示(Hidden Compact Representation,HCR)模型,由于分類數(shù)據(jù)中變量的可能取值常常不是按照因果機制劃分的,因此不同取值對于當前因果關系來說可能是等價的,可以按照因果機制對這些可能取值進行劃分,HCR 模型將這種劃分抽象為一個隱藏的確定性映射階段,并證明了當使用BIC 作為評分標準時,由于壓縮映射后模型參數(shù)更少,正確的因果模型將具有更高的模型評分。因此,可以使用HCR模型來分辨離散變量間的因果方向。
當數(shù)據(jù)對應的因果結(jié)構中存在混淆因子時,可能因不滿足因果充分性假設[4]而學習到帶有錯誤邊的因果網(wǎng)絡。近年來,許多經(jīng)典方法的改進版本被提出以檢測隱變量并消除錯誤邊。針對基于約束的方法,結(jié)合PC 算法和最大祖先圖,文獻[5]提出了快速因果推斷(Fast Causal Inference,F(xiàn)CI)算法;文獻[17]在FCI算法的基礎上改進得到極快因果推斷(Really Fast Causal Inference,RFCI)算法;文獻[18-19]利用工具不等式檢測是否存在隱變量。針對基于因果函數(shù)的方法,文獻[20]在LiNGAM 的基礎上提出了根據(jù)外生變量間是否獨立來檢測隱變量的ParceLiNGAM;文獻[21]提出了適用于線性非高斯情況下的lvLiNGAM(latent variable LiNGAM)。文獻[6,22]利用量子信息不等式,通過計算貝葉斯網(wǎng)絡的條件熵檢測隱變量。上述隱變量檢測方法在各自適用情況下都有較好性能,為在離散數(shù)據(jù)上的隱變量檢測方法提供了參考。
首先描述使用的變量,定義本文專注于解決的問題并提出基于CHCR 模型的混淆因子隱壓縮表示因果推斷(Confounder Hidden Compact Representation Causal Inference,CHCRCI)方法。
在本文中,用Z表示混淆因子,X、Y表示數(shù)據(jù)集中包含的變量,|Z|表示變量的可能取值數(shù),G表示因果網(wǎng)絡對應的圖模型,G:?表示該因果網(wǎng)絡圖中不存在因果連接,G:X←Z→Y中Z到X、Y的箭頭表示Z是X、Y的原因,在圖1中,實線包圍表示該變量存在于數(shù)據(jù)集中,虛線包圍表示該變量是不存在于數(shù)據(jù)集中的隱變量。
本文專注解決的因果推斷問題如圖1所示,變量X和Y之間無直接的因果連接,且受混淆因子Z影響,根據(jù)d-分離[2],給定Z時X和Y是條件獨立的,不給定Z時X和Y是相關的。如果在符合這個結(jié)構的數(shù)據(jù)上使用基于約束的方法,由于Z是不存在于數(shù)據(jù)集中的隱變量,給定數(shù)據(jù)集中的任何其他變量都無法使X和Y相互獨立,這意味著結(jié)果中將包含一條X和Y之間直接相連的錯誤邊。
圖1 混淆因子隱壓縮表示模型示意圖Fig.1 Schematic diagram of confounder hidden compact representation model
在圖1 中,Z對X施加影響時,首先確定性映射到中間隱狀態(tài)X'=f(Z),再由X'對X施加影響,其中f表示將Z的值與X'的值對應起來的方式,如=f(Z1)=f(Z2)表示Z1和Z2將被映射到。由于Z中的一個值只能映射到X'里的至多一個值,因此|Z|≥|X'|。當|Z|=|X'|時,可以視為經(jīng)歷了映射X'=Z的特殊情況;當|Z|>|X'|>1 時,稱Z到X'的映射為壓縮映射,此時式(1)成立:
壓縮映射體現(xiàn)了離散變量取值的劃分方式與真實因果機制間的差距,因此僅僅在原因指向結(jié)果的正向模型中存在,從結(jié)果指向原因的反向模型中并不存在壓縮映射[7]。給定包含m條關于X和Y數(shù)據(jù)的數(shù)據(jù)集D=,本文提出的因果推斷方法的目標是分辨出正確的因果結(jié)構。也就是說,當真實結(jié)構含有混淆因子,如G:X←Z→Y時,即使X和Y是相關的,在本文方法的輸出結(jié)果中,X和Y之間也沒有直接連接的邊。需要注意的是,由于無論是否壓縮,映射均可視為存在確定性映射,為表述簡便,本文在不需要強調(diào)中間映射的地方將其省略,如G:X→Y與G:X→Y'→Y同義。此外,本文方法并不假設混淆因子必須存在,理論分析和實驗結(jié)果表明,本文方法同樣適用于不含混淆因子的因果結(jié)構。
CHCR 模型適用于原因變量經(jīng)過壓縮映射影響結(jié)果變量時。對于因果結(jié)構G:X←X'←Z→Y'→Y,此時|Z|>|X'|、|Z|>|Y'|成立。由于X、Y之間并不存在直接的因果關系,通常情況下,它們之間并不存在壓縮映射,為排除極端情況,在CHCR模型中假設式(2)成立:
對Y也做類似假設后,可以得到用于分辨正確因果結(jié)構的定理1。需要注意的是,即使在實驗中并未去除極端情況,本文方法仍具有最高的準確率,可見實際上該假設對本文方法有效性的影響可以忽略不計。
定理1給定數(shù)據(jù)集D=,學習得到最佳模型G:X→Y'→Y,其中Y'為壓縮映射,若|Y'|=1,則真實因果結(jié)構為G:?;若|Y'|=|X|,則真實因果結(jié)構為G:X←Z→Y;若1<|Y'|<|X|,則真實因果結(jié)構為G:X→Y。
證明 當|Y'|=1時,根據(jù)d-分離,給定Y'時X和Y相互獨立,如果Y'只有一個取值,那么X和Y自然就是相互獨立的。從另一個角度來說,此時無論X取何值,由于X的所有可能取值映射到了同一個值上,對應的Y分布不變,也就是說X和Y相互獨立。
當|Y'|=|X|時,若真實因果結(jié)構為G:X→Y,根據(jù)壓縮映射的定義,1<|Y'|<|X|成立,與|Y'|=|X|矛盾,因此X和Y之間不存在直接的因果連接。若真實結(jié)構為G:?,則|Y'|=1。且當真實因果結(jié)構為G:X←Z→Y時,對于X的任意兩個不同取值Xi≠Xj,有:
式(3)的推導基于條件概率公式,給定Z時,X與Y相互獨立,且式(2)成立,從式(3)中可以看出X到Y(jié)間不存在壓縮映射,即|Y'|=|X|,因此,此時真實結(jié)構只可能是G:X←Z→Y。
當1<|Y'|<|X|時,由于|Y'|≠1,真實結(jié)構不是G:?,由于|Y'|≠|(zhì)X|,若真實因果結(jié)構為G:X←Z→Y,則與式(3)不符。因此,真實結(jié)構為G:X→Y。
根據(jù)定理1 可以提出混淆因子因果推斷算法CHCRCI。首先,在數(shù)據(jù)集上搜索得到評分最高的因果結(jié)構,如G:X→Y'→Y。通過檢查壓縮映射的情況,即|Y'|,可以分辨出正確的因果結(jié)構。完整算法如算法1所示。
在算法1 中,為得到最佳模型,對當前備選模型中的原因變量,嘗試各種將其映射到中間狀態(tài)的方式,更新模型直至無法取得更高的模型評分。在數(shù)據(jù)集上計算模型評分S=BIC(D,f,G)的公式如下:
式(4)中首先基于CHCR 模型得到似然度L(D,f,G)的表達式,其中,并說明了給定數(shù)據(jù)集時如何用最大似然估計計算該表達式,nX為X=x時的頻數(shù)。式(5)利用BIC 評分的定義式得到最終的模型評分,其中d是整個模型的參數(shù)數(shù),m是數(shù)據(jù)集中的樣本數(shù)。選出模型評分最高的作為最佳模型后,在最佳模型上應用定理1即可得到作為輸出結(jié)果的網(wǎng)絡結(jié)構。需要注意的是,當|f*|=|X|時,這種無法壓縮可能由兩種不同情況導致:一種是最佳模型與真實模型方向相反,反向是不存在壓縮映射的;另一種是真實結(jié)構為G:X←Z→Y,此時兩個方向都不存在壓縮映射;因此需要進一步驗證才能確定屬于哪一種情況。
算法1 使用BIC 作為備選模型的評分函數(shù),BIC 是具有一致性的評分準則,即更符合數(shù)據(jù)分布且具有更少參數(shù)的模型將得到最高分數(shù)[23],因此能夠幫助找到最佳結(jié)構。在某些情況下,如X、Y之間的互信息很小時,認為二者間沒有邊的備選模型因為參數(shù)更少,可能會得到更高的BIC 評分。此時,對于G1:X→Y'→Y和G2:?,以下計算式成立:
式(6)中不等號兩邊是BIC 評分的定義式,即似然度減去隨參數(shù)和數(shù)據(jù)量增加而增大的懲罰項,m表示數(shù)據(jù)集的記錄數(shù)。式(7)到式(8)的變形與式(4)中類似,即消去經(jīng)驗頻率。在式(8)中,似然度寫成由記錄數(shù)m與經(jīng)驗頻率組成的形式。式(10)成立時,使用BIC評分將輸出G:?,需要注意的是,本文提出的方法的目的并非恢復或消去隱變量,而僅僅是去除錯誤的因果連接,得到可見變量間正確的因果結(jié)構。從這個角度來說,G:?也應被視為正確結(jié)果。因此,即使當式(10)描述的特殊情況發(fā)生時,本文方法所得到的因果結(jié)構仍然是不存在錯誤因果連接的正確結(jié)果。
首先使用生成的模擬數(shù)據(jù),以準確率(Accuracy),即學習到正確因果結(jié)構的次數(shù)占實驗次數(shù)的比率,衡量所提出的因果推斷方法CHCRCI 的性能。選取了若干具有代表性且性能較好的方法作為對比,包括獨立性檢測方法希爾伯特-施密特獨立性準則(Hilbert-Schmidt Independence Criterion,HSIC)[24]、混合型因果發(fā)現(xiàn)方法MMHC 和含有隱變量檢測的RFCI。在多組實驗中分別測試了各方法在單一因果結(jié)構或混合因果結(jié)構上,隨樣本數(shù)、可能取值數(shù)或混合程度變化時的準確率,并分析各組實驗結(jié)果。其次,在真實數(shù)據(jù)集Abalone上使用本文方法進行實驗并分析實驗結(jié)果。本文的模擬數(shù)據(jù)實驗中,生成數(shù)據(jù)及運用各方法的過程重復了1 000 次,以各方法得到正確結(jié)構的次數(shù)占總次數(shù)的比率作為準確率。
模擬數(shù)據(jù)的生成過程大致可以分為兩個階段:首先,在[5,15]內(nèi)等概率隨機選定X、Y、Z等各變量的可能取值數(shù),在[2,5]內(nèi)等概率隨機選定壓縮映射的可能取值數(shù),以標準正態(tài)分布采樣并經(jīng)過取絕對值、分別除以其總和的操作得到原因變量的概率分布,采樣得到原因變量的數(shù)據(jù)并壓縮映射到中間隱狀態(tài);其次,以與生成變量分布類似的方式隨機生成中間隱狀態(tài)到結(jié)果變量的轉(zhuǎn)移概率矩陣,并根據(jù)數(shù)據(jù)和轉(zhuǎn)移概率矩陣采樣得到結(jié)果變量的數(shù)據(jù)。不特別指出時,以上參數(shù)為數(shù)據(jù)生成時的默認參數(shù)。
為測試本文中所提方法在各種不同情況下的性能,設計并進行了4組對比實驗。
第1組實驗測試在數(shù)據(jù)量變化時,CHCRCI能否正確識別出存在混淆因子的因果結(jié)構,真實因果結(jié)構均為G:X←Z→Y。在第1 組實驗中,樣本數(shù)的變化范圍為[1000,1500,2 000,2 500,3 000],用于對比的方法包括HSIC和RFCI。
HSIC 是一種基于Hilbert-Schmidt范數(shù)的非參數(shù)獨立性度量準則,通過在再生核希爾伯特空間上定義互協(xié)方差,計算得到度量獨立性的統(tǒng)計量,是一種高效準確、被廣泛使用的獨立性檢測方法。由于本實驗中可觀測變量只有兩個,因此基于約束的方法基本可以等同為獨立性檢測方法,HSIC 的表現(xiàn)可以代表較為先進的基于約束的方法。
RFCI 是一種可以在存在隱變量或選擇偏差時使用的因果推斷方法,RFCI 為基于FCI的改進,與FCI具有接近的效果且復雜度更低。RFCI在判斷因果結(jié)構時更為謹慎,能夠較好地分辨出隱變量和選擇偏差帶來的影響,因此RFCI的表現(xiàn)可以代表含有隱變量檢測的因果發(fā)現(xiàn)方法。本實驗中RFCI 的實現(xiàn)使用了R語言程序包pcalg[25]。
從圖2 中可以看出,由于混淆因子的影響導致可見變量間存在相關性,HSIC 始終不能很好地學習到正確的因果結(jié)構,事實上,隨著樣本量的增長,HSIC 的準確率愈發(fā)接近于隨機猜測;由于RFCI在存疑時更傾向于輸出不確定狀態(tài)而非認為存在因果連接,因此在樣本數(shù)較少時也能夠輸出正確結(jié)果,但隨著樣本量增長,其準確率同樣接近于隨機猜測;如式(10)所示,CHCRCI 在樣本數(shù)較少時表現(xiàn)更好,但無論樣本數(shù)多少,CHCRCI 始終能夠較好地學習到正確的因果結(jié)構,且其準確率明顯地高于對比方法。
圖2 三種方法在樣本數(shù)變化時的正確率比較Fig.2 Accuracy comparison of three methods when the number of sample changes
第2組實驗是測試在變量可能取值數(shù)不同時,CHCRCI的表現(xiàn)是否受到影響。在不同的領域中或分類方式不同時,離散變量可能取值數(shù)可以有較大的差別,因此有必要測試本文方法是否能夠適應這種差別。在生成數(shù)據(jù)的過程中,調(diào)整可能取值數(shù)隨機選擇范圍的上限,如從[5,8]中選定可能取值數(shù),以整體地改變可能取值數(shù)。在第2 組實驗中,因果結(jié)構均為G:X←Z→Y,樣本數(shù)固定為1 000,壓縮映射的可能取值數(shù)的隨機選擇范圍仍為[2,5]。選擇HSIC、RFCI 與本文方法進行性能對比。
從圖3 中可以看出,可能取值數(shù)變化時,RFCI 和HSIC 學習因果結(jié)構的準確率僅有小幅波動,CHCRCI 的準確率則僅在可能取值數(shù)為5 時有極少下降,這是由于可能取值數(shù)過少導致壓縮的性質(zhì)不明顯。但整體來說,CHCRCI 仍然幾乎在每次實驗中都正確分辨了因果結(jié)構。實驗結(jié)果中準確率曲線的穩(wěn)定一方面表明了CHCRCI 的有效性,另一方面表明了其他各組實驗的結(jié)論也適用于不同可能取值數(shù)的情況。
圖3 三種方法在變量可能取值數(shù)不同時的正確率比較Fig.3 Accuracy comparison of three methods when the number of variable possible values changes
第3 組實驗是測試CHCRCI 是否僅適用于混淆因子存在的結(jié)構,即本文方法是否具有泛用性。在生成數(shù)據(jù)時,設定存在混淆因子的概率并隨機選擇結(jié)構類型,該概率的選擇范圍為{0.2,0.4,0.6,0.8}。存在混淆因子時,真實因果結(jié)構為G:X←Z→Y;不存在混淆因子時,真實因果結(jié)構為G:X→Y。樣本數(shù)固定為1 000。由于HSIC 不能直接用于判斷因果方向,對比方法改為RFCI和MMHC。
MMHC是一種結(jié)合了基于約束的方法和基于評分的方法的因果發(fā)現(xiàn)方法,首先使用啟發(fā)式方法得到父子節(jié)點表,第二階段在父子節(jié)點表的基礎上使用加入模擬退火等優(yōu)化手段的爬山算法得到最終結(jié)果,由于第一階段極大減小了搜索空間,能夠較好地分辨出正確的因果結(jié)構。本實驗中MMHC 方法的實現(xiàn)使用了R語言程序包bnlearn[26]。
從圖4中可以看出,隨著存在混淆因子的概率增長,RFCI準確率有一定提升,但始終接近于隨機猜測,這是由于RFCI本質(zhì)上仍然屬于基于約束的方法,而基于約束的方法由于馬爾可夫等價類問題,很多時候是無法分辨因果方向的,自然導致了無法正確分辨因果結(jié)構;MMHC 方法在存在混淆因子的概率較高時,一定程度上能夠?qū)W習到正確因果結(jié)構,但隨著該概率的降低,準確率也急劇降低,如在兩種結(jié)構的出現(xiàn)概率接近時,準確率也接近于隨機猜測;CHCRCI 則在存在混淆因子概率取各值時,均能夠較好地分辨出正確的因果結(jié)構,且準確率明顯優(yōu)于對比方法,表明CHCRCI 適用于更為一般的情況,具有泛用性。
圖4 三種方法在不同類型結(jié)構混合時的正確率比較Fig.4 Accuracy comparison of three methods when mixing different types of structure
第4 組實驗是在混合因果結(jié)構上,測試樣本數(shù)不同時CHCRCI 的表現(xiàn)。為避免類別不平衡(Class-imbalance)問題,真實因果結(jié)構在G:X←Z→Y和G:X→Y中等概率地隨機選取,生成數(shù)據(jù)的數(shù)據(jù)量的變化范圍為[1000,1500,2 000,2 500,3 000],其他實驗參數(shù)均為默認值,對比方法為MMHC和RFCI。
從圖5 中可以看出,隨著樣本數(shù)的增長,CHCRCI、MMHC和RFCI三種方法的準確率變化不大,MMHC 的準確率有小幅上升,RFCI的準確率有小幅下降,CHCRCI則始終能夠取得實驗中最高的準確率,且明顯高于其他兩個方法,表明了類別平衡時CHCRCI方法的有效性。
圖5 混合結(jié)構中三種方法在樣本數(shù)不同時的正確率比較Fig.5 Accuracy comparison of three methods in mixed structure with different numbers of samples
總的來說,通過設計并測試CHCRCI 在樣本數(shù)、混淆因子出現(xiàn)概率、變量可能取值數(shù)等各種條件變化時的準確率指標的實驗,并與HSIC、RFCI、MMHC這三種具有代表性的經(jīng)典方法進行對比可以看出,CHCRCI 在四組實驗中分別設定的各種情況均能夠較好地分辨出正確的因果結(jié)構,本文方法的有效性和泛用性得到了驗證。
UCI 數(shù)據(jù)集Abalone[27]常被用于檢驗離散變量上的因果發(fā)現(xiàn)方法的性能,該數(shù)據(jù)集中包含4 177 條關于鮑魚的性別(Sex)、長度(Length)、直徑(Diameter)、高度(Height)等屬性的數(shù)據(jù),通常認為其性別是長度、直徑、高度的原因[7,16,28],然而由于幼年鮑魚無法識別性別,其性別屬性中除雄性(Male,M)與雌性(Female,F(xiàn))外還包括了無法識別性別的幼年(Infant,I)。為研究其性別屬性與其他3 個屬性間的關系,去除性別屬性為I的無意義數(shù)據(jù)后,在新數(shù)據(jù)集上使用CHCRCI方法得到的結(jié)果如表1所示。
表1 使用CHCRCI與HSIC所得不同變量間因果關系結(jié)果的對比Tab.1 Comparison of results obtained by CHCRCI and HSIC between different variables
表1給出了對三組變量分別使用CHCRCI和HSIC方法所得到結(jié)果的對比,其中,壓縮情況|Sex|是使用CHCRCI 方法所得結(jié)果中中間映射的可能取值數(shù),使用HSIC方法所得結(jié)果中的P值表示該組變量是否相互獨立。從表1中可以看出,不同性別可以壓縮至唯一中間狀態(tài),根據(jù)定理1 和式(10),這意味著性別和其他變量間并不存在直接的因果連接,但可能存在混淆因子,對于這些可見變量間的因果關系來說,這兩種情況并沒有區(qū)別。性別屬性與其他屬性間不存在直接的因果關系這一結(jié)論看似與現(xiàn)有研究結(jié)果沖突,但這些研究中并未去除性別無法分辨的幼年鮑魚的數(shù)據(jù),不難推斷出存在混淆因子年齡,即年齡決定了是否可以分辨性別,也決定了長度、直徑、高度等屬性。因此,本文方法所得結(jié)論與現(xiàn)有研究結(jié)果是可以相容的。作為對比,HSIC 所得結(jié)果表明各組變量是相關的,在許多方法中,這意味著將引入性別變量到其他變量的錯誤的因果連接。
本文深入探究了存在混淆因子時的因果推斷方法的研究現(xiàn)狀,對含混淆因子的離散數(shù)據(jù)上的因果推斷進行了理論分析,提出了一種基于混淆因子隱壓縮表示(CHCR)模型的因果發(fā)現(xiàn)方法。根據(jù)學習到的最佳模型中中間映射的可能取值數(shù),可以判斷數(shù)據(jù)集中的變量間是否存在直接的因果連接,避免了因混淆因子影響而導致出現(xiàn)的錯誤連接。實驗結(jié)果表明,在各種樣本數(shù)或不同類型結(jié)構混合等多種情況下,本文所提的方法都能夠較好地學習到正確的因果結(jié)構,在準確率指標上明顯優(yōu)于對比方法,且在真實數(shù)據(jù)集Abalone上使用本文方法得到了變量間更為合理的因果關系。在未來的工作中,本文方法有待擴展到節(jié)點數(shù)更多、結(jié)構更復雜的因果結(jié)構學習問題中,或進一步弱化當前模型中存在的對于潛在因果機制的假設。