宋 艷, 何 嘉, 舒紅平, 鄭皎凌, 梁繁榮, 任玉蘭, 文立玉
(1.成都信息工程學(xué)院計算機(jī)系,四川成都610225;2.成都信息工程學(xué)院軟件工程系,四川 成都 610225;3.成都中醫(yī)藥大學(xué),四川成都610075)
中醫(yī)講求辨證論治[1-2],也稱辨證施治,是中醫(yī)學(xué)對疾病的一種特殊的研究和處理方法。辨證是決定治療的前提和依據(jù),不同的證(癥狀與體征)在辨證過程中所起作用大小是不同的[3],半身不遂、癱瘓、口噤不開、惡風(fēng)、疼痛、頭昏的重要性就不同[4],其中半身不遂、癱瘓、口噤不開的重要性就比其余幾個癥狀大。如果見到半身不遂、癱瘓,病人患中風(fēng)的可能性就很大;而見到頭昏、疼痛則不然。因而,考慮各癥狀[5]的權(quán)重問題在制定中醫(yī)疾病診斷標(biāo)準(zhǔn)方面也起到極大作用[6]。
TF-IDF[7-8](Term Frequency-Inverse Document Frequency)是一種用于資訊檢索與資訊探勘的常用加權(quán)[9-10]技術(shù)。TF-IDF是一種統(tǒng)計方法,用以評估一字詞對于一個文件集或一個語料庫中的其中一份文件的重要程度。字詞的重要性隨著它在文件中出現(xiàn)的次數(shù)成正比增加,但同時會隨著它在語料庫中出現(xiàn)的頻率成反比下降。提出采用此文本挖掘算法[11]來解決疾病癥狀的權(quán)重問題。
文本分類[12]時常用詞頻(Term Frequency,TF)和反文檔頻率(Inverse Document Frequency,IDF)的乘積來表示特征向量的權(quán)重,TF指的是某一個給定的詞語在該文件中出現(xiàn)的次數(shù),出現(xiàn)次數(shù)越多說明該詞語越重要,反映了詞語的靈敏度。IDF是一個詞語普遍重要性的度量,反映了詞語的特異度[13]。某一特定詞語的IDF,可以由總文件數(shù)目除以包含該詞語的文件的數(shù)目,再將得到的商取對數(shù)得到。某一特定文件內(nèi)的高詞語頻率,以及該詞語在整個文件集合中的低文件頻率,可以產(chǎn)生出高權(quán)重的TF-IDF,它傾向于保留文檔中較為特別的詞語,過濾常用詞[14]。
TF-IDF數(shù)學(xué)模型:W=TF*IDF=(i/m)*log(N/n)
其中,i指某個字詞在某一文件中出現(xiàn)的次數(shù),m指該文件的總詞數(shù),N指語料庫的文件總數(shù),n指包含某字詞的文件總數(shù)。
病例庫記錄了疾病及其對應(yīng)的癥狀在一段時間內(nèi)的分布情況,利用TF-IDF文本挖掘算法對病例庫進(jìn)行挖掘,目的就是找出每一種疾病中各個癥狀所占的權(quán)重分布。不僅考慮癥狀在某種疾病的所有癥狀中所占的比重大小,同時還要考慮在病例庫的所有疾病中這一癥狀對這種疾病的辨別能力。因此,將病例庫中的疾病、癥狀與文本語料庫中的文件、字詞形成正確合理的映射關(guān)系則顯得尤為重要。映射關(guān)系是否合理直接決定了后期的實驗效果,圖1、圖2分別展示了改進(jìn)前和改進(jìn)后的病例庫語料庫映射圖。
圖1 基于原始TF-IDF模型的病例語料庫映射關(guān)系
圖2 基于改進(jìn)的病例語料庫映射關(guān)系
下面分別從IDF、TF的角度論證了改進(jìn)后模型的病例語料庫映射關(guān)系要優(yōu)于基于原始TF-IDF模型的病例語料庫映射關(guān)系。
(1)從IDF角度考慮
圖1中,改進(jìn)前考慮將每個癥狀映射為一個字詞,將每條病例映射為一個文件。假如某個癥狀只在某個疾病中出現(xiàn)較頻繁(n較大),說明該癥狀對該疾病有很高的權(quán)重。但在計算IDF時,n越大,IDF越小,說明該癥狀權(quán)重越小,這與實際情況不符。簡單舉例如下:一共有1000條病例,其中感冒有800條,在800條感冒病例中發(fā)熱出現(xiàn)790次(也即790條病例包含發(fā)熱,若某病例中出現(xiàn)某癥狀,則該病例與該癥狀是一對一的關(guān)系)。根據(jù)上文提出的TF-IDF數(shù)學(xué)模型計算IDF(感冒,發(fā)熱)=log(1000/790)數(shù)值很小,不能很好地反應(yīng)發(fā)熱在感冒中應(yīng)該賦予很高權(quán)重這一實際情況。
圖2中,改進(jìn)后將同種疾病的所有病例作為一個整體映射為一個文件,每條病例映射為一個詞。根據(jù)上述例子,將800條感冒病例映射為一個文件,IDF=log(1000/1),則能很好的反應(yīng)發(fā)熱在區(qū)分感冒時所作的貢獻(xiàn)。
(2)從TF角度考慮
圖1中,一條病例映射為一個文件,這條病例只記錄了各種癥狀一次,那么各癥狀的TF相同都為1/m,這種情況明顯不能區(qū)別各癥狀的重要性。另外,針對同一疾病不同的病例記錄,同一癥狀會得出不同的TF,因為同種疾病的不同病例,病人表現(xiàn)出來的癥狀個數(shù)m不同。實際上,在同一病例庫中,某癥狀針對某疾病的TT是確定唯一的,某疾病的某癥狀不可能有不同的TF,這里也可以推出假設(shè)與實際是相矛盾的。
圖2中,將病例庫的同種疾病的所有病例映射為一個文件,則一種疾病對應(yīng)一個主題文件,每個癥狀也就只有確定唯一的TF。另一方面,由于同種疾病的不同病例,病人表現(xiàn)出來的癥狀不完全相同,則統(tǒng)計每個癥狀出現(xiàn)次數(shù)i是不同的,又由于該種疾病的總病例數(shù)m是確定不變的(假設(shè)在統(tǒng)計期間病例庫不更新)。那么癥狀出現(xiàn)次數(shù)多的,i值就越大,TF就越大,說明該癥狀對比其他癥狀在該疾病中有更高的權(quán)重。
根據(jù)前面的論述分析,主要進(jìn)行了兩方面的改進(jìn)。一個是詞語映射的改進(jìn),由原來的一個癥狀映射為一個詞語,改為一條病例映射為一個詞語,用表示癥狀出現(xiàn)次數(shù)。另一個是文件映射的改進(jìn),由原來的一條病例映射為一個文件,改為將同種疾病歸類后映射為一個文件,用M表示每種疾病的病例數(shù)。由此提出改進(jìn)的MAPTF-IDF詞頻統(tǒng)計模型:
其中M指每種疾病的病例數(shù)。It指某一癥狀在此種疾病中是否出現(xiàn),取值為0或者1,即在具體某一條病例中,患者出現(xiàn)了該癥狀I(lǐng)1=1,否則統(tǒng)計的是在M條病例中,該癥狀出現(xiàn)的次數(shù)總和。N指病例庫中疾病種數(shù),n指出現(xiàn)某癥狀的疾病種數(shù)。由上述統(tǒng)計模型可知,求解某種疾病的某個癥狀的權(quán)重W,先統(tǒng)計包含該癥狀的病例數(shù),再除以這種疾病的總病例數(shù)M就得到MAPTF,而IDF則由病例庫總疾病種數(shù)N除以包含該癥狀的疾病種數(shù)n再取對數(shù)計算得出。如下實例是對該模型的進(jìn)一步闡述。
例1:詳細(xì)描述病例庫與語料庫的映射關(guān)系圖
如圖3,同種疾病的所有病例作為一個整體映射為一個文件,統(tǒng)計下圖病例庫含有黃疸、虛勞、水腫、中風(fēng)等4種疾病,左邊對應(yīng)4種疾病的映射文檔。每條病例映射為一個字詞,對應(yīng)左邊文檔中的一行,如右邊病例庫第3條水腫,它對應(yīng)左邊第二個文檔的第一行。
分析對比原TF-IDF模型病例庫,可知原模型并沒有對病歷記錄按照疾病種類進(jìn)行歸類統(tǒng)計,而是直接在初始病例庫上進(jìn)行計算,原模型的病例庫如圖4所示。
圖3 基于MAPT F-IDF的歸類病例庫映射圖
圖4 基于TF-IDF的非歸類病例庫圖
具體預(yù)處理過程:
第一步:規(guī)范癥狀表
不同的臨床醫(yī)生收集的病情資料表述極不一致,命名規(guī)則、術(shù)語表達(dá)的不同容易產(chǎn)生問題數(shù)據(jù)[15],無法進(jìn)行量化分析,因此需要在實驗開始階段對疾病癥狀等命名進(jìn)行規(guī)范[16]。疾病癥狀表來源于成都中醫(yī)藥大學(xué)附屬醫(yī)院的針灸循證臨床診療決策支持系統(tǒng)[17-18],其中各種疾病的癥狀大約有1000多種。經(jīng)過篩選、校對、規(guī)范得到676種癥狀。
第二步:規(guī)范病例表
在臨床醫(yī)生錄入病例過程中,由于個人經(jīng)驗不同造成病情癥狀描述不統(tǒng)一,可能的誤操作造成很多空數(shù)據(jù)等問題。另一方面,從實驗科學(xué)性與準(zhǔn)確性的角度出發(fā)[19],這里選取病例數(shù)大于10的疾病進(jìn)行試驗。對篩選后的2178條病例先規(guī)范描述,再根據(jù)一定的空值處理原則進(jìn)行空值處理。
第三步:建立符合算法要求的疾病癥狀表
由于數(shù)據(jù)表是文本格式,不利于特征權(quán)重算法MAPTF-IDF統(tǒng)計數(shù)據(jù)。首先,根據(jù)676種癥狀建立疾病癥狀新表,該表的字段名依次為病例號、疾病名、676種癥狀無序排列。然后,逐條提取2178條病例的癥狀與新表的各個癥狀進(jìn)行匹配,如果病例癥狀在新表的癥狀字段有出現(xiàn),則將該病歷號、疾病名插入到新表中,同時在對應(yīng)的癥狀列數(shù)值處標(biāo)記為1。最終形成符合算法要求的01格式的970條病例數(shù)據(jù)表。表1、表2分別是原始疾病癥狀表和規(guī)范疾病癥狀表:
圖5 數(shù)據(jù)預(yù)處理流程
表1 原始疾病癥狀表
表2 規(guī)范疾病癥狀表
算法 基于改進(jìn)的MAPTF-IDF詞頻統(tǒng)計算法
輸入:疾病癥狀數(shù)k;疾病種數(shù)N
輸出:疾病癥狀的權(quán)重W
例2:詳細(xì)描述基于改進(jìn)的MAPTF-IDF詞頻統(tǒng)計模型算法在表2所給數(shù)據(jù)集上的計算過程,同時給出原模型TF結(jié)果計算表。
(2)計算IDF,IDF=log(N/n)。其中N指病例庫中疾病種數(shù),n指出現(xiàn)某癥狀的疾病種數(shù)。
圖6 基于改進(jìn)的MAPT F-IDF算法流程圖
表3 癥狀權(quán)重結(jié)果表
表4 原模型TF結(jié)果表
從表4看出,針對黃疸這種疾病,浮腫癥狀在3條病例中的TF值分別為1/3、1/2、1/3,這就出現(xiàn)了同種疾病同種癥狀有不同癥狀頻率的矛盾,這也是對前面從TF角度考慮論證的一個舉例補(bǔ)充說明。綜合分析,使用歸類的改進(jìn)MAPTF-IDF詞頻統(tǒng)計模型能達(dá)到更好的實驗效果。
實驗統(tǒng)計分析了霍亂、厥證、痹證、淋證、哮喘、失眠、咳嗽、便秘、瘧疾、痢疾、中風(fēng)、中暑、水腫、黃疸、虛勞等106種疾病,與臨床診療經(jīng)驗相符合的有84種,準(zhǔn)確率達(dá)79.2%。20.8%的實驗結(jié)果與實際不符,主要表現(xiàn)在3方面:(1)疾病癥狀權(quán)重分布表中某些疾病的顯著特征癥狀被遺漏;(2)疾病癥狀權(quán)重表中出現(xiàn)某些罕見癥狀;(3)極少數(shù)癥狀權(quán)重排序與臨床實踐結(jié)果不符。仔細(xì)分析原始數(shù)據(jù),數(shù)據(jù)預(yù)處理過程以及算法實現(xiàn)過程,發(fā)現(xiàn)原始數(shù)據(jù)仍存在命名不規(guī)范、病例記錄不清楚、癥狀表述有歧義等問題,在數(shù)據(jù)預(yù)處理過程中,病例記錄中的癥狀與規(guī)范癥狀匹配精度不夠高。針對上述一些列問題,規(guī)范原始數(shù)據(jù),優(yōu)化數(shù)據(jù)預(yù)處理過程仍是下階段的研究重點。
原始TF-IDF模型與改進(jìn)的MAPTF-IDF統(tǒng)計模型試驗結(jié)果對比如表5所示。
表5 試驗結(jié)果對比表
實驗表明:改進(jìn)后的MAPTF-IDF詞頻統(tǒng)計模型要優(yōu)于原始模型,利用改進(jìn)后的模型對病例庫進(jìn)行統(tǒng)計分析,挖掘出的疾病癥狀權(quán)重具有很高的準(zhǔn)確率。
評價診斷試驗的科學(xué)性主要看其靈敏度和特異度[20],如果按每種疾病單獨統(tǒng)計,沒有考慮如何在疾病之間鑒別,根據(jù)這些癥狀權(quán)重把病人歸入某種疾病。這樣指定的診斷標(biāo)準(zhǔn)[21]雖有很好的敏感度,但特異度很低,因而誤診率就很高[21]。例如胡立勝用Delphi法[22]建立的抑郁癥常見中醫(yī)癥候診斷標(biāo)準(zhǔn)中,其中“情緒抑郁”一癥,多數(shù)專家認(rèn)為在各疾病辨證中都很重要,按照百分權(quán)重法統(tǒng)計,結(jié)果情緒抑郁在各疾病的診斷中權(quán)重都很大。而實際上如果一個癥狀在各個疾病中都很重要,那就意味著它沒有鑒別意義,特異性差,不應(yīng)該有很大的權(quán)重。把各疾病中都很常見的癥狀賦予很大的權(quán)重,而事實上這些癥狀對辨別疾病并沒有什么貢獻(xiàn)。
采用MAPTF-IDF文本挖掘算法來計算疾病癥狀的權(quán)重[23],MAPTF代表癥狀在疾病中出現(xiàn)的頻率,反映了靈敏度,IDF代表癥狀在各個疾病中出現(xiàn)的頻率,反映了特異度。癥狀權(quán)重由兩者共同決定,既能反映癥狀的靈敏度同時也考慮了癥狀的特異度,因此是一種比較科學(xué)的方法[24]。
由于不同主治醫(yī)生對癥狀和疾病名稱的描述不同,導(dǎo)致不規(guī)范數(shù)據(jù)產(chǎn)生,在一定程度上影響了癥狀對于疾病重要程度研究的效果[25]。另一方面,由于規(guī)范后的疾病癥狀表中同時處理的癥狀約676種,而實際疾病的常見癥狀遠(yuǎn)少于這個數(shù)字,導(dǎo)致計算效率不高。如果能在實驗進(jìn)行之前先對數(shù)據(jù)進(jìn)行降維操作,可以極大提高運算效率,這一問題仍需要下一階段的工作來完成。
致射:感謝成都市科技計劃項目(12DXYB100JH-002);成都信息工程學(xué)院中青年學(xué)術(shù)帶頭人科研基金(J201208,J201101);成都信息工程學(xué)院引進(jìn)人才項目KYTZ201110,KYTZ201111)對本文的資助
[1] 王天芳,李洪娟.關(guān)于改進(jìn)中醫(yī)診斷學(xué)“問診”內(nèi)容與方法的思考[J].中醫(yī)教育,2004,(1):52-54.
[2] 魏睦新,胡平.再探中醫(yī)科學(xué)性[J].當(dāng)代醫(yī)學(xué),2009,(6):141-142.
[3] 李晶,杜彩鳳.中醫(yī)診斷學(xué)臨證思維訓(xùn)練模式初探[J].中醫(yī)教育,2011,(1):31-33.
[4] 酈永平,溫淑云.中醫(yī)證候量化研究的理論探討[J].中醫(yī)雜志,2008,(8):677-679.
[5] 由松.中醫(yī)癥狀及證候的量化方法探討[J].北京中醫(yī)藥大學(xué)學(xué)報,2002,(2):13-15.
[6] 郭小青,韓麗萍.中醫(yī)癥狀診斷的意義探析[J].中醫(yī)藥學(xué)刊,2004,(9):1758-1759.
[7] 施聰鶯,徐朝軍,楊曉江.TFIDF算法研究綜述[J].計算機(jī)應(yīng)用,2009,(S1):167-170.
[8] 羅欣,夏德麟,晏蒲柳.基于詞頻差異的特征選取及改進(jìn)的TF-IDF公式[J].計算機(jī)應(yīng)用,2005,(9):2031-2033.
[9] 張保富,施化吉,馬素琴.基于TFIDF文本特征加權(quán)方法的改進(jìn)研究[J].計算機(jī)應(yīng)用與軟件,2011,(2):17-20.
[10] 徐鳳亞,羅振聲.文本自動分類中特征權(quán)重算法的改進(jìn)研究[J].計算機(jī)工程與應(yīng)用,2005,(1):181-184.
[11] 景麗萍,黃厚寬,石洪波.用于文本挖掘的特征選擇方法TFIDF及其改進(jìn)[J].廣西師范大學(xué)學(xué)報(自然科學(xué)版),2003,(1):142-145.
[12] 姜遠(yuǎn),周志華.基于詞頻分類器集成的文本分類方法[J].計算機(jī)研究與發(fā)展,2006,(10):1681-1687.
[13] 徐文海,溫有奎.一種基于TFIDF方法的中文關(guān)鍵詞抽取算法[J].情報理論與實踐,2008,(2):298-302.
[14] 張玉芳,彭時名,呂佳.基于文本分類TFIDF方法的改進(jìn)與應(yīng)用[J].計算機(jī)工程,2006,(19):76-78.
[15] 殷鑫,李惠芹.中醫(yī)診斷學(xué)癥狀規(guī)范化的研究[J].陜西中醫(yī)學(xué)院學(xué)報,2007,(6):7-8.
[16] 張學(xué)虹,鄒圣容,蔣永光.中醫(yī)癥狀規(guī)范研究中的問題及解決思路[J].中國民族民間醫(yī)藥,2009,(21):46-47.
[17] 任玉蘭,曾芳,趙凌,等.研制針灸臨床循證診療決策支持系統(tǒng)的思考[J].針刺研究,2009,(5):349-352.
[18] 任玉蘭,梁繁榮,吳曦,等.基于數(shù)據(jù)挖掘的針灸臨床循證決策支持系統(tǒng)研究[J].中華中醫(yī)藥雜志,2011,(4):795-797.
[19] 黃碧群.中醫(yī)癥狀標(biāo)準(zhǔn)化的必要性[J].中華中醫(yī)藥雜志,2011,(3):429-432.
[20] 薛飛飛,陳家旭.數(shù)據(jù)挖掘在中醫(yī)診斷學(xué)中的應(yīng)用[J].中醫(yī)雜志,2009,(3):200-202.
[21] 朱海峰,陳雪功.中醫(yī)診斷客觀化研究的現(xiàn)狀和展望[J].甘肅中醫(yī),2007,(6):10-13.
[22] 吳崇勝,陳家旭,胡立勝.Delphi法建立中醫(yī)證候診斷標(biāo)準(zhǔn)中權(quán)重系數(shù)確定法新探——雙百分法[J].中國中醫(yī)基礎(chǔ)醫(yī)學(xué)雜志,2006,(4):254-255.
[23] 劉里,何中市.基于關(guān)鍵詞語的文本特征選擇及權(quán)重計算方案[J].計算機(jī)工程與設(shè)計,2006,(6):934-936.
[24] 鄭淑美,胡立勝,李友林,等.淺談中醫(yī)癥狀量化的運用[J].中國中醫(yī)藥信息雜志,2008,(6):89-90.
[25] 閆麗芳.試論中醫(yī)癥狀的規(guī)范[J].世界中西醫(yī)結(jié)合雜志,2008,(7):427-428.