張春生,圖 雅,李 艷
(內蒙古民族大學計算機科學與技術學院,內蒙古 通遼 028043)
數(shù)據(jù)挖掘技術自產生以來得到廣泛的研究和應用,特別是隨著大數(shù)據(jù)技術和物聯(lián)網(wǎng)技術的發(fā)展,數(shù)據(jù)挖掘技術的研究與應用越來越火熱。決策樹作為數(shù)據(jù)挖掘技術的重要組成算法,其理論研究一直在進行,算法時空效率不斷提高[1-6]。
在中醫(yī)方劑配伍規(guī)律數(shù)據(jù)挖掘研究方面,目前的研究成多數(shù)是應用關聯(lián)規(guī)則和聚類分析或一般性統(tǒng)計分析等方法進行。如朱習軍等利用改進的Apriori算法對哮喘病案進行了數(shù)據(jù)分析[7];周志煥等對郁證古方用藥規(guī)律進行了關聯(lián)規(guī)則分析[8];譚惠娟等應用數(shù)據(jù)挖掘方法對針灸治療慢性疲勞綜合征腧穴運用規(guī)律進行了研究[9];田茸等對脾虛型泄瀉方劑用藥規(guī)律進行了關聯(lián)規(guī)則分析[10];楊麗平等應用聚類分析方法對3種腰痛方劑進行了相應的研究[11];吳磊等通過雙向聚類方法對中醫(yī)治療中風病方劑配伍規(guī)律進行了相關研究[12]。
應用決策樹算法對中醫(yī)方劑進行數(shù)據(jù)挖掘方面,目前尚未查到相關資料,只是宋燕應用決策樹算法對肺癌 CT 進行建模并進行了相關研究[13];高俠等應用決策樹算法對患者就診趨勢進行了分析研究[14];余學杰等應用決策樹算法對中醫(yī)專家辨證規(guī)律進行了相應研究[15];楊云等應用ID3決策樹算法對突發(fā)公共衛(wèi)生事件風險進行了評估分析[16]。
從以上文獻可以看出,決策樹算法在數(shù)據(jù)挖掘中具有很多優(yōu)越性,是非常好的分類算法,特別是決策樹的結果可直接轉化為規(guī)則,所以決策樹算法在數(shù)據(jù)挖掘中得到了廣泛應用。然而在中醫(yī)方劑數(shù)據(jù)挖掘中,未查到相應的文獻,這是方劑配伍規(guī)律數(shù)據(jù)挖掘研究方面的一種缺憾。
分類是指把數(shù)據(jù)項映射到一個事先定義好的類中的學習過程,即給定一組輸入屬性向量及其對應的類,用基于歸納的學習算法得出分類。Quinlan 1986年提出關于決策樹的ID3算法,1993年提出關于決策樹的C4.5。C4.5是ID3的改進算法,不僅可以處理離散值屬性,還能處理連續(xù)值屬性。C4.5采用信息增益比作為選擇測試屬性的標準,彌補了ID3的不足,可實現(xiàn)對樣本的分類。
本文結合國家自然科學基金項目《蒙醫(yī)方劑數(shù)據(jù)挖掘關鍵技術研究》的研究工作,開發(fā)了一套通用的蒙醫(yī)方劑數(shù)據(jù)挖掘系統(tǒng),將C4.5決策樹算法應用于蒙醫(yī)方劑數(shù)據(jù)挖掘研究中,可探討藥物與功能、藥物與主治之間的潛在規(guī)則,對蒙醫(yī)方劑配伍規(guī)律的研究提供決策支持。同時針對蒙醫(yī)方劑決策樹挖掘給出了有效的數(shù)據(jù)預處理方法,該方法可為決策樹算法的其他應用提供技術參考。C4.5決策樹挖掘算法作為蒙醫(yī)方劑數(shù)據(jù)挖掘系統(tǒng)的一部分,具有通用、靈活、使用方便等優(yōu)點,可廣泛應用于方劑配伍規(guī)律的研究。
決策樹不僅是分類的最好手段,而且挖掘結果所對應的決策樹可直接生成關聯(lián)規(guī)則,是方劑配伍規(guī)律研究的有效方法。本文將C4.5決策樹算法應用于蒙醫(yī)方劑配伍規(guī)律研究中,對蒙醫(yī)方劑新藥的研制開辟了新的途徑。
決策樹算法是解決實際應用中分類問題最有效的方法,決策樹定義為:
給定一個數(shù)據(jù)庫D={t1,…,tn},其中ti=
(1)每個內部節(jié)點都被標記為一個屬性Ai;(2)每個弧都被標記為一個謂詞,這個謂詞可應用于父節(jié)點的屬性;(3)每個葉子節(jié)點都標記為一個分類。
著名的決策樹算法有C4.5算法,C4.5算法用增益標準選擇需要的屬性,即熵的概念。
設事務集T分為k類,T→{C1,C2,…,Ck},訓練樣本分成n個子集T→{T1,T2,…,Tn},S是任意的樣本集,freq(Ci,S)代表S中屬于Ci的樣本數(shù)量,|S|為集合S中樣本數(shù)量。
infox(T)為T的熵
Gain(x)=info(T)-infox(T)
Gain(x)為增益準則,可選擇Gain(x)最大的屬性作分類屬性。C4.5算法具有以下優(yōu)點:可忽略缺失數(shù)據(jù)問題,提高算法的健壯性;決策樹等價于一個關聯(lián)規(guī)則,即從根節(jié)點到葉子節(jié)點,由根節(jié)點、中間路徑節(jié)點和葉子構成一個完整的關聯(lián)規(guī)則,該關聯(lián)規(guī)則可用于知識發(fā)現(xiàn)。本文應用C4.5算法不僅能對蒙醫(yī)方劑進行分類,還能發(fā)現(xiàn)更多的潛在關聯(lián)規(guī)則。
根據(jù)C4.5決策樹算法的需要,每個事務中的屬性應等長,也就是用整個方劑類中所有出現(xiàn)的藥物作為每個事務的屬性,為此作如下處理。
設給定一個事務集T={T1,…,Tn},其中每個事務Ti的屬性集為Ri={ri1,…,rik},事務T的屬性集R是所有事務屬性集的并集:
R=R1∪R2∪…∪Rn
如《傳統(tǒng)蒙藥與方劑》中治療“赫依病”的方劑數(shù)量有27個[17],每個方劑的藥物數(shù)量都不相同,也就是Ri不相同,但最終預處理后的數(shù)據(jù)集屬性按R的屬性個數(shù)配齊,R的屬性個數(shù)就是所有方劑中藥物的集合共有87個,所以最后的原始數(shù)據(jù)矩陣有87列。
由于每種方劑的質量各不相同,必須進行歸一化處理,設某方劑有n種藥物,編號為i=1,2,3,…,n,每種藥物的質量mi,方劑總質量為m,則m=m1+m2+…+mn,每種藥物歸一化后的質量為:ki=mi/m,總質量是1。
歸一化處理后,每種藥物的質量都以小數(shù)形式出現(xiàn),不便于理解和數(shù)據(jù)挖掘,所以本文將歸一化的數(shù)據(jù)擴大100倍,即歸一化后的總質量不是1而是100,這種處理方法不影響數(shù)據(jù)挖掘效果。
表1 治療赫依病類方劑與功能及主治的對應關系
決策樹分析的原始數(shù)據(jù)中,每個事務的分類是惟一的,但方劑的實際情況卻不同,存在一個方劑對應多個分類的問題。
表2顯示,設類別集合為C={C1,…,Cm},方劑集合為T={T1,…,Tn},則存在Ti→{Cj,Cj+1,…,Ck}的現(xiàn)象,數(shù)據(jù)預處理方法是讓這個方劑重復,以對應不同的分類,即Ti→Cj,Ti→Cj+1,…,Ti→Ck,這樣處理不會影響數(shù)據(jù)挖掘結果。
表2顯示,方劑主治的規(guī)格化比較復雜,原書中各個方劑的主治數(shù)量較多,而且存在不同程度的同名異義和異名同義的問題,不便于數(shù)據(jù)挖掘。本文根據(jù)赫依病發(fā)病位置經過抽象得到三級主治抽象表,為適應數(shù)據(jù)挖掘需求,采用既不過于集中也不過于分散的二級抽象內容作為挖掘依據(jù)。
本文設計的C4.5決策樹算法能自動實現(xiàn)蒙醫(yī)方劑決策樹挖掘的數(shù)據(jù)預處理工作,同時顯示預處理矩陣、數(shù)據(jù)項目、決策樹挖掘結果。
用戶選擇方劑類別后可選擇不同的分類目標,也就是在主治和功能上選擇其中1項,實現(xiàn)對主治或功能的決策樹挖掘。
表2 赫依病方劑主治三級抽象表
圖1 決策樹挖掘程序界面
表3顯示,本文采用內蒙古民族大學蒙醫(yī)藥學院奧·烏力吉教授和布和巴特爾教授編寫的《傳統(tǒng)蒙藥與方劑》中治療“赫依病”方劑為例子,討論決策樹分類問題。該類方劑共收錄27個方劑,共涉及藥物87味[17]。本文以主治作為分類目標對“赫依病”方劑進行分類。
人造香鹽、大蒜炭是治療肌赫依的關鍵藥物,紫草茸是治療骨赫依的關鍵要藥物,五靈脂是治療大腸赫依的關鍵藥物,肉桂是治療胃赫依的關鍵藥物,錢線蓮、干姜、安息香、木棉花蕊、白胡椒是治療脈赫依的主要藥物,其中的關鍵藥物是錢線蓮;干姜、安息香、土木香、木棉花蕊、草烏是治療肺赫依的主要藥物,其中關鍵藥物是干姜和草烏;干姜、安息香、木棉花蕊、蓽茇、草烏是治療頭赫依的主要藥物,其中關鍵藥物是蓽茇和草烏;適度的草烏是治療心赫依的關鍵藥物。
決策樹不僅是分類的最好手段,而且挖掘結果所對應的決策樹可直接生成關聯(lián)規(guī)則,是方劑配伍規(guī)律研究的有效方法。本文將C4.5決策樹算法應用于蒙醫(yī)方劑配伍規(guī)律研究中,給出了數(shù)據(jù)預處理方法,并將決策樹算法集成在蒙醫(yī)方劑數(shù)據(jù)挖掘系統(tǒng)中,作為重要的數(shù)據(jù)挖掘手段,可挖掘方劑藥物組成與主治和功能的關系,實驗表明方法有效。
表3 治療赫依病方劑決策樹挖掘結果分析
文中對治療“赫依病”的27個方劑主治進行決策樹分析,得到治療肌赫依、骨赫依、大腸赫依、胃赫依、脈赫依、肺赫依、頭赫依的關鍵藥物組合,同時系統(tǒng)也可對治療“赫依病”的功能進行決策樹分析。值得說明的是,決策樹是基于信息熵概念的,這里分析出的關鍵藥物不一定是量大的主要藥物,而是對方劑主治起到轉折點控制的關鍵藥物。
本文開發(fā)的蒙醫(yī)方劑數(shù)據(jù)挖掘系統(tǒng)對保護民族醫(yī)學遺產、對蒙醫(yī)藥研究和發(fā)展開辟了新的途徑,必將促進蒙醫(yī)藥研發(fā)工作,具有一定的社會效益和經濟價值。