劉勇 杜建強 羅計根 李清 于夢波 鄭奇民



摘? 要:針對傳統多標簽分類模型未充分考慮文本中臨近標簽之間存在的復雜關聯性問題,提出一種基于局部注意力Seq2Seq的中醫文本多標簽分類模型。首先利用ALBERT模型提取文本的動態語義向量;然后多層Bi-LSTM構成的編碼層用于提取文本間的語義關系;最后解碼層中使用多層LSTM的局部注意力,突出文本序列中臨近標簽之間的相互影響力,以預測多標簽序列。在中醫數據集上驗證方法的有效性,實驗結果表明,所提出的算法能夠有效捕獲標簽之間的相關性,適用于中醫文本的分類預測。
關鍵詞:多標簽分類;中醫文本;局部注意力;ALBERT;Bi-LSTM;LSTM
中圖分類號:TP391? ? 文獻標識碼:A? 文章編號:2096-4706(2023)17-0096-06
Research on Multi-label Classification of Traditional Chinese Medicine Texts Based on Local Attention Seq2Seq
LIU Yong1, DU Jianqiang1, LUO Jigen1, LI Qing2, YU Mengbo1, ZHENG Qimin1
(1.College of Computer Science, Jiangxi University of Chinese Medicine, Nanchang? 330004, China;
2.Qihuang Chinese Medicine Academy, Jiangxi University of Chinese Medicine, Nanchang? 330025, China)
Abstract: Aiming at the problem that traditional multi-label classification model does not fully consider the complex correlation between adjacent labels in the texts, a multi-label classification model of TCM text based on local attention Seq2Seq is proposed. Firstly, the ALBERT model is used to extract the dynamic semantic vector of the texts. Secondly, the coding layer composed of multiple layers of Bi-LSTM is used to extract the semantic relationship between texts. Finally, the local attention of multiple layers of LSTMs is used in the decoding layer to highlight the mutual influence between adjacent labels in the text sequence to predict multi-label sequences. The effectiveness of the method is validated on TCM datasets. The experimental results show that the proposed algorithm can effectively capture the correlation between labels, which is suitable for the classification prediction of TCM texts.
Keywords: multi-label classification; TCM text; local attention; ALBERT; Bi-LSTM; LSTM
0? 引? 言
近些年,隨著中醫地位的不斷提升和人工智能技術的快速發展,有研究者利用人工智能與中醫的結合,實現中醫的輔助診斷決策[1]。以脈診,舌診,望診,聞診等診斷信息,可得出確定患者所患病癥的關鍵信息——證候。對中醫證候的分類研究,是中醫辨證體系中的重要組成部分[2]。中醫證候文本類別豐富且內部結構復雜。證候由病因、病機和病位組成,病因、病機、病位各自又含有多個類別,且類別之間可以相互組合,所以將證候中病因、病機和病位的判別問題抽象為自然語言處理領域的多標簽文本分類問題,將電子病歷數據中的四診文本信息作為輸入,將證候中的病因、病機和病位作為多標簽文本分類問題中的標簽。
對中醫證候文本的探究,已有大量研究人員參與。Zhang等人[3]構建了一個綜合網絡平臺,面向精準醫學的中醫證候本體信息存儲及“病—證—方”多維關聯計算,提供了關于常用中醫證候、相關疾病和相應中醫方劑的綜合信息;Xie等人[4]應用特征選擇方法和分類技術,從類風濕關節炎患者的電子病歷中提取關鍵特征,證明了特征選擇可以提高分類模型的性能;李力等人[5]基于因子分析和聚類分析探討乙型肝炎后肝硬化的中醫證素特點和證候分布規律,篩選出具有意義的癥狀及涉及的主要證素;Zhang等人[6]提出一個集成學習模型,利用循環神經網絡提取以命名實體表示的體征和癥狀等臨床信息,然后使用卷積神經網絡來預測中醫疾病的類型,生成相應的可能證候列表,該模型具有較好的診斷準確性和較強的泛化能力;李敏等人[7]探索基于潛在類別結合隱結構分析的血脂異常中醫常見證候,通過建立數據模型,從顯性變量中推導出隱性知識,為中醫證候研究提供了新的思路。
本文利用多標簽分類技術分析中醫文本信息,多標簽文本分類是指一個樣本可以分配多個類別即標簽。例如證候語句:表有風濕,里有痰濕瘀血夾熱,其病因為“風邪/濕邪/痰飲/瘀血/熱邪”;病機為“痰飲凝聚/濕濁困阻”;病位為“表/里”。由于強大的學習能力,深度學習在多標簽分類任務中有著不錯的表現,其中利用深度學習的優勢來更好地捕獲標簽依賴關系是一個熱點。Wang等人[8]改進標簽嵌入(聯合抽取所有標簽的信息,以提高多標簽分類的精度)的方法,通過集成兩個DNN模型來構建標簽空間嵌入模型,學習并保留深層潛在空間的特征感知結構,實驗結果表明,所提出的方法優于現有的標簽嵌入算法;Liu等人[9]引入CNN模型動態池化文本表示,使用比輸出層小的隱藏層來提高計算效率,但CNN在獲取每個標簽的潛藏信息方面仍然存在不足;Wang等人[10]提出一種Seq2Seq結構的模型,將多標簽分類任務視為序列生成問題,使用CNN-RNN模型聯合圖像—標簽嵌入來表征語義標簽依賴性以及圖像—標簽相關性,并且將兩種信息集成在統一的框架中;Yang等人[11]在考慮標簽之間相關性后,提出了引入注意力機制的解碼器結構的序列生成模型,該模型在預測時能自動選擇最有信息量的單詞;Qin等人[12]提出了自適應的RNN序列模型,讓模型可以發現最佳的標簽順序排列。
為了避免提取的文本語義信息不夠豐富導致分類準確性下降以及更好地學習標簽之間的相關性,本文提出基于局部注意力的Seq2Seq模型(Local Attention of Seq2Seq Model, LASM)。該模型利用ALBERT(A Lite Bidirectional Encoder Representations from Transformers)語言模型[13]提取文本的動態語義向量;然后多層Bi-LSTM(Bi-directional Long-Short Term Memory)[14]構成的編碼器提取文本間的語義關系;最后解碼器采用多層LSTM(Long Short-Term Memory)[15]的局部注意力,突出臨近標簽之間的相互影響力,用以預測多標簽序列,提升文本分類的精確度。
1? 基于局部注意力Seq2Seq的中醫文本分類模型
1.1? ALBERT語言模型
近些年,BERT[16](Bidirectional Encoder Representations from Transformers)已成為語言分析和挖掘,以及機器學習領域中非常流行的模型。ALBERT是BERT的改進版,對其主要進行了三個方面的改造:詞嵌入參數因式分解、跨層參數共享、段落連續性任務。
詞嵌入向量參數的因式分解通過降低詞嵌入的維度來減少參數量。在BERT中,Token Embedding的參數矩陣大小為(V×H),其中V表示詞匯表長度,H表示隱藏層大小。ALBERT為了減少參數數量,在映射中加入一個大小為E的隱藏層,這樣矩陣的參數大小降低為(V×E + E×H),如以ALBERT_xxlarge[17]模型為例,V = 30 000、H = 4 096、E = 128,那么原先參數個數為V×H = 30 000×4 096 ≈ 1.23×108,現在的模型參數數量變為V×E + E×H = 30 000×128 + 128×4 096 ≈ 4.36×106,詞嵌入相關的參數降低了28倍。
ALBERT的參數共享針對子模塊內部進行,主要可分為全連接層和注意力層,使得Attention feed-forward模塊參數量從O(12×L×H×H)降低到O(12×H×H),其中L表示層數。BERT設計了NSP(Next Sentence Prediction)來保證句子的連續性,即用兩個連續的句子對作為正例,并隨機選取一個句子作為負例;由此引出一個問題,隨機選取的句子會因主題不同判定為負例。ALBERT對此改進,提出SOP(Sentence Order Prediction):正例,使用從一個文檔中連續的兩個文本段落;負例,使用從一個文檔中連續的兩個文本段落,但位置調換。
1.2? 長短期記憶網絡LSTM
LSTM是一種特殊的循環神經網絡(Recurrent Neural Networks, RNN),克服了傳統RNN模型由于序列過長而產生的梯度彌散[18]問題。LSTM的核心是細胞狀態,使用一種被稱為門的結構對細胞狀態進行刪除或添加信息,通過三個步驟完成。
第一步就是決定細胞狀態需要丟棄哪些信息。這部分操作通過“遺忘門”的sigmoid單元來處理,LSTM會根據新的輸入和上一時刻的輸出決定遺忘掉之前的哪些記憶,查看ht-1和xt信息輸出一個0-1之間的向量,0表示細胞狀態Ct-1的信息不保留,1表示保留。式(1)可以用來描述遺忘門的計算,其中ft表示sigmoid神經層的輸出向量:
第二步是“記憶門”確定為細胞狀態添加哪些新的信息。首先,tanh函數層將現在向量中的有效信息提取出來,然后使用sigmoid函數來決定更新那些信息。計算步驟如式(2)所示:
其中it表示新狀態信息的更新程度, 表示新的候選信息,該信息可能會被更新到細胞信息中。
最后一步,通過“輸出門”計算當前時刻的輸出值。先將當前輸入值與上一時刻輸出值整合后的向量用sigmoid函數提取其中的信息,接著,當前的單元狀態通過tanh函數壓縮映射到區間(-1,1)中,再與整合后的向量點對點相乘就得到了最終的輸出。該步驟如式(3)所示:
其中,ot表示要sigmoid的神經單元,ht表示Ct作為輸入的tanh單元。
1.3? 雙向長短記憶網絡Bi-LSTM
Bi-LSTM對每個句子分別采用順序(從第一個詞開始,從左往右遞歸)和逆序(從最后一個詞開始,從右向左遞歸)計算得到兩套不同的隱層表示,然后通過向量拼接得到最終的隱層表示,更好的捕捉雙向的語義依賴。Bi-LSTM模型結構圖如圖1所示。
單層的Bi-LSTM由兩個LSTM組合而成,一個正向處理輸入序列;另一個反向處理序列,處理完成后將兩個LSTM輸出拼接一起。計算方式如式(4)所示:
1.4? 局部注意力機制
全局注意力機制[19]的思想是在推導上下文向量時考慮編碼器的所有隱藏狀態,可能導致無法處理較長的序列(如段落或文檔)。為了解決這個問題,采用局部注意力機制[20],選擇只關注每個目標詞源位置的一小部分,避免大量計算的同時易于訓練。
具體而言,首先在t時刻為每個目標詞生成一個對齊位置pt:
其中,ht表示當前目標隱藏狀態, 和? 表示源隱藏狀態;score()表示基于內容的函數, 和Wa表示權重參數,為了有利于pt附近的對齊點,以pt為中心放置一個高斯分布。
1.5? 基于局部注意力Seq2Seq的中醫文本分類模型
基于局部注意力Seq2Seq的中醫文本分類模型訓練過程分為4個步驟:
1)提取訓練語料中的中醫證候,進行標簽集的劃分,然后與四診信息等進行匹配,構成多標簽分類文本數據,輸入到ALBERT語言模型轉換為動態的語義向量。
2)利用多層Bi-LSTM對文本特征向量進行編碼,并計算每個單詞對應的前向和后向隱藏狀態,將前向和后向隱藏狀態進行拼接得到最終的隱藏狀態。
3)通過多層LSTM的局部注意力機制對當前時刻文本序列的不同部分賦予不同的權重,得到處理后的文本向量,利用多層LSTM對文本向量進行解碼,通過全連接層,得到當前預測的標簽的概率分布。
4)使用交叉熵函數作為損失函數,然后采用AdamW優化器訓練多標簽文本分類模型的參數,當模型產生的損失值滿足設定要求或者達到最大迭代次數,終止訓練。
基于局部注意力Seq2Seq的多標簽文本分類模型框架如圖2所示。
1.6? 算法流程
為了所提取文本向量的語義信息特征更加豐富以及更好地獲取標簽相關性。本文提出一種基于局部注意力Seq2Seq的中醫文本多標簽分類模型,算法流程如下:
1)將文本X輸入到ALBERT語言模型進行語義向量轉換生成序列:
4)利用LSTM對文本向量ct進行解碼,其中t時刻的隱藏狀態 ,yt-1表示上一時刻預測的標簽的概率分布,函數g表示取yt-1中概率最大的標簽對應的標簽向量。
5)通過全連接層,得到t時刻標簽的分數Ot = Wd? f (Wo St + Uoct + bo),其中Wd、Wo和Uo表示權重參數,Wd表示偏置參數。
6)通過Softmax函數計算得到t時刻預測的標簽概率分布yt = Softmax(Ot)。
7)文本類別的標簽預測結果。
2? 實驗結果與分析
2.1? 數據集
實驗數據來源于868份真實的中醫哮喘電子病歷,篩選出四診、主訴和證候等文本信息。在專家的指導下,對證候信息進行劃分提取出病因、病機和病位標簽信息之后,與四診信息等進行匹配,構成本實驗中所用到的多標簽文本數據集。數據格式如表1所示。數據集的標簽類別分布如表2所示。
2.2? 評價指標
在多標簽分類任務下,為了綜合考慮模型的性能,本文選取了Micro-precision、Micro-recall和Micro-F1作為模型的評價指標。
對于Micro-precision來說,其計算式為:
用以計算所有樣本的平均精確率,L表示類別標簽總數,TPj表示j類別下的真正例,FPj表示j類別下的假正例。
對于Micro-recall來說,其計算式為:
FNj表示j類別下的假反例。
對于Micro-F1值而言,計算式為:
2.3? 實驗參數設置
本研究采用OpenBayes網絡平臺,選用NVIDIA GeForce RTX 2080 (8 GB),20 GB RAM;軟件環境為PyCharm 11.0.7、Anaconda 5.3.0,采用TensorFlow深度學習框架,在Windows 10(64位)操作系統下完成。具體實驗參數設置如表3所示。
2.4? 對比算法
本文設計以下基線模型來比較在中醫哮喘文本數據集上的性能表現。
ALBERT:ALBERT預訓練語言模型[14]提取文本特征,利用sigmoid函數實現文本多標簽分類。
ALBERT-Denses:基于問題轉換[21]的思想,將多標簽文本分類問題轉換為多個二分類問題,進行二元分類預測。
ALBERT-TextCNN[22]:ALBERT進行動態特征向量表示,TextCNN提取文本語義信息,完成分類任務。
Seq2set[23]:通過強化學習來訓練,設計獎勵反饋獨立于標簽順序的方式,減少對標簽順序的依賴并捕捉了標簽之間的相關性。
SGM[12]:將多標簽分類任務視為序列生成問題,應用序列生成模型來預測標簽序列。
2.5? 實驗對比與分析
為了驗證本文提出方法對于實驗的有效性,本文模型和其他五種模型在中醫哮喘多標簽文本數據集上的評價指標得分情況如表4所示,最佳結果用粗體表示。
表5中,M-p代表Micro-precision;M-r代表Micro-recall;M-F1代表Micro-F1,代表值越大分類效果越好。從表中可以看出,基于深度學習的模型在精確度上具有一定的優勢,但使用ALBERT-TextCNN模型進行多標簽分類的效果不佳,甚至低于單獨使用ALBERT的效果,說明在標簽類別眾多的情況下,利用TextCNN進一步提取ALBERT所生成文本向量中的語義信息特征時,容易丟失文本與標簽之間隱藏的語義關系信息導致分類性能下降?;趩栴}轉換思想,在分類時利用對單標簽的二元分類預測的ALBERT-Denses模型的準確性比ALBERT模型提高了1個多百分點。本文方法LASM利用動態文本向量與標簽之間相關性的基礎上,更多地考慮當前文本序列中臨近標簽的相關性,能夠提升Micro-F1指標,最終達到近83%?;谛蛄械叫蛄械腟GM和Seq2set模型的M-F1值相對于ALBERT和ALBERT-Denses的M-F1值更高,說明在多標簽分類任務中使用序列到序列方法是有效的。進一步地,可以看到SGM的M-F1值略高于Seq2set的M-F1值,是參與對比的五種模型中表現最好的,說明考慮標簽之間的相關性可以提升模型的分類準確性。LASM與SGM相比,M-F1值提高了1.79%。與五種模型對比之后,LASM的M-F1值明顯優于其他模型,精度更高,說明本文方法對多標簽文本分類任務是有效的。
為了進一步驗證本文提出模型的有效性和局部注意力對于提升模型效果有著十分重要的作用,也為了更充分評估LASM模型的效果,進行了消融實驗,實驗結果如表5所示。
通過表6消融實驗可以看出,單獨利用ALBERT模型提取語義特征并直接在下游任務中接入全連接層進行分類的M-F1值為0.761 5,而使用ALBERT提取文本特征并采用序列到序列模型后不利用多層LSTM的局部注意力,最終在中醫哮喘數據集上的M-F1值為0.802 1。與上述相比,采用序列到序列方法的模型效果叫最初的模型方法有比較大的提升,再通過使用局部注意力后的模型M-F1值提升了2.62%,性能得到了較大的提升,也可以說明本文的LASM模型可以提取與四診信息等相關的病因、病機和病位標簽分類信息。通過該消融實驗可知,多層LSTM的局部注意力對于中醫文本多標簽分類任務準確度的提升有著不可忽略的重要作用。LSAM模型利用ALBERT模型轉換文本向量,Bi-LSTM獲取語義關系,同時LSTM的局部注意力突出當前序列中標簽間相關性,能夠比較精確地完成多標簽文本分類任務。
3? 結? 論
針對傳統多標簽分類模型對于文本中臨近標簽之間相關性考慮不夠充分的問題,從中醫哮喘電子病歷文本中取出證候的病因、病機和病位標簽因子構成多標簽文本數據集,使用本文提出的基于局部注意力Seq2Seq的中醫文本多標簽分類模型進行分類任務。實驗結果表明,提出的LASM方法在各項評價指標中均具有良好的表現,能夠有效地提高模型在中醫文本上的分類性能。雖然LASM模型有著較好的表現,但模型的分類性能還有提升的空間。在未來的工作中,將在進一步提升模型效果的基礎上,考慮加入中醫哮喘更多粒度上的知識信息,希望通過不同粒度的信息,在中醫辨證論治的指引下更準確地進行證候的推理工作,從而更加高效的預測標簽。
參考文獻:
[1] 孫忠人,游小晴,韓其琛,等.人工智能在中醫藥領域的應用進展及現狀思考 [J].世界科學技術-中醫藥現代化,2021,23(6):1803-1811.
[2] 冷玉琳,高泓,富曉旭,等.中醫證候臨床研究方法研究進展 [J].中華中醫藥雜志,2021,36(10):6002-6005.
[3] ZHANG Y Q,WANG N,DU X,et al. SoFDA: An Integrated Web Platform from Syndrome Ontology to Network-Based Evaluation of Disease-Syndrome-Formula Associations for Precision Medicine [J].Science Bulletin,2022,67(11):1097-1101.
[4] XIE J G,LI Y,WANG N,et al. Feature Selection and Syndrome Classification for Rheumatoid Arthritis Patients with Traditional Chinese Medicine Treatment [J/OL].European Journal of Integrative Medicine,2020,34:101059(2020-01-23).https://doi.org/10.1016/j.eujim.2020.101059.
[5] 李力,徐懂,翁奉武,等.基于因子分析與聚類分析的572例乙型肝炎后肝硬化中醫證候規律研究 [J].北京中醫藥大學學報,2021,44(12):1108-1117.
[6] ZHANG H,NI W D,LI J,et al. Artificial Intelligence–Based Traditional Chinese Medicine Assistive Diagnostic System: Validation Study [J/OL].JMIR Medical Informatics,2020,8(6):e17608(2020-06-15).https://medinform.jmir.org/2020/6/e17608.
[7] 李敏,何慶勇,劉旭東,等.基于潛在類別結合隱結構分析的血脂異?;颊咧嗅t常見證候特征研究 [J].世界科學技術-中醫藥現代化,2022,24(5):2102-2113.
[8] WANG K X,YANG M,YANG W Q,et al. Deep Correlation Structure Preserved Label Space Embedding for Multi-Label Classification [C]//Proceedings of the 10th Asian Conference on Machine Learning.Beijing:PMLR,2018,95:1-16.
[9] LIU J Z,CHANG W C,WU Y X,et al. Deep Learning for Extreme Multi-Label Text Classification [C]//SIGIR '17:Proceedings of the 40th International ACM SIGIR Conference on Research and Development in Information Retrieval.Tokyo:ACM,2017:115-124.
[10] WANG J,YANG Y,MAO J H,et al. CNN-RNN: A Unified Framework for Multi-Label Image Classification [C]//2016 IEEE Conference on computer vision and Pattern Recognition(CVPR).Las Vegas:IEEE,2016:2285-2294.
[11] YANG P C,SUN X,LI W,et al. SGM: Sequence Generation Model for Multi-Label Classification [J/OL].arXiv:1806.04822 [cs.CL].(2018-06-13).https://arxiv.org/abs/1806.04822v3.
[12] QIN K C,LI C,PAVLU V,et al. Adapting RNN Sequence Prediction Model to Multi-Label Set Prediction [J/OL].arXiv:1904.05829 [cs.CL].(2019-04-11).https://arxiv.org/abs/1904.05829.
[13] LAN Z Z,CHEN M D,GOODMAN S,et al. ALBERT: A Lite BERT for Self-supervised Learning of Language Representations [J/OL].arXiv:1909.11942 [cs.CL].(2019-09-26).https://arxiv.org/abs/1909.11942.
[14] HUANG Z H,XU W,YU K. Bidirectional LSTM-CRF Models for Sequence Tagging [J/OL].arXiv:1508.01991 [cs.CL].(2015-08-09).https://arxiv.org/abs/1508.01991.
[15] SHI X J,CHEN Z R,WANG H,et al. Convolutional LSTM Network: A Machine Learning Approach for Precipitation Nowcasting [J/OL].arXiv:1506.04214 [cs.CV].(2015-06-13).https://arxiv.org/abs/1506.04214.
[16] DEVLIN J,CHANG M W,LEE K,et al. BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding [J/OL].arXiv:1810.04805 [cs.CL].(2018-10-11).https://arxiv.org/abs/1810.04805v2.
[17] MANELA D D V,ERRINGTON D,FISHER T,et al. Stereotype and Skew: Quantifying Gender Bias in Pre-Trained and Fine-Tuned Language Models [J/OL].arXiv:2101.09688 [cs.CL].(2021-01-24).https://arxiv.org/abs/2101.09688v1.
[18] 楊麗,吳雨茜,王俊麗,等.循環神經網絡研究綜述 [J].計算機應用,2018,38(S2):1-6+26.
[19] LI H C,XIONG P F,AN J,et al. Pyramid Attention Network for Semantic Segmentation? [J/OL].arXiv:1805.10180 [cs.CV].(2018-05-25).https://arxiv.org/abs/1805.10180v1.
[20] LUONG M-T,PHAM H,MANNING C D. Effective Approaches to Attention-Based Neural Machine Translation [J/OL].arXiv:1508.04025 [cs.CL].(2015-08-17).https://arxiv.org/abs/1508.04025v3.
[21] DENG J,RUSSAKOVSKY O,KRAUSE J,et al. Scalable Multi-Label Annotation [C]//CHI14:Proceedings of the SIGCHI Conference on Human Factors in Computing Systems.Toronto:ACM,2014:3099-3102.
[22] 劉江舟,段立.基于Albert-TextCNN的網絡安全文本多標簽分類方法 [J].艦船電子工程,2022,42(3):114-118+170.
[23] YANG P,LUO F,MA S,et al. A Deep Reinforced Sequence-to-set Model for Multi-Label Classification [J/OL].arXiv:1809.03118 [cs.CL].(2018-09-10).https://arxiv.org/abs/1809.03118v1.
作者簡介:劉勇(1997—),男,漢族,江西撫州人,碩士研究生在讀,研究方向:自然語言處理;通訊作者:杜建強(1968—),男,漢族,江西南昌人,教授,博士,研究方向:中醫藥信息學、數據挖掘;羅計根(1991—),男,漢族,江西萍鄉人,講師,碩士,研究方向:自然語言處理;李清(1982—),女,漢族,江西撫州人,講師,博士,研究方向:中醫辨證規律;于夢波(1998—),男,漢族,河南周口人,碩士研究生在讀,研究方向:自然語言處理;鄭奇民(1998—),男,漢族,山西運城人,碩士研究生在讀,研究方向:自然語言處理。