?

非結構化數據表征增強的術后風險預測模型

2024-03-26 02:39王亞強郝學超舒紅平
中文信息學報 2024年1期
關鍵詞:結構化語義向量

王亞強,楊 瀟,朱 濤,郝學超,舒紅平,陳 果

(1.成都信息工程大學 軟件工程學院,四川 成都 610225;2. 成都信息工程大學 數據科學與工程研究所,四川 成都 610225;3. 成都信息工程大學 軟件自動生成與智能服務四川省重點實驗室,四川 成都 610225;4. 四川大學 華西醫院 麻醉手術中心,四川 成都 621005)

0 引言

術后并發癥(如肺部并發癥[1]、心血管不良[2]、ICU入室[3]等)風險(后文簡稱“術后風險”)所導致的術后30天內死亡,已成為全球排名第三位的人群死亡原因[4]。準確的術后風險預測對醫生進行合理的臨床資源規劃、應急方案準備具有重要的輔助作用,對患者的術后風險發生和死亡率降低具有積極的意義[5-6]。

目前,術后風險預測主要基于患者的基本信息(如體溫、血壓、體重等)、術前的實驗室檢查(如氧分壓、氧飽和、蛋白等)、術中的生命體征(如出血量等)等結構化數據,利用極限梯度提升(eXtreme Gradient Boosting,XGBoost)、邏輯回歸(Logistic Regression,LR)、隨機森林、人工神經網絡等模型實現[2,5]。

近年來,深度神經網絡在各領域的預測任務中表現優秀,受到研究者的廣泛關注,也被引入術后風險預測任務[6]。Fritz[7]等人構建了一種多路徑卷積神經網絡,提取和融合患者基本信息、共病情況、術前實驗室檢查和術中生命體征等結構化數據中的特征,用于患者術后死亡風險預測。Barbieri[8]等人利用雙向門控循環單元,將結構化數據之間的時間信息以拼接的方式融入數據表征,采用注意力機制提取重要特征,用于患者術后ICU入室風險預測?,F有方法的核心是如何將結構化數據中的離散型和連續型特征向量化,形成基于深度神經網絡的術后風險預測模型的數據表征。

在術前數據中,除結構化數據外,還包含語義豐富的非結構化術前診斷數據。術前診斷中不僅包含醫生基于的醫學知識,還包含根據局部的結構化數據,對患者病情的總結信息,以及醫生以整體的結構化數據為依據,利用經驗知識,對患者病況的推斷信息。如圖1中患者1的術前數據所示,根據結構化數據收縮壓156 mmHg(毫米汞柱)與舒張壓76 mmHg,基于醫學知識“成人的收縮壓和舒張壓正常范圍應在90 mmHg至120 mmHg之間”,因此,醫生在術前診斷中總結該患者有“高血壓病”,且屬于“3級很高?!?。此外,依據目前患者整體的結構化數據,醫生根據經驗知識,推斷患者是“肺部感染”。更進一步地,術前診斷的整體描述,反映了當前患者的全局狀態。這些語義信息能夠豐富術后風險預測的特征,有助于增強預測模型的性能。

圖1 結構化的患者基本信息和術前實驗室檢查數據

然而,術前診斷數據尚未在術后風險預測任務中被有效利用。如何充分地利用非結構化的術前診斷數據,形成有效的術后風險預測數據表征,尚有待進一步探索。

綜上,本文圍繞非結構化的術前診斷數據如何增強術后風險預測任務這一問題展開研究,主要的貢獻包括以下三個方面:

(1) 與圍術期醫學專家合作,經過清洗、處理、轉換和去隱私過程,構建了一份包含12 240個實例、面向術后風險預測任務的數據集。該數據集的結構化數據部分包含了95列離散型變量、61列連續型變量、一列非結構化的術前診斷變量以及三列二元的術后風險標簽變量,分別表示肺部并發癥、心血管不良和ICU入室風險的發生情況。

(2) 為充分地利用非結構化的術前診斷數據,本文提出一種非結構化數據表征增強的術后風險預測模型,利用自注意力機制,將結構化數據與局部的細粒度實體信息及全局的粗粒度文本語義加權融合,有效地將非結構化數據用于增強術后風險預測性能。

(3) 本文提出的基于自注意力機制融合結構化與非結構化數據的模型結構,為術后風險預測帶來了良好的可解釋性。細節實驗結果分析發現,利用自注意力機制獲得的關系權重矩陣,可以解釋和展示出非結構化數據,不僅增強了重要的結構化數據的貢獻度,而且還補充了風險預測信息。

實驗結果表明,本文提出的非結構化數據表征增強的術后風險預測模型明顯優于所對比的常用統計機器學習模型和最新的深度神經網絡,在三種重要的術后風險預測(包括肺部并發癥風險預測、ICU入室風險預測和心血管不良風險預測)任務上,本文提出的模型均取得了最優的結果,F1值分別達到了66.909%、60.833%和55.888%。此外,通過消融實驗,進一步驗證了本文提出的模型有效地加權融合了局部的細粒度實體信息和全局的粗粒度文本語義信息。利用非結構化術前診斷數據表征增強術后風險預測模型后,肺部并發癥風險預測的F1值提升了6.878%,ICU入室風險預測提升了7.641%,心血管不良風險預測提升了9.541%。

1 相關工作

術后風險預測是醫學信息學領域的研究熱點問題。當前的研究主要集中在驗證統計機器學習模型在術后風險預測任務上的有效性,以及面向特定類型的術后并發癥風險的特征分析兩個層面。Canet[9]等人利用邏輯回歸模型,確定了7個獨立且具有良好鑒別能力的危險因素后,構建了術后肺部并發癥風險預測指標,用于評估和預測術后肺部并發癥的個體風險。Hill[10]等人采用隨機森林模型,自動地發現重要的術前特征,將結構化的美國麻醉醫師協會身體狀況特征與術前特征相結合,提升術后死亡風險的預測性能。與先前工作不同,本文提出了一種非結構化數據表征增強的術后風險預測模型,該模型基于自注意力機制,在預測中有效地融合結構化數據和非結構化語義信息,并提供良好的可解釋性。

術后風險預測目前的主要研究對象是術前和術中的結構化數據,其中包含兩種類型的變量,一種是離散型變量,另一種是連續型變量。其中連續型變量通常會被離散化后,與離散型變量一同構建特征向量,作為術后風險預測模型的輸入[11]。本文的實驗主要基于結構化的患者基本信息和術前的實驗室檢查數據。本文采用與先前工作相同的連續型變量的基本處理方法。差異在于本文借鑒Fritz[7]等人的思想,將離散型變量和離散化的連續型變量構建離散特征詞典,并基于深度神經網絡學習離散特征的嵌入表征。

術后風險預測除可利用術前和術中的結構化數據作為特征之外,通過觀察發現,包含醫學語義信息的非結構化術前診斷數據也可用于增強術后風險預測。Zhang[12]等人提出將英文臨床文本利用Doc2Vec模型[13]直接形成數據表征,然后與結構化數據合并的方式,將非結構化數據與結構化數據融合,應用于住院死亡率、住院時間長短和術后30天再入院的預測任務,該方法在英文臨床數據MIMIC-III[14]上進行了實驗驗證。與該工作不同,本文首次探索了將中文非結構化臨床文本引入術后風險預測的方法。

此外,本文通過觀察還發現,在非結構化的術前診斷中,既包含全局的粗粒度文本語義信息,還包含局部的細粒度醫學實體信息,它們均可為術后風險預測提供醫學語義特征(圖1)。為將這些信息與離散特征的嵌入表征相融合,本文首先基于常用的中文MedBERT(1)URL: https://code.ihub.org.cn/projects/1775獲得實體的嵌入表征,并將術前診斷視為句子后,采用詞嵌入平均池化的方法將其向量化。然后利用自注意力機制[15],將離散特征的嵌入表征與實體的嵌入表征以及向量化的術前診斷進行加權融合,在綜合地利用全局和局部的文本語義信息的基礎上,還為模型帶來了良好的可解釋性[16]。

2 術后風險預測

2.1 任務定義

本文將術后風險預測定義為一項二分類任務,采用有監督學習方法解決。定義(x,y)為一個訓練實例,x中包含xnum、xcat和xPD三種類型的特征。其中,xnum表示表格數據中的連續型特征,共m列,xcat表示表格數據中的離散型特征,共n列,xPD表示非結構化的術前診斷文本數據,y表示術后風險發生的情況,用1或0分別表示風險的發生或未發生。

2.2 表格數據的向量表征

本文提出的術后風險預測模型主要利用結構化表格數據和非結構化術前診斷文本數據對術后風險進行預測(模型的結構如圖2所示)。結構化表格數據由xnum和xcat組成。本文采用分類與回歸樹算法[17],先將連續型特征轉換為離散型特征,在引入醫學語義信息的同時,降低數據的復雜度。轉換后的連續型特征不僅能夠表達醫學語義,還被統一成離散型特征。轉換后的連續型變量表征被定義為xn2cat,如式(1)所示。

圖2 模型結構圖

xn2cat=discretize(xnum)

(1)

處理離散型變量表征的常用方式是采用實體嵌入[18]的方法,即為每一個離散型變量構建一個特征詞表,詞表大小為當前離散型變量的不同取值的數量。然而該方法在建模的過程中僅考慮了單一變量下的不同取值之間的語義關聯,而不同的變量之間的相關性未被考慮其中。為引入全局不同變量之間的語義關聯,本文改進了原始的實體嵌入方法,讓所有的離散型變量共用特征詞表。每一個離散型變量(包括xcat和xn2cat)的不同取值,都會被賦予唯一的索引值xi,其中,i∈[0,|V|],|V|是所有的離散型變量的不同取值的數量總和,即共用的特征詞表的詞表大小。每個xi都將通過學習過程被映射為一個維度為d的向量,定義為etabular,其中d為超參數。通過構建全局共用的特征詞表,原始的離散型變量轉換為語義向量之后,不僅擴充了醫學語義信息,并且不同的離散型變量之間也產生了語義關聯。相比原始的實體嵌入方法,該方法解決了不同離散型變量之間語義關聯缺失的問題。最后,將所有的etabular拼接形成表格數據的向量表征Etabular。

2.3 文本數據的向量表征

術前診斷文本xPD主要包含醫生總結的病人身體癥狀和初步推斷的病情描述,兩者可統一定義為病癥實體。因此,術前診斷文本可以歸納為由多個病癥實體、連接詞以及標點符號構成的集合,每個實例xPD包含lmax項的病癥實體,lmax表示數據集中,xPD中最多可飽含的病癥實體數量。

術前診斷文本可以有兩種向量表征方法,一種是形如利用Doc2Vec模型[13]得到的全局語義向量,獲取該類向量表征的方法我們稱之為粗粒度文本的向量表征方法;另一種是直接將病癥實體對應的語義向量拼接,形成細粒度文本的向量表征。后文將具體介紹它們獲取術前診斷文本粗粒度語義信息和細粒度語義信息的方法。

2.3.1 粗粒度語義向量表征方法

(2)

2.3.2 細粒度語義向量表征方法

將術前診斷文本分詞后,通過MedBERT生成的詞向量被壓縮為單一向量,會導致局部語義信息的丟失,且無法明確術前診斷文本中哪些信息在術后風險預測過程中起到了關鍵作用。為保留術前診斷文本中的局部細粒度實體語義信息,本文首先利用醫學領域數據集,基于BERT+BiLSTM+CRF模型訓練得到實體抽取模型[19],然后利用該模型抽取xPD中的病癥實體,形成病癥實體集合{w0,…,wk,…,wK},其中,K表示當前xPD中抽取得到的病癥實體數量。

圖3 細粒度語義向量的補全與降維轉換方法

(3)

2.4 特征融合方法

在特征融合層,本文選擇采用Self-Attention機制[15]將表格數據表征Etabular與文本數據的向量表征Etext進行特征融合(如圖4所示)。首先,將表示表格數據信息的數據表征Etabular與表示文本語義信息的數據表征Etext拼接,形成新的特征向量集合EX,并將EX通過三個參數矩陣WQ、WK和WV映射為三個不同的矩陣Q、K和V。然后對Q和KT執行點積并利用dk放縮結果,以保證訓練過程中梯度的穩定性。其中,dk是指矩陣K的維度,計算方法如式(4)的Softmax函數的輸入所示。隨后執行Softmax函數進行歸一化,得到不同的數據表征之間(包含表格數據表征和文本數據表征)的注意力權重Wweight,其計算方法如式(4)所示。

圖4 特征融合方法

(4)

最后將Wweight與V相乘得到增強后的特征表示A。具體計算過程如式(5)~式(7)所示。

EX=Etabular⊕Etext

(5)

Q=EXWQ,K=EXWK,V=EXWV

(6)

(7)

通過注意力機制,模型可以自動地學習到特征在推理過程中的重要性或貢獻度。因此,在模型推理過程中,可以通過提取并分析注意力權重矩陣,來探究在模型預測過程中,各特征發揮作用的重要程度,從而為模型帶來良好的可解釋性。

為了解決梯度消失問題,受文獻[20-21]的啟發,表征矩陣A在輸入前饋神經網絡之前,還經過了殘差網絡和層標準化操作。接著將向量輸入到帶有Sigmoid激活函數的前饋神經網絡中,計算預測術后風險的發生概率P如式(8)所示。

P=Sigmoid(WTA+b)

(8)

在式(8)中,W和b是前饋神經網絡將學習的參數。最后,模型的損失定義為如式(9)所示。

其中,M指批量包含的實例數量。

3 實驗

3.1 實驗數據

本文實驗采用了從醫院的臨床管理系統中獲取的數據,其中包含患者的基本信息、術前實驗室檢查數據和術前診斷,以及病人術后發生的肺部并發癥風險、ICU入室風險和心血管不良風險結局。該數據經過了如下基本的預處理過程:

(1) 刪除了有關患者身份的個人信息;

(2) 刪除了缺失率高于50%的變量。

最終得到包含12240個實例的術后風險預測數據集,該數據集中包含95項離散型變量和61項連續型變量以及1項術前診斷變量。數據集中包含的三種術后風險的標簽分布如圖5所示,肺部并發癥風險的陽性率為15.93%,ICU入室風險的陽性率為6.25%,心血管不良風險的陽性率為3.02%。實驗中,本文將數據集按照7∶1∶2的比例劃分得到訓練集、驗證集和測試集。

圖5 實驗數據中的標簽分布

3.2 評估指標

為了評估模型的效果,本文采用精確率(Precision)、召回率(Recall)和F1值作為主要的評估指標,具體的計算如式(10)~式(12)所示。

其中,TP表示在陽性實例中,模型預測為陽性的實例數量;FP表示在陰性實例中,模型預測為陽性的實例數量;FN表示在陽性實例中,模型預測為陰性的實例數量。

3.3 參數設置

模型訓練采用了Adam優化器,初始學習率設置為3e-4,β1=0.9,β2=0.999,批量大小設置為128,訓練輪次設置為100,超參數d設置為32,Dropout比例參數設置為0.5。在以上超參數設置條件下,本文提出的術后風險預測模型達到了收斂。

本文為驗證所提出模型在術后風險預測任務上的有效性,在實驗中選擇了兩種常用的統計機器學習模型LR和XGBoost以及兩種最新的基于表格數據分類的深度神經網絡Wide&Deep[22]和Tabtransformer[23]作為對比模型。LR和XGBoost采用scikit-learn框架[24]實現,Wide&Deep和Tabtransformer采用開源的代碼庫(3)https://github.com/jrzaurin/pytorch-widedeep/tree/pytorch_widedeep實現。

3.4 實驗分析

首先,在三項術后風險預測任務上對比了模型的預測性能,實驗結果如表1所示。

表1 實驗整體結果 (單位: %)

從表1所列結果可以觀察到,Wide&Deep和Tabtransformer在三項術后風險的預測任務上均優于LR和XGBoost,特別是在陽性率較低的心血管不良風險預測任務上,Wide&Deep和Tabtra-nsformer的表現遠優于LR和XGBoost。該結果說明,深度神經網絡在術后風險預測任務上的性能優于統計機器學習模型,這與文獻[6-7]報告的結果保持一致。

此外,從表1中所列結果還可以看出,通過引入術前診斷文本數據表征,本文提出的模型在肺部并發癥、心血管不良和ICU入室三個術后風險預測任務上均取得了最優的性能,F1分別達到了66.909%、55.888%和60.833%。該結果證明,本文提出的文本數據表征增強的術后風險預測模型是有效的。

進一步觀察表1中的結果發現,相比于其他模型,本文提出的模型是在保持了良好的精確率的條件下,大幅地提升了召回率,從而提升了F1。該結果說明,當模型引入非結構化的術前診斷數據表征后,進一步豐富了特征的醫學語義信息,對陽性實例的預測帶來了額外的醫學語義信息補充,從而幫助模型將之前無法判斷的陽性實例準確地預測為陽性,進而提高了模型的召回率。

3.5 消融實驗

為進一步驗證文本數據表征對模型預測效果增強的作用,并探究文本中粗粒度語義信息和細粒度語義信息對預測任務的影響,本文還設計了不加入文本以及分別加入粗粒度和細粒度語義信息的對比消融實驗,結果如表2所示,其中,“-E”表示模型中去除細粒度語義向量表征,“-S”表示模型中去除粗粒度語義向量表征,“-E-S”表示模型中去除所有的文本數據。

表2 消融實驗結果 (單位: %)

表2中在加入文本數據后,本文提出的模型在肺部并發癥風險預測任務上的性能提高了6.878%,在ICU入室風險預測中提高了7.641%,在心血管不良風險預測中提高了9.541%,并且無論是單獨加入粗粒度文本的語義向量還是細粒度文本的語義向量,模型的預測性能均得到明顯改善。該結果說明,非結構化術前診斷中的信息對術后風險預測具有積極的作用,為術后風險預測提供了額外的決策信息,有效地增強了模型的預測能力。

此外,觀察表2還可以發現,陽性率越低的術后風險,通過引入非結構化術前診斷數據表征后,模型的預測性能提升越高。該結果說明,對于陽性實例更少的術后風險,模型需要更多的特征才能更準確地預測陽性病例,引入非結構化的術前診斷能夠為模型帶來更豐富的醫學語義信息,從而使本文提出的模型在陽性率越低的術后風險預測中表現得越出色。

從表2結果還能夠看出,相比于全局的粗粒度語義向量表征的缺失,模型對于局部的細粒度語義向量表征的缺失更加敏感。該結果說明,在術后風險預測的過程中引入圍術期醫學領域知識,對模型的預測性能提升具有重要的作用,這也進一步說明了本文提出的非結構化數據表征增強的術后風險預測模型的有效性和應用價值。

更進一步地,從表2中還可以看出,當模型同時引入粗粒度語義向量表征和細粒度語義向量表征時,模型的預測性能達到最優。該結果說明,當用非結構化數據表征增強術后風險預測模型時,既需要引入粗粒度語義向量表征攜帶的全局語義信息,又需要引入細粒度語義向量表征攜帶的局部語義信息。

3.6 細節分析

本文提出的模型通過自注意力機制為術后風險預測模型帶來了可解釋性。為驗證和說明該效果,本文選取了一個發生了術后心血管不良的病人的案例,觀察模型的注意力權重矩陣。該實例的術前診斷是“右肺上葉結節,高血壓3級”。本文提出的模型準確地預測該實例的術后心血管不良風險結局。提取模型的注意力權重矩陣Wweight,并畫出其熱力圖(圖6)。在圖6中,橫軸上的“右肺上葉結節”和“高血壓3級”是術前診斷中的實體病癥,[PAD]是補全的字符,其余行的描述以及列的描述均是表格數據包含的變量。

圖6 心血管不良實例的注意力權重熱力圖

從圖6可以看出,在術前診斷描述中,“高血壓3級”顯著地與表格數據中的收縮壓和舒張壓變量具有強關聯。該強關聯預示著模型通過訓練,學習到了數據集中包含的醫學領域知識關聯信息,該關聯信息保存在了Wweight中,在術后風險預測中起到了重要的預示作用。另一個方面,該結果還說明,利用自注意力機制為術后風險預測模型帶來了可解釋性??傮w地,實驗結果驗證了本文提出的模型在增強術后風險預測性能方面的魯棒性和可解釋性。

通過對比引入非結構化數據表征前后,Wweight中包含的權重值按列求和后得到的每個變量在術后風險預測中的權重比率排序,進一步觀察在術后風險預測中起重要作用的變量與術后風險結局是否存在醫學語義的相關性,對比結果如圖7所示。

圖7 變量在模型術后風險預測中的重要性排序

從圖7可以看出,權重比率越高,說明變量在預測中具有更高的重要性。從結果可以看出,在引入非結構化數據表征后,與術后心血管不良風險強相關的醫學變量收縮壓與舒張壓的權重比率排序更加靠前。該結果進一步證實了本文提出的模型在提升術后風險預測性能的同時,還學習到了醫學領域知識,具有更好的可解釋性。

從圖7中還可以看到,在引入非結構化數據表征后,臨床醫生根據經驗總結或推斷得到的額外的重要醫學語義信息,也在風險預測中起到了重要的作用,例如臨床醫生基于收縮壓和舒張壓總結并記錄下的“高血壓3級”疾病。一方面,該結果證明了本文提出的模型學習到了醫學領域知識,并對術后風險預測起到了積極的作用。另一方面,該結果還說明,本文通過直覺觀察提出的模型是正確的,術前診斷中包含了大量的醫學語義信息,這些信息既包含表格數據中已有的醫學語義信息,還包含大量可用于豐富原始表格數據的額外的醫學領域知識,這些信息會對模型的預測性能提升起到積極的作用。更進一步地,該結果也說明,本文提出的模型在提升了術后風險預測性能的同時,還具有良好的魯棒性和結果可解釋性。

4 結束語

術后風險預測在臨床醫學中具有重要意義,基于表格數據構建統計機器學習模型和深度神經網絡,實現術后風險預測是常見的方式。非結構化術前診斷數據中蘊含了大量額外的醫學領域知識,可為術后風險預測提供豐富的醫學語義信息,然而它們尚未被有效利用。針對該問題,本文提出了一種新的模型,用非結構化數據表征增強術后風險預測,并在模型中引入自注意力機制,在有效融合表格數據和非結構化數據的同時,為模型帶來良好的可解釋性。實驗結果表明,本文提出的非結構化數據表征增強的術后風險預測模型的性能顯著高于其他比較的基線模型和先進模型。通過消融實驗,驗證了在術后風險預測中引入非結構化術前診斷數據的重要性,證明了本文提出的模型的有效性。此外,通過對模型的注意力權重的細節分析發現,利用自注意力機制將表格數據與非結構化的術前診斷融合用于術后風險預測,為模型帶來了良好的可解釋性。

猜你喜歡
結構化語義向量
向量的分解
促進知識結構化的主題式復習初探
聚焦“向量與三角”創新題
結構化面試方法在研究生復試中的應用
語言與語義
“上”與“下”語義的不對稱性及其認知闡釋
向量垂直在解析幾何中的應用
向量五種“變身” 玩轉圓錐曲線
基于圖模型的通用半結構化數據檢索
認知范疇模糊與語義模糊
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合