王明令 紀(jì)懷猛 吳春瓊
摘要:從大量中文病歷文獻(xiàn)中提取出重要的疾病主題,對(duì)醫(yī)療工作者學(xué)習(xí)和科研是非常重要的。為了更方便的提取出主題,本文提出結(jié)合中文分詞技術(shù)與FP-Growth算法的一種方法模型。該模型可以在大量中文病歷文獻(xiàn)中,首先將病歷文獻(xiàn)劃分為若干關(guān)鍵詞組成的項(xiàng)目集文檔,再使用FP-Growth算法,計(jì)算關(guān)鍵詞的頻繁項(xiàng)集,并生成病理字典,最后提取出文本的疾病主題。
關(guān)鍵詞:文本挖掘;中文病歷;主題提取;FP-Growth
中圖分類號(hào):TP391 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1007-9416(2019)05-0074-02
0 引言
在醫(yī)學(xué)領(lǐng)域中,通過(guò)查閱病人的病歷,醫(yī)療工作者可以獲取到他們所需的信息,但大部分病歷都是以較為零散的自然語(yǔ)言來(lái)書寫。醫(yī)務(wù)工作者不得不采取人工閱讀及手工摘抄的方式查閱病歷。利用人工智能技術(shù)結(jié)合自然語(yǔ)言來(lái)對(duì)病歷文獻(xiàn)進(jìn)行檢索和提取,是疾病診療研究的的一個(gè)重要的研究方向。
1 病歷書寫現(xiàn)狀與文本提取難點(diǎn)
現(xiàn)有醫(yī)療文本挖掘研究主要采用國(guó)外的醫(yī)療數(shù)據(jù)庫(kù),如學(xué)者傅博泉[1]采用生物信息學(xué)資源庫(kù)NCBI下的子數(shù)據(jù)庫(kù)PubMed和基因-疾病關(guān)聯(lián)信息數(shù)據(jù)庫(kù)OMIM等進(jìn)行文本挖掘,又如學(xué)者陸維嘉[2]采用大型生物醫(yī)學(xué)語(yǔ)料庫(kù)MEDLINE進(jìn)行文本挖掘等。字母文字更適合文本挖掘,如學(xué)者余傳明[3]等所研究的多任務(wù)深度學(xué)習(xí)模型就對(duì)英文語(yǔ)種有更好的識(shí)別。
許多國(guó)內(nèi)學(xué)者已對(duì)于文本文獻(xiàn)的主題提取進(jìn)行了深入的研究。如學(xué)者焦紅[4]等以圖書情報(bào)(ISLS)領(lǐng)域的粗糙集研究方向?yàn)槔R(shí)別其核心文獻(xiàn),同時(shí)基于向量空間模型對(duì)核心文獻(xiàn)進(jìn)行補(bǔ)充,并提取主題。學(xué)者呂皓[5]等利用隱含狄利克雷分布(LDA)對(duì)中國(guó)工程科技2035的11個(gè)不同領(lǐng)域進(jìn)行話題分析,將對(duì)應(yīng)的技術(shù)項(xiàng)文本投影到二維平面上,實(shí)現(xiàn)技術(shù)預(yù)見(jiàn)下技術(shù)項(xiàng)目的話題分布挖掘。學(xué)者段玉婷[6]利用兩家不同的醫(yī)學(xué)專業(yè)期刊在2012-2017年載文為數(shù)據(jù)來(lái)源,提取主題頻繁項(xiàng),發(fā)現(xiàn)醫(yī)學(xué)信息的研究熱點(diǎn)。
中文病歷是一種篇幅較短的文本,而且其詞頻統(tǒng)計(jì)較為離散,常規(guī)的詞頻統(tǒng)計(jì)方法不足以提取并量化這些詞。采用關(guān)聯(lián)規(guī)則算法處理未知的文本數(shù)據(jù)時(shí),能很好地匹配文本表述與語(yǔ)義之間的正確關(guān)聯(lián),尤其是關(guān)聯(lián)規(guī)則頻繁項(xiàng)集的算法在并行處理大數(shù)據(jù)集時(shí)分析能力較好,而只遍歷數(shù)據(jù)集2遍的FP-Growth算法可以規(guī)避Apriori算法生成過(guò)多的候選集的缺點(diǎn),提高算法的運(yùn)算效率。
2 疾病主題提取
2.1 文本提取框架
大部分中文病歷,沒(méi)有明顯的標(biāo)題、關(guān)鍵字、摘要等,其主要包括:主訴、既往病史、查體、檢查結(jié)果、綜上的診斷等部分。如表1病歷文本所示。
病歷文本符合一定的規(guī)律。例句,對(duì)一次中風(fēng)主訴的病歷描述文本為:左側(cè)肢體無(wú)力兩天突發(fā)。
根據(jù)中科院計(jì)算所的ICTCLAS(漢語(yǔ)分詞系統(tǒng),Institute of Computing Technology Chinese Lexical Analysis System)對(duì)例句進(jìn)行分詞處理,得到:左側(cè)/肢體/無(wú)力/兩天/突發(fā)。
例句的分詞處理結(jié)果與結(jié)構(gòu)如表2所示。
經(jīng)由分詞處理后的文本,提煉出若干關(guān)鍵詞。其中與病理體征相關(guān)的是位置、器官的描述文本;與診斷結(jié)果相關(guān)的是器官、癥狀的描述文本;程度相關(guān)的是時(shí)間、發(fā)展的快慢的描述文本。
2.2 文本提取模型
病歷文本經(jīng)由分詞劃分之后,形成由若干關(guān)鍵詞集合。經(jīng)過(guò)建立疾病名稱字典、關(guān)鍵詞匹配、累計(jì)關(guān)鍵詞頻繁項(xiàng)、病理字典構(gòu)建等幾個(gè)過(guò)程進(jìn)行文本挖掘和自動(dòng)提取,如圖1所示。
(1)標(biāo)準(zhǔn)疾病名稱字典。通過(guò)增加疾病名稱別名字段,擴(kuò)大關(guān)鍵詞搜索與匹配的范圍。字典庫(kù)應(yīng)包含一級(jí)疾病類目、疾病代碼、疾病名稱、別名、二級(jí)疾病名稱等條目字段。(2)建立關(guān)鍵詞集合。分詞后形成離散關(guān)鍵詞集合。部分中文停用詞,如“了”、“的”、“已”、“與”等,應(yīng)從集合中剔除。(3)關(guān)鍵詞詞頻累計(jì)。經(jīng)由分詞與剔除處理之后,進(jìn)行鍵詞詞頻處理。關(guān)鍵詞根據(jù)其特點(diǎn),可以分為醫(yī)學(xué)性名詞、描述性名詞、數(shù)值參數(shù)、病理描述性形容詞等。(4)病理字典構(gòu)建。根據(jù)關(guān)鍵詞集合和詞頻,構(gòu)建出疾病病理字典。(5)疾病主題提取。依據(jù)關(guān)鍵詞頻繁項(xiàng)的關(guān)聯(lián)規(guī)則分析,在海量文本中使用FP-Growth算法自動(dòng)提取出疾病的主題。
3 FP-Growth關(guān)聯(lián)規(guī)則的主題提取過(guò)程
FP-Growth是對(duì)頻繁項(xiàng)集的挖掘來(lái)產(chǎn)生候選項(xiàng)集,經(jīng)過(guò)構(gòu)建FP-tree、從FP-tree中挖掘頻繁項(xiàng)集兩個(gè)過(guò)程。疾病主題的自動(dòng)提取過(guò)程如圖2所示。
在數(shù)據(jù)預(yù)處理過(guò)程中,有些數(shù)值化參數(shù)——如“血糖達(dá)20”等,F(xiàn)P-Growth算法對(duì)數(shù)值化的參數(shù)無(wú)法進(jìn)行頻繁項(xiàng)掃描。因此在對(duì)這些數(shù)值化的參數(shù),本文采用Spss modeler的“離散化”節(jié)點(diǎn),進(jìn)行區(qū)間劃分,完成數(shù)據(jù)的離散化。
FP-Growth算法在構(gòu)建FP-tree時(shí)采用深度優(yōu)先的處理,遞歸地進(jìn)行頻繁項(xiàng)集挖掘。通常分4步:
(1)掃描數(shù)據(jù)集。掃描數(shù)據(jù)集,列出所有頻繁項(xiàng)大于1的項(xiàng)目集。(2)項(xiàng)目集頻數(shù)分析。根據(jù)項(xiàng)目出現(xiàn)的頻率,定義最小支持度,由大到小對(duì)數(shù)據(jù)進(jìn)行降序排序。刪除出現(xiàn)的次數(shù)少于最小支持度的、不重要的項(xiàng)目。(3)二次掃描。刪除不滿足最小支持度的項(xiàng)目后,根據(jù)項(xiàng)目出現(xiàn)的頻率,再次由大到小對(duì)數(shù)據(jù)進(jìn)行降序排序。(4)建立FP-tree。對(duì)排序后的數(shù)據(jù)從上往下,依次添加構(gòu)造FP-tree,遞歸調(diào)用FP-tree樹(shù)結(jié)構(gòu),繼續(xù)刪除小于最小支持度的項(xiàng)目,直到生成一條單一路徑。在算法的過(guò)程中,不需生成候選項(xiàng)集。
4 仿真實(shí)驗(yàn)分析
本文的研究所使用的數(shù)據(jù)來(lái)自福州某醫(yī)院神經(jīng)內(nèi)科的200份中文病歷文本,樣本病歷符合中文病歷書寫的一般主體、內(nèi)容和風(fēng)格。通過(guò)分詞處理后的病歷文本,順利地形成了關(guān)鍵詞的集合,運(yùn)用FP-Growth算法對(duì)其進(jìn)行疾病主題提取的效果較好。提取結(jié)果經(jīng)由醫(yī)生人工檢測(cè),證明有較高的準(zhǔn)確性。
5 結(jié)語(yǔ)
在醫(yī)療事業(yè)的開(kāi)展過(guò)程中,產(chǎn)生了大量的病歷文本數(shù)據(jù)。這些病歷文本大多采用自然語(yǔ)言書寫,數(shù)量龐大,沒(méi)有標(biāo)準(zhǔn)化的數(shù)據(jù)結(jié)構(gòu),不利于機(jī)器學(xué)習(xí)對(duì)其進(jìn)行文本挖掘。本文提出結(jié)合分詞技術(shù)產(chǎn)生病歷文本關(guān)鍵詞集合,再使用關(guān)聯(lián)規(guī)則的FP-Growth算法進(jìn)行疾病主題自動(dòng)提取的方法模型。實(shí)驗(yàn)結(jié)果證明該模型有一定的效率與正確性。實(shí)驗(yàn)的不足在于病歷數(shù)據(jù)的樣本有限,需要進(jìn)一步擴(kuò)大病例數(shù)據(jù)庫(kù)。另外,后續(xù)對(duì)病歷文本進(jìn)行基因-疾病數(shù)據(jù)挖掘時(shí),F(xiàn)P-Growth算法必然會(huì)顯示出FP-tree構(gòu)建過(guò)大的缺點(diǎn),這是需要進(jìn)一步改進(jìn)的問(wèn)題。
參考文獻(xiàn)
[1] 傅博泉.基于文本挖掘的基因—疾病關(guān)聯(lián)關(guān)系研究[D].華南理工大學(xué),2016.
[2] 陸維嘉.關(guān)聯(lián)規(guī)則挖掘結(jié)合PSO的基因-疾病關(guān)系自動(dòng)提取方法[J].湘潭大學(xué)自然科學(xué)學(xué)報(bào),2016,38(03):64-68.
[3] 余傳明,李浩男,安璐.基于多任務(wù)深度學(xué)習(xí)的文本情感原因分析[J].廣西師范大學(xué)學(xué)報(bào)(自然科學(xué)版),2019(01):50-61.
[4] 焦紅,李秀霞.基于研究主題的學(xué)科領(lǐng)域知識(shí)演化路徑識(shí)別——以圖書情報(bào)領(lǐng)域粗糙集為例[J].情報(bào)理論與實(shí)踐,2019(01):1-11.
[5] 呂皓,周曉紀(jì).基于主題模型的技術(shù)預(yù)見(jiàn)文本分析[J].情報(bào)探索,2018(10):52-59.
[6] 段玉婷.基于聚類分析挖掘國(guó)內(nèi)醫(yī)學(xué)信息學(xué)研究熱點(diǎn)[J].科技經(jīng)濟(jì)導(dǎo)刊,2018(03):34+32.