蔡加欣 邱 璇 黃智力 駱榕瀾
1(廈門理工學(xué)院應(yīng)用數(shù)學(xué)學(xué)院,福建 廈門 361024)2(中國人民解放軍第180醫(yī)院信息科, 福建 泉州 362000)
丙型肝炎病毒(Hepatitis C virus, HCV)感染是一種世界性的傳染性疾病。由HCV感染引起的慢性丙型肝炎可以進一步演化為肝功能衰竭、肝硬化和肝癌,具有非常高的致死率[1-2]。分析慢性丙型肝炎發(fā)展進程中的肝纖維化程度和炎癥活動度水平,可以及時確定相應(yīng)的抗病毒治療方案,從而提高患者生存率,并減少肝移植的需要,在臨床治療中具有現(xiàn)實意義[3]。
目前常用的肝纖維化和炎癥程度評分系統(tǒng)有:Knodell組織學(xué)活動指數(shù)、Ishak評分系統(tǒng)和Metavir評分系統(tǒng)等[4]。其中,Metavir評分系統(tǒng)是為研究慢性丙型肝炎而開發(fā)的,可以對纖維化階段和炎性嚴(yán)重程度進行分期和分級。評分包括S和G兩個系統(tǒng)。S代表纖維化或瘢痕的范圍,分為五期纖維化評分,其中S0表示無瘢痕,S1表示輕度瘢痕,S2表示瘢痕超出血管區(qū),S3表示橋接纖維化,S4表示肝硬化或晚期肝纖維化。G代表炎癥的嚴(yán)重程度,分為四級組織學(xué)活性評分。G0表示無炎癥活動,G1表示輕度炎癥活動,G2表示中度炎癥活動,G3表示重度炎癥活動。
臨床上用來確定患者肝纖維化和炎癥活動程度分級的金標(biāo)準(zhǔn)是肝穿刺活組織檢查。但肝活檢是侵入性的,伴隨顯著的疼痛和不適感,有產(chǎn)生并發(fā)癥的風(fēng)險。因此,目前已有不少工作通過采集患者的肝臟超聲波圖像、核磁共振(MR)圖像、電子計算機斷層掃描(CT)圖像等信息,然后使用人工神經(jīng)網(wǎng)絡(luò)[5]、遺傳算法[6]、支持向量機[7]等數(shù)據(jù)挖掘方法來對肝炎病情進行輔助分析,盡量使患者避免肝活檢帶來的痛苦。Mahmoud-Ghoneim等從肝臟MR圖像中提取灰度共生矩陣、游程長度矩陣、自回歸模型系數(shù)和小波系數(shù)等紋理特征參數(shù),用來幫助觀察組織病理學(xué)變化和鑒別診斷[8]。Wu等在肝臟的T2W加權(quán)、T1W加權(quán)和EOB-HP這3種MR圖像上提取紋理特征,并使用線性判別分析對肝炎病情進行分級[9]。蔣紅衛(wèi)等使用偏最小二乘判別分析法來分析基因表達微陣列數(shù)據(jù),進行疾病分型的識別[10]。
與超聲、MR和CT等影像檢查手段相比,血清檢驗指標(biāo)的獲取過程更加簡單,成本更低,對反映肝炎病情發(fā)展具有更加直觀的指示作用,適合作為常規(guī)檢查手段。本研究通過對血清檢測數(shù)據(jù)的挖掘,構(gòu)建兩階段隨機森林模型,尋找與慢性丙型肝炎纖維化和炎癥活動程度相關(guān)的關(guān)鍵血清學(xué)指標(biāo),并對慢性丙型肝炎的肝纖維化程度和炎癥活動度進行自動分級。臨床上采集的肝炎病例集常出現(xiàn)某一類別病例過少的問題,隨機森林模型通過數(shù)據(jù)采樣的方法可以有效解決這種類別不平衡問題,并可以在分類過程中生成對泛化誤差的無偏估計,便于尋找重要性最顯著的病情指標(biāo),具有較好的魯棒性。針對123例慢性丙型肝炎病例數(shù)據(jù),在訓(xùn)練病例集上進行第一階段隨機森林模型學(xué)習(xí),獲取各個血清學(xué)指標(biāo)的特征重要度,用來衡量這些指標(biāo)對預(yù)測肝炎纖維化階段和炎癥活動度的影響程度。選擇特征重要度大于預(yù)設(shè)閾值的指標(biāo)作為顯著性特征,在選出的顯著性特征上再進行第二階段的隨機森林模型訓(xùn)練,對測試病例的纖維化階段和炎癥活動度進行預(yù)測,具有較好的預(yù)測準(zhǔn)確率,可為臨床決策提供一定參考。
采用Wu等[9]提供的123例慢性丙型肝炎臨床病例數(shù)據(jù),包括訓(xùn)練集82例,測試集41例。病例遴選標(biāo)準(zhǔn)是:經(jīng)過肝穿刺活組織病理檢查已確診為慢性丙型肝炎,且患者的血清檢查日期與肝活組織病理檢查日期之間的間隔在90 d之內(nèi)。
1.1.1數(shù)據(jù)分布
對這123例臨床樣本,類標(biāo)設(shè)計為纖維化的4個階段S1、S2、S3、S4和炎癥活動度的三個等級G1、G2、G3,其中樣本類別以S4和G2居多,是典型的類別不均衡數(shù)據(jù),其纖維化階段和炎癥活動度分布分別如表1、2所示。
表1 數(shù)據(jù)樣本集的纖維化階段分布Tab.1 Data distribution of various stages of fibrosis
1.1.2數(shù)據(jù)特征屬性
選取了患者臨床數(shù)據(jù)的14個指標(biāo)作為數(shù)據(jù)集的特征屬性,以血清檢驗指標(biāo)為主。根據(jù)臨床專家的經(jīng)驗選擇與慢性丙型肝炎病情發(fā)展可能相關(guān)的
表2 數(shù)據(jù)樣本集的炎癥活動度分布Tab.2 Data distribution of various grades of inflammatory activity
常規(guī)血檢查指標(biāo),再加上年齡、性別等統(tǒng)計指標(biāo),構(gòu)成數(shù)據(jù)的全部特征屬性,共計14個變量,分別為年齡、性別、血清組、丙型肝炎病毒寡核苷酸(IU/mL)、丙型肝炎病毒數(shù)量(KIU/mL)、總膽固醇(mg/dL)、甘油三醇(mg/dL)、高密度脂蛋白膽固醇(mg/dL)、低密度脂蛋白膽固醇(mg/dL)、病情診斷方式、體重指數(shù)(kg/m2)、丙氨酸轉(zhuǎn)氨酶(U/L)、天門冬氨酸轉(zhuǎn)氨酶(U/L)、葡萄糖(mg/dL)。其中,性別變量分類為0和1,分別代表男和女;血清組分類用1和2表示,分別代表丙型肝炎病毒基因Ⅰ型和丙型肝炎病毒基因非Ⅰ型;病情診斷方式分類為0和1,分別代表針吸式活組織檢查和局部切除式活組織檢查;其余變量用檢測值表示。指標(biāo)編號如表3所示。
表3 屬性表Tab.3 List of variables
1.1.3數(shù)據(jù)集劃分
分別基于纖維化階段和炎癥活動度將實驗數(shù)據(jù)集劃分為訓(xùn)練集和測試集,基于纖維化階段和基于炎癥活動度的數(shù)據(jù)集劃分情況如表4、5所示。
表4 基于纖維化階段的數(shù)據(jù)集劃分Tab. 4 Dataset partitions based on various stages of fibrosis
表5 基于炎癥活動度的數(shù)據(jù)集劃分Tab.5 Dataset partitions based on various grades of inflammatory activity
1.2.1隨機森林模型
隨機森林(random forests, RF)由Leo Breiman提出[11],是一種使用多個決策樹對樣本進行分類或預(yù)測的集成學(xué)習(xí)模型,已經(jīng)在圖像分析[12-13]、信號處理[14]和視頻分析[15]等多個領(lǐng)域取得廣泛應(yīng)用。隨機森林模型的基本步驟如下:
步驟1:從訓(xùn)練集中,利用Bootstrap進行有放回采樣,隨機生成多個訓(xùn)練樣本子集, 未被采樣到的訓(xùn)練樣本,組成了袋外 (out of bag, OOB) 數(shù)據(jù)。
步驟2:每個訓(xùn)練樣本子集上單獨訓(xùn)練一個決策樹。設(shè)有M個屬性,在每一棵樹的每個節(jié)點隨機抽取m個屬性,作為當(dāng)前節(jié)點分裂屬性集,并以這m個屬性中最好的分裂方式對該節(jié)點進行分裂。每個決策樹最大限度生長,不進行剪枝。
步驟3:這些獨立同分布的決策樹構(gòu)成了隨機森林,對于測試樣本,利用森林中的每個決策樹來判斷其歸屬分類,分類結(jié)果取為這些決策樹輸出類別的眾數(shù)。
隨機森林分類器需要選擇的參數(shù)較少,實現(xiàn)簡單,能夠有效處理高維數(shù)據(jù)。該分類器可以在內(nèi)部對泛化誤差進行無偏估計,減少過擬合,具有良好的泛化性能,并且可以在進行分類的同時,評估各變量的重要性,便于尋找用于肝炎病情分級的重要性最顯著指標(biāo)。此外,隨機森林使用有放回采樣技術(shù)選擇樣本,可以有效處理類不平衡數(shù)據(jù),能夠處理現(xiàn)實肝炎病例集里前中期病例較少的問題?;谏鲜鎏攸c,隨機森林非常適合用于肝炎病例分析,可快速估計各個病情指標(biāo)的重要性評價,并對測試病例進行纖維化程度和炎癥活動度的分級評價。
1.2.2基于兩階段隨機森林的慢性丙型肝炎纖維化與炎癥活動度分級模型
隨機森林通過重采樣技術(shù)來得到用于學(xué)習(xí)決策樹的訓(xùn)練樣本,這樣還有大約1/3的樣本沒有被利用,未參與到?jīng)Q策樹的建立過程中。這部分樣本就是袋外數(shù)據(jù),可以用來衡量各個特征屬性的重要性,從而篩選部分重要度較高的屬性。然后在進行完特征選擇后,在新篩選出來的屬性上,重新進行隨機森林分類器的訓(xùn)練和分類。基于兩階段隨機森林的慢性丙型肝炎纖維化與炎癥活動度分級模型具體步驟如下:
步驟1:在包含所有屬性的訓(xùn)練集上,利用Bootstrap重采樣,隨機生成多個訓(xùn)練樣本子集,在訓(xùn)練樣本子集上學(xué)習(xí)第一階段隨機森林模型。
步驟2:使用袋外(OOB)數(shù)據(jù)上的分類誤差來評估每個屬性的重要度。具體地,利用袋內(nèi)數(shù)據(jù)上訓(xùn)練的隨機森林,估計所有OOB樣本的分類錯誤率。然后對屬性Xi,將所有OOB樣本的該屬性值進行隨機置換,獲得新的袋外 (OOB′) 數(shù)據(jù),估計OOB′樣本的分類錯誤率,并計算新舊兩個袋外數(shù)據(jù)分類錯誤率的變化值,作為該屬性的特征重要度。對于屬性Xi,其特征重要度VIMi計算公式為
(1)
由式(1)可知,如果屬性Xi與類標(biāo)之間無關(guān)聯(lián)關(guān)系,隨機置換該特征后,對應(yīng)的袋外數(shù)據(jù)分類錯誤率不會發(fā)生變化,VIMi=0;相反地,如果VIMi>0,則說明屬性Xi與類標(biāo)是有關(guān)聯(lián)的。選擇特征重要度大于0的屬性作為下一步進行分類的特征。
步驟3:在選出的新屬性上,對訓(xùn)練集數(shù)據(jù)進行第二階段的隨機森林學(xué)習(xí)。對于測試樣本,利用森林中的每個決策樹進行投票,確定其類標(biāo)。
將兩階段隨機森林模型用于慢性丙肝肝炎的纖維化分期和炎癥活動度分級,使用測試集上的分類正確率作為評估準(zhǔn)則,得到纖維化分期的正確率為68.29%,其中纖維化階段S4的分類正確率達到100%,得到炎癥活動度分級的正確率為73.17%。隨機森林模型中決策樹的數(shù)量取值為1 000。參數(shù)m表示決策樹在分裂節(jié)點處樣本候選特征的個數(shù),記第一階段隨機森林的該參數(shù)為m1,第二階段隨機森林的該參數(shù)記為m2。分析不同m1與m2取值下的纖維化階段分類正確率,實驗結(jié)果如圖1所示。由于m2的取值不能超過進行特征選擇后的屬性個數(shù),故其中不能選出有效特征的參數(shù)組合在圖中沒有顯示。
圖1 纖維化階段分類正確率與參數(shù)m1、m2的關(guān)系Fig.1 The relationship between classification accuracy of fibrosis stage and the parameters m1 and m2
從圖1可以得出,當(dāng)取m1=4,m2=2時,可以得到纖維化階段的最大分類正確率為68.29%,其中S4階段分類正確率為100%。取m1=4,m2=2時纖維化階段分類的混淆矩陣如表6所示,表中的每一列代表了預(yù)測類別,每一列的總數(shù)表示預(yù)測為該類樣本的數(shù)目;每一行代表了樣本的真實類別,每一行的數(shù)據(jù)總數(shù)表示此類樣本的數(shù)目。
表6纖維化階段分類的混淆矩陣(m1=4,m2=2)
Tab.6Confusionmatrixoffibrosisstageclassification(m1=4,m2=2)
預(yù)測類別為S1預(yù)測類別為S2預(yù)測類別為S3預(yù)測類別為S4實際類別為S13000實際類別為S20014實際類別為S30207實際類別為S400024
另外從圖1中可知,在參數(shù)m1取為 [1, 14] 之內(nèi),參數(shù)m2取為 [1,k] 之內(nèi)時(k為特征重要度大于0的屬性個數(shù)),纖維化階段的分類正確率均在56%之上。從實驗結(jié)果可以看出,對于大部分可行參數(shù)組合,模型可以達到較好的分類正確率。在特征選擇過程中,各個屬性的特征重要度如圖2所示。
圖2 纖維化分期的特征重要性(m1=4,m2=2)Fig.2 The variable importance related to fibrosis stage(m1=4,m2=2)
根據(jù)圖2,得到與丙型肝炎纖維化程度密切相關(guān)的重要指標(biāo)為丙型肝炎病毒寡核苷酸(IU/mL)、丙型肝炎病毒數(shù)量(KIU/mL)、總膽固醇(mg/dL)、甘油三酯(mg/dL)、高密度脂蛋白膽固醇(mg/dL)、低密度脂蛋白膽固醇(mg/dL)、丙氨酸轉(zhuǎn)氨酶(U/L)和天門冬氨酸轉(zhuǎn)氨酶(U/L)等。
研究不同m1與m2取值對炎癥活動度的分類性能的影響,實驗結(jié)果如圖3所示。由于m2的取值不能超過進行特征選擇后的屬性個數(shù),故其中不能選出有效特征的參數(shù)組合在圖中沒有顯示。
圖3 炎癥活動度分類正確率與參數(shù)m1、m2的關(guān)系Fig.3 The relationship between classification accuracy of inflammatory activity grade and the parameters m1 and m2
從圖3得出,當(dāng)取m1=4,m2=2時,可以得到炎癥活動度分級的最大分類正確率為73.17%。取m1=4,m2=2時炎癥活動度分級的混淆矩陣如表7所示,表中的每一列代表了預(yù)測類別,每一列的總數(shù)表示預(yù)測為該類別的樣本的數(shù)目;每一行代表了樣本的真實歸屬類別,每一行的數(shù)據(jù)總數(shù)表示該類
樣本的數(shù)目。
表7炎癥活動度分類的混淆矩陣(m1=4,m2=2)
Tab.7Confusionmatrixofinflammatoryactivitygradeclassification(m1=4,m2=2)
預(yù)測類別為G1預(yù)測類別為G2預(yù)測類別為G3實際類別為G1580實際類別為G23230實際類別為G3002
另外從圖3中可知,在參數(shù)m1取為 [1, 14] 之內(nèi),參數(shù)m2取為 [1,k] 之內(nèi)時 (k為特征重要度大于0的屬性個數(shù)),炎癥活動度的分類正確率均在50%之上。從實驗結(jié)果可以看出,在大多數(shù)可行的參數(shù)組合下,模型可以達到較好的分類效果。在特征選擇過程中,各個屬性的特征重要度如圖4所示。
圖4 炎癥活動度分級的特征重要性(m1=4,m2=2)Fig.4 The variable importance related to inflammatory activity grade(m1=4,m2=2)
根據(jù)圖4,得到與丙型肝炎炎癥活動度分級密切相關(guān)的重要指標(biāo)為年齡、總膽固醇(mg/dL)和高密度脂蛋白膽固醇(mg/dL)等。
在同樣的數(shù)據(jù)屬性特征上,將本研究方法與以下方法進行比較:一是采用隨機森林模型直接分類;二是線性判別分析結(jié)合最近鄰分類器(linear discriminant analysis+nearest neighbor,LDA+NN)進行分類。同時與文獻[9]分別在慢性丙型肝炎T2W加權(quán)圖像、T1W加權(quán)圖像和EOB-HP圖像上提取紋理特征并使用LDA+NN分類的實驗結(jié)果進行比較。實驗結(jié)果的對比如表8所示。
表8 實驗結(jié)果對比Tab.8 Comparison of experimental results
從實驗結(jié)果可以看出,本研究的兩階段隨機森林方法的分類結(jié)果優(yōu)于直接使用隨機森林進行分類和使用LDA+NN進行分類。比起文獻[9]采用MR圖像紋理特征,本研究方法使用的血清生化指標(biāo)容易獲取,使用的特征少、計算量小,可以達到較好的分類正確率。特別在對纖維化S4階段的分類上,本研究方法可以達到100%的分類準(zhǔn)確率,對于肝纖維化晚期的診斷具有一定輔助分析作用。
根據(jù)基于隨機森林的特征選擇,得到與肝炎病情分級評價密切相關(guān)的重要指標(biāo)為丙型肝炎病毒寡核苷酸、丙型肝炎病毒數(shù)量、膽固醇、甘油三酯、丙氨酸轉(zhuǎn)氨酶(即谷丙轉(zhuǎn)氨酶)、天門冬氨酸轉(zhuǎn)氨酶(即谷草轉(zhuǎn)氨酶)、年齡等。大部分指標(biāo)與肝炎病情發(fā)展的關(guān)系可從醫(yī)學(xué)文獻中得到驗證。例如在文獻[16]中,作者介紹了丁酰膽堿酯酶、總膽固醇、凝血酶原活動度越低,天冬氨酸轉(zhuǎn)氨酶/丙氨酸轉(zhuǎn)氨酶活動度比值越高,肝炎病情越重,其水平變化與預(yù)后關(guān)系密切。馬軼通過對72例慢性丙型肝炎患者肝穿刺病理標(biāo)本的組織炎癥活動度分級(G)和纖維化活動分期(S)進行回顧性分析,并與肝功能生化指標(biāo)比較,認為谷丙轉(zhuǎn)氨酶、谷草轉(zhuǎn)氨酶、谷氨酰轉(zhuǎn)移酶、總膽紅素、透明質(zhì)酸可顯著反映慢性丙型肝炎肝組織的炎癥活動程度,是病變進展的指標(biāo)。[17]岑立沖等通過穿刺肝組織病理檢查對52例丙型肝炎患者,在檢測患者丙型肝炎病毒數(shù)量的情況下進行相關(guān)檢驗,得出丙型肝炎病毒數(shù)量與肝組織病理變化二者之間密切正相關(guān)的結(jié)論[18]。李穎等通過臨床實驗證明,谷丙轉(zhuǎn)氨酶活動度對慢性丙型肝炎發(fā)展情況具有顯著正相關(guān)影響[19]。劉沁毅等曾對100例肝活檢病例進行Spearman相關(guān)分析,結(jié)果顯示,肝組織炎癥活動度分級和纖維化分期與年齡、谷丙轉(zhuǎn)氨酶、谷草轉(zhuǎn)氨酶等均呈正相關(guān)[20]。
通過對各個血清指標(biāo)的屬性重要性分析發(fā)現(xiàn),各個血清指標(biāo)里面,膽固醇水平,特別是其中的高密度脂蛋白膽固醇水平,在對慢性丙型肝炎病例進行纖維化分期與炎癥活動度分級的過程中,其特征重要度最大,具有最強的預(yù)測價值。該結(jié)論有助于提示臨床專家進行有針對性的臨床實驗設(shè)計和進一步驗證。
此外,對實驗結(jié)果分析可得到與丙型肝炎炎癥活動度分級密切相關(guān)的重要指標(biāo)為年齡、總膽固醇水平和高密度脂蛋白膽固醇水平等。而高齡、總膽固醇、高密度膽固醇是引發(fā)脂肪肝的重要影響因素。文獻[21]指出,慢性丙型肝炎合并肝脂肪變發(fā)生率高,脂肪肝對慢性丙型肝炎病情進展和預(yù)后有著重要影響,肝脂肪變的嚴(yán)重程度與肝炎病情級別呈正相關(guān),本研究的數(shù)據(jù)分析結(jié)果也從一個側(cè)面為此結(jié)論提供了證據(jù)。
慢性丙型肝炎患者絕大多數(shù)存在肝纖維化和炎癥活動,其中很大比例會最終發(fā)展為肝硬化甚至肝癌,因此平時監(jiān)控和及時確診肝纖維化和炎癥活動度,對于阻斷病情進一步發(fā)展具有重要意義。肝活檢具有一定的創(chuàng)傷性,MR等影像檢查的成本較高,二者難以作為患者進行病情發(fā)展自主監(jiān)控的常規(guī)檢查手段。既往研究中發(fā)現(xiàn),許多單個血清學(xué)指標(biāo)與肝纖維化程度和炎癥活動度之間呈顯著正相關(guān)關(guān)系。但如何綜合利用這些血清學(xué)指標(biāo),來較為準(zhǔn)確地判斷肝纖維化分期和炎癥活動度分級,臨床上目前還沒有公論。本研究通過機器學(xué)習(xí)的方法,給出了一種利用血清學(xué)指標(biāo)自動確定肝炎病情分級的方法,對于患者在平時針對病情進行常規(guī)自主監(jiān)控具有一定的輔助作用。
本研究的不足之處在于,病例集里大部分樣本是纖維化S4階段和炎癥活動度G1、G2期的樣本,纖維化S1、S2、S3階段和炎癥活動度G3期的臨床樣本數(shù)據(jù)極少。由于這些類別的訓(xùn)練樣本過少,使得模型對這些類別的分類精度較低。本研究下一步的工作是補充采集這些階段的樣本,來訓(xùn)練識別能力更高的慢性丙型肝炎自動分級模型。
本研究在慢性丙型肝炎臨床病例庫上,建立兩階段隨機森林模型,構(gòu)建基于臨床血清生化指標(biāo)的肝炎纖維化階段和炎癥活動度的預(yù)測模型。該方法采用的檢驗指標(biāo)獲取成本低,模型分類速度快,參數(shù)設(shè)置簡單,計算量低,能達到較好的分級準(zhǔn)確度,特別對纖維化S4階段具有100%的識別準(zhǔn)確度,可以幫助臨床上快速識別肝纖維化晚期病例。
(致謝:感謝中山大學(xué)孫逸仙紀(jì)念醫(yī)院的吳卓醫(yī)生為本文提供臨床病例數(shù)據(jù))