孫夢琪,倪廣林,張培
(河北北方學(xué)院附屬第一醫(yī)院,河北張家口 075000)
當(dāng)前,我國的人均醫(yī)療資源不均衡問題較為突出。而人口老齡化的不斷加劇,使得醫(yī)療服務(wù)需求量也在持續(xù)增加[1-2]。同時(shí)由于醫(yī)療專業(yè)的自身屬性,職業(yè)培養(yǎng)時(shí)間過長且存在較大的人才缺口,因此進(jìn)一步加劇了醫(yī)療資源的緊缺。隨著智能分診技術(shù)的不斷發(fā)展,線上問診、智能初診和問答客服技術(shù)正在應(yīng)用與推廣,這對減輕醫(yī)生壓力,緩解緊張的醫(yī)療資源具有一定幫助[3-4]。目前使用的智能分診技術(shù)通過對臨床醫(yī)療數(shù)據(jù)、化驗(yàn)單及病歷等文本信息進(jìn)行分析,所采用的算法大多是知識圖譜模型,并根據(jù)輸入數(shù)據(jù)提取數(shù)據(jù)特征。由于該種方法通常依靠人工建立特征框架和診斷模型,主觀性較強(qiáng),故診斷結(jié)果準(zhǔn)確率較低。雖然其收斂速度較快、對計(jì)算機(jī)性能的要求較低,但仍然無法應(yīng)用于實(shí)際場景中。與傳統(tǒng)的機(jī)器學(xué)習(xí)(Machine Learning,ML)算法相比,深度學(xué)習(xí)(Deep Learning,DL)算法在性能和穩(wěn)定度兩方面均有顯著提升。因此,該文基于海量的專家電子病歷文本,利用數(shù)字孿生技術(shù)(Digital Twin,DT)構(gòu)建電子病歷文本向量模型,同時(shí)通過智能感知算法來實(shí)現(xiàn)準(zhǔn)確的預(yù)診斷與分流。
在分流診斷的過程中,依賴于電子病歷、檢查單和醫(yī)學(xué)影像等數(shù)據(jù),其中電子病歷與檢查單均為文本數(shù)據(jù),在模型中需要將其轉(zhuǎn)化為文本向量才能使用模型完成訓(xùn)練,所以該文采用Word2Vec 方法進(jìn)行詞向量的生成及訓(xùn)練。而Word2Vec 模型[5-7]由連續(xù)詞袋(Continuous Bag-of-Word,CBOW)模型或跳字模型(Skip-gram)構(gòu)成。相比CBOW 模型,Skip-gram模型通過文本中的詞匯對上下文進(jìn)行預(yù)測,故其更為高效。因此,文中使用Skip-gram 模型完成詞向量的訓(xùn)練,該模型結(jié)構(gòu)如圖1 所示。
圖1 Skip-gram模型結(jié)構(gòu)
在圖1 中,Skip-gram 模型由輸入層、投影層和輸出層三部分組成。首先設(shè)定一個(gè)文本中心詞,假定該詞的位置為wt,模型可以預(yù)測上下文中wt-1、wt+1等位置詞出現(xiàn)的概率。輸入層的輸入數(shù)據(jù)為wt位置所對應(yīng)的m維初始化向量v(wt),投影層對v(wt)進(jìn)行映射,輸出層可類比為哈夫曼樹(Huffman Tree)結(jié)構(gòu)。
模型訓(xùn)練目標(biāo)函數(shù)如下所示:
式中,p為概率密度,其通??杀硎緸椋?/p>
式中,uw1和vc分別為輸出與輸入的詞向量,uw表示第w個(gè)詞向量。經(jīng)過Word2Vec 模型,初始文本可以分割成詞向量以便于后續(xù)的模型訓(xùn)練。詞向量生成過程如圖2 所示。
圖2 詞向量生成過程
在切割成詞向量后,還需要對詞向量進(jìn)行交叉相似度的計(jì)算,從而去除其中的歧義詞,保證語料向量的正確性[8-9]。假定包含歧義詞的句子用M來表示,則首先需要生成詞向量空間,如圖3 所示。
圖3 詞向量空間的生成過程
將詞向量空間中的文本轉(zhuǎn)換為向量,則相似度的計(jì)算可以表征為:
式中,Wim為句子m中第i個(gè)位置詞向量的權(quán)重,Win為歧義詞文本中第i個(gè)位置詞向量的權(quán)重,且使用三角函數(shù)對向量相似度進(jìn)行計(jì)算。
對于分診模型而言,除了文本信息外,醫(yī)學(xué)影像也是輔助診斷的重要依據(jù),因此還需對相關(guān)數(shù)據(jù)加以分析。該次使用卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Networks,CNN)和殘差網(wǎng)絡(luò)(ResNet)進(jìn)行醫(yī)學(xué)影像識別。
卷積神經(jīng)網(wǎng)絡(luò)(CNN)[10-12]由輸入層、卷積層、池化層和全連接層組成。CNN 網(wǎng)絡(luò)中的卷積層是主要計(jì)算層,其可提取輸入圖像的特征,該層的計(jì)算過程如下:
式中,wi為網(wǎng)絡(luò)層權(quán)重,b為偏置值。池化層通過池化操作進(jìn)行降維,從而減輕計(jì)算量,全連接層則將數(shù)據(jù)特征映射至向量空間。
基礎(chǔ)卷積神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)的圖像識別準(zhǔn)確率偏低,深淺層網(wǎng)絡(luò)神經(jīng)元之間的特征聯(lián)系度不足。因此文中使用殘差網(wǎng)絡(luò)[13]將二者相連接,所采用的殘差網(wǎng)絡(luò)結(jié)構(gòu)如圖4 所示。
圖4 殘差網(wǎng)絡(luò)的結(jié)構(gòu)
假設(shè)殘差結(jié)構(gòu)的輸入為x,則輸出為F(x)+x,其中F(x)為殘差。在卷積神經(jīng)網(wǎng)絡(luò)完成數(shù)據(jù)訓(xùn)練后,需要對訓(xùn)練完畢的數(shù)據(jù)進(jìn)行特征分類,此次使用了受限玻爾茲曼機(jī)(Restricted Boltzmann Machine,RBM)來進(jìn)行分類。RBM 由隱藏層和可視層組成,隱藏層負(fù)責(zé)接收輸入的數(shù)據(jù),可視層則可對數(shù)據(jù)特征加以提取。RBM 分類函數(shù)可表示為:
式中,wij為隱藏層和可視層之間的權(quán)重值,ai為可視層偏置值,bj為隱藏層偏置值。
針對CNN 網(wǎng)絡(luò)的高依賴性,需要在初始模型中加入注意力機(jī)制(Attention Mechanism,AM)[14-16]。該文加入的注意力機(jī)制結(jié)構(gòu),如圖5 所示。
圖5 注意力機(jī)制結(jié)構(gòu)
圖5 中,L為輸入矩陣。對于該矩陣,進(jìn)行線性變換以得到查詢向量Q、鍵值向量K和值向量V共計(jì)三個(gè)參數(shù),計(jì)算公式如下所示:
式中,Wq、Wk以及Wv為均線性參數(shù)矩陣。對Q向量和K向量進(jìn)行轉(zhuǎn)置,可得到評分矩陣S為:
之后使用Softmax 層將S矩陣歸一化以獲得概率分布參數(shù),最終得到全局特征矩陣,并輸出融合診斷結(jié)果:
該算法結(jié)構(gòu)如圖6 所示,其包括文本數(shù)據(jù)特征提取模塊、圖像特征提取模塊以及輸出分類模塊。其中文本數(shù)據(jù)特征提取模塊使用Word2Vec 模型對化驗(yàn)單、檢查單中的文本進(jìn)行訓(xùn)練和驗(yàn)證,并輸出初始詞向量,再使用VSM 算法對詞向量進(jìn)行消歧。圖像特征提取模塊使用CNN 對數(shù)據(jù)特征加以提取,同時(shí)利用殘差結(jié)構(gòu)和RBM 網(wǎng)絡(luò)提升網(wǎng)絡(luò)訓(xùn)練精度及分類準(zhǔn)確度,且采用注意力機(jī)制完成權(quán)重分類。最終通過Softmax 層對文本與圖像數(shù)據(jù)訓(xùn)練模型進(jìn)行融合,進(jìn)而完成數(shù)字孿生過程,并輸出診斷結(jié)果。診斷結(jié)果共分為十類,分別對應(yīng)不同類型的疾病。
圖6 該算法執(zhí)行流程
該文所設(shè)計(jì)的模型算法使用Python 進(jìn)行實(shí)現(xiàn),同時(shí)采用TensorFlow 作為深度算法的部署框架。實(shí)驗(yàn)運(yùn)行環(huán)境如表1 所示。
表1 實(shí)驗(yàn)環(huán)境
使用的數(shù)據(jù)集包括文本和圖像數(shù)據(jù)集,其中前者采用公開數(shù)據(jù)集THUCNews 進(jìn)行性能對比,而后者則為MIMIC-III 大型公開醫(yī)療數(shù)據(jù)集。同時(shí)還使用爬蟲從某互聯(lián)網(wǎng)醫(yī)療平臺爬取文本數(shù)據(jù)作為驗(yàn)證集,從而增強(qiáng)模型的泛化能力。此外,該模型還將準(zhǔn)確率、召回率以及F1 值作為評價(jià)指標(biāo),其數(shù)學(xué)公式如下所示:
式中,TP 為真正例,F(xiàn)P 為假正例,F(xiàn)N 為假負(fù)例。
首先驗(yàn)證文本分類結(jié)果的準(zhǔn)確率,在文本數(shù)據(jù)集中使用BERT、TF-IDF、Text-CNN 以及該算法進(jìn)行驗(yàn)證。為了驗(yàn)證模型對數(shù)據(jù)的最佳處理能力,采用了不同維度的輸入數(shù)據(jù),測試結(jié)果如表2 所示。
表2 文本分類算法測試準(zhǔn)確率
由表2 可知,該模型在不同數(shù)據(jù)集、不同維度詞向量情景下的文本分類準(zhǔn)確率均維持在較高的水平。而當(dāng)數(shù)據(jù)維度為100 時(shí),所有算法的準(zhǔn)確率均較高,因此該算法的輸入向量維度選擇了100。同時(shí),相較于對比算法中性能較優(yōu)的Text-CNN 模型,該算法在公開數(shù)據(jù)集中的準(zhǔn)確率由89.45%提升至92.15%,私人數(shù)據(jù)集中的準(zhǔn)確率由81.15%提高至85.41%,說明該算法的分類性能較為理想。
在圖像分類性能的驗(yàn)證中,使用常見的圖像分類算法XGBoost、CNN、RF、SVM 與該算法進(jìn)行對比,分類評估指標(biāo)為準(zhǔn)確率、召回率與F1 值,實(shí)驗(yàn)測試結(jié)果如表3 所示。
表3 圖像分類評估測試結(jié)果
在表3 中,該算法使用了CNN-RBM-AM 的組合算法,在所有對比算法中其評價(jià)指標(biāo)均為最優(yōu),與原始算法CNN 相比,F(xiàn)1值提升了約4%。而相較于對比算法中最優(yōu)的組合算法XGBoost,F(xiàn)1 值增長了約2%。由此說明了,該算法具有較強(qiáng)的圖像分類能力。
在最后的診斷結(jié)果輸出中,該算法輸出的分診結(jié)果也將起到輔助診斷的作用。因此使用爬蟲抓取的醫(yī)療數(shù)據(jù)集進(jìn)行診斷結(jié)果測試,該次實(shí)驗(yàn)選擇了五位患者的信息,經(jīng)過模型訓(xùn)練,輸出的診斷結(jié)果如表4 所示。
表4 診斷結(jié)果對比
由表4 可以看出,該算法的分診結(jié)果與醫(yī)生的診斷結(jié)果大致相同,可以對患者的疾病進(jìn)行較為準(zhǔn)確地分類,這表明其具有一定的工程實(shí)用價(jià)值。
現(xiàn)階段使用的智能醫(yī)療分診技術(shù)依賴于主觀的知識圖譜技術(shù),較少涉及智能算法。該文基于數(shù)字孿生的思想,使用智能感知算法提出了一種醫(yī)療分診技術(shù)。該算法將Word2Vec 和VSM 算法相結(jié)合,生成無歧義的詞向量數(shù)據(jù),再使用改進(jìn)后的CNN 網(wǎng)絡(luò)對醫(yī)療影像進(jìn)行特征分類,使用Softmax 函數(shù)進(jìn)行數(shù)據(jù)融合并輸出診斷結(jié)果。多項(xiàng)實(shí)驗(yàn)測試表明,該算法的性能良好且應(yīng)用價(jià)值較高。