葉輝 姬東鴻
摘要:目的 結(jié)合自然語(yǔ)言處理方法,研究可以有效抽取中醫(yī)古籍中所含癥狀和藥物文本實(shí)體信息的方法。方法 以《金匱要略》為例,采用條件隨機(jī)場(chǎng)(CRF)算法,先將文本進(jìn)行分詞處理,然后以詞性、基于鍵值對(duì)的中醫(yī)診斷標(biāo)記集作為輔助特征,通過(guò)癥狀-藥物BIO標(biāo)簽為訓(xùn)練特征來(lái)訓(xùn)練出模型,然后利用該模型對(duì)測(cè)試集文本進(jìn)行自動(dòng)標(biāo)簽標(biāo)注。結(jié)果 基于多特征CRF自動(dòng)標(biāo)注的結(jié)果準(zhǔn)確率達(dá)到84.5%,召回率達(dá)到70.9%,F(xiàn)測(cè)度值達(dá)到77.1%。結(jié)論 運(yùn)用CRF方法加入詞性、中醫(yī)診斷標(biāo)記集特征集進(jìn)行訓(xùn)練得出的多特征模型,能有效提高CRF算法對(duì)中醫(yī)古籍的實(shí)體抽取能力,生成的模型可用來(lái)自動(dòng)化抽取中醫(yī)古籍文本的癥狀藥物實(shí)體信息。
關(guān)鍵詞:條件隨機(jī)場(chǎng);《金匱要略》;癥狀藥物信息抽??;中醫(yī)古籍
中圖分類(lèi)號(hào):R222.3 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):2095-5707(2016)05-0014-04
Research on Symptom and Medicine Information Abstraction of TCM Book Jin Gui Yao Lue Based on Conditional Random Field
YE Hui1, JI Dong-hong2
(1. Guangzhou Chinese Medicine University, Guangzhou Guangdong 510006, China; 2. Wuhan University, Wuhan Hubei 430007, China)
Abstract: Objective To find an efficient way to abstract symptoms and medicine information from TCM book Jin Gui Yao Lue through combination of natural language processing method. Methods Taking Jin Gui Yao Lue as an example and by using conditional random fields (CRF), texts were processed according to words, and then part of speech and key assignments based on TCM diagnosis marker group were set as auxiliary features. Symptom-medicine BIO labels were set as the training features to train the model. Then this model was used to conduct automatic labeling to tested texts. Results The accuracy rate of automatic labeling based on multi-feature CRF was 84.5%, recall rate 70.9%, F measure value 77.1%. Conclusion The multi-feature model trained through CRF combined with part of speech and TCM diagnosis marker group can successfully improve abstraction entity information ability from ancient TCM books. The model can be used to automatically abstract symptom and medicine entity information from ancient TCM books.
Key words: conditional random fields (CRF); Jin Gui Yao Lue; symptom and medicine information abstraction; ancient TCM books
基金項(xiàng)目:2014廣東省中醫(yī)藥局建設(shè)中醫(yī)藥強(qiáng)省科研課題(20141073);廣東財(cái)政專(zhuān)項(xiàng)(2013170)
第一作者:葉輝,講師,研究方向?yàn)獒t(yī)學(xué)信息學(xué)。E-mail: yehui@gzucm.edu.cn
中國(guó)醫(yī)學(xué)存在大量的醫(yī)藥病案和古籍,如《傷寒論》《金匱要略》等中醫(yī)藥經(jīng)典。后人通過(guò)閱讀理解這些經(jīng)典,能夠?qū)W習(xí)名醫(yī)的經(jīng)典藥方和治療思路,甚至可以挖掘在古籍中的藥物信息,通過(guò)現(xiàn)代技術(shù)的藥物提純提煉,找出治療某種疾病的特效藥物。但由于中醫(yī)藥術(shù)語(yǔ)一直缺乏標(biāo)準(zhǔn),古籍中的古文又偏澀難懂,科研人員想要獲取古籍中的癥狀和藥物信息比較費(fèi)時(shí),因此研究利用計(jì)算機(jī)自然語(yǔ)言處理中的算法高效地自動(dòng)識(shí)別古籍里的中醫(yī)藥治療信息具有實(shí)際的應(yīng)用價(jià)值。
目前,醫(yī)學(xué)實(shí)體識(shí)別的方法主要有基于字典、基于規(guī)則和基于機(jī)器學(xué)習(xí)的方法[1],而基于機(jī)器學(xué)習(xí)的方法是主流。例如基于隱馬爾可夫模型、決策樹(shù)、支持向量機(jī)、最大熵、隨機(jī)條件場(chǎng)等方法等,這些方法把詞性、詞形等特征融入到機(jī)器學(xué)習(xí)模型中,利用訓(xùn)練得到的學(xué)習(xí)模型從生物醫(yī)學(xué)文本集合中識(shí)別出指定類(lèi)型的名稱(chēng)。
2001年,條件隨機(jī)場(chǎng)(conditional random fields, CRF)由美國(guó)Lafferty等人提出[2],結(jié)合了最大熵模型和隱馬爾可夫模型的特點(diǎn),是一種無(wú)向圖模型,近年來(lái)在分詞、詞性標(biāo)注和命名實(shí)體識(shí)別等序列標(biāo)注任務(wù)中取得了很好的效果,該模型的特性表明它非常適用于醫(yī)學(xué)領(lǐng)域的命名實(shí)體識(shí)別研究。有鑒于此,本文采用CRF算法對(duì)中醫(yī)古籍《金匱要略》的醫(yī)學(xué)癥狀和藥物實(shí)體識(shí)別進(jìn)行研究。
1 研究方法
在自然語(yǔ)言處理領(lǐng)域中,CRF模型可以使用字、詞、詞性等上下文特征,也可以引用詞典等外部特征,即可以將任意相關(guān)知識(shí)源融入文本特征中,解決了序列標(biāo)注和文本切分的問(wèn)題,且在英文序列標(biāo)記名詞短語(yǔ)識(shí)別等方面取得了較好效果。CRF最常用的結(jié)構(gòu)為線(xiàn)性鏈,可以有效克服隱馬爾可夫模型假設(shè)條件的限制及最大熵模型標(biāo)記偏執(zhí)的問(wèn)題。
一般采用CRF做醫(yī)學(xué)術(shù)語(yǔ)抽取包括特征選取、參數(shù)估計(jì)和結(jié)果標(biāo)注3個(gè)步驟,首先選擇相關(guān)特征,然后利用所選特征對(duì)數(shù)據(jù)進(jìn)行訓(xùn)練,得出特征函數(shù)權(quán)重參數(shù),最后通過(guò)輸入測(cè)試數(shù)據(jù),使用訓(xùn)練好的模型對(duì)文本進(jìn)行序列標(biāo)記,完成醫(yī)學(xué)命名實(shí)體識(shí)別。
1.1 數(shù)據(jù)準(zhǔn)備與分詞
CRF的訓(xùn)練和測(cè)試選用了CRF++工具包來(lái)實(shí)現(xiàn),CRF++工具包是一個(gè)可用于分詞、連續(xù)數(shù)據(jù)標(biāo)注的簡(jiǎn)單、可定制的開(kāi)源的條件隨機(jī)場(chǎng)工具。首先要對(duì)《金匱要略》文本進(jìn)行語(yǔ)料預(yù)處理和標(biāo)注,然,后將其標(biāo)注的語(yǔ)料分為2個(gè)部分,70%的部分作為訓(xùn)練語(yǔ)料,30%的部分作為測(cè)試語(yǔ)料。利用CRF訓(xùn)練測(cè)試的步驟概括如圖1。
《金匱要略》全書(shū)共25篇,方劑262首,列舉內(nèi)外科病癥60余種。由于年代久遠(yuǎn),古文意思較為難懂,又兼具通假字較多,所以首先要進(jìn)行必要的數(shù)據(jù)清洗,如古文中的“之乎者也”不影響上下文醫(yī)學(xué)表達(dá)的詞都去掉。分詞處理使用中國(guó)科學(xué)院計(jì)算技術(shù)研究所開(kāi)發(fā)的ICTCLAS 2015分詞工具,此版本比過(guò)往版本對(duì)中文分詞處理更加完善。但由于分詞系統(tǒng)沒(méi)有經(jīng)過(guò)大量古文的自然語(yǔ)言方面的優(yōu)化,所以分出來(lái)的詞匯偏向以單字的形式出現(xiàn)比較多。最后本文采用書(shū)中前1~22篇的文本清洗后的分詞結(jié)果共15 525詞條作為實(shí)驗(yàn)數(shù)據(jù)集。
1.2 多特征選擇
術(shù)語(yǔ)識(shí)別中可以利用的特征有很多,根據(jù)不同的文本和識(shí)別任務(wù)可以引入不同的特征,如字符、拼音、詞性、詞邊界、各類(lèi)命名實(shí)體列表、引導(dǎo)信息和頻次統(tǒng)計(jì)及語(yǔ)法依賴(lài)關(guān)系和句子傾向性等,不同的特征對(duì)術(shù)語(yǔ)識(shí)別有不同的影響[3]。同時(shí),特征數(shù)的增加對(duì)抽取效果的改善有積極作用。根據(jù)《金匱要略》的文本特征,本實(shí)驗(yàn)選用以下3個(gè)特征。
特征1:詞性。詞性是中文文本處理中常用的一項(xiàng)特征,詞性特征指當(dāng)前字符的詞性,本研究釆用ICTCLAS2015的二級(jí)標(biāo)注對(duì)語(yǔ)料庫(kù)的詞條進(jìn)行自動(dòng)詞性標(biāo)注,如:“極寒傷經(jīng)”被系統(tǒng)標(biāo)注為“極/d寒/a傷/v經(jīng)/n”,其中d、a、v、n分別代表該詞詞性為副詞、形容詞、動(dòng)詞、名詞。
特征2:采用鍵值對(duì)模型的中醫(yī)診斷標(biāo)記集進(jìn)行診斷標(biāo)注。王國(guó)龍等[4]發(fā)現(xiàn),使用基于鍵值對(duì)模型的中醫(yī)診斷標(biāo)記集標(biāo)注的中醫(yī)古文在基于詞匯聯(lián)系的隱馬爾可夫模型測(cè)試中得到比較好的結(jié)果,因此本文參考鍵值對(duì)模型的中醫(yī)診斷標(biāo)記集作為輔助特征引入到實(shí)驗(yàn)中。其中剔去時(shí)機(jī)、屬性、附加描述這幾個(gè)標(biāo)記,簡(jiǎn)化后的鍵值對(duì)模型的中醫(yī)診斷標(biāo)記如表1。
特征3:癥狀-藥物類(lèi)別標(biāo)簽。該特征作為術(shù)語(yǔ)識(shí)別過(guò)程中的狀態(tài)值特征。中醫(yī)癥狀一般包括主癥、舌象及脈象、部位、部位表征描述等信息,藥物包括方劑和治法。本文通過(guò)總結(jié)中醫(yī)對(duì)癥狀和藥物的處理方式,形成表2的標(biāo)記集。在識(shí)別類(lèi)別的基礎(chǔ)上采用“BIO”法標(biāo)記[5],其中B(beginning)表示術(shù)語(yǔ)的首字符,I(intermediate)表示術(shù)語(yǔ)的非首字符和結(jié)束字符,O(outside)表示非術(shù)語(yǔ)字符。由于中醫(yī)診斷中對(duì)于脈象比較關(guān)注,因此在癥狀-脈象中特別標(biāo)簽了癥狀-脈類(lèi)和癥狀-脈象,以提取其中的脈診知識(shí)。另外對(duì)癥狀也進(jìn)行了標(biāo)簽處理。
1.3 語(yǔ)料訓(xùn)練與測(cè)試
應(yīng)用CRF++要求事先指定一種功能模板。本文根據(jù)《金匱要略》文本特點(diǎn)設(shè)定一個(gè)特征模板,該模板用于描述訓(xùn)練文本和測(cè)試文本中的特征,進(jìn)而提取訓(xùn)練集中的特征參數(shù)來(lái)實(shí)現(xiàn)測(cè)試文本標(biāo)簽的計(jì)算。模板文件中的每一行表示一個(gè)子模版,表達(dá)方式為:%X[row, col],一個(gè)子模板表示輸入數(shù)據(jù)的一個(gè)Token。本文設(shè)計(jì)將相鄰位置的特征進(jìn)行聯(lián)合,有助于識(shí)別錯(cuò)分詞或長(zhǎng)距離詞。本實(shí)驗(yàn)1和2選擇模板窗口的大小為前后兩行[-2,+2]。
利用CRF++train訓(xùn)練工具,按照表3的訓(xùn)練集格式進(jìn)行訓(xùn)練得出模型文件model,然后再利用CRF++test工具將該模型應(yīng)用到測(cè)試集中去,最后得出帶有癥狀-藥物自動(dòng)標(biāo)簽的測(cè)試集。
1.4 實(shí)驗(yàn)設(shè)計(jì)
本文設(shè)計(jì)了2組實(shí)驗(yàn),通過(guò)對(duì)照組與實(shí)驗(yàn)組的對(duì)比,測(cè)試采用不同特征的基于CRF的《金匱要略》癥狀-藥物識(shí)別的性能及不同特征對(duì)性能的影響情況。實(shí)驗(yàn)1是單一特征對(duì)照實(shí)驗(yàn),僅選用詞本身、癥狀-藥物標(biāo)記(參見(jiàn)表2)進(jìn)行實(shí)驗(yàn)作為基準(zhǔn)。實(shí)驗(yàn)2選用詞、詞性、簡(jiǎn)化的中醫(yī)診斷標(biāo)記集(參見(jiàn)表1),癥狀-方劑-藥物標(biāo)記(參見(jiàn)表2)的多特征進(jìn)行實(shí)驗(yàn),然后對(duì)以上2組實(shí)驗(yàn)的結(jié)果用conlleval工具進(jìn)行測(cè)評(píng),分析多特征對(duì)實(shí)驗(yàn)識(shí)別效能的影響。
1.5 評(píng)價(jià)標(biāo)準(zhǔn)
基于CRF的中醫(yī)專(zhuān)業(yè)術(shù)語(yǔ)識(shí)別性能的評(píng)估采用3個(gè)指標(biāo):準(zhǔn)確率(precision, P)、召回率(recall, R)和F測(cè)度值(F-Measure)。P指抽取的信息中正確抽取的比例;R指正確抽取的信息占應(yīng)抽取信息的比例;F測(cè)度值即為正確率和召回率的調(diào)和平均值。其中F測(cè)度值能比較合理地反映該信息抽取的有效程度。
2 結(jié)果與分析
實(shí)驗(yàn)組1為實(shí)驗(yàn)的基準(zhǔn),采用單一特征的CRF方法,得到抽取詞組準(zhǔn)確率P為72.0%,召回率R為55.3%,F(xiàn)測(cè)度值為62.5%;而實(shí)驗(yàn)組2引入多特征,再采用CRF處理后,得到抽取詞組準(zhǔn)確率P為
84.5%,召回率R為70.9%,F(xiàn)測(cè)度值為77.1%。見(jiàn)表4。單一特征進(jìn)行分詞和癥狀藥物BIO標(biāo)簽訓(xùn)練的F測(cè)度值比較低,而運(yùn)用了分詞、詞性、中醫(yī)診斷簡(jiǎn)化標(biāo)記和癥狀藥物BIO多特征標(biāo)簽后,F(xiàn)測(cè)度值結(jié)果升高到77.1%,說(shuō)明引入該組合特征模型的識(shí)別效能較優(yōu)??梢?jiàn)對(duì)于中醫(yī)古籍的實(shí)體信息抽取,采用診斷標(biāo)記和語(yǔ)言學(xué)規(guī)則(如詞性、分詞等)相結(jié)合的多特征模型,可令CRF抽取信息效果提高。
3 小結(jié)
本文主要通過(guò)CRF工具對(duì)《金匱要略》進(jìn)行癥狀-藥物信息提取,首先經(jīng)過(guò)分詞處理語(yǔ)料,然后加入詞性、中醫(yī)診斷標(biāo)記等多個(gè)標(biāo)注特征對(duì)中醫(yī)癥狀-藥物BIO標(biāo)簽進(jìn)行訓(xùn)練和測(cè)試,得到F測(cè)度值77.1%,比只運(yùn)用單一特征的CRF抽取的結(jié)果效率更高,可見(jiàn)利用本文提出的多特征模型的CRF提取方法對(duì)中醫(yī)古籍的信息抽取有良好的效果。通過(guò)對(duì)《金匱要略》等中醫(yī)古籍的信息抽取研究,為將來(lái)建立中醫(yī)藥搜索引擎及新藥物發(fā)掘等方面提供了一種可行的方法。
參考文獻(xiàn)
[1] 馬瑞民,馬民艷.基于CRFs的多策略生物醫(yī)學(xué)命名實(shí)體識(shí)別[J].齊齊哈爾大學(xué)學(xué)報(bào),2011,27(1):39-42.
[2] LAFFERTY JD, MCCALLUM A, PEREIRA FCN. Conditional Random Fields: Probabilistic Models for Segmenting and Labeling Sequence Data[C]//The 18th International Conference on Machine Learning. San Francisco: Morgan Kaufmann Publishers Inc. ,2001:282-289.
[3] 孟洪宇.基于條件隨機(jī)場(chǎng)的《傷寒論》中醫(yī)術(shù)語(yǔ)自動(dòng)識(shí)別研究[D].北京:北京中醫(yī)藥大學(xué),2014:33-34
[4] 王國(guó)龍,杜建強(qiáng),郝竹林,等.中醫(yī)診斷古文的詞性標(biāo)注與特征重組[J].計(jì)算機(jī)工程與設(shè)計(jì),2015,36(3):836-841.
[5] 魏尊強(qiáng),舒紅平,王亞強(qiáng).基于序列標(biāo)注的中醫(yī)癥狀名識(shí)別技術(shù)研究[J].山東工業(yè)技術(shù),2015(8):237-238.
(收稿日期:2016-06-08)
(修回日期:2016-08-08;編輯:魏民)
中國(guó)中醫(yī)藥圖書(shū)情報(bào)2016年5期