趙明珍,程亮喜,林鴻飛
(大連理工大學(xué),計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院,遼寧 大連 郵編116024)
續(xù)有
?
基于評(píng)論挖掘的藥物副作用發(fā)現(xiàn)機(jī)制
趙明珍,程亮喜,林鴻飛
(大連理工大學(xué),計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院,遼寧 大連 郵編116024)
從醫(yī)療社交網(wǎng)站的用戶評(píng)論中挖掘藥物副作用時(shí),由于人們可能采用不同的表述方式來(lái)描述副作用,而新藥的上市與用藥者的差異性也會(huì)造成新的副作用出現(xiàn),因此從評(píng)論中識(shí)別新的副作用名稱并進(jìn)行標(biāo)準(zhǔn)化十分重要。該文利用條件隨機(jī)場(chǎng)模型識(shí)別評(píng)論中的副作用,對(duì)識(shí)別出的副作用名稱進(jìn)行標(biāo)準(zhǔn)化,最后得到藥物的副作用。通過(guò)將挖掘出的藥物已知的副作用與數(shù)據(jù)庫(kù)記錄進(jìn)行對(duì)比驗(yàn)證了本文方法的有效性,同時(shí)得到一個(gè)按評(píng)論中的發(fā)生頻率排序的藥物潛在副作用列表。實(shí)驗(yàn)結(jié)果顯示,條件隨機(jī)場(chǎng)模型可以識(shí)別出已知的與新的副作用名稱,而標(biāo)準(zhǔn)化技術(shù)將副作用名稱進(jìn)行聚合與歸并,有利于藥物副作用的發(fā)現(xiàn)。
藥物副作用;用戶評(píng)論;文本挖掘;實(shí)體標(biāo)準(zhǔn)化
隨著Web 2.0技術(shù)的發(fā)展,互聯(lián)網(wǎng)上出現(xiàn)了社區(qū)、論壇、博客、微博、Wiki等各種形式的用戶生成內(nèi)容(User-Generated Content,UGC),它們極大地豐富了網(wǎng)絡(luò),并扮演著越來(lái)越重要的角色,這其中包括用戶對(duì)藥物的評(píng)論。另一方面,藥物副作用(Adverse Drug Reaction, ADR)帶來(lái)的危害越來(lái)越大,由它引起的病患占據(jù)所有醫(yī)院病患的5%,藥物副作用已成為導(dǎo)致醫(yī)院死亡的第五大原因[1]。藥物副作用逐漸成為醫(yī)學(xué)界和民眾關(guān)注的熱點(diǎn),如何判斷和預(yù)測(cè)藥物的副作用具有重大的理論和實(shí)用價(jià)值。近年來(lái)互聯(lián)網(wǎng)上出現(xiàn)的醫(yī)療健康類的社交網(wǎng)站與論壇積聚了大量來(lái)自用戶的用藥體驗(yàn)與評(píng)論,其中蘊(yùn)含的最新副作用信息日益受到人們的重視,并逐漸形成從用戶評(píng)論中挖掘藥物副作用的研究方向。
Leaman等人[2]通過(guò)計(jì)算滑動(dòng)窗口中的評(píng)論內(nèi)容與詞典中副作用名稱之間的相似度進(jìn)行實(shí)體識(shí)別,對(duì)識(shí)別出的副作用名稱進(jìn)行過(guò)濾后挖掘藥物的副作用,在人工標(biāo)注的數(shù)據(jù)集上識(shí)別的F值為73.9%。Chee等人[3]利用用戶對(duì)藥物的評(píng)論信息評(píng)估藥物的安全性。由于正負(fù)例數(shù)量不均衡,他們采用Bootstrapping方法增加正例,并融合多個(gè)分類器對(duì)藥物進(jìn)行分類,預(yù)測(cè)可能將被監(jiān)管或召回的藥物。Nikfarjam等人[4]采用關(guān)聯(lián)規(guī)則從已標(biāo)注的評(píng)論中挖掘副作用口語(yǔ)化表述的潛在模式,并利用這些語(yǔ)言模式從用戶對(duì)藥物的評(píng)論中自動(dòng)抽取副作用,在測(cè)試集上測(cè)試得到的F值為67.96%。Yang等人[1]利用用戶健康詞匯表(Consumer Health Vocabulary, CHV)[5]構(gòu)建了一個(gè)擴(kuò)展的副作用名稱詞典,采用滑動(dòng)窗口從關(guān)于藥物的帖子中識(shí)別副作用名稱,并使用關(guān)聯(lián)規(guī)則挖掘藥物的副作用,對(duì)于五種指定藥物的實(shí)驗(yàn)得到較好的效果。Wu等人[6]提出生成式和判別式兩種方法來(lái)對(duì)文本中的藥物副作用進(jìn)行挖掘,實(shí)驗(yàn)結(jié)果表明網(wǎng)絡(luò)中關(guān)于藥物副作用的討論內(nèi)容可用于未知副作用的監(jiān)測(cè),而生成式模型方法在準(zhǔn)確率與召回率兩方面均比判別式方法更有效。
由于語(yǔ)言表述的自由性與多樣性,人們?cè)诒磉_(dá)同一個(gè)副作用概念時(shí)可能會(huì)采用不同的措辭方式,而新藥的上市以及用藥者的差異性又可能會(huì)導(dǎo)致新的副作用出現(xiàn),故而用戶評(píng)論中會(huì)存在數(shù)據(jù)庫(kù)未收錄的副作用名稱,有的甚至是因拼寫(xiě)錯(cuò)誤而造成的不同。因此從評(píng)論中挖掘藥物的副作用時(shí),識(shí)別新的副作用名稱并將其映射到統(tǒng)一的副作用概念上是十分重要的,否則將無(wú)法發(fā)現(xiàn)一些潛在的副作用,或挖掘出的副作用發(fā)病率與事實(shí)存在偏差。以前的工作在對(duì)藥物副作用進(jìn)行識(shí)別時(shí),或者利用了滑動(dòng)窗口與詞袋模型,或者通過(guò)副作用口語(yǔ)化表述的模式來(lái)識(shí)別,這些方法對(duì)新副作用名稱的識(shí)別效果往往不夠理想;另外他們對(duì)識(shí)別出的新副作用名稱的后續(xù)處理也很有限,影響藥物副作用的發(fā)現(xiàn)。針對(duì)這些方法的不足,本文采用條件隨機(jī)場(chǎng)(Conditional Random Field, CRF)模型識(shí)別副作用名稱,可以有效識(shí)別出已知的以及新的副作用名稱;對(duì)于識(shí)別得到的副作用名稱,我們將其標(biāo)準(zhǔn)化并映射到已知的副作用概念上。
本文從用戶評(píng)論中挖掘藥物副作用的整個(gè)流程分為數(shù)據(jù)準(zhǔn)備、副作用實(shí)體識(shí)別與過(guò)濾、副作用實(shí)體標(biāo)準(zhǔn)化、藥物副作用發(fā)現(xiàn)四個(gè)部分,如圖1所示。我們以DailyStrength網(wǎng)站[7]上用戶對(duì)藥物的評(píng)論作為語(yǔ)料,利用CRF模型識(shí)別出其中的副作用實(shí)體,然后使用本文提出的副作用實(shí)體標(biāo)準(zhǔn)化方法對(duì)識(shí)別出的副作用名稱進(jìn)行標(biāo)準(zhǔn)化,將其映射到統(tǒng)一的副作用概念上,最后統(tǒng)計(jì)每種藥物評(píng)論下副作用概念的發(fā)生頻率進(jìn)而挖掘出藥物的副作用。
圖1 藥物副作用挖掘系統(tǒng)架構(gòu)圖
2.1 數(shù)據(jù)準(zhǔn)備
本文利用SIDER數(shù)據(jù)庫(kù)[8]中的藥物副作用數(shù)據(jù)創(chuàng)建了一個(gè)副作用詞典,其中共包含5 719個(gè)副作用概念。每個(gè)副作用概念擁有一個(gè)統(tǒng)一醫(yī)學(xué)語(yǔ)言系統(tǒng)(Unified Medical Language System, UMLS)的概念編號(hào)CUI (UMLS Concept Id),并由含義相同的一種或多種副作用名稱構(gòu)成。例如,CUI為C0239739的概念有[sore gums, gum pain, gingival pain, gum tenderness] 四種意義相同的副作用名稱。
本文從DailyStrength網(wǎng)站上抓取了SIDER數(shù)據(jù)庫(kù)中存在記錄的870種藥物在2013年3月24日之前的用戶評(píng)論。DailyStrength上的用戶評(píng)論是按藥物分組的,即每個(gè)評(píng)論對(duì)應(yīng)的藥物是確定的,無(wú)需再對(duì)評(píng)論中副作用名稱與藥物的關(guān)聯(lián)關(guān)系進(jìn)行判別。用戶在撰寫(xiě)評(píng)論時(shí)具有一定的隨意性,導(dǎo)致語(yǔ)料中存在一些不規(guī)范的語(yǔ)言現(xiàn)象。為了減少它們對(duì)后續(xù)處理造成的影響,我們對(duì)評(píng)論語(yǔ)料進(jìn)行了一些預(yù)處理:在無(wú)結(jié)束標(biāo)點(diǎn)符號(hào)的評(píng)論語(yǔ)句后面加上表示結(jié)束的句號(hào);修正一些不規(guī)則的寫(xiě)法(如!!! -> !, isnt -> is not, im -> I am, ive -> I have)等。
預(yù)處理之后,對(duì)評(píng)論內(nèi)容進(jìn)行句子劃分,共得到213 466個(gè)不同的句子。從中隨機(jī)抽取一定數(shù)量的句子,采用傳統(tǒng)的{B,I,E,S,O }標(biāo)記方法,標(biāo)注實(shí)體在句子中的起止位置。隨機(jī)抽取并標(biāo)注了1 500個(gè)含有實(shí)體的句子,將其作為實(shí)體識(shí)別的訓(xùn)練集;另外隨機(jī)抽取出500個(gè)句子進(jìn)行標(biāo)注,將其作為實(shí)體識(shí)別的測(cè)試集(這些句子中有的包含實(shí)體,有的不包含,其分布情況與整體語(yǔ)料相同)。從用戶評(píng)論中挖掘藥物副作用這一領(lǐng)域,目前還沒(méi)有一個(gè)權(quán)威、公開(kāi)的標(biāo)注數(shù)據(jù)集可以用來(lái)測(cè)試副作用實(shí)體識(shí)別方法的性能,因此我們利用自己標(biāo)注的數(shù)據(jù)集來(lái)對(duì)本文副作用實(shí)體識(shí)別方法的效果進(jìn)行測(cè)試。
2.2 副作用實(shí)體識(shí)別與過(guò)濾
副作用實(shí)體的識(shí)別涉及從用戶評(píng)論中識(shí)別副作用名稱,本文將副作用實(shí)體識(shí)別歸結(jié)為命名實(shí)體識(shí)別問(wèn)題,而序列標(biāo)注是命名實(shí)體識(shí)別領(lǐng)域常用的方法。CRF作為一種無(wú)向圖模型,常用于序列標(biāo)注和切分序列化數(shù)據(jù)等問(wèn)題。CRF既能克服HMM嚴(yán)格的條件獨(dú)立性的假設(shè),又克服了MEMM的偏置問(wèn)題,可以更加真實(shí)地?cái)M合現(xiàn)實(shí)數(shù)據(jù),所以在命名實(shí)體識(shí)別領(lǐng)域得到廣泛的應(yīng)用。唐旭日等人[9]使用CRF模型識(shí)別中文地名。Settles等人[10]將CRF模型運(yùn)用于生物命名實(shí)體識(shí)別,取得很好的效果。劉凱等人[11]使用CRF模型識(shí)別中醫(yī)臨床病例中的命名實(shí)體,相較于HMM和MEMM,取得了最好的結(jié)果。
鑒于CRF模型在命名實(shí)體識(shí)別領(lǐng)域的出色性能,本文采用CRF模型從用戶評(píng)論語(yǔ)料中識(shí)別副作用實(shí)體,具體使用了開(kāi)源的CRF++ 工具包*http://crfpp.sourceforge.net/。識(shí)別時(shí)利用了詞語(yǔ)的兩類特征:詞語(yǔ)特征與詞性特征,其中詞性特征是使用Stanford POS Tagger工具包[12]中的english-left3words-distsim.tagger 模型對(duì)評(píng)論語(yǔ)句標(biāo)注得到的。在利用CRF模型進(jìn)行識(shí)別時(shí),對(duì)于每個(gè)詞語(yǔ),本文考慮的上下文特征包括當(dāng)前詞語(yǔ)與前兩個(gè)、后兩個(gè)詞語(yǔ)與詞性特征。表1是評(píng)論“very good pain relief but too strong .”中每個(gè)單詞的特征情況,其中“POS”為詞性標(biāo)記,“標(biāo)注”是人工標(biāo)注的結(jié)果。
表1 CRF特征
在訓(xùn)練集上對(duì)CRF模型訓(xùn)練完成后,我們?cè)跍y(cè)試集以及所有的評(píng)論語(yǔ)料上進(jìn)行實(shí)體識(shí)別。我們利用CRF識(shí)別出句子中的所有實(shí)體,但是,這些實(shí)體既包含藥物的副作用也包含藥物的適應(yīng)癥,如表1所示的評(píng)論,說(shuō)明相應(yīng)的藥物緩解了疼痛,即疼痛不是其副作用。因此還需要過(guò)濾掉藥物的適應(yīng)癥。對(duì)于藥物適應(yīng)癥的鑒定,參考Leaman等人[2]的做法并略作改進(jìn),我們根據(jù)實(shí)體所在子句(Clause)是否含有某些特定詞語(yǔ)來(lái)確定其是否是藥物的適應(yīng)癥。適應(yīng)癥實(shí)體所在子句中通常含有ease,work for,help with,relief等表示治療、緩解等意義的詞匯,為此我們收集了這樣一個(gè)指示詞表,并根據(jù)實(shí)體所在子句內(nèi)是否含有這些詞匯確定其為副作用或適應(yīng)癥。此外,為了提高實(shí)體識(shí)別的準(zhǔn)確性,我們還檢測(cè)了子句中的否定詞,并據(jù)此進(jìn)一步濾除非藥物副作用的實(shí)體。
2.3 副作用實(shí)體標(biāo)準(zhǔn)化
在副作用實(shí)體的標(biāo)準(zhǔn)化中,藥物的每種副作用被視為一個(gè)副作用概念,它對(duì)應(yīng)著一種或多種表述形式即副作用實(shí)體。實(shí)體標(biāo)準(zhǔn)化就是通過(guò)一定的手段將實(shí)體映射到對(duì)應(yīng)的標(biāo)準(zhǔn)概念上,一般可分為精確匹配(Exact Matching)和近似匹配(Approximate Matching)兩種方式。在本文中,對(duì)于從評(píng)論里識(shí)別出來(lái)的副作用名稱,若詞典中存在該名稱,則直接通過(guò)精確匹配得到對(duì)應(yīng)的標(biāo)準(zhǔn)化概念;否則進(jìn)行近似匹配,即利用本文所述的近似匹配方法將其映射到標(biāo)準(zhǔn)化概念上,或者該實(shí)體在詞典中無(wú)法找到對(duì)應(yīng)的概念,而可能屬于一種新的副作用概念。
1. 方法流程
對(duì)于一個(gè)待標(biāo)準(zhǔn)化實(shí)體,如果精確匹配成功,則直接得到標(biāo)準(zhǔn)化概念;否則我們通過(guò)近似匹配從副作用詞典中尋找與之最相關(guān)的副作用名稱,并將該名稱對(duì)應(yīng)的概念作為標(biāo)準(zhǔn)化概念。本文的近似匹配部分由三個(gè)模塊組成,這三個(gè)模塊分別基于常規(guī)檢索、 擴(kuò)展語(yǔ)義檢索以及編輯距離進(jìn)行標(biāo)準(zhǔn)化。本文提出的藥物副作用標(biāo)準(zhǔn)化方法的流程如圖2所示。
圖2 藥物副作用名稱標(biāo)準(zhǔn)化方法的流程圖
本文標(biāo)準(zhǔn)化方法的近似匹配部分首先通過(guò)常規(guī)檢索進(jìn)行標(biāo)準(zhǔn)化,若得到的匹配度大于設(shè)定的閾值TH1,則將相應(yīng)的概念作為標(biāo)準(zhǔn)化結(jié)果;否則通過(guò)擴(kuò)展語(yǔ)義檢索進(jìn)行標(biāo)準(zhǔn)化,若得到的匹配度大于設(shè)定的閾值TH2,則將相應(yīng)的概念作為標(biāo)準(zhǔn)化結(jié)果;否則根據(jù)編輯距離進(jìn)行標(biāo)準(zhǔn)化,若得到的最短編輯距離小于設(shè)定的閾值TH3,則將相應(yīng)的概念作為標(biāo)準(zhǔn)化結(jié)果。否則,詞典中沒(méi)有任何概念與當(dāng)前待標(biāo)準(zhǔn)化實(shí)體匹配,該實(shí)體可能屬于一種新的副作用概念。
2. 近似匹配模塊
在本文近似匹配的三個(gè)模塊中,前兩個(gè)模塊利用信息檢索中的TF-IDF思想初步限定候選概念范圍,然后通過(guò)計(jì)算副作用名稱之間的匹配度進(jìn)一步確定標(biāo)準(zhǔn)化概念;第三個(gè)模塊則根據(jù)最短編輯距離尋找最佳的標(biāo)準(zhǔn)化概念。
匹配度函數(shù)模塊1和2利用匹配度函數(shù)MD(Ent,Enti) 計(jì)算待標(biāo)準(zhǔn)化實(shí)體Ent與詞典中某一實(shí)體名稱Enti之間的匹配程度(MatchDegree),其具體的計(jì)算過(guò)程如下:
1)將Ent與Enti進(jìn)行分詞、去停用詞、詞干化處理,分別得到詞袋A和B。2)對(duì)于詞袋A中的每個(gè)單詞am(m=1,2,…,p,p為A中單詞數(shù)),遍歷詞袋B,由如下公式計(jì)算出am與B中每個(gè)單詞bn的字面相似度(LiteralSimilarity)LS(am,bn):LS(am,bn)=2·Ncc/(La+Lb)(1)其中Ncc是am與bn的公共子串長(zhǎng)度,La為am的字符數(shù),Lb為bn的字符數(shù)。若Ncc小于設(shè)定的閾值,則認(rèn)為不具有表征am與bn內(nèi)在相關(guān)性的作用,并且可能會(huì)作為噪音影響計(jì)算結(jié)果,將其置為0。從B的所有單詞與am的字面相似度中找出最大值作為單詞am最終的字面相似度LSm,并將與之匹配的單詞從B中刪除,使之不重復(fù)作為A中其他單詞的最佳匹配。這樣,實(shí)體Ent1與Ent2之間的字面相似度LS為L(zhǎng)S(Ent,Enti)=∑pm=1LSm/(La+|La-Lb|)(2)3)計(jì)算Enti對(duì)應(yīng)的概念Coni涵蓋Ent中單詞的程度WC(WordCoverage)。Coni的全詞袋C=∪Bi(Bi為Con的第i個(gè)實(shí)體對(duì)應(yīng)的詞袋,i=1,2,…,q,q為Con中實(shí)體數(shù)),詞袋A與C之間的相同單詞集合為|A∩C|,則Coni涵蓋Ent中單詞的程度WC(Ent,Enti)=|A∩C|/|A|。(4)Ent與Enti之間的匹配度MDEnt,Enti()=LS(Ent,Enti)+r·WC(Ent,Enti),(r∈[0,1]數(shù))。
模塊1 通過(guò)常規(guī)檢索進(jìn)行標(biāo)準(zhǔn)化
將每個(gè)副作用概念Coni視為一篇文檔,Coni對(duì)應(yīng)的所有副作用名稱作為文檔內(nèi)容,對(duì)該文檔進(jìn)行分詞、去停用詞以及詞干化。將待標(biāo)準(zhǔn)化實(shí)體Ent也看為文檔,并進(jìn)行相同的處理。根據(jù)TF-IDF技術(shù),將每個(gè)副作用概念Coni與待標(biāo)準(zhǔn)化實(shí)體Ent分別表示為向量vi和v,然后利用開(kāi)源搜索引擎框架Indri*http://www.lemurproject.org/indri/計(jì)算Ent與Coni之間的相關(guān)度,其中Indri內(nèi)部使用的是語(yǔ)言模型和貝葉斯推理網(wǎng)絡(luò)相結(jié)合的檢索模型,可以用來(lái)有效地計(jì)算文檔之間的相關(guān)度。從模型的檢索結(jié)果中我們選取TOPN1個(gè)概念作為候選概念,然后利用上述匹配度函數(shù)MD計(jì)算待標(biāo)準(zhǔn)化實(shí)體與候選概念中每種副作用名稱之間的匹配度,并將匹配度最大的名稱對(duì)應(yīng)的概念作為該實(shí)體的標(biāo)準(zhǔn)化概念。若檢索結(jié)果為空,則該模塊的標(biāo)準(zhǔn)化結(jié)果為空。
模塊2 通過(guò)擴(kuò)展語(yǔ)義檢索進(jìn)行標(biāo)準(zhǔn)化
模塊3 根據(jù)編輯距離進(jìn)行標(biāo)準(zhǔn)化
副作用名稱中存在以下現(xiàn)象:① 兩個(gè)詞語(yǔ)的意義相同但拼寫(xiě)卻存在一定差別(如“病毒血癥”的兩種拼寫(xiě)viremia 與 viraemia);② 某一詞語(yǔ)為另一短語(yǔ)的縮寫(xiě)形式(如概念C0079773的副作用名稱有CTCL和cutaneous T cell lymphoma,前者為后者的首字母縮寫(xiě))。待標(biāo)準(zhǔn)化實(shí)體中若含有這些詞語(yǔ),則檢索結(jié)果可能不理想,無(wú)法命中正確的概念。這種情況下我們根據(jù)字符串之間的編輯距離尋找與之最匹配的名稱。
編輯距離(Edit Distance)用來(lái)衡量?jī)蓚€(gè)字符串字面上的相異性。字符串str1和str2之間的編輯距離ED(str1,str2) 是指從str1轉(zhuǎn)換成str2所需要的插入、刪除和替換的最少次數(shù)。對(duì)于待標(biāo)準(zhǔn)化實(shí)體Ent和詞典中的實(shí)體名稱Enti分別進(jìn)行分詞、去停用詞得到詞袋A和B,Ent和Enti之間的實(shí)體編輯距離定義為:
通過(guò)實(shí)體編輯距離得到與待標(biāo)準(zhǔn)化實(shí)體編輯距離最短的副作用名稱,并將其對(duì)應(yīng)的概念作為該實(shí)體的標(biāo)準(zhǔn)化概念。
在計(jì)算兩個(gè)副作用名稱之間編輯距離時(shí),我們考慮了其中某個(gè)詞語(yǔ)為縮寫(xiě)詞的情況。一般來(lái)說(shuō),縮寫(xiě)詞通常為某個(gè)短語(yǔ)的單詞首字母的縮寫(xiě),或單詞中前綴的首字母加上剩余部分首字母的縮寫(xiě)(為此我們收集了一個(gè)英文前綴表)。因此在計(jì)算兩個(gè)短語(yǔ)之間的編輯距離時(shí),若某詞語(yǔ)為另一短語(yǔ)的縮寫(xiě)詞,則該詞語(yǔ)與短語(yǔ)的編輯距離為0。
2.4 藥物副作用發(fā)現(xiàn)
根據(jù)從評(píng)論語(yǔ)料中發(fā)現(xiàn)的所有副作用名稱,并參照標(biāo)準(zhǔn)化結(jié)果,我們得到每種藥物的評(píng)論中出現(xiàn)的副作用概念及包含此概念的評(píng)論所占的比例即發(fā)生頻率。對(duì)于發(fā)現(xiàn)的藥物已知的副作用,我們將其與已有的數(shù)據(jù)進(jìn)行對(duì)比,驗(yàn)證本文挖掘方法的有效性;對(duì)于數(shù)據(jù)庫(kù)中未記錄的藥物副作用,我們按其在評(píng)論中的發(fā)生頻率由高到低排序,得到一個(gè)藥物潛在副作用列表。
3.1 實(shí)體識(shí)別效果測(cè)試
3.1.1 實(shí)體識(shí)別效果測(cè)試
我們?cè)跇?biāo)注好的1 500個(gè)評(píng)論語(yǔ)句上訓(xùn)練CRF模型,然后利用該模型對(duì)測(cè)試集中的500個(gè)評(píng)論語(yǔ)句進(jìn)行副作用實(shí)體識(shí)別,將識(shí)別出的實(shí)體進(jìn)行過(guò)濾后,得到實(shí)體識(shí)別的準(zhǔn)確率為87.5%,召回率為58.7%,F(xiàn)值為70.3%。同樣以DailyStrength上的用戶評(píng)論作為實(shí)驗(yàn)語(yǔ)料,Leaman等人[2]在其使用的人工標(biāo)注的數(shù)據(jù)集上識(shí)別的準(zhǔn)確率為78.3%,召回率為69.9%,F(xiàn)值為73.9%;Nikfarjam等人[4]在其人工標(biāo)注的數(shù)據(jù)集上識(shí)別的準(zhǔn)確率為70.01%,召回率為66.32%,F(xiàn)值為67.96%。文中所用實(shí)驗(yàn)數(shù)據(jù)與Nikfarjam等人所用的數(shù)據(jù)基本相同,都來(lái)自DailyStrength網(wǎng)站的評(píng)論模塊,屬于同源數(shù)據(jù),具有相同的數(shù)據(jù)分布,因此數(shù)據(jù)具有可比性。上述結(jié)果說(shuō)明本文所述的方法可以有效的識(shí)別用戶評(píng)論中的副作用實(shí)體。
對(duì)錯(cuò)誤識(shí)別的樣例進(jìn)行分析,我們發(fā)現(xiàn)CRF模型最主要的錯(cuò)誤是不能識(shí)別由分散的詞語(yǔ)構(gòu)成的實(shí)體,如無(wú)法從“…majorswellinginmyanklesand…”識(shí)別出副作用anklesswelling;另外有一部分錯(cuò)誤是由于識(shí)別出的實(shí)體與標(biāo)準(zhǔn)答案不完全相同造成的,例如generalfeelingofillness與illness、frequentheadaches與headaches等(前者為標(biāo)準(zhǔn)答案,后者為識(shí)別結(jié)果)。
在社交網(wǎng)絡(luò)中,隨意性和表達(dá)多樣性是用戶評(píng)論的重要特性。對(duì)于同一副作用,用戶可以使用多種表達(dá)方式來(lái)描述,這些表達(dá)方式差異性很大。對(duì)于某種表達(dá)方式,如果在訓(xùn)練數(shù)據(jù)集中存在其足夠的信息和特征,CRF模型就可以對(duì)這種表達(dá)方式做出正確的標(biāo)記。如果訓(xùn)練數(shù)據(jù)集中某種表達(dá)方式的信息較少或者出現(xiàn)次數(shù)較少,CRF模型傾向于將其標(biāo)記為普通文本,而不是將其標(biāo)記為錯(cuò)誤的副作用實(shí)體。如文中提到的評(píng)論:“…majorswellinginmyanklesand…”,其包含的副作用名稱為“anklesswelling”,CRF模型并沒(méi)有將其標(biāo)記為“swelling”,而是將其標(biāo)記為普通文本。因此,CRF模型在本文實(shí)驗(yàn)中準(zhǔn)確率較高。
從識(shí)別結(jié)果可以看出,本文方法識(shí)別實(shí)體的準(zhǔn)確率較高,而召回率相對(duì)來(lái)說(shuō)較低,說(shuō)明由本文方法識(shí)別出的副作用實(shí)體大部分是正確的,后續(xù)挖掘出的藥物副作用關(guān)系是可靠的。在未來(lái)工作中,可以考慮向CRF模型中引入更多有效的特征來(lái)提高副作用實(shí)體識(shí)別的性能。
3.1.2 從評(píng)論中識(shí)別副作用實(shí)體
我們從870種藥物的408 318條評(píng)論中識(shí)別實(shí)體并過(guò)濾后,得到了729個(gè)詞典中存在的副作用名稱與3 143個(gè)新的副作用名稱,表2顯示了本文挖掘出的詞典中已有名稱與新名稱的統(tǒng)計(jì)情況(括號(hào)中為對(duì)應(yīng)數(shù)值占總體的百分比),表3顯示了識(shí)別出的出現(xiàn)頻率最高的前10個(gè)新的副作用名稱。從結(jié)果可以看到,利用CRF模型不但識(shí)別出了已知的副作用名稱,而且能夠識(shí)別出潛在的新副作用名稱。由表可知,新名稱出現(xiàn)的總次數(shù)占總體的18.0%,而平均出現(xiàn)次數(shù)相對(duì)于已知名稱卻少得多,說(shuō)明用戶在評(píng)論中使用新的、不同的副作用表述方式是很普遍的,因此進(jìn)行標(biāo)準(zhǔn)化是很有必要的。
3.2 藥物副作用標(biāo)準(zhǔn)化
為了驗(yàn)證提出的標(biāo)準(zhǔn)化方法的有效性,本文首先對(duì)近似匹配模塊標(biāo)準(zhǔn)化的準(zhǔn)確率進(jìn)行了測(cè)試。在測(cè)試時(shí),我們從副作用詞典中隨機(jī)抽取滿足要求(即該副作用名稱在詞典中須有屬于同一概念的其他副作用名稱)的副作用名稱作為待標(biāo)準(zhǔn)化實(shí)體,同時(shí)將該名稱從詞典中刪除,并對(duì)刪除該名稱后的詞典建立索引。利用上述的標(biāo)準(zhǔn)化方法得到該實(shí)體的標(biāo)準(zhǔn)概念,并與正確的標(biāo)準(zhǔn)概念對(duì)比,從而得到標(biāo)準(zhǔn)化的準(zhǔn)確率。在測(cè)試該標(biāo)準(zhǔn)化方法時(shí),我們對(duì)其中的三個(gè)閾值TH1、TH2、TH3調(diào)優(yōu),并將最優(yōu)的閾值用于從評(píng)論中識(shí)別出的藥物副作用的標(biāo)準(zhǔn)化中。
表2 藥物副作用實(shí)體識(shí)別結(jié)果統(tǒng)計(jì)
表3 識(shí)別出的頻率最高的前10個(gè)新的副作用名稱
3.2.1 檢索返回候選概念的數(shù)量
為了合理設(shè)置檢索返回的候選副作用概念的數(shù)量,我們對(duì)500個(gè)待標(biāo)準(zhǔn)化實(shí)體進(jìn)行常規(guī)檢索并統(tǒng)計(jì)返回的前n個(gè)候選概念中包含正確概念的比例,結(jié)果如圖3所示。可以看出隨著返回候選概念數(shù)量的增加,結(jié)果中包含正確概念的比例逐漸變大,當(dāng)返回候選概念數(shù)量n為20時(shí)該比例已達(dá)82.0%;但增速卻逐漸變緩,當(dāng)n為30時(shí)該比例為83.2%,僅增加了1.2%,最終很難達(dá)到理想的100%。造成這種現(xiàn)象的一個(gè)可能原因是有些待標(biāo)準(zhǔn)化實(shí)體為某些生僻詞或縮寫(xiě)詞,索引中幾乎沒(méi)有與其拼寫(xiě)相同詞語(yǔ),從而無(wú)法通過(guò)常規(guī)檢索返回正確的概念。這也是需要利用擴(kuò)展語(yǔ)義檢索與編輯距離進(jìn)行標(biāo)準(zhǔn)化的原因。
圖3 常規(guī)檢索返回的前n個(gè)候選概念中包含正確概念的統(tǒng)計(jì)概率
綜合考慮檢索結(jié)果包含正確概念的比例以及檢索的效率,我們?cè)趯?shí)驗(yàn)中將常規(guī)檢索返回的候選概念數(shù)量N1設(shè)置為25;而擴(kuò)展語(yǔ)義后查詢?cè)~語(yǔ)得到擴(kuò)充,與之相關(guān)的候選概念數(shù)量也會(huì)相應(yīng)地增多,因而我們將擴(kuò)展語(yǔ)義檢索返回的候選概念數(shù)量N2設(shè)置為40。
3.2.2 近似匹配模塊標(biāo)準(zhǔn)化測(cè)試與分析
為了測(cè)試各個(gè)模塊對(duì)標(biāo)準(zhǔn)化準(zhǔn)確率的提升作用,我們分別采用“模塊1”、“模塊2”、“模塊3”、“模塊1+2”、“模塊1+2+3” 五種組合方式對(duì)副作用名稱標(biāo)準(zhǔn)化。每種組合方式進(jìn)行十次實(shí)驗(yàn),每次從詞典的10 498個(gè)副作用名稱中隨機(jī)抽取500個(gè)用于測(cè)試,并根據(jù)標(biāo)準(zhǔn)化結(jié)果計(jì)算其準(zhǔn)確率。標(biāo)準(zhǔn)化方法測(cè)試的結(jié)果如表4所示。
表4 本文標(biāo)準(zhǔn)化方法的測(cè)試結(jié)果
由實(shí)驗(yàn)結(jié)果可以看出,近似匹配模塊單獨(dú)使用時(shí),模塊1的性能最好,模塊3次之,模塊2最差。在模塊1的結(jié)果之上加入模塊2后,標(biāo)準(zhǔn)化的準(zhǔn)確率有了提升,說(shuō)明將待標(biāo)準(zhǔn)化實(shí)體進(jìn)行語(yǔ)義擴(kuò)展,通過(guò)同義詞語(yǔ)尋找正確概念的做法在涉及一些低頻率、生僻詞語(yǔ)時(shí)具有益處。在此基礎(chǔ)上,繼續(xù)添加模塊3后標(biāo)準(zhǔn)化的準(zhǔn)確率進(jìn)一步提升,說(shuō)明副作用名稱中包含一定數(shù)量的縮寫(xiě)詞以及意義相同、詞形相近的詞語(yǔ),此時(shí)根據(jù)編輯距離進(jìn)行匹配具有較好的效果,同時(shí)也是對(duì)前兩個(gè)模塊功能的補(bǔ)充。由此可見(jiàn),本文的匹配度函數(shù)確實(shí)在一定程度上反映了副作用名稱之間的內(nèi)在聯(lián)系,使得大部分待標(biāo)準(zhǔn)化實(shí)體映射到了其正確的概念上。
分析標(biāo)準(zhǔn)化結(jié)果中錯(cuò)誤的實(shí)例,我們發(fā)現(xiàn)了以下幾種導(dǎo)致標(biāo)準(zhǔn)化錯(cuò)誤的情況。
1) 有些形式十分接近的副作用名稱屬于不同的概念,在對(duì)其中某個(gè)名稱標(biāo)準(zhǔn)化時(shí)會(huì)錯(cuò)誤映射至另一名稱對(duì)應(yīng)的概念。例如,概念C0018772下的impaired hearing與概念C1384666下hearing impairment在詞干化并忽略詞序后完全匹配,但它們卻屬于不同的概念。
2) 利用WordNet 數(shù)據(jù)對(duì)副作用名稱擴(kuò)展語(yǔ)義時(shí),由于WordNet本身的局限性,有時(shí)并不能將合適的詞語(yǔ)擴(kuò)充進(jìn)來(lái)。例如,在對(duì)概念C0549448下的elevated hemoglobin標(biāo)準(zhǔn)化時(shí),WordNet并不能將elevate擴(kuò)展得到同義詞increase,從而無(wú)法匹配到同概念的increased hemoglobin。
3) 副作用名稱中的專業(yè)詞匯常常無(wú)法得到擴(kuò)展,而專業(yè)詞匯與同概念下的其他名稱在詞形上的關(guān)聯(lián)又很弱,從而導(dǎo)致標(biāo)準(zhǔn)化錯(cuò)誤。例如,cholelithiasis屬于概念C0008350,而此概念下的所有名稱為[gall stone, gallstones, cholelithiasis, biliary calculi]。
3.2.3 對(duì)識(shí)別出的實(shí)體進(jìn)行標(biāo)準(zhǔn)化
對(duì)3 143個(gè)新的副作用名稱進(jìn)行標(biāo)準(zhǔn)化處理,其中2 337個(gè)新名稱映射到了974個(gè)概念上,平均每個(gè)概念約對(duì)應(yīng)2.4個(gè)新名稱;剩余的806個(gè)新名稱無(wú)法對(duì)應(yīng)到詞典中已有的概念上,可能屬于新的副作用概念。圖4顯示了副作用概念C0043094在詞典中已有的名稱以及本文從評(píng)論中挖掘得到的新名稱,其中實(shí)線框里的是詞典中已有的名稱,虛線框里的是挖掘出的新名稱(有些拼寫(xiě)是錯(cuò)誤的)??梢钥闯觯ㄟ^(guò)對(duì)新名稱進(jìn)行標(biāo)準(zhǔn)化,我們可以將用戶對(duì)同一概念的不同表述形式(包括評(píng)論中常見(jiàn)的因拼寫(xiě)錯(cuò)誤而產(chǎn)生的不同形式)映射到其真正所指的概念上,實(shí)現(xiàn)副作用名稱的有效聚合與歸并,使副作用概念在評(píng)論中的發(fā)生比例更接近其在用藥者中真正的發(fā)生頻率,從而有利于藥物潛在副作用的發(fā)現(xiàn)。
圖4 概念C0043094在詞典中已有的副作用名稱及本文挖掘的新名稱
3.3 藥物副作用發(fā)現(xiàn)
通過(guò)對(duì)識(shí)別出的副作用名稱進(jìn)行標(biāo)準(zhǔn)化,我們將不同的表述形式映射到了其所指的概念上,從而可以統(tǒng)計(jì)出副作用概念在每種藥物評(píng)論中的發(fā)生頻率。為了避免偶然現(xiàn)象而使結(jié)果更具統(tǒng)計(jì)意義,我們選擇評(píng)論數(shù)量大于50的藥物,將挖掘出的副作用概念按照在對(duì)應(yīng)藥物評(píng)論中的發(fā)生頻率由高到低排序,得到藥物副作用的列表。
對(duì)于藥物已知的副作用,我們將挖掘出的發(fā)生頻率與SIDER數(shù)據(jù)庫(kù)中記錄的發(fā)生頻率進(jìn)行了對(duì)比。表5顯示了挖掘得到的發(fā)生頻率最高的前十種已知的藥物-副作用對(duì)與數(shù)據(jù)庫(kù)中記錄的相應(yīng)數(shù)據(jù),其中“postmarketing”表示副作用在藥物上市后得到確認(rèn),“potential”表示藥物可能的副作用。從表中可以看出,我們從評(píng)論中挖掘出的具有較高發(fā)生頻率的藥物副作用,其在數(shù)據(jù)庫(kù)中記錄的發(fā)生率一般也相應(yīng)地較高,兩種來(lái)源的藥物副作用發(fā)生頻率具有較大程度的相似性與對(duì)應(yīng)性,說(shuō)明本文的藥物副作用挖掘方法是有效的,挖掘得到的藥物副作用結(jié)果具有較大的可信度。
對(duì)于發(fā)現(xiàn)的數(shù)據(jù)庫(kù)中未記錄的藥物副作用,可以認(rèn)為副作用概念在某種藥物的評(píng)論中的發(fā)生頻率越高,則其為該藥物潛在副作用的可能性越大。因此,我們按挖掘到的發(fā)生頻率由高到低排序,得到了一個(gè)可能性由大到小排列的藥物潛在副作用列表。表6顯示了本文挖掘到的前十個(gè)最有可能的潛在藥物-副作用對(duì)。對(duì)于挖掘出的具有較高發(fā)生頻率的藥物副作用,可以作為藥物潛在的副作用以備參考。
表5 挖掘出的發(fā)生頻率最高的10種已知的藥物-副作用對(duì)與數(shù)據(jù)庫(kù)記錄之間的對(duì)比
表6 挖掘出的發(fā)生頻率最高的前10種潛在藥物-副作用對(duì)
續(xù)有
排名藥物副作用概念挖掘得到的發(fā)生頻率/%4TussionexC0030193[unspecifiedpain,…]7.65NitrostatC0008031[chestpain,…]7.46CarboplatinC0015672[fatigue,…]7.27SeasoniqueC0030193[unspecifiedpain,…]7.28FosavanceC0038354[gastricdisorder,…]6.89MirenaC0026821[cramps,…]6.810DanazolC0149931[migraine,…]6.7
從社交網(wǎng)絡(luò)的用戶評(píng)論中提取藥物副作用信息是一種快捷、有效的渠道,而評(píng)論中含有大量數(shù)據(jù)庫(kù)未收錄的副作用名稱,識(shí)別這些新名稱并標(biāo)準(zhǔn)化對(duì)藥物副作用的挖掘十分重要。針對(duì)前人工作中對(duì)新副作用名稱的識(shí)別效果不佳以及對(duì)識(shí)別出的新名稱后續(xù)處理不足的問(wèn)題,本文利用CRF模型識(shí)別評(píng)論中的副作用,可以識(shí)別出已知的與新的名稱。將副作用名稱標(biāo)準(zhǔn)化可以對(duì)其進(jìn)行有效的聚合與歸并,有利于藥物副作用的發(fā)現(xiàn)。我們通過(guò)將挖掘出的藥物已知的副作用與數(shù)據(jù)庫(kù)記錄進(jìn)行對(duì)比驗(yàn)證本文方法的有效性,對(duì)挖掘出的數(shù)據(jù)庫(kù)中未記錄的藥物副作用按其在評(píng)論中的發(fā)生頻率排序,得到了一個(gè)可能性由大到小排列的藥物潛在副作用列表。
在未來(lái)工作中,1)考慮在副作用實(shí)體識(shí)別的CRF模型中加入更多有效的特征,如藥物的分子式特征、藥物適應(yīng)癥特征、副作用詞典特征以及單詞的分布式矢量特征等,以便提高實(shí)體識(shí)別的效果;2)鑒于WordNet數(shù)據(jù)存在的局限性,在標(biāo)準(zhǔn)化時(shí)可以考慮引入生物醫(yī)學(xué)領(lǐng)域的專業(yè)詞典,或是借助語(yǔ)義相似度數(shù)據(jù)來(lái)衡量詞語(yǔ)之間的關(guān)聯(lián)程度,提高標(biāo)準(zhǔn)化方法的準(zhǔn)確率;3)對(duì)于挖掘出的新的副作用名稱,如果無(wú)法映射到現(xiàn)有的副作用概念上,則考慮通過(guò)它們之間的關(guān)聯(lián)度將其進(jìn)行聚類,從而更好地發(fā)現(xiàn)藥物潛在的副作用以及新的副作用概念;4)相較于發(fā)現(xiàn)潛在藥物不良反應(yīng),發(fā)現(xiàn)產(chǎn)生不良反應(yīng)的原因和條件則具有更加深遠(yuǎn)的意義,未來(lái)工作中會(huì)著重挖掘不良反應(yīng)發(fā)生的原因。
[1] Yang C C, Jiang L, Yang H, et al. Detecting signals of adverse drug reactions from health consumer contributed content in social media[C]//Proceedings of ACM SIGKDD Workshop on Health Informatics. 2012.
[2] Leaman R, Wojtulewicz L, Sullivan R, et al. Towards internet-age pharmacovigilance: extracting adverse drug reactions from user posts to health-related social networks[C]//Proceedings of the 2010 workshop on biomedical natural language processing. Association for Computational Linguistics, 2010: 117-125.
[3] Chee B W, Berlin R, Schatz B. Predicting adverse drug events from personal health messages[C]//Proceedings of the AMIA Annual Symposium Proceedings. American Medical Informatics Association, 2011: 217.
[4] Nikfarjam A, Gonzalez G H. Pattern mining for extraction of mentions of adverse drug reactions from user comments[C]//Proceedings of the AMIA Annual Symposium Proceedings. American Medical Informatics Association, 2011: 1019.
[5] Zeng Q T, Tse T. Exploring and developing consumer health vocabularies[J]. Journal of the American Medical Informatics Association. 2006, 13(1): 24-29.
[6] Wu H, Fang H, Stanhope S J. Exploiting online discussions to discover unrecognized drug side effects[J]. Nervenheilkunde. 2007, 26(11): 969-980.
[7] Online Support Groups and Forums at DailyStrength. Available[DB]. www.dailystrength.org. Accessed March 28, 2014.
[8] Kuhn M, Campillos M, Letunic I, et al. A side effect resource to capture phenotypic effects of drugs[J]. Molecular systems biology. 2010, 6(1):343-348.
[9] 唐旭日,陳小荷,許超,等. 基于篇章的中文地名識(shí)別研究[J]. 中文信息學(xué)報(bào),2010,24(02): 24-32.
[10] Settles B. Biomedical named entity recognition using conditional random fields and rich feature sets[C]//Proceedings of the International Joint Workshop on Natural Language Processing in Biomedicine and its Applications. Association for Computational Linguistics, 2004: 104-107.
[11] 劉凱,周雪忠,于劍,等. 基于條件隨機(jī)場(chǎng)的中醫(yī)臨床病歷命名實(shí)體抽取[J]. 計(jì)算機(jī)工程,2014(9): 312-316.
[12] Toutanova K, Klein D, Manning C D, et al. Feature-rich part-of-speech tagging with a cyclic dependency network[C]//Proceedings of the 2003 Conference of the North American Chapter of the Association for Computational Linguistics on Human Language Technology-Volume 1. Association for Computational Linguistics, 2003: 173-180.
[13] Miller G A. WordNet: a lexical database for English[J]. Communications of the ACM. 1995, 38(11): 39-41.
Detection of Adverse Drug Reactions Based on Comment Mining
ZHAO Mingzhen, CHENG Liangxi, LIN Hongfei
(School of Computer Science and Technology, Dalian University of Technology, Dalian, Liaoning 116024, China)
When mining adverse drug reactions (ADRs) from the user comments on healthcare social networks, it is very important to recognize novel ADR expressions from comments and normalize them, since people probably adopt different expressions to describe adverse reactions and new adverse reactions may emerge with the listing of new drugs as well as the diversity of drug users. This paper utilizes Conditional Random Field (CRF) model to recognize adverse reaction entities, and proposes a normalization method applied to the recognized entities. The effectiveness of this mining method is verified by comparing the mined results of known ADRs with database records, and a list of potential ADRs sorted by occurrence frequency in comments is obtained. Experimental results indicate that CRF model is capable of identifying both known and novel adverse reaction entities, and the standardization aggregates and merges the entities, which benefits the ADR discovery.
adverse drug reaction; user comment; text mining; entity normalization
趙明珍(1989—),碩士研究生,主要研究領(lǐng)域?yàn)槲谋就诰蚝妥匀徽Z(yǔ)言處理。E-mail:zmz@mail.dlut.edu.cn程亮喜(1986—),碩士研究生,主要研究領(lǐng)域?yàn)樯镝t(yī)學(xué)文本挖掘和自然語(yǔ)言處理。E-mail:liangxicheng@mail.dlut.edu.cn林鴻飛(1962—),博士,教授,博士生導(dǎo)師,主要研究領(lǐng)域?yàn)樗阉饕?、文本挖掘、情感?jì)算和自然語(yǔ)言處理。E-mail:hflin@dlut.edu.cn
1003-0077(2015)06-0193-10
2015-07-21 定稿日期: 2015-09-25
國(guó)家自然科學(xué)基金(661572102,61277370);遼寧省自然科學(xué)基金(201202031,201402003)
TP391
A