胡金鵬 關毅



隨著科技的發展,智能醫療已經成為當下學界的熱點研究內容。本文主要研究的是呼吸內科疾病的智能診斷,使用電子病歷中的癥狀實體和異常檢查結果實體來診斷患者可能患有的疾病。本文比較了不同的模型在該任務上表現,包括傳統機器學習和深度學習。并且在深度模型中加入了不同的圖表示學習方法以及提出了注意力機制來加強疾病和癥狀之間的聯系。在實驗中,本文提出的結合注意力機制和卷積神經網絡以及外部向量獲得了最優秀的表現。
關鍵詞: 深度學習; 電子病歷; 實體識別; 醫療信息; 智能診斷
【Abstract】 With the development of science and technology, intelligemt medical treatment has become a hot research topic in the current academic circles. This paper focuses on the intelligent diagnosis of respiratory diseases, using symptomatic entities and abnormal test results entities in electronic medical records to diagnose diseases that patients may have. The paper compares the performance of different models on this task, including traditional machine learning and deep learning. In addition, graph representation learning methods are added to the deep learning and attention, which is used to strengthen the relationship between disease and symptoms. In the experiment, the model which combines attention, Convolutional Neural Network(CNN) and external vector achieve the best performance.
【Key words】 ?deep learning; electronic medical record; entity recognition; medical information; intelligent diagnosis
0 引 言
針對每年國內到各類醫療機構就醫人群的絕對數量十分龐大的現狀,醫療人員通常都會面臨巨大的工作壓力。而且絕大多數的就診患者都分布在基層醫療機構。然而國內醫療資源的分配卻存在著不均衡性[1]。近年來,隨著科學技術的迅猛發展,政府對于智能診療技術也給予了高度重視與支持。國務院發布的《新一代人工智能發展規劃》中,明確指出了智能診療技術的方向和前景,其中包括了未來在該方面的各種新模式和新手段,能夠通過人工智能技術在醫療領域的廣泛應用來建立先進的智慧醫療系統。例如,在手術方面可以通過智能機器人來代替醫生,也可以通過一些智能的穿戴設備來隨時監測病人的體征以及其它方面的信息,還可以用計算機實現影像識別,協助醫生進行決策。時下,智慧醫療正逐漸成為熱詞,一方面是因為人工智能技術在近年間取得了可觀的進步,另一方面來自日趨迫切的醫療需求,所以需要尋求合理醫療方案,以及建設有效智能診斷系統,來協助醫生做出診斷,進而降低管理成本和提高醫療水平。這對于完善醫療保健系統和降低人口老齡化的壓力都有著至關重要的現實意義。
在醫療診斷中,決策支持系統可以幫助醫療從業人員評估疾病風險。迄至目前,在診斷方面,各類研究成果也已相繼涌現。Curiac等人[2]使用貝葉斯模型去診斷精神類疾病。Lakho等人[3]使用貝葉斯網絡構建肝炎診斷決策支持系統,從知識模型中推斷出結論,計算乙型肝炎、丙型和丁型肝炎疾病發生的概率。Kukreja[4]比較了神經網絡、基于C4.5算法的貝葉斯網絡以及反向傳播等方法在哮喘診斷上的效果。Lin[5]使用分類回歸樹(CART)和案例推理技術(CBR)來構建診斷模型。 Liang等人[6]提出使用深度學習抽取電子病歷中的特征來輔助醫療決策。 Ogunleye等人[7]將隨機森林和局部回歸相結合來增強節點輸出的分辨率,在自閉癥診斷中有著較為出色的表現。
本文提出的診斷模型是基于電子病歷。研究中,抽取電子病歷中的實體,包括癥狀、異常檢查結果、疾病等,再通過癥狀和檢查結果來推斷出病者可能患有的疾病。為此,本文的主要研究工作可簡述如下。
(1)實體識別。需要從自由文本的電子病歷中抽取相應的實體。文中使用了LSTM-CRF模型,并且提出了將詞向量和字符相結合的方法。
(2)電子病歷中實體向量的生成。電子病歷中的實體之間是存在關系,為此文中采用了圖表示學習方法,同時采用了deepwalk[8]學習實體的向量表示。
(3)診斷模型的研究。本文對比了不同的模型在診斷上的表現,包括深度學習和傳統的機器學習,而且提出了將attention引入到深度學習模型中的方法。
1 實體識別
實體識別是自然語言處理的信息抽取研究中的一個基礎性的項目課題。總地來說,就是指在文本中抽取具有特定含義的信息,在CoNLL-2002、CoNLL-2003兩屆會議上將命名實體定義為包含特殊含義的短語,具體就是諸如人名、地名、機構名、時間等短語。本文中,實體識別研究主要是抽取電子病歷中的相關實體。為此就會用到疾病、癥狀和異常檢查結果等特征表述[9]。不同實體在電子病歷中出現的實例詳見表1。
實體識別是典型的序列標注任務。這里,采用的是基于雙向LSTM-CRF的模型構建。LSTM是改進的RNN單元,主要通過輸入門、輸出門和遺忘門來控制信息的傳遞。研究中采用模型的主題設計結構如圖1所示。
同時,還在Embedding層做出了改進,將基于字符的向量加入到每個詞的表示中。基于字符的向量生成如圖2所示。
由圖2分析得知,該向量由2部分組成。一部分由LSTM產生,另一部分由CNN產生。每個詞都是由字組成的序列,故而可使用LSTM來抽取詞的序列特征。考慮到CNN在抽取局部特征有著較強的能力[10],本次研發中使用了CNN來抽取每個字的n-gram 特征。
2 基于深度學習的診斷模型
基于深度學習診斷模型結構如圖3所示。在圖3中,P = [w1, w2,…, wn]為一個患者的所有癥狀的索引。研究中,需要通過Embedding層將這些癥狀轉化為向量。在將這些向量送入卷積層之前,需要對這些向量進行Attention處理。在此,使用的向量是疾病向量和癥狀之間加入了注意力機制。通過將不同疾病生成一個疾病向量表,在訓練過程中可將每個訓練數據的標簽從疾病的向量矩陣中根據索引值獲得相關的向量,接著將癥狀向量和疾病向量加以Attention處理。對該過程可闡釋詳述如下。
3 實驗結果及分析
研究中,對于不同實體識別方法的效果對比見表2。由表2可以看到,當加入字符級的詞向量時,模型的表現為最佳,達到了0.959 7。而基于LSTM的實體識別模型的表現最差,則是因為LSTM沒有考慮到輸出標簽之間的聯系,因而會出現一些不可能的錯誤。例如,“B-diseasae”后面的詞的標簽不可能是“I-test”。“B-diseasae”后面的標簽只能是“I-disease”、“B-XX”或者“O”。但通過仿真結果討論后可知,如果將LSTM后面加上CRF層就會避免該類錯誤,還可以發現字符級特征在實體識別上也是有效特征,能夠更好地表征各個單詞的含義,從而提高了實體識別的效果。
不同診斷模型的實驗結果對比見表3。由表3可以看到,在top1的表格中,CNN-attention- deepwalk獲得了最好的效果,這說明CNN能夠有效抽取癥狀特征,當加入外部詞向量時也大大提高了模型的準確度。但就總體來說,所有算法的運行效果都較差,這是因為大多數疾病的數據都很稀疏。本次研究得到的疾病頻率統計結果如圖5所示。由圖5可知,高達79%的疾病在本文選取的數據中出現的次數都不超過5,頻數超過30的疾病僅占據所有疾病的8%。
研究過程中發現,當從top1指標轉換為top2和top3時,模型的準確率有了顯著提升,這就說明本文研發的模型能夠有效地提取特征并做出準確診斷。
4 結束語
隨著智慧醫療熱潮的到來,越來越多的人開始重視人工智能在醫療領域的應用。每年的就診人次也在快速地增長,當前的醫療資源建設、尤其是基層醫院,已難以滿足人民群眾的就醫診治需求。智能
診斷發揮著越來越重要的作用。本文提出了使用
人工智能技術對呼吸內科疾病進行診斷,并對比了不同模型在該任務的表現。同時,也提出了使用CNN以及Attention機制來診斷呼吸內科疾病,在所有模型中獲得了最優的表現。但是整體的準確度還未能達到實際應用的水平。此后,還需要采集更多的數據來訓練模型,也要解決數據傾斜的問題。
參考文獻
[1]梁瑋佳,唐元懋. 我國衛生資源配置的空間非均衡研究[J]. 衛生經濟研究,2018(9): 66-71.
[2]CURIAC D I, VASILE G, BANIAS O, et al. Bayesian network model for diagnosis of psychiatric diseases[C]// Proceedings of the ITI 2009 31st International Conference on Information Technology Interfaces. Croatia:IEEE, 2009: 61-66.
[3]LAKHO S, JALBANI A H, VIGHIO M S, et al. Decision support system for hepatitis disease diagnosis using bayesian network[J].Sukkur IBA Journal of Computing and Mathematical Sciences,2017, 1(2): 11-19.
[4]KUKREJA S. A comprehensive study on the applications of machine learning for the medical diagnosis and prognosis of Asthma[J]. arXiv preprint arXiv:1804.04612v1,2018.
[5]LIN R H. An intelligent model for liver disease diagnosis[J]. Artificial Intelligence in Medicine,2009, 47(1): 53-62.
[6]LIANG Z, ZHANG Gang, HUANG Xiangji, et al. Deep learning for healthcare decision making with EMRs[C]//2014 IEEE International Conference on Bioinformatics and Biomedicine (BIBM). Belfast, UK:IEEE, 2014: 556-559.
[7]OGUNLEYE A, WANG Qingguo, MARWALA T. Integrated learning via randomized forests and localized regression with application to medical diagnosis[J]. IEEE Access, 2019, 7: 18727-18733.
[8]PEROZZI B, Al-RFOU R, SKIENA S. Deepwalk: Online learning of social representations[C]// Proceedings of the 20th ACM SIGKDD International Conference on Knowledge Discovery and Data Mining. New York:ACM, 2014: 701-710.
[9]楊錦鋒, 關毅, 何彬, 等. 中文電子病歷命名實體和實體關系語料庫構建[J].軟件學報, 2016, 27(11): 2725-2746.
[10]KIM Y. Convolutional neural networks for sentence classification[J].arXiv preprint arXiv:1408.5882, 2014.