何天榮
(麗江師范高等??茖W校 教師教育學院,云南 麗江 674199)
粗糙集理論[1]是1種能有效處理模糊和不確定性知識的數(shù)學工具,在醫(yī)療診斷的應用中有很多成功案例[4-5].隨著研究熱潮的不斷掀起,對粗糙集的研究無論是在理論方面還是在實踐應用研究方面都取得了豐碩的成果,擴展型粗糙集模型的研究也取得很好的成果.將模糊集和粗糙集的有效整合用來處理不確定性問題比用它們各自處理取得更理想的效果[2-3].粗糙集理論在醫(yī)療診斷的應用中有很好成功案例[4-5].文中通過引入醫(yī)生診斷病人是否患流感的決策表[6]:決策表中的條件屬性為病人的臨床癥狀(通過屬性約簡剔除了不重要的條件屬性即癥狀“是否肌肉痛”,留下對決策屬性有參考價值的條件屬性,即癥狀“是否頭痛”和“體溫”狀況,決策屬性為是否患流感.利用決策表,最想要得到的是決策規(guī)則的產(chǎn)生,決策規(guī)則是醫(yī)生臨床診斷病情的依據(jù).無論使用什么樣的決策規(guī)則產(chǎn)生方法,都會產(chǎn)生2種決策規(guī)則:確定性規(guī)則和不確定性規(guī)則,對于確定性規(guī)則,沒有任何爭議,以本文決策規(guī)則為例,要么確定病人患流感,要么確定病人沒有患流感,其可能性都是100%;但對于不確定性規(guī)則,其不確定性到底有多大是值得研究和改進的,本文通過以元素個數(shù)確定的決策規(guī)則的確定性因子的計算[6],得出由這個方法產(chǎn)生決策規(guī)則中,不確定性規(guī)則對醫(yī)生的臨床診斷沒有任何參考作用,原因在于有同樣臨床癥狀的病人患流感和不患流感的規(guī)則確定性因子完全相同且都是0.5,這說明這些患者患流感和不患流感的可能性都是50%,這對醫(yī)生診斷病癥沒有任何參考作用,將在后面的例子中詳細闡述.為了改進這一不足,引入了由大量歷史數(shù)據(jù)確定的附帶支持數(shù)的決策表[7],由大量的歷史數(shù)據(jù)確定的決策表,支持數(shù)是醫(yī)生臨床經(jīng)驗的總結(jié),客觀實際,同時它產(chǎn)生的不確定規(guī)則的確定性因子是不同的,根據(jù)規(guī)則確定性因子,在相同癥狀下可以確定病人是患流感的可能性更大還是不患流感的可能性更大.因此,改進的決策方法產(chǎn)生的決策規(guī)則中的不確定性規(guī)則對醫(yī)生診斷病情同樣有很好的參考價值.這樣典型案列同樣可以推廣到其他病癥的診斷上:比如可以把決策表中的條件屬性“頭痛”和“體溫”改成“腰椎酸痛”和“小腹墜脹”就可以用同樣的方法診斷女性病人是否患“盆腔炎”;將條件屬性改成“頭痛”和“鼻塞”診斷病人是否患“鼻炎”等等,當然這些支持這些病癥的條件屬性的重要性需要嚴格探討.
對2種規(guī)則確定性因子進行對比后得到由支持數(shù)所確定的決策規(guī)則對醫(yī)生診斷病人更具體有參考價值.
P上的一族劃分稱為關(guān)于P的1個知識庫.
定義2[6]設R是P上的1個等價關(guān)系,稱為不可分辨關(guān)系,?(x,y)∈P×P,若(x,y)∈R,則稱x和y關(guān)于R不可分辨.P/R表示R的所有等價類(即P上的劃分)構(gòu)成的集合,記為[x]R,表示包含元素x∈P的R的等價類.1個知識庫就是1個關(guān)系系統(tǒng)K=(P,R),其中P為非空有限集合,稱為論域,R是P上的等價關(guān)系.
決策表[6]是一類特殊而重要的知識表達系統(tǒng),假設S=(P,A,V,f)是1個知識表達系統(tǒng),A=C∪D,C∩D=φ,A為屬性集,要求A非空.其中,C為條件屬性集,D為決策屬性集.我們稱具有條件屬性和決策屬性的知識表達系統(tǒng)為決策表.
借助決策表,最想要得到的是決策規(guī)則的產(chǎn)生,決策規(guī)則是進行決策的依據(jù).在還沒產(chǎn)生決策規(guī)則之前,可以先對決策表中的條件屬性進行知識約簡[8-10],決策表中的有些條件屬性是不重要的,可以通過屬性約簡的方法把冗余的條件屬性去掉,這樣可以得到對決策有重要參考價值的條件屬性.但是,即使是重要的條件屬性,他們的重要性也并非同等的重要.可以通過計算屬性依賴度來確定條件屬性的重要程度,即哪個條件屬性對決策的參考作用更大,關(guān)于條件屬性的重要性,將在另文中討論.
下面將以醫(yī)生診斷病人是否患流感的決策表(這里的條件屬性是通過知識約簡了的,對決策屬性是有重要參考價值的,只要是對決策屬性有參考作用的條件屬性無論重要性多大都需要考慮)闡述決策規(guī)則產(chǎn)生的2種方法,并對2種方法進行對比,得出由由元素個數(shù)確定的決策規(guī)則中的不確定性規(guī)則對醫(yī)生診斷病情沒有任何參考作用,由支持數(shù)確定的決策規(guī)則更具有科學性,對醫(yī)生診斷病情更具有參考作用.
通過醫(yī)生根據(jù)條件屬性“頭痛”和“體溫”診斷病人是否得“流感”(決策屬性)的決策表說明由元素個數(shù)確定的決策規(guī)則的產(chǎn)生及確定性因子的算法.
例1 某些病人的決策表(如表1所示),運用文獻[6]確立性因子算法產(chǎn)生決策規(guī)則.
表1 流感決策表
S=(P,A,V,f)為一決策表,P為有限非空論域,且P={P1,P2,P3,P4,P5,P6,P7,P8},
A表示屬性集,包括條件屬性和決策屬性,A=C∪D,C∩D=φ,C為條件屬性集,C={頭痛,體溫},其中,C1={頭痛}},C2={體溫}.
令集合Mi和Nj分別代表P/C和P/D中的各個等價類,des(Mi)表示對等價類Mi的描述,表示等價類Mi對各條件屬性值的特定取值;des(Nj)表示對等價類Nj的描述,表示等價類Nj對各條件屬性值的特定取值.
所得結(jié)論是,當規(guī)則確定性因子μ(Mi,Nj)=1時,決策規(guī)則rij是確定的,對決策有確定的參考價值;當0<μ(Mi,Mj)<1時,決策規(guī)則rij是不確定的,不確定性的大小由確定性因子的值決定.
由表1可得:P/C1={{P1,P2,P3},{P4,P5,P6,P7,P8}},P/C2={{P1,P4},{P2,P5,P7},{P3,P6,P8}},P/indC={{P1},{P2},{P3},{P4},{P5,P7},{P6,P8}},令P/C={M1,M2,M3,M4,M5,M6},則M1={P1},M2={P2},M3={P3},M4={P4},M5={P5,P7},M6={P6,P8}.Mi,i=1,2,…6表示具有相同條件屬性的病人.
令P/D={N1,N2},則N1={P2,P3,P6,P7}表示患流感的病人,N2={P1,P4,P5,P8}表示不患流感的病人.
根據(jù)規(guī)則的確定方法,可以得到確定性的規(guī)則有以下4條.
r12:(頭痛,是)且(體溫,正常)→(流感,否),可以根據(jù)規(guī)則確定性因子的算法證明;
r21:(頭痛,是)且(體溫,高)→(流感,是);
r31:(頭痛,是)且(體溫,很高)→(流感,是);
r42:(頭痛,否)且(體溫,正常)→(流感,否).
不確定性規(guī)則有也有如下4條.
r51:(頭痛,否)且(體溫,高)→(流感,是),規(guī)則的確定性因子是0.5.可以根據(jù)規(guī)則確定性因子的算法證明如下.
r52:(頭痛,否)且(體溫,高)→(流感,否),規(guī)則的確定性因子是0.5,表示在病人沒有感覺頭痛但體溫高(發(fā)燒)的癥狀下診斷為沒患流感的可能性是50%;
r61:(頭痛,否)且(體溫,很高)→(流感,是),規(guī)則的確定性因子是0.5.表示在病人沒有感覺頭痛但體溫很高(高燒)的癥狀下診斷為患流感的可能性是50%;
r62:(頭痛,否)且(體溫,很高)→(流感,否),規(guī)則的確定性因子是0.5.表示的是在病人沒有感覺頭痛但體溫很高(高燒)的癥狀下診斷為沒患流感的可能性是50%.
從上述由元素個數(shù)所決定的決策規(guī)則的確定性因子的確定方法可以看出,得到4條確定性規(guī)則,在病人“頭痛但體溫正?!奔啊邦^不痛且體溫正?!钡陌Y狀下,可以100%確定病人沒有患流感;在病人“頭痛且體溫高”及“頭痛且體溫很高”的癥狀下,可以100%確定病人患流感,所以,對于確定性規(guī)則對醫(yī)生的參考價值是沒有爭議的.但是,對于不確定規(guī)則,可以看到4條不確定規(guī)則的確定性因子都是0.5:在r51與r52這2條規(guī)則中,條件屬性完全相同,而決策屬性卻是2種完全相反的結(jié)論,且2種完全相反結(jié)論的可能性完全相同.即“頭不痛,體溫高”的癥狀(條件屬性)下既可以診斷為“流感”又可以診斷為“不是流感”,每1種可能性都是50%;規(guī)則r61與規(guī)則r62也是同樣的道理:在病人“沒有頭痛但體溫很高”的癥狀(條件屬性)之下,診斷為“流感”的可能性是50%,診斷為“不是流感”的可能性也是50%.即不確定規(guī)則中同樣的條件屬性下得到的兩種完全相反的決策屬性的可能性恰好是一半的可能性.由此可見,這樣的方法確定的決策規(guī)則,確定性的決策規(guī)則是毫無疑問的,但不確定性的規(guī)則對醫(yī)生診斷病癥是沒有任何參考價值的,原因在于不確定性規(guī)則的確定性因子均為0.5.
為了改進這一不足,接下來引入1種附帶支持數(shù)的決策表,通過支持數(shù)來改進規(guī)則的確定因子的算法,在這種算法下,不確定規(guī)則的確定性因子的值明顯不相同,從而便于醫(yī)生診斷病癥時參考.表中支持數(shù)是由大量的歷史數(shù)據(jù)(臨床經(jīng)驗)確定出來的,客觀實際.
例2 附帶支持數(shù)[7]的決策表(如表2所示),運用改進的規(guī)則確定性因子算法產(chǎn)生決策規(guī)則.
表2 附帶支持數(shù)的流感決策表
類似于例1,令集合Mi和Nj分別代表P/C和P/D中的各個等價類,des(Mi)表示對等價類Mi的描述,表示等價類Mi對各條件屬性值的特定取值;des(Nj)表示對等價類Nj的描述,表示等價類Nj對各條件屬性值的特定取值.
由表2可得與例1同樣的等價類:P/C1={{P1,P2,P3},{P4,P5,P6,P7,P8}},P/C2={{P1,P4},{P2,P5,P7},{P3,P6,P8}}P/indC={{P1},{P2},{P3},{P4},{P5,P7},{P6,P8}},
令P/C={M1,M2,M3,M4,M5,M6},其中,M1={p1},M2={p2},M3={p3},M4={p4},M5={p5,p7},M6={p6,p8};令P/D={N1,N2},其中,N1={p2,p3,p6,p7},N2={p1,p4,p5,p8}.
決策規(guī)則定義為:rij:des(Mi)→des(Nj),Mi∩Nj≠φ,同樣,產(chǎn)生決策規(guī)則的前提是集合Mi與Nj的交集非空,目的是為了確保規(guī)則確定性因子ν(Mi,Nj)>0.
通過這樣的算法,可以得到與例1完全相同的4條確定性規(guī)則.
r12:(頭痛,是)且(體溫,正常)→(流感,否);
r21:(頭痛,是)且(體溫,高)→(流感,是);
r31:(頭痛,是)且(體溫,很高)→(流感,是);
r42:(頭痛,否)且(體溫,正常)→(流感,否).
這里證明規(guī)則r21,其余規(guī)則可類似證明.
不確定性規(guī)則有也有4條,鑒于本算法比由元素個數(shù)確定的確定性因子的算法的優(yōu)越性在于不確定性規(guī)則對醫(yī)生更有參考價值,對4條不確定性規(guī)則都作詳細證明:
r51:(頭痛,否)且(體溫,高)→(流感,是),規(guī)則的確定性因子是0.958.事實上,
表示在病人沒有感覺頭痛但體溫高(發(fā)燒)的癥狀下診斷為“流感”的可能性是95.8%.
r52:(頭痛,否)且(體溫,高)→(流感,否),規(guī)則的確定性因子是0.042.事實上,
表示在病人沒有感覺頭痛但體溫高(發(fā)燒)的癥狀下診斷為“沒患流感”的可能性是4.2%.
r61:(頭痛,否)且(體溫,很高)→(流感,是),規(guī)則的確定性因子是0.979.事實上,
表示在病人沒有感覺頭痛但體溫很高(高燒)的癥狀下診斷為“患流感”的可能性是97.9%.
r62:(頭痛,否)且(體溫,很高)→(流感,否),規(guī)則的確定性因子是0.021.事實上,
表示在病人感覺頭不痛但體溫很高(高燒)的癥狀下診斷為“沒患流感”的可能性是2.1%.
由上述改進的規(guī)則確定性因子的算法,首先同樣可以得到類似于例1的4條確定性規(guī)則,4條不確定性規(guī)則,這說明這個卻則確定性因子的算法是合理的.對于確定性規(guī)則,不再贅述.改進的算法的決策規(guī)則的優(yōu)越性在于不確定規(guī)則的確定因子不相同,即在同樣的條件屬性下2種相反結(jié)論的確定性因子明顯不同,例如:規(guī)則r51和規(guī)則r52中,在“頭不痛且體溫高”的癥狀(條件屬性)下診斷為“流感”(決策屬性)的可能性是0.958,不是流感的可能性是0.042,說明在這樣的癥狀下,病人有大約95.8%的可能性是患流感了,只有約4.2%的可能性是沒患流感;同理,在規(guī)則r61與規(guī)則r62中,具有相同的條件屬性“頭不痛且體溫很高”的條件下診斷為患“流感”的可能性大概是0.979而“沒患流感”的可能性大概只有0.021,說明在這樣的癥狀(條件屬性)下診斷為“流感”的可能性約為97.9%,診斷為“沒患流感”的可能性約為2.1%.同時可以看出,“體溫很高”比“體溫高”患流感的可能性更大.由此可以看出,“體溫”是醫(yī)生診斷病人是否“患流感”的一個很重要的臨床參考依據(jù),即在診斷病人是否患“流感”的條件屬性中,“體溫”最重要,其次才是“頭痛”,這與由屬性依賴度確定條件屬性重要性所得的結(jié)論是完全吻合的,具體結(jié)論可以參看文獻[2].由此可見,改進的決策規(guī)則方法,客觀科學,無論是確定性規(guī)則還是不確定性規(guī)則,對醫(yī)生診斷病癥都有很好的參考價值.
在粗糙集理論的決策表中,最重要的是決策規(guī)則的產(chǎn)生,決策性規(guī)則的產(chǎn)生關(guān)鍵在于決策規(guī)則確定性因子的算法.由等價類元素個數(shù)所確定的決策規(guī)則的確定性因子的算法,得出的結(jié)論是該方法產(chǎn)生的確定性規(guī)則對醫(yī)生臨床診斷病情有參考價值,但不確定性規(guī)則對醫(yī)生的臨床診斷病情沒有任何參考價值,原因在于這種方法所產(chǎn)生的不確定性規(guī)則的確定性因子完全相同且都等于0.5,即在同樣的條件屬性下,得到2種截然不同的決策屬性的可能性都是50%.為了改進這一不足,引入了由大量歷史數(shù)據(jù)確定的附帶支持數(shù)的決策表,改進決策規(guī)則確定性因子的算法,新的方法可以產(chǎn)生同樣條數(shù)的確定性規(guī)則和不確定性規(guī)則,但是不確定性規(guī)則的確定性因子明顯不同,即在同樣的條件屬性下得到的截然不同的決策屬性的可能性是不同的且差異很大,醫(yī)生完全可以根據(jù)規(guī)則確定性因子確定在病人發(fā)燒或者高燒的癥狀下極大的可能是“患流感”.因此,改進的方法產(chǎn)生的決策規(guī)則更科學,對醫(yī)生尤其是缺乏臨床經(jīng)驗的年輕醫(yī)生診斷病情有很好的參考價值.