文/邢俊鳳 郝秀霞 馬寧
在中醫(yī)學(xué)上,糖尿病臨床癥狀包括多飲多食,尿量多并有甜味,患者形體消瘦。在西醫(yī)臨床角度,糖尿病是一組以高血糖為特征的代謝性疾病。高血糖則是由于胰島素分泌缺陷或其生物作用受損,或兩者兼有引起。糖尿病時長期存在的高血糖,導(dǎo)致各種組織,特別是眼、腎、心臟、血管、神經(jīng)的慢性損害、功能障礙。在人們經(jīng)濟和生活條件不斷提高的情況下,飲食結(jié)構(gòu)也在逐漸發(fā)生著巨大的變化,糖尿病患者的數(shù)量也在不斷增加,而且患者的年齡逐漸年輕化。目前糖尿病已經(jīng)成為嚴重危害人類健康的三大慢性非傳染性疾病之一,在我國每10人中有1名糖尿病患者。糖尿病的預(yù)防和治療工作已經(jīng)成為需要迫切解決的問題。
中醫(yī)對糖尿病的論述早在黃帝內(nèi)經(jīng)里就有,糖尿病屬于中醫(yī)“消渴癥”的范疇,而且療效比較確定、不良反應(yīng)較少,能夠?qū)Σl(fā)癥的發(fā)生起到延緩或減少作用。不同中醫(yī)流派對糖尿病的認識均存在差異,組方用藥各有千秋。千百年來積攢下來的中醫(yī)治療糖尿病的處方具有極強的再次利用價值。隨著計算機科學(xué)與技術(shù)的高速發(fā)展,大數(shù)據(jù)、數(shù)據(jù)挖掘、數(shù)據(jù)倉庫等相關(guān)技術(shù)的發(fā)展驅(qū)動了數(shù)據(jù)挖掘方向的發(fā)展,為數(shù)據(jù)挖掘技術(shù)在中醫(yī)藥領(lǐng)域中的應(yīng)用提供了強有力的技術(shù)保障。經(jīng)過對大量的糖尿病中藥處方數(shù)據(jù)進行研究,挖掘出這些海量數(shù)據(jù)背后隱藏的諸多有價值的信息是非常有實際應(yīng)用價值的。
國家級名老中醫(yī)??茖2矔ㄖ性r(nóng)民出版社)的糖尿病驗案良方部分記載了大量的中醫(yī)藥治療糖尿處方,這些處方是幾十位國家級名老中醫(yī)數(shù)百則典型驗案中提到的數(shù)百首極具療效的經(jīng)驗良方。本文以該叢書和 CNKI 相關(guān)文獻中記載的處方作為研究樣本數(shù)據(jù)。
高質(zhì)量的數(shù)據(jù)決定高質(zhì)量的挖掘結(jié)果,在進行數(shù)據(jù)分析之前,首先要對樣本數(shù)據(jù)做預(yù)處理。并且從精確度、一致性和可信度三個維度確定數(shù)據(jù)的質(zhì)量。主要針對不一致、不完整和含有噪聲的三種數(shù)據(jù)進行預(yù)處理。處理方式如下:
對于有些感興趣的屬性缺少屬性值等不完整的數(shù)據(jù),進行空缺值得填寫。
對于含有噪聲的數(shù)據(jù),一般是包含錯誤或者存在孤立點,需要平滑噪聲數(shù)據(jù)得同時識別和刪除孤立點。
對于在編碼或者命名上存在差異的不一致數(shù)據(jù),將數(shù)據(jù)進行一致性處理。由于中藥藥名存在很多別名,本文主要涉及中藥藥名的統(tǒng)一問題,以《中華人民共和國藥典》中的中藥藥名為標(biāo)準(zhǔn)完成數(shù)據(jù)一致性處理。部分樣例如表1。
數(shù)據(jù)預(yù)處理后,將多個數(shù)據(jù)源中的處方數(shù)據(jù)整合到一個一致的存儲中,采用SQL Server數(shù)據(jù)庫作為數(shù)據(jù)庫平臺。數(shù)據(jù)集成過程中需要解決的問題是數(shù)據(jù)冗余。整合多個數(shù)據(jù)集合的數(shù)據(jù)時,由于在命名上存在差異導(dǎo)致等價的實體具有不同的名稱,本文主要使用元數(shù)據(jù)來進行區(qū)分。在解決數(shù)據(jù)冗余的問題時,數(shù)值屬性通過皮爾遜積矩ra,b來衡量,它是一個位于[-1,1]之間的數(shù)值,大于零時屬性之間呈現(xiàn)正相關(guān),否則為反相關(guān)。如果絕對值越大表明兩者之間相關(guān)性越強,公式如下:
常用的數(shù)據(jù)挖掘方法有關(guān)聯(lián)規(guī)則、決策樹、人工神經(jīng)網(wǎng)絡(luò)、聚類分析、遺傳算法、小波變換、貝葉斯信念網(wǎng)絡(luò)等。本文采用的優(yōu)化關(guān)聯(lián)規(guī)則算法是數(shù)據(jù)挖掘中的一個重要的研究領(lǐng)域。
關(guān)聯(lián)規(guī)則挖掘算法主要通過特定的搜索算法,發(fā)現(xiàn)大量數(shù)據(jù)中項集之間有趣的關(guān)聯(lián)或相關(guān)聯(lián)系,糖尿病處方規(guī)律研究恰好是要發(fā)現(xiàn)處方中各種中藥之間的關(guān)聯(lián)。Aprior算法是關(guān)聯(lián)規(guī)則的頻繁項集算法,作為第一個且最經(jīng)典的關(guān)聯(lián)規(guī)則挖掘算法,它利用逐層搜索的迭代方法找出數(shù)據(jù)庫中項集的關(guān)系,以形成規(guī)則,其過程由連接與剪枝組成,本文選取該算法為主要算法,在廣泛收集中醫(yī)治療糖尿病處方的基礎(chǔ)上,采用一定程度上優(yōu)化的關(guān)聯(lián)規(guī)則算法,分析處方中各藥物之間的關(guān)聯(lián)規(guī)則、各藥物的使用頻次以及組方規(guī)律等。
表1
目前,文獻顯示現(xiàn)有的糖尿病處方的數(shù)據(jù)挖掘應(yīng)用,主要以使用一些現(xiàn)成軟件中包含的數(shù)據(jù)挖掘功能完成,使用的算法以傳統(tǒng)的算法為主。本文在廣泛收集中醫(yī)治療糖尿病處方的基礎(chǔ)上,通過數(shù)據(jù)預(yù)處理建立處方數(shù)據(jù)庫,進而采用優(yōu)化的關(guān)聯(lián)規(guī)則算法,即優(yōu)化關(guān)聯(lián)規(guī)則Apriori算法,分析處方中藥物的使用頻次、藥物之間的關(guān)聯(lián)規(guī)則、核心組合等,從實現(xiàn)技術(shù)角度上提出了一個新的突破。
算法的基本步驟如下:
第一步:分別設(shè)定最小支持度 s和最小置信度 c。
第二步:使用候選項集。
第三步:從數(shù)據(jù)庫讀取所有的記錄,每個項都被看作候選第1項集,得出各項的支持度。
第四步:再次掃描數(shù)據(jù)庫 ,得出候選第2項集集合,再找出頻繁第2項集,并利用頻繁第2 項集集合來產(chǎn)生候選第3 項集。
第五步:重復(fù)以上幾步,與最小支持度比較,產(chǎn)生更高層次的頻繁項集,再從該集合里產(chǎn)生下一級候選項集 ,直到不再產(chǎn)生新的候選項集為止。
通過對收集到的中醫(yī)藥治療糖尿病處方數(shù)據(jù)進行關(guān)聯(lián)規(guī)則分析,分析結(jié)果可以發(fā)現(xiàn)許多組方規(guī)律、用藥頻次等有價值的信息,以期為中醫(yī)治療糖尿病提供決策支撐。