張異卓,周璐,孫燕,鄭豐杰,徐鳳芹,李宇航
1.北京中醫(yī)藥大學(xué)中醫(yī)學(xué)院,北京 100029;2.中國中醫(yī)科學(xué)院西苑醫(yī)院,北京 100091
主題詞標(biāo)引運用計算機技術(shù)對解析的文獻進行管理,將解析的數(shù)據(jù)內(nèi)容冠以恰當(dāng)標(biāo)識。通過對電子病歷進行主題詞標(biāo)引,將病歷中的詞語與主題詞表中具有相同內(nèi)涵的詞匯相對應(yīng),達成統(tǒng)一的文字表述,從而為系統(tǒng)挖掘中醫(yī)辨證論治規(guī)律及智能化處理奠定數(shù)據(jù)基礎(chǔ)。由于中醫(yī)詞語中包含大量“理法方藥”信息,因此,中醫(yī)電子病歷需要在辨證論治思想指導(dǎo)下完成主題詞標(biāo)引。
隨著中醫(yī)電子病歷的普及,實踐工作對自動標(biāo)引技術(shù)提出了一定需求。本研究團隊在以往研究的基礎(chǔ)上,采用基于雙向編碼表示(bidirectional encoder representation from transformers,BERT)的語言處理模型與Sigmoid輸出函數(shù)結(jié)合,在辨證論治思想指導(dǎo)下構(gòu)建中醫(yī)主題詞自動標(biāo)引模型,以期幫助研究人員更加高效、精準(zhǔn)地完成中醫(yī)主題詞標(biāo)引任務(wù),并為相關(guān)研究提供數(shù)據(jù)與方法學(xué)參考。
建模數(shù)據(jù)來源于中國中醫(yī)科學(xué)院“名醫(yī)名家傳承”項目管理平臺。該平臺的名老中醫(yī)藥專家經(jīng)驗信息數(shù)據(jù)庫收錄了60余位名老中醫(yī)的臨床醫(yī)案、經(jīng)驗方、學(xué)術(shù)思想及臨床經(jīng)驗,且采用結(jié)構(gòu)化模式進行數(shù)據(jù)采集,保證了數(shù)據(jù)的規(guī)范性。本研究收集其中22位名老中醫(yī)的電子病歷,共計3 252份。
納入標(biāo)準(zhǔn):①參照《人力資源社會保障部、國家衛(wèi)生計生委、國家中醫(yī)藥局關(guān)于評選國醫(yī)大師、全國名中醫(yī)的通知》評定為國醫(yī)大師或全國名中醫(yī)的病歷;②屬于中醫(yī)內(nèi)科疾病范疇的病歷;③病歷收集時間為2019年12月—2020年12月;④疾病、癥狀、證候、治法、處方等中醫(yī)“理法方藥”信息記錄完整。
排除標(biāo)準(zhǔn):①中醫(yī)“理法方藥”信息記錄不明確者;②病歷數(shù)據(jù)重復(fù)者。
1.3.1 標(biāo)引原則
本研究所用主題詞表參照《醫(yī)學(xué)主題詞表》(Medical Subject Headings,MeSH)的結(jié)構(gòu)建立,并在以往研究基礎(chǔ)上,以《傷寒論》“觀其脈證,知犯何逆,隨證治之”的辨證論治思想為指導(dǎo),經(jīng)專家論證確定中醫(yī)主題詞標(biāo)引三原則。①含義趨同原則:即原始詞與標(biāo)引的中醫(yī)主題詞含義趨同。本原則以“觀其脈證”為指導(dǎo),根據(jù)望、聞、問、切四診合參方法審查描述中醫(yī)臨床詞語的文字組成,分析其中醫(yī)含義,標(biāo)引為含義趨同的中醫(yī)主題詞,以保障標(biāo)引的主題詞與原始詞傳遞相同的信息。②方向一致原則:即原始詞與標(biāo)引的主題詞提示相同的辨證論治方向。本原則以“知犯何逆”為指導(dǎo),把握病機、治法、治則等主題詞的辨證論治方向,從而確保主題詞標(biāo)引后,主題詞傳遞的辨證論治方向不發(fā)生偏離。③可替換原則:即原始詞與標(biāo)引的主題詞之間相互替換不會影響辨證論治的思維過程。本原則以“隨證治之”為指導(dǎo),確立診斷、治法、方藥,突顯辨證論治各環(huán)節(jié)環(huán)環(huán)相扣,以體現(xiàn)理-法-方-藥的鏈?zhǔn)疥P(guān)系。
1.3.2 標(biāo)引方法
依據(jù)《中醫(yī)學(xué)主題詞表》(北京中醫(yī)藥大學(xué)中醫(yī)信息學(xué)研究中心提供),對收集的癥狀和證候進行主題詞標(biāo)引,如“肚子脹”標(biāo)引為“腹脹”,“大便稀不成形”標(biāo)引為“便溏”,如原始詞對應(yīng)多個主題詞則以逗號為分隔符分開標(biāo)注。由2名具有執(zhí)業(yè)醫(yī)師資格的科研人員對病歷進行逐條標(biāo)注,由2名熟練掌握《中醫(yī)學(xué)主題詞表》的中醫(yī)專家對標(biāo)引結(jié)果進行雙盲復(fù)核,不一致處提請第三位中醫(yī)專家復(fù)核,并經(jīng)討論達成一致。
表1 各數(shù)據(jù)集標(biāo)引的主題詞數(shù)量
BERT模型是一種被用于文本分類、文本信息提取、文本翻譯等多種語言處理任務(wù)的人工智能模型,在多項處理任務(wù)中取得突破性進展,展現(xiàn)出優(yōu)于既往模型的優(yōu)勢。該模型可以通過對給定文本的學(xué)習(xí),將文本中的詞語以數(shù)學(xué)向量即詞向量的形式表示。以向量表示詞語的方式,使詞語具有方向性和位置性。通過余弦(Cosine)距離公式對詞向量之間的距離進行計算,2個詞語之間的詞向量距離越近,表示二者關(guān)聯(lián)越緊密。
病、癥、證、方、藥之間形成相關(guān)聯(lián)的知識結(jié)構(gòu),使用BERT模型對具有“理法方藥”結(jié)構(gòu)的辨證論治知識進行學(xué)習(xí),可使相關(guān)內(nèi)容形成緊密的聯(lián)系,詞語具有特定的指向性,從而使所得模型在進行中醫(yī)主題詞標(biāo)引時具有更好的效果。BERT模型對中醫(yī)“理法方藥”的學(xué)習(xí)示例見圖1A,輸入數(shù)據(jù)為疾病、癥狀、中醫(yī)辨證診斷、治法、處方數(shù)據(jù),訓(xùn)練模型對詞語的編碼能力。在此基礎(chǔ)上,進一步學(xué)習(xí)中醫(yī)主題詞標(biāo)引,將每個主題詞中的詞語作為標(biāo)簽,對原始詞與主題詞之間的映射關(guān)系進行學(xué)習(xí)。該學(xué)習(xí)過程示例見圖1B,輸入數(shù)據(jù)病歷中的原始詞,輸出標(biāo)引詞。
圖1 BERT模型進行“理法方藥”與主題詞標(biāo)引學(xué)習(xí)過程示例
從電子病歷中提取疾病、癥狀、證候、治法、處方等“理法方藥”數(shù)據(jù),以BERT 的掩碼語言模型(mask language model,MLM)學(xué)習(xí)法,對“理法方藥”數(shù)據(jù)進行學(xué)習(xí),在此基礎(chǔ)上以Sigmoid作為輸出函數(shù),進行主題詞標(biāo)引的學(xué)習(xí),通過學(xué)習(xí)癥狀、證候記錄與中醫(yī)主題詞之間的映射,構(gòu)建中醫(yī)主題詞自動標(biāo)引模型,即TCM-BERT-Sigmoid模型。
本研究使用2種對照模型:①基于雙向長短時記憶(bidirectional long short-term memory,Bi-LSTM)神經(jīng)網(wǎng)絡(luò)與Sigmoid函數(shù)的中醫(yī)主題詞自動標(biāo)引模型,即Bi-LSTM-Sigmoid模型。②未對中醫(yī)“理法方藥”數(shù)據(jù)進行學(xué)習(xí),僅基于BERT與Sigmoid函數(shù)的中醫(yī)主題詞自動標(biāo)引模型,即BERT-Sigmoid模型。
設(shè)置 TCM-BERT-Sigmoid 和 BERT-Sigmoid 模型訓(xùn)練樣本為每批次16個,優(yōu)化器為Adam,學(xué)習(xí)率(learning rate,LR,神經(jīng)網(wǎng)絡(luò)訓(xùn)練過程中的超參數(shù),用以控制參數(shù)更新速度)從0.000 2、0.000 3、0.000 5中選取,根據(jù)不同取值在開發(fā)集上的表現(xiàn),選取表現(xiàn)最佳的數(shù)值。其余參數(shù)使用BERT默認(rèn)設(shè)置。
設(shè)置Bi-LSTM-Sigmoid 模型訓(xùn)練樣本為每批次256個,初始化權(quán)重為-0.05~0.05隨機均勻分布,詞向量維度為300,優(yōu)化器為Adam。模型的LR從0.01、0.03、0.05 中選取,神經(jīng)元失活比例(dropout rate,DR,神經(jīng)網(wǎng)絡(luò)每層中隨機丟棄的神經(jīng)元占整層神經(jīng)元的比率。在每一輪訓(xùn)練中讓一些神經(jīng)元隨機失活,從而讓每一個神經(jīng)元都有機會得到更高效的學(xué)習(xí),以減輕神經(jīng)網(wǎng)絡(luò)的過擬合)從0.3、0.5中選取,LSTM的記憶單元數(shù)量(memory cell,MC)從128、256、512中選取。根據(jù)不同取值在開發(fā)集上的表現(xiàn),選取表現(xiàn)最佳的數(shù)值。
表2 對癥狀的不同中醫(yī)主題詞自動標(biāo)引模型建模參數(shù)及開發(fā)集指標(biāo)
表3 對證候的不同中醫(yī)主題詞自動標(biāo)引模型建模參數(shù)及開發(fā)集指標(biāo)
根據(jù)劃分的測試集進行模型測試,癥狀主題詞標(biāo)引時不同閾值的輸出結(jié)果見圖2,證候主題詞標(biāo)引時不同閾值的輸出結(jié)果見圖3??梢?,當(dāng)TCM-BERTSigmoid與BERT-Sigmoid中醫(yī)主題詞自動標(biāo)引模型的輸出閾值為0.2、Bi-LSTM-Sigmoid中醫(yī)主題詞自動標(biāo)引模型的輸出閾值為0.3時,各模型的精確率、召回率和F1得分更為均衡,測試結(jié)果見表4、表5??梢姡趯ΠY狀和證候的主題詞標(biāo)引中,TCM-BERT-Sigmoid模型的結(jié)果均優(yōu)于對照模型。
圖2 對癥狀的不同中醫(yī)主題詞標(biāo)引模型在不同輸出閾值下的結(jié)果
圖3 對證候的不同中醫(yī)主題詞標(biāo)引模型在不同輸出閾值下的結(jié)果
表4 不同中醫(yī)主題詞標(biāo)引模型的癥狀主題詞標(biāo)引測試結(jié)果
表5 不同中醫(yī)主題詞標(biāo)引模型的證候主題詞標(biāo)引測試結(jié)果
癥狀主題詞標(biāo)引時,分別對應(yīng)1個主題詞與對應(yīng)多個主題詞的測試結(jié)果見圖4??梢钥闯觯粚?yīng)1個主題詞時的精確率低于召回率,表明模型在輸出正確結(jié)果的同時,有時也會將錯誤結(jié)果一同輸出,如癥狀為“小便發(fā)黃”,模型可能會標(biāo)引為“尿黃”和“尿濁”,即在正確輸出“尿黃”的同時錯誤輸出了“尿濁”。對應(yīng)多個主題詞的測試結(jié)果顯示,精確率高于召回率,表明在對應(yīng)多個主題詞的標(biāo)引中,模型輸出的結(jié)果正確但不全面,如癥狀為“苔白有齒痕”,模型可能僅標(biāo)引為“齒痕舌”,而“白苔”未被標(biāo)引。從F1得分來看,TCM-BERT-Sigmoid中醫(yī)主題詞自動標(biāo)引模型的表現(xiàn)最優(yōu)。
圖4 不同中醫(yī)主題詞標(biāo)引模型癥狀主題詞標(biāo)引結(jié)果
證候主題詞標(biāo)引時,分別對應(yīng)1個主題詞與對應(yīng)多個主題詞的測試結(jié)果見圖5。可以看出,當(dāng)證候只對應(yīng)1個主題詞時,召回率低,精確率高,表明模型在輸出正確結(jié)果時容易發(fā)生遺漏現(xiàn)象,即如果模型認(rèn)為沒有把握輸出正確結(jié)果時則選擇不輸出結(jié)果。當(dāng)證候?qū)?yīng)多個主題詞時,召回率高,精確率低,表明模型在輸出正確結(jié)果的同時,錯誤結(jié)果也會一并輸出,如證候為“肺陰不足證”,模型在將其標(biāo)引為“肺陰虛證”的同時,標(biāo)引為“腎陰虛證”。但從F1得分來看,TCMBERT-Sigmoid 中醫(yī)主題詞自動標(biāo)引模型的表現(xiàn)仍為最優(yōu)。
圖5 不同中醫(yī)主題詞標(biāo)引模型證候主題詞標(biāo)引結(jié)果
運用計算機技術(shù)對中醫(yī)電子病歷進行符合“理法方藥”標(biāo)引,是進行中醫(yī)數(shù)字資源信息挖掘及智能化處理的前提,對開展中醫(yī)辨證論治規(guī)律研究具有基礎(chǔ)性意義。近年來,人工智能在醫(yī)療領(lǐng)域逐步得到廣泛應(yīng)用,自然語言處理(NLP)是人工智能重要領(lǐng)域之一,匯聚了眾多文本處理技術(shù),已被廣泛用于臨床記錄的語言翻譯及醫(yī)療信息提取等工作。以往研究中,研究人員提出了一些基于NLP的生物醫(yī)學(xué)領(lǐng)域的歸類模型:如從相似性匹配角度,提出Word2Vec、DNorm、 Jaccard's similar和 BERT-based ranking;從命名實體識別(NER)角度,提出transition-based model和 Bi-LSTM-CNNs-CRF。此外,在建模概念方面,許多從序列生成和文本分類角度構(gòu)建的模型在NLP任務(wù)中也表現(xiàn)出良好的性能和適用性。但上述模型僅適用于一對一的歸類情況,而不適合于一對多的歸類情況。
基于以往研究,本研究通過不同技術(shù)的組合,提出了中醫(yī)主題詞自動標(biāo)引模型。其中,得益于BERT模型使用的雙向自編碼技術(shù),使模型具有更為出色的學(xué)習(xí)能力,基于BERT建立的TCM-BERT-Sigmoid中醫(yī)主題詞自動標(biāo)引模型表現(xiàn)最佳,其精確率、召回率和F1得分均優(yōu)于基于Bi-LSTM建立的對照模型。
為解決原始詞對應(yīng)多個主題詞的問題,我們使用BERT 與Sigmoid 函數(shù)結(jié)合,通過限定輸出閾值的方法,將高于限定閾值的主題詞輸出,高于限定閾值的主題詞恰能與原始詞對應(yīng),從而克服了難以處理1個原始詞對應(yīng)多個主題詞的問題,使模型可以兼顧“一對一”與“一對多”標(biāo)引情況,因此在中醫(yī)主題詞標(biāo)引任務(wù)中具有更廣的適用性,可為中醫(yī)數(shù)據(jù)挖掘及中醫(yī)辨證論治規(guī)律研究提供有力的工具支持。
本研究為單次實驗,考慮到神經(jīng)網(wǎng)絡(luò)初始化權(quán)重的隨機性會導(dǎo)致實驗結(jié)果有一定浮動,今后研究應(yīng)增加實驗次數(shù)。此外,本研究構(gòu)建的中醫(yī)主題詞自動標(biāo)引模型僅針對癥狀和證候主題詞進行研究,雖然取得了良好的實驗結(jié)果,但此模型能否適用于其他中醫(yī)主題詞如疾病、治法、處方等的自動標(biāo)引任務(wù),仍需進一步探索。本研究構(gòu)建的中醫(yī)主題詞自動標(biāo)引模型未與其他僅適用于原始詞與主題詞“一對一”模型進行對比,有待進一步研究。