顧君杰,王 蓓+,李曉禹,鄒俊忠
(1.華東理工大學(xué) 信息科學(xué)與工程學(xué)院,上海 200237;2.清影醫(yī)療科技(深圳)有限公司 研發(fā)部,廣東 深圳 518083)
科室導(dǎo)診在患者正式就診前,根據(jù)病癥給患者提供可參考的掛號(hào)就診科室。隨著門診科室的分類越來越細(xì),人們僅根據(jù)臨床醫(yī)學(xué)表現(xiàn)而沒有考慮深層次的醫(yī)學(xué)特征并結(jié)合醫(yī)學(xué)常識(shí)的話,較難正確地區(qū)分病癥對(duì)應(yīng)的科室。傳統(tǒng)就診方式下,醫(yī)院會(huì)在就診大廳設(shè)置人工導(dǎo)診臺(tái),由導(dǎo)診臺(tái)工作人員負(fù)責(zé)面對(duì)每天大量的患者科室咨詢問題。近兩年,由于疫情防控的常態(tài)化,線上就診已逐步成為不可缺少的就診模式。在線上問診時(shí),由于沒有線下導(dǎo)診臺(tái)的設(shè)置,導(dǎo)致患者對(duì)自身病癥認(rèn)識(shí)不清從而加重專家醫(yī)生的工作負(fù)擔(dān)。隨著人工智能技術(shù)的發(fā)展,越來越多的研究人員開始對(duì)智能化導(dǎo)診領(lǐng)域進(jìn)行探索。目前,對(duì)智能導(dǎo)診的實(shí)現(xiàn)方法主要有相似度匹配、知識(shí)圖譜問答和數(shù)據(jù)模型分類等。相似度匹配是根據(jù)問診文本和科室核心詞之間的相似度來進(jìn)行科室匹配,尚缺乏一定的醫(yī)學(xué)強(qiáng)知識(shí)性和可解釋性;采用知識(shí)圖譜能夠較好地關(guān)聯(lián)醫(yī)學(xué)專業(yè)知識(shí),但需要強(qiáng)大且完備的專業(yè)領(lǐng)域知識(shí)庫;采用數(shù)據(jù)模型進(jìn)行分類,可以通過選擇合適的神經(jīng)網(wǎng)絡(luò)訓(xùn)練模型來學(xué)習(xí)醫(yī)學(xué)語言特征,所需要的數(shù)據(jù)量也相對(duì)較小。本文主要將科室導(dǎo)診問題看待為數(shù)據(jù)模型分類問題,研究并提出基于深度學(xué)習(xí)的智能化科室導(dǎo)診模型。預(yù)訓(xùn)練采用ALBERT模型來減少參數(shù)、降低訓(xùn)練成本,并送入下游神經(jīng)網(wǎng)絡(luò)對(duì)問診文本的語句位置等特征進(jìn)行捕獲,關(guān)聯(lián)多個(gè)相關(guān)科室,將導(dǎo)診問題轉(zhuǎn)化為多標(biāo)簽文本分類問題,最后給出多科室的預(yù)測(cè)結(jié)果,使得模型的預(yù)測(cè)結(jié)果能夠更貼近實(shí)際應(yīng)用。
當(dāng)前,導(dǎo)診系統(tǒng)在實(shí)現(xiàn)原理上主要可以歸納為基于相似度匹配、基于知識(shí)圖譜問答和基于數(shù)據(jù)模型分類3個(gè)方向?;谙嗨贫绕ヅ涞姆椒ㄍㄟ^計(jì)算患者的疾病描述和科室核心詞之間的文本相似度,將相似度高的科室作為推薦科室輸出。相關(guān)研究主要是對(duì)問診文本進(jìn)行不同方式的加權(quán)來使匹配的預(yù)測(cè)結(jié)果更準(zhǔn)確。衣鵬[1]對(duì)問診病癥進(jìn)行貢獻(xiàn)度加權(quán)計(jì)算,引入信息熵加權(quán)優(yōu)化方法,實(shí)現(xiàn)科室分診功能。徐奕楓等[2]在進(jìn)行權(quán)重賦值時(shí)引入重心后移的概念,以提高科室預(yù)測(cè)的準(zhǔn)確率。曠珊珊等[3]將專家經(jīng)驗(yàn)考慮在內(nèi),構(gòu)建包含主客觀信息的重要度權(quán)重矩陣?;谥R(shí)圖譜問答的方法通過構(gòu)建大規(guī)模的通用醫(yī)療知識(shí)語料庫,形成科室、疾病、癥狀、檢查、藥品相關(guān)聯(lián)的醫(yī)學(xué)知識(shí)圖譜,從而實(shí)現(xiàn)科室導(dǎo)診、智能預(yù)問診等功能。劉道文等[4]融合多源醫(yī)療數(shù)據(jù)構(gòu)建的知識(shí)圖譜,包含癥狀-疾病,疾病-科室-醫(yī)院兩個(gè)子圖譜,實(shí)現(xiàn)各醫(yī)療實(shí)體的關(guān)系對(duì)應(yīng)。湯人杰等[5]在海量醫(yī)學(xué)數(shù)據(jù)的基礎(chǔ)上,通過疾病癥狀識(shí)別、實(shí)體修飾否認(rèn)識(shí)別、實(shí)體管理構(gòu)建等方法完善醫(yī)學(xué)知識(shí)圖譜。全威等[6]通過融合知識(shí)圖譜與患者主述得到科室置信度,并在置信度較低時(shí)以交互問詢方式對(duì)患者癥狀進(jìn)行補(bǔ)充,最終給出導(dǎo)診推薦科室?;跀?shù)據(jù)模型分類的方法借助患者主訴文本,采用文本向量化和分類器結(jié)合的方式,先選用合適的向量化方法對(duì)文本進(jìn)行向量化,之后,使用機(jī)器學(xué)習(xí)或者深度學(xué)習(xí)的方法構(gòu)建分類模型,依據(jù)模型預(yù)測(cè)結(jié)果實(shí)現(xiàn)科室導(dǎo)診。王若佳等[7]借助詞頻-逆文檔(TF-IDF)的方式對(duì)文本進(jìn)行向量化處理,并結(jié)合多種機(jī)器學(xué)習(xí)模型進(jìn)行了分類和比較。劉勘等[8]利用獨(dú)熱(One-Hot)編碼的方式實(shí)現(xiàn)向量化,采用卷積神經(jīng)網(wǎng)絡(luò)(CNN)構(gòu)建分類器,提取文本的高級(jí)語義信息以及不同醫(yī)療術(shù)語之間的相關(guān)性。湯人杰等[9]針對(duì)前人對(duì)導(dǎo)診系統(tǒng)的研究中存在的問題,引入BERT預(yù)訓(xùn)練模型來進(jìn)行文本向量化處理,并對(duì)接下游文本卷積神經(jīng)網(wǎng)絡(luò)(TextCNN)模型實(shí)現(xiàn)科室分類。
在以上智能導(dǎo)診系統(tǒng)的研究方法中,由于患者的病癥有多種表示方法,不同科室的高頻詞也有所重復(fù),僅依靠文本相似度的方法可能造成預(yù)測(cè)結(jié)果差異較大,比如“發(fā)燒”、“咳嗽”、“拉肚子”等在兒科和內(nèi)科中都屬于高頻詞,根據(jù)文本相似度進(jìn)行判斷容易造成混肴。采用知識(shí)圖譜的方法也需要克服數(shù)據(jù)的收集與統(tǒng)一這一難點(diǎn),諸如癥狀與疾病、疾病與科室都是多對(duì)多的關(guān)系,不同來源的問診數(shù)據(jù)可能科室劃分也不同。采用數(shù)據(jù)模型分類的方法可以結(jié)合神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)語義語句等醫(yī)療語言特征,僅針對(duì)問診導(dǎo)診問題進(jìn)行研究時(shí)所需的數(shù)據(jù)集相對(duì)較小,可以將算法模型靈活地嵌入線下導(dǎo)診設(shè)備以及線上智慧醫(yī)療系統(tǒng)中。本文將科室導(dǎo)診問題作為分類問題進(jìn)行研究,設(shè)計(jì)基于深度學(xué)習(xí)的智能化導(dǎo)診模型。與其它論文工作相比,本文的不同點(diǎn)主要有:①多級(jí)科室預(yù)測(cè)模式。將問診時(shí)的一級(jí)科室和二級(jí)科室同時(shí)考慮在內(nèi),以問診問題作為輸入,一級(jí)科室和二級(jí)科室作為輸出,將科室導(dǎo)診問題轉(zhuǎn)化為自然語言處理中的多標(biāo)簽文本分類問題,更貼近實(shí)際應(yīng)用;②少參數(shù)輕量化模型。在文本向量化階段,相比于常用的BERT預(yù)訓(xùn)練模型,本文采用ALBERT模型對(duì)參數(shù)進(jìn)行簡(jiǎn)化,以解決系統(tǒng)應(yīng)用時(shí)數(shù)據(jù)、硬件等資源成本要求比較高的問題,使得導(dǎo)診模型在保證準(zhǔn)確度和適應(yīng)性的同時(shí)更輕量化與小成本化。
本文所構(gòu)建的智能導(dǎo)診模型結(jié)構(gòu)如圖1所示,模型整體分為4個(gè)部分:輸入層、雙向門控循環(huán)單元(Bi-GRU)特征提取層、注意力機(jī)制層、輸出層。以某互聯(lián)網(wǎng)醫(yī)院在一段時(shí)期內(nèi)的問診文本作為數(shù)據(jù)集,對(duì)模型進(jìn)行訓(xùn)練及測(cè)試。輸入層主要作用是采用ALBERT預(yù)訓(xùn)練模型對(duì)輸入文本進(jìn)行向量化處理,將問診文本轉(zhuǎn)化為模型可以接受的形式。然后,將向量化后的數(shù)據(jù)送入Bi-GRU層,通過雙向的循環(huán)神經(jīng)網(wǎng)絡(luò)獲得上下文語義的特征信息,同時(shí)避免出現(xiàn)梯度消失問題。接下來,再經(jīng)過注意力機(jī)制層來突出關(guān)鍵內(nèi)容對(duì)整體的貢獻(xiàn),對(duì)局部的重點(diǎn)特征進(jìn)行加強(qiáng)。最后,根據(jù)sigmoid函數(shù)預(yù)測(cè)概率得到多級(jí)科室的預(yù)測(cè)結(jié)果。
圖1 科室導(dǎo)診模型的整體結(jié)構(gòu)
對(duì)文本進(jìn)行預(yù)訓(xùn)練的模型參數(shù)一般體量較大。為了獲取更優(yōu)的訓(xùn)練效果,往往會(huì)采用增加隱藏神經(jīng)元個(gè)數(shù)的方式,由此帶來的參數(shù)量的增加會(huì)給模型訓(xùn)練帶來困難。相對(duì)于預(yù)訓(xùn)練中常用的BERT模型[10-12],ALBERT模型通過詞嵌入?yún)?shù)因式分解和跨層參數(shù)共享來降低BERT的參數(shù)量[13,14]。
本文采用ALBERT模型對(duì)問診文本進(jìn)行向量化處理。不同于根據(jù)詞語相似度或文本頻率進(jìn)行向量化的方式,利用ALBERT結(jié)構(gòu)中包含的transform雙向編碼器,能夠在編碼時(shí)就將問診時(shí)的上下文信息考慮在內(nèi),在向量化時(shí)考慮一詞多義情況,使文本轉(zhuǎn)化后的向量更具有可解釋性。
ALBERT在token embedding層的向量化過程如圖2所示。將文本送入ALBERT模型時(shí),首先經(jīng)過tokenization標(biāo)志化處理。比如,在模型中輸入“新生嬰兒嘔吐怎么辦”,標(biāo)志化之后就將每個(gè)漢字單獨(dú)作為一部分處理。并且,在對(duì)語句進(jìn)行向量化之前,會(huì)添加[CLS]作為句子開頭的特殊token,以及在結(jié)尾添加[SEP]作為句子結(jié)束的特殊token。其次,將每一個(gè)漢字送入token embedding層,將每個(gè)詞語轉(zhuǎn)化為固定維度的向量,在模型之中統(tǒng)一文本長(zhǎng)度,對(duì)于短文本利用零值填充的方式保證長(zhǎng)度統(tǒng)一。假設(shè)統(tǒng)一一句話的文本由n個(gè)詞語組成,取詞向量的維度為m,那么經(jīng)向量化之后的矩陣X可以表示為X={x1,x2,x3,…,xn}。
圖2 token embedding層向量化過程
問診文本信息經(jīng)ALBERT預(yù)訓(xùn)練之后,對(duì)問診文本中包含的開放語義進(jìn)行了向量化,獲得了動(dòng)態(tài)的詞向量。針對(duì)具體的導(dǎo)診科室分類問題,在這些開放的語義信息中更關(guān)注患者問診時(shí)的上下文序列信息、位置信息和方向信息。本文將向量化之后的數(shù)據(jù)送入下游Bi-GRU神經(jīng)網(wǎng)絡(luò)來學(xué)習(xí)特征序列的依賴關(guān)系。Bi-GRU神經(jīng)網(wǎng)絡(luò)相比于其它神經(jīng)網(wǎng)絡(luò)更適合處理具有序列特性的數(shù)據(jù)[15]。
GRU網(wǎng)絡(luò)在處理經(jīng)ALBERT預(yù)訓(xùn)練之后的第i個(gè)字的時(shí)候,將第i個(gè)字作為輸入xt,與前i-1個(gè)字的隱狀態(tài)ht-1拼接為一個(gè)新的矩陣并送入GRU網(wǎng)絡(luò)層神經(jīng)元中,之后就可以得到訓(xùn)練之后下一個(gè)字的隱狀態(tài)ht。在此基礎(chǔ)上,考慮到在對(duì)問診語句進(jìn)行訓(xùn)練時(shí),當(dāng)前時(shí)刻的輸出與前一刻和后一刻的狀態(tài)都有聯(lián)系,僅使用單向GRU可能導(dǎo)致整句話的特征向量無法得到充分使用。比如,模型對(duì)于“阿莫西林膠囊”,如果僅從前兩個(gè)字或前3個(gè)字無法理解名詞含義,但若在后向添加完整至“膠囊”,就能加強(qiáng)模型對(duì)文本的理解。同理,添加前向GRU使模型能夠反方向增加文本信息。
在Bi-GRU之后接入注意力機(jī)制,通過計(jì)算概率分布突出語句中的關(guān)鍵信息,并對(duì)重要語句分配相應(yīng)注意力。經(jīng)過Bi-GRU層處理的向量表示為H={h1,h2,h3,…,hn}, 通過注意力機(jī)制的計(jì)算得到每個(gè)元素對(duì)其它元素的注意力影響權(quán)重值。比如,αi,j表示第i個(gè)元素對(duì)第j個(gè)元素的影響權(quán)重值。在“新生嬰兒嘔吐怎么辦”中,“新生”、“嬰兒”、“嘔吐”是相對(duì)更重要的部分,而“怎么辦”和為了長(zhǎng)度統(tǒng)一補(bǔ)全的零值影響值較小。利用注意力機(jī)制可以很好地區(qū)分出不同詞語的重要程度。
在問診中,病癥-疾病-科室屬于多對(duì)多的關(guān)系。比如,“新生嬰兒嘔吐怎么辦”和“兒科”、“內(nèi)科”都有關(guān)聯(lián)。依據(jù)實(shí)際應(yīng)用需求,本文在建立模型時(shí)考慮將問診問題抽象成為多標(biāo)簽學(xué)習(xí)任務(wù)。Y={y1,y2,…,yq} 表示所有科室的標(biāo)簽空間,設(shè)置一個(gè)閾值t,對(duì)于每一個(gè)樣本通過多標(biāo)簽分類器f(.)計(jì)算預(yù)測(cè)為每個(gè)科室標(biāo)簽的概率。當(dāng)概率大于設(shè)置的閾值時(shí),在輸出向量中將該位置的標(biāo)簽置為1。本文在輸出層采用sigmoid作為激活函數(shù),在每個(gè)科室類別上,利用sigmoid分類器分別判斷數(shù)據(jù)是否屬于該科室,進(jìn)而將多標(biāo)簽問題轉(zhuǎn)化為多個(gè)二分類問題,sigmoid函數(shù)表達(dá)式為
(1)
用sigmoid激活函數(shù)后,輸出層就將類別yj建模為伯努利概率分布
(2)
這樣,計(jì)算每一個(gè)科室的概率分布就與其它科室相互獨(dú)立。設(shè)置概率閾值為0.5,預(yù)測(cè)概率在閾值之上的多個(gè)科室之間非獨(dú)占輸出。
本文選取了某互聯(lián)網(wǎng)醫(yī)院一段時(shí)期內(nèi)的問診文本對(duì)模型的性能進(jìn)行測(cè)試和分析??紤]到數(shù)據(jù)均衡問題,分別選取了一級(jí)科室為兒科、內(nèi)科、外科、婦產(chǎn)科、腫瘤科5個(gè)科室,每科室2500條問診數(shù)據(jù),將一級(jí)科室下屬的多個(gè)具體科室作為二級(jí)科室。部分選取的科室問診數(shù)據(jù)見表1。在對(duì)問診數(shù)據(jù)進(jìn)行科室標(biāo)簽標(biāo)注時(shí),同時(shí)將問題的一級(jí)科室和二級(jí)科室作為該問題的標(biāo)簽,科室之間以“|”分隔。其中,如果該問診問題的一級(jí)科室和二級(jí)科室名稱相同,則只給該問題貼一個(gè)標(biāo)簽,不再重復(fù)標(biāo)注。一級(jí)科室和二級(jí)科室共有36個(gè)科室類型。
表1 部分科室數(shù)據(jù)示例
對(duì)原始文本數(shù)據(jù)收集整理完成之后,首先對(duì)數(shù)據(jù)進(jìn)行預(yù)處理,去除文本中無效的感嘆詞、空白文本等。之后,將所有數(shù)據(jù)按照75%和25%的比例劃分為訓(xùn)練集和測(cè)試集。訓(xùn)練集共有數(shù)據(jù)9375條,其中一級(jí)科室和二級(jí)科室不相同的問診數(shù)據(jù)為5500條,也就是多標(biāo)簽數(shù)據(jù)占比為58.66%。
采用底層為TensorFlow的Keras深度學(xué)習(xí)框架,采用Python編程語言進(jìn)行實(shí)現(xiàn),實(shí)驗(yàn)環(huán)境參數(shù)為Win11系統(tǒng)、PyCharm軟件、內(nèi)存16 G等。模型各層網(wǎng)絡(luò)結(jié)構(gòu)訓(xùn)練參數(shù)設(shè)置見表2。
表2 模型參數(shù)設(shè)置
模型評(píng)估時(shí)采用binary_crossentropy作為損失函數(shù),針對(duì)多標(biāo)簽問題,可以在每個(gè)類別上分別計(jì)算負(fù)對(duì)數(shù)概率。為了防止模型過擬合,設(shè)置模型的神經(jīng)元失活比例為0.2。結(jié)合問診數(shù)據(jù)集,文本長(zhǎng)度統(tǒng)一選取為80。下游各層結(jié)構(gòu)參數(shù)變化如圖3所示,文本數(shù)據(jù)經(jīng)albert模塊將每個(gè)字提取出312個(gè)特征,形成(80,312)的維度向量,然后送入下游繼續(xù)訓(xùn)練。在GRU層每層選取神經(jīng)元為128個(gè),雙向共256個(gè),輸出維度按照科室類別為36維向量,其中一個(gè)或多個(gè)元素為1,對(duì)輸出向量中對(duì)應(yīng)位置為1的科室進(jìn)行最后預(yù)測(cè)輸出。
圖3 模型各層參數(shù)變化
4.1.1 單標(biāo)簽科室分類模型
采用TF-IDF和樸素貝葉斯方法構(gòu)建單標(biāo)簽科室分類模型,作為與本文多標(biāo)簽科室分類模型進(jìn)行對(duì)比的模型。從分類結(jié)果來看,單科室分類模型的整體準(zhǔn)確率為79.30%。詳細(xì)分析每個(gè)科室的分類準(zhǔn)確率,其中兒科準(zhǔn)確率77.89%、內(nèi)科準(zhǔn)確率81.10%、外科準(zhǔn)確率72.10%、婦產(chǎn)科準(zhǔn)確率83.30%、腫瘤科準(zhǔn)確率84.00%。
為探究錯(cuò)分?jǐn)?shù)據(jù)的特征和原因,以兒科為例,提取出錯(cuò)分?jǐn)?shù)據(jù)進(jìn)行具體分析。發(fā)現(xiàn)將原始科室為兒科預(yù)測(cè)為內(nèi)科的概率最大,占所有錯(cuò)分?jǐn)?shù)據(jù)的63.50%,其次是外科和腫瘤科,分別占所有錯(cuò)分?jǐn)?shù)據(jù)的17.30%和14.50%,最后是婦產(chǎn)科,占所有錯(cuò)分?jǐn)?shù)據(jù)的4.70%。進(jìn)一步地,從原始數(shù)據(jù)中提取出將兒科預(yù)測(cè)為內(nèi)科的數(shù)據(jù)進(jìn)行查看,發(fā)現(xiàn)這些數(shù)據(jù)中的絕大多數(shù)二級(jí)科室實(shí)際是內(nèi)科。也就是說,錯(cuò)分?jǐn)?shù)據(jù)的一級(jí)科室為兒科,二級(jí)科室為內(nèi)科。然而,在單科室分類模式下,只能將這些數(shù)據(jù)按照一級(jí)科室標(biāo)注為兒科,從而導(dǎo)致模型在訓(xùn)練分類的過程中對(duì)兒科和內(nèi)科的特征產(chǎn)生混肴,降低了分類準(zhǔn)確率,出現(xiàn)不合理的預(yù)測(cè)也將大大降低模型的實(shí)用性。
4.1.2 多標(biāo)簽科室分類模型
將數(shù)據(jù)送入本文的多標(biāo)簽科室分類模型中進(jìn)行訓(xùn)練,并對(duì)訓(xùn)練結(jié)果進(jìn)行可視化處理。經(jīng)過多次實(shí)驗(yàn)驗(yàn)證,在迭代次數(shù)為23時(shí),訓(xùn)練集的準(zhǔn)確率為98.84%,損失為0.0340,測(cè)試集的準(zhǔn)確率為98.04%,損失為0.0592。模型訓(xùn)練效果最好,隨迭代次數(shù)增加,訓(xùn)練結(jié)果的損失曲線和準(zhǔn)確率曲線如圖4所示。
圖4 模型訓(xùn)練結(jié)果
與單標(biāo)簽科室分類模型相比,多標(biāo)簽科室分類模型的準(zhǔn)確率得到了明顯提升。在單標(biāo)簽科室分類模型中,由于問診病癥的復(fù)雜性和綜合性,不可避免地會(huì)涉及到多科室交叉問題,所以會(huì)導(dǎo)致僅以單標(biāo)簽科室作為分類標(biāo)準(zhǔn)時(shí),預(yù)測(cè)的準(zhǔn)確率較低。另外,單標(biāo)簽科室分類模式下,預(yù)測(cè)的結(jié)果也不能靈活應(yīng)對(duì)多種實(shí)際問診需求。多標(biāo)簽科室分類模型采用將多個(gè)關(guān)聯(lián)科室輸出的策略有效緩解了上述問題,有助于提升模型的實(shí)用性。
為了驗(yàn)證本文的多科室導(dǎo)診模型在實(shí)際場(chǎng)景中的應(yīng)用效果,將本文的模型生成預(yù)測(cè)腳本,并輸入新的問診數(shù)據(jù)對(duì)模型進(jìn)行驗(yàn)證。部分?jǐn)?shù)據(jù)驗(yàn)證結(jié)果見表3。
表3 模型實(shí)際預(yù)測(cè)情況
根據(jù)模型預(yù)測(cè)結(jié)果對(duì)模型進(jìn)行分析,可以看出模型具有以下特征:
(1)當(dāng)問診的問題一級(jí)科室和二級(jí)科室相同時(shí),模型給出一個(gè)預(yù)測(cè)標(biāo)簽。例如,表3中序號(hào)1和序號(hào)2的問診數(shù)據(jù)。序號(hào)1中的“疝氣”癥狀在醫(yī)學(xué)應(yīng)該規(guī)劃為普外科也就是外科,屬于一級(jí)科室和二級(jí)科室相同,模型給出一個(gè)預(yù)測(cè)科室;同理,序號(hào)2中“體溫過高”屬于內(nèi)科問診病癥,也與模型預(yù)測(cè)結(jié)果相符。
(2)當(dāng)問診的問題一級(jí)科室和二級(jí)科室不相同時(shí),模型給出一個(gè)或多個(gè)二級(jí)科室預(yù)測(cè)結(jié)果。例如表3中序號(hào)3、序號(hào)4和序號(hào)5的問診數(shù)據(jù)。序號(hào)3中對(duì)“癲癇”病癥進(jìn)行問診,模型預(yù)測(cè)結(jié)果給出一級(jí)科室兒科和二級(jí)科室內(nèi)科,患者在實(shí)際問診時(shí)可以直接根據(jù)預(yù)測(cè)結(jié)果進(jìn)行掛號(hào)問診。如果問診數(shù)據(jù)與多個(gè)二級(jí)科室關(guān)聯(lián)度都比較大時(shí),模型給出多個(gè)二級(jí)科室。如序號(hào)6的問診數(shù)據(jù),根據(jù)“小兒腦癱”病癥,模型一級(jí)科室預(yù)測(cè)為兒科,二級(jí)科室給出神經(jīng)內(nèi)科和神經(jīng)腦外科兩個(gè)科室。這是因?yàn)檫@兩個(gè)二級(jí)科室預(yù)測(cè)概率都大于0.5,患者在問診時(shí)可以首選二級(jí)科室為神經(jīng)內(nèi)科,在神經(jīng)內(nèi)科醫(yī)生繁忙或其它特殊情況下將神經(jīng)腦外科作為備選科室。
(3)結(jié)合問診問題的實(shí)際語義給出預(yù)測(cè)科室。在表3中,從序號(hào)1和序號(hào)3的問診問題可以看出,模型在對(duì)科室進(jìn)行預(yù)測(cè)時(shí),更關(guān)注與問診語句的語義而不是科室關(guān)鍵詞語的出現(xiàn)頻率。因?yàn)椤靶骸薄ⅰ皟和?、“幼兒”、“寶寶”等詞語都屬于兒科的高頻詞語,但是序號(hào)1的問診數(shù)據(jù)中雖然有關(guān)鍵詞“小兒”,但在整個(gè)句子的病癥更側(cè)重于疝氣,疝氣問題屬于外科范疇;而序號(hào)3的問診數(shù)據(jù)雖然沒有提到兒科的關(guān)鍵詞,但是根據(jù)語義可以知道問診者更注重于智力的發(fā)育,患者顯然是還沒有發(fā)育或正在發(fā)育的兒童。
針對(duì)就醫(yī)問診前的科室選擇問題,本文提出一種基于ALBERT和Bi-GRU并結(jié)合注意力機(jī)制的多科室分類模型。結(jié)構(gòu)設(shè)計(jì)上,ALBERT預(yù)訓(xùn)練能夠降低模型的參數(shù)量,雙向GRU能夠捕獲問診文本前向和后向的位置信息和語義信息,注意力機(jī)制使得模型更關(guān)注局部重點(diǎn)特征,sigmoid函數(shù)能夠關(guān)聯(lián)多個(gè)相關(guān)科室,得到多級(jí)科室的預(yù)測(cè)結(jié)果。實(shí)驗(yàn)結(jié)果表明,基于深度學(xué)習(xí)的多科室導(dǎo)診模型在準(zhǔn)確率和靈活性上均優(yōu)于單科室導(dǎo)診模式。進(jìn)一步的分析也可以看出,多級(jí)科室導(dǎo)診模型在不同場(chǎng)景下的預(yù)測(cè)結(jié)果具備可靠性和有效性,更貼近于實(shí)際應(yīng)用。本文所提出的算法參數(shù)量相對(duì)較少、成本較低,能夠靈活地嵌入在線上問診應(yīng)用和線下就診指導(dǎo)設(shè)備中,為患者就診提供便捷。