李明娟
鄭州市第二人民醫院藥務科,鄭州 450011
處方審核是醫院管理系統的重要組成環節,合理的處方合格率有助于醫療系統的高效運轉。處方合格率對于醫院聲譽還有患者生命健康的具有重要保障。國內各家醫院也對處方審核高度重視,針對提高處方合格率做出了很多研究成果,目前處方審核都是以藥理學和人工審核為基礎的審核系統[1-7]。基于人工審核的處方審核受限于醫生的水平和精力,而基于規則的處方審核由于樣本和地域限制可能不具有較強的可推廣性。深度學習近年來在語音和圖像識別方面取得很大進展[8],國內的研究人員應用深度學習研究電子病歷的數字編碼化[9]。
本研究通過深度學習建立處方智能化審核系統,首先將門診處方的診斷語言進行分類,每一種描述代表一個獨立元素,對每個獨立元素進行數字化排列,組成診斷矩陣。然后對數字化矩陣圖像化,將其轉化為像素的數值范圍內,利用Hankel 矩陣形成圖片數據[10-12],將數據輸入Lenet 中對已有的處方進行訓練,訓練完成后結果和對照組結果對比,進而驗證本文研究的有效性。
病歷是醫生根據已有的醫學知識對病人做出簡潔的語言判斷,但對智能審核系統而言,系統無法識別人類語言,所以首要步驟是將病歷數字化,目前基于病例讀取和理解的研究多是基于自然語言處理的方向進行探索[13-15],但語言系統本身較為復雜,存在多義性和歧義性等多種問題,這里給出的解決方法是根據診斷病例的關鍵詞的有限性,對其作出數字化映射。
以呼吸科病歷為例,常見病人癥狀有:咳嗽、發熱,咳嗽、黃痰,白痰、肺有濕羅音、發燒、咽喉腫痛,胸悶、氣喘、胸痛、呼吸困難、支氣管炎、咽喉炎癥、肺炎、咽痛、鼻塞、流鼻涕、打噴嚏、頭痛、咽痛、全身肌肉酸痛、食欲不振、鼻癢、聲音嘶啞、咽部發癢、咽喉疼痛、發熱時間、藥物過敏史,將上述癥狀進行排序,組成一個1×29 的行向量。當病人病歷存在咳嗽時,在列向量中標記為1,否則標記為0;若存在發熱,在第二個位置標記為2,否則標記為0,依次根據癥狀進行標記,直至向量位置占滿為止。
本文深度學習采用Lenet 框架,該框架適用于圖片和語音識別,無法直接識別向量,所以將需要向量轉化為圖片,具體過程如下所示:
從圖1 可以看出,當病歷向量中對應位置中標志有數值時,在對應行中寫入對應數量的深灰色方格,當沒有數字時,默認為0,該行全部為淺灰色。圖1 為行向量的圖片例子。
病歷訓練過程中使用的深度學習框架為Lenet,Lenet 是一種典型的卷積神經網絡的結構,由Yann LeCun 發明,因用于MNIST 手寫體數據集的數字識別而出名。
與傳統的手寫字體的Lenet 七層框架不同的是,本人采用的框架只有5 層,因為針對開出的藥方種類相對較多,而不是手寫字體中只有10 類,所以省略了最后2 個全連接層,Lenet 的主要結構見圖2。
數字化病歷為輸入層,圖片大小為29×29×1,其中1 表示為黑白圖像,只有一個通道。
卷積層1 的大小為5×5,卷積層1 深度(個數)為6,卷積步長s=1,輸出矩陣大小為28×28×6,其中6 表示濾波器的個數。池化層1,池化層1大小2×2(即f=2),步長s=2,輸出矩陣大小為14×14×6。卷積層2 大小 5×5,濾波器個數為16,卷積步長s=1,輸出矩陣大小為10×10×16,其中16 表示濾波器的個數。池化層2,濾波器大小2×2(即f=2),步長s=2,輸出矩陣大小為5×5×16。注意,在該層結束,需要將5×5×16的矩陣壓縮成一個400 維的向量。
全連接層直接輸出120×1×1 個向量。最后,輸出層由歐式徑向基函數單元組成,每類一個單元,每個有120 個輸入。
Lenet 的訓練過程如圖3 所示,首先準備標注好的數據和已經被賦予初值的Lenet。定義損失函數loss,常見的損失函數的形式是使用Lenet 輸出層的結果與標注好標簽差值的平方和形式。通過數值計算求解得出損失函數關于需要優化的參數W的偏導數,第n+1 次參數W 等于第n 次參數值加上偏導數的k 倍。Lenet 省略2 個全連接層,直接輸出120 組結果。
本文選用tensorflow 對數據進行訓練和測試,數據選取某醫院2017—2018 年呼吸科病歷,病歷數量為5 325 份。使用Lenet 訓練需要將病例分類為測試集和驗證集,而對照方法統計法不需要將病例分為兩類。其中測試集份數為4 200 份,驗證集分數為1 065 份。測試集與驗證集的比例為4∶1。
對照方法采用統計學方法,采用SPSS 20.0 軟件對數據進行統計分析。計數資料以率(%)表示,采用χ2檢驗,用P<0.05 表示差異有統計學意義。
下文中兩種方法指的是Lenet 方法和統計學方法。
4.1 兩種方法的處方不合格率對比統計結果表明,用Lenet 訓練的處方不合格率(0.75%)小于對照組的處方不合格率(5.92%),門診處方開具合格率提高5.17%,見表1。

表1 兩種方法不合格情況對比
4.2 兩種方法的不合理用藥率統計結果表明,用Lenet 訓練的不合格用藥率(0.66%)小于對照組的不合理用藥率(5.73%),見表2。
用Lenet 訓練結果包括3 張重復用藥門診處方、3 次用法用量不合理、1 次聯合用藥不合理和1 次配伍禁忌,對照組的不合理包含17 次重復用藥、11 次用法用量不合理、12 次聯合用藥不合理和12次配伍禁忌。

表2 兩種方法的不合理用藥率對比
本文使用Lenet 用于處方智能審核研究,給處方審核提供一種可行的方法,研究結論主要有:(1)通過和對照組結果對比,本文方法降低了處方不合格率和不合格用藥率;(2)本文避免以往電子病歷數字化過程的word 轉化vector 過程的復雜繁瑣和多義現象,直接將癥狀與數字一一映射,避免了多義現象。