王勇
(山東搜搜中醫信息科技有限公司, 山東,濟南 250014)
引文的檢索對于尋找特定信息的生物醫學研究人員而言是極其重要的,通過精準的檢索能夠很大程度上提升研究效率。目前,在生物醫學引文的語義索引領域應用較廣泛的是醫學主題詞表(Medical Subject Headings, MeSH)。MeSH詞庫由大量相互關聯主題詞組成,包括主題描述符、主題限定詞(也稱為子標題)和補充概念記錄。每個MeSH描述符都包含一組術語[1],這些術語在語義索引和搜索中被認為是等效的,但不一定是嚴格意義上的同義詞。這些術語被組織為MeSH概念,這些概念是一組同義詞。
盡管MeSH具有近29 000個描述符,但它經常將一些緊密相關但截然不同的概念歸為同一描述符,而無法實現對生物醫學領域相關文獻的精準檢索。研究特定生物醫學領域專家檢索的文獻通常需要深入到MeSH描述符不支持的粒度級別,將相關文獻分為細粒度的子集可以揭示特定患者亞型的差異,并為精準醫學應用提供信息,這在MeSH的疾病類別中尤其重要。
由于目前沒有這種細粒度索引的相關研究,因此本文的工作旨在實現生物醫學文獻的細粒度索引,將文章摘要中概念術語用作弱監督(weakly supervised, WS)。本文以阿爾茨海默病(AD)相關文章為例,利用現有的MeSH注釋參考已經用MeSH描述符注釋的引用文獻,而不是考慮所有摘要。此外,本文還利用每個描述符的概念結構,重點關注較狹窄的概念。
生物醫學文獻的語義索引研究主要集中在為每個生物醫學文章匹配合適的MeSH條目方面。在這類研究中索引者使用適當的MeSH條目對PubMed / MEDLINE引用進行手動注釋。這類資源已用于開發機器學習系統,該系統能夠自動將MeSH條目(尤其是描述符)分配給生物醫學文章,從而開發出高度精確的解決方案。有些研究者強調了細粒度語義索引對于精確信息檢索的重要性[2],對于稀有和慢性疾病的實驗,這些研究者認為在摘要或標題中確實包含MeSH概念某些術語的文章是唯一應使用該概念進行索引的文章。這些研究者得出的結論是在MeSH概念級別進行索引對于更精確地檢索信息而言效果很好。
由于缺少用于細粒度語義索引的數據集,研究者研究了多種弱監督方法,即不準確、不完全和不確切的監督[3]。在不準確的監督下,訓練集中的某些可用標簽是錯誤的,應將其視為噪音[4],本文研究的問題就屬于此類。在不完全監督下,通常僅標記數據集的一小部分。在這種情況下,通過半監督學習方法來利用未標記數據,以彌補訓練數據的不足[5]。半監督學習(Semi-Supervised Learning,SSL)是模式識別和機器學習領域研究的重點問題,是監督學習與無監督學習相結合的一種學習方法。半監督學習使用大量的未標記數據,同時使用標記數據進行模式識別工作。在不確切的監督下,每個帶有標簽的示例(也稱為包)均由多個實例組成。
目前,研究者已經提出了不同的方法來處理標簽噪聲在分類中的影響。部分研究者在訓練數據集之前依靠過濾器來識別數據集中潛在的錯誤標記示例。在這種情況下,過濾器可以基于相似實例的標簽[6]對數據的不同部分進行訓練。一些機器學習算法已被明確設計為對特定類型的噪聲進行建模,從而降低了噪聲對其性能的影響[7-8]。然而,即使實際上沒有針對某種噪聲的學習算法也可以在實踐中對某些級別的噪聲具有魯棒性,特別是在針對低方差的配置中可以避免過度擬合。
由于缺乏基本的真實數據,本文提出了一種弱監督方法用于開發模型,以利用現有的MeSH注釋以及MeSH描述符和MeSH概念之間的已知關系來預測文獻中的細粒度主題注釋。需要強調的是,本文將細粒度的語義索引問題公式化為單實例多標簽分類問題,在學習階段和預測過程中都帶有噪聲標簽。從描述符的概念結構來看,每個模型的可用標簽集是預先已知的。基于文獻中的概念出現,本文通過WS方法為詞匯分配標簽以進行模型訓練。
圖1對本文所提出的方法進行了簡要描述。首先,所有與MeSH描述符t相關的文章從PubMed / MEDLINE中被檢索出來。在這項工作中,本文僅考慮描述符,其中首選概念cpref是MeSH描述符t對應的概念集里較為寬泛的描述符。其次,根據相關概念的出現情況,將噪聲細粒度標簽分配給選定的文獻,以開發弱監督訓練數據集。需要強調的是,每篇文獻都標有來自集合Ct且在文獻中出現的概念ci。概念ci在文獻中出現不能保證文獻實際內容與該概念相關,即使該文章與描述符t相關。但是,可以明確的是概念ci在文獻中的出現與概念ci高度相關,這可用于文獻噪聲的細粒度標簽。

圖1 基于弱監督的生物醫學文章細粒度語義索引的方案
文獻中生物醫學概念出現的標識是一項信息提取任務,涉及生物醫學命名實體的識別及其在規范化語義系統中對特定概念的映射。這項任務的特殊挑戰包括識別具有多個單詞的術語或出現在文獻中的術語的概念以及消除屬于多個同構概念術語的歧義。本文使用的MetaMap[9]是當下最流行和最全面的方法之一,可用于識別包含了MeSH概念的統一醫學語言系統(Unified Medical Language System,UMLS)中的概念。MetaMap是一個把生物醫學文本與UMLS超級詞表中的概念匹配起來的程序,該程序可以設置很多參數,這些參數用于控制MetaMap的輸出以及內部運行(如單詞變形的程度、是否忽略超級詞表中含有常見詞的字串,是否考慮字母的順序等等)。
由于本文中用于細粒度索引的每篇文章均已使用t進行索引,所以本文假設集合Ct中至少存在一個ci與相應文章有關。如果沒有一個較窄的概念可以識別,則該文章至少與較寬泛的概念cpref有關。但是,這種“默認”類別cpref的識別標記無效,因此不被視為要預測的標簽之一。出現cpref的文章包含在數據集中,但相應模型的開發和驗證將忽略cpref注釋。
弱標簽數據集中每篇文章的摘要和標題都用來為文章生成2種類型的特征。盡管在PubMed Central中也可以找到某些文章的全文,但本文目前將分析重點放在標題和摘要上,這些結論可用于更多文章。此外,由于摘要中的概念預計與文章的主題相關,可以與文獻主體中的概念形成鮮明對比。此外,使用MetaMap提取的文本中的概念為文獻提供了附加的語義特征。不論其提取的資源詞匯表或語義類型如何,所有提取的UMLS概念都被視為特征,而不僅僅是與MeSH描述符相對應的概念。與詞匯特征不同,概念特征是二進制的。在詞匯和語義特征方面,基于數據集的稀缺性,使用TF-IDF轉換對特征進行加權。TF-IDF是術語頻率-逆文檔頻率的縮寫,是一種數字統計,旨在反映單詞對集合或語料庫中的文檔的重要程度。MA是Manually Assigned的縮寫,即手動分配。
此外,對于語義特征使用布爾術語頻率。
由于某些特征的信息量較少或可能引入噪聲,因此本文根據特征在訓練數據中區分目標類別的能力,使用特征來選擇其中最有用的信息。每篇文章的最終矢量表示僅基于這些選定的特征而產生,并用于分類模型的開發。
由于細粒度語義索引的任務是多標簽的,因此本文采用一對多法,對與集合Ct中除cpref外每個概念對應的每個標簽訓練不同的二進制分類器。弱標簽數據集中帶有cpref注釋的文章數據保留在數據集中,但它們的cpref注釋將被忽略。在預測階段,每個特定類別的模型對文獻與相應的細粒度標簽的相關性進行預測,并且對預測進行集成以生成每篇文獻預測的所有細粒度主題標簽的最終集合。
本文提出的方法使用SciKitLearn庫在Python中實現,并應用于AD的MeSH描述符。ScikitLearn提供了一系列監督與非監督學習算法的Python接口,它使用了簡單又友好的BSD license,鼓勵學術使用或商用。在這種情況下,集合Ct由同義概念cpref以及6個較窄的概念,分別是早發性AD(Early-onset AD, EOAD)、晚發性AD(Late-onset AD, LOAD)、局灶性AD(Focal-onset AD, FOAD)、家族性AD(Familial AD, FAD)、早期癡呆(Presenile Dementia, PD)和急性混淆性老年性癡呆(Acute Confusional Senile Dementia, ACSD)組成。需要強調的是,本文從PubMed中為AD描述符檢索了68 542篇文章,其標題和摘要作為初始數據集。弱標簽已分配給其中的51 450個,余下17 092個未進行標注的文獻。
表1中總結了WS標簽在初始數據集中的分布。需要強調的是,FOAD和ACSD在任何文章中都未被明確,因此這兩個極其少見的概念被排除在模型訓練和驗證之外。實驗的最初目標是將帶有AD描述符的文章歸類為與任何較窄的疾病類型相關的文章,而忽略cpref的標簽。這些較窄的類別是4種疾病類型:PD、FAD、EOAD和LOAD。

表1 AD數據集中每個標簽的文章數
為了衡量分類性能,需要一些基本實況注釋。為此,本文從初始數據集中保留了100個文章(MA1)的隨機子集進行手動注釋。但是,初始數據集是弱標簽數據集,這表明類別的分布嚴重偏斜,大部分文章都標有cpref。為了提高隨機子集中低流行類別的預期實驗效果,本文基于弱標簽選擇了100個文章(MA2)的平衡子集。MA2數據集是使用基于標簽組合的迭代過程構建的,標簽組合是所有可用標簽集的子集。在此過程中,在MA2中添加1篇用每個標簽組合注釋的文獻,直到選擇了100篇文獻或選擇了用該標簽組合注釋的文獻的一半。
隨后,本文2次手動對MA1和MA2中200篇文章的摘要和標題進行了審查,并分別對MA細粒度標簽,使用了4種類別的宏觀平均Kappa統計量。通過對2次注釋結果的綜合考量,共識注釋被用作MA1和MA2中的最終依據。表1還展示了WS和共識MA標簽在MA1和MA2測試數據集上的分布。
初始數據集中剩余的51 282篇文章用作WS訓練數據集,開發多標簽分類模型,以預測與t相關的文章的概念級標簽。需要強調的是,考慮到具有和不具有特征選擇的替代配置,本文在訓練數據集上對不同的分類模型進行了訓練。關于特征選擇,根據卡方(Chi2)或ANOVA F統計量選擇前k個特征,k范圍為5至1 000。表2中列出了基于ANOVA F的前20個特征。對于特征類型,僅考慮詞法特征或同時考慮詞法和語義特征都是適用的。對于每個替代配置,本文訓練了邏輯回歸分類器(Logistic regression classifier, LRC)、線性支持向量分類器(Linear Support Vector Classifier, LSVC)、決策樹分類器(Decision Tree Classifier, DTC)和隨機森林分類器(Random Forest Classifier, RFC)。

表2 F ANOVA的TOP 20詞匯(L)和語義(S)特征
本文框架的重點是針對所有考慮的類別進行細分類,而無論其流行程度如何。因此,為了對方案進行整體評估,本文采用了基于標簽的宏平均F1度量,該度量平均加權所有類別。除了訓練性能較好的模型,本文還通過簡單的基線方案進行比較。一個簡單的對比方案就是使用所有可用標簽(all available labels, AIIAII)標記所有文章;另一種更有效的方法是信任初始的弱標簽(weak supervision labels, WSLabels);第三種方法,本文通過將所有可用標簽(weak supervision all rest available labels, WSRestAll)分配給未貼標簽的文獻來擴展后者。
圖2、圖3分別給出了上述每個分類器最佳模型在MA1和MA2數據集中的F1分數。對這些結果的第一個結論是,WSLabels基線方案在MA2中表現良好,MA2包含4個較小類別的許多文章,而在MA1中則表現較差。在MA1中,針對4個關注標簽的WS注釋較少。這表明,對于可用的細粒度語義索引,概念的出現確實是一種很好的WS方法,但對于較窄的概念或很少見的情況而言,這可能是不夠的。

圖2 不同方案最佳模型在MA1數據集中的F1分數

圖3 不同方案最佳模型在MA2數據集中的F1分數
不論學習算法如何設置,所有僅通過詞匯特征訓練的性能最好的模型都優于超過MA1數據集中的基線方案,其中一些僅具有5個詞匯特征。這個事實表明,在WS訓練數據集上訓練的模型可以改善用于弱標記的WS方法。在MA2數據集中,只有基于LSVC和LRC的最佳模型才能接近基線方案WSLabels的性能。該觀察結果表明,概念出現在某些情況下可能是有用的,為基線方案提供了優勢。
通過添加語義功能,基于DTC和RFC的最佳模型的性能幾乎與基線方案WSLabel性能相同。這表明這些模型學會了信任語義特征ci,這與他們必須學習的WS標簽完全相關。另一方面,2個數據集上表現最佳的模型都是基于LRC的模型。該模型使用語義和詞匯功能,尤其是在MA1數據集上性能更佳。
本文的貢獻集中,將細粒度語義索引問題表述為多標簽分類任務,提出了一種自動為該任務生成弱監督分類器的方法,并證明了在實際用例中應用此方法的可行性。此外,本文還提出了能夠勝過性能優異對比方案的模型,這表明基于概念出現的弱標簽訓練可以產生預測模型,該模型確實可以比概念出現本身更好地泛化并產生注釋。