• 沒有找到結果。

第四章 病歷紀錄特徵向量學習與預測

4.2 預測模型

4.2.1 針對獨立訓練

若使用的特徵不只一種時,由多個獨立訓練模型會產生多個疾病診斷碼向量 表示法,因此必須先將這些向量表示法進行整合後再進行預測。

圖 4.3 獨立訓練與整合模型架構圖

如圖 4.3 所示,本論文設計了三種整合上述獨立訓練所得向量表示法的方式,

以下我們將分別介紹這三種整合方式:

1. 直接接合(Concatenation)

𝒙

𝑖,𝑐

𝒗

𝑖,𝑐

𝒗

𝑖,𝑡

𝒗

𝑖,𝑎

𝒗

𝑖,𝑙

𝒗

𝑖,𝑝

𝒗

𝑖,𝑑

𝒉

𝑖

𝒖

𝑖

𝒙

𝑖+1,𝑐

𝒗

𝑖,𝑔

35

利用各特徵訓練模型獨立學習出不同的疾病診斷碼向量表示法後,我們以圖

4.4 所示方式進行接合。當採用所有 7 個向量表示法的時候,接合後的向量長度 為 𝑑𝑒× 7;若只採用部分特徵,例如 Code-Code 與 Code-Time 學習的向量表示 法,則如圖 4.5 所示,接合後的向量長度為𝑑𝑒× 2。

圖 4.4 整合模型之「直接接合」,以 7 個特徵全部使用為例

圖 4.5 「直接接合」的向量表示法接合方式,以採用特徵 Code 與 Code-Time 所得之向量表示法為例

如圖所示 4.4 的 Concatenation Layer,並採用以下方式產生整合結果𝒉𝑡, 關係式如公式 3:

𝒗

𝑖,𝑐

𝒗

𝑖,𝑡

𝒗

𝑖,𝑎

𝒗

𝑖,𝑙

𝒗

𝑖,𝑝

𝒗

𝑖,𝑑

𝒉

𝑖

𝒗

𝑖,𝑔

𝒗

𝑖,𝑐𝑜𝑛𝑐𝑎𝑡

𝒗

𝑖,𝑐

𝒗

𝑖,𝑡

𝒗

𝑖,𝑐

𝒗

𝑖,𝑡

𝒗

𝑖,𝑐𝑜𝑛𝑐𝑎𝑡

=

36

𝒉𝑖 = ReLU(𝒗𝑖,𝑐𝑜𝑛𝑐𝑎𝑡𝑾+ 𝒃), 𝑾 ∈ ℝ(𝑒𝑐×𝑁𝑓)×𝑑 (公式 3) 若只有使用 1 個特徵學習出的向量表示法,則沒有𝒗𝑖,𝑐𝑜𝑛𝑐𝑎𝑡,直接以預先訓 練的向量表示法當作𝒉𝑖

2. 以權重合成(Combination of Weights, CoW)

第二種方式是由加權值來整合獨立訓練所得向量表示法。如圖 4.6 與公式 10 所示,我們對各向量表示法都學習出一個權重,代表該對應特徵向量表示法的組 合比重,也就是圖 4.6 中的所有 𝛼 (𝛼𝑐、𝛼𝑡、𝛼𝑎等參數),再將其與對應向量表示 法相乘後相加得到𝒉𝑖,如公式 4 所示。

圖 4.6 整合模型之「以權重合成」,以 7 個特徵全部使用為例

𝒉𝑖 = 𝛼𝑐𝒗𝑖,𝑐+ 𝛼𝑡𝒗𝑖,𝑡+ 𝛼𝑎𝒗𝑖,𝑎 + 𝛼𝑙𝒗𝑖,𝑙 + 𝛼𝑔𝒗𝑖,𝑔+ 𝛼𝑝𝒗𝑖,𝑝 + 𝛼𝑑𝒗𝑖,𝑑 (公式 4)

𝒗

𝑖,𝑐

𝒗

𝑖,𝑡

𝒗

𝑖,𝑎

𝒗

𝑖,𝑙

𝒗

𝑖,𝑔

𝒗

𝑖,𝑝

𝛼

𝑐

𝛼

𝑡

𝛼

𝑎

𝛼

𝑙

𝛼

𝑔

𝛼

𝑝

* * * * * *

𝒉

𝑖

*

𝛼

𝑑

𝒗

𝑖,𝑑

37

其中 Ensemble Parameters (調和權重參數值)方面,將多種由不同特徵所額的 的疾病診斷碼向量表示法透過預測模型學習出一個調和權重值,再將這些調和權 重採用 Softmax 使其總和為 1。(𝛼𝑐、𝛼𝑡、𝛼𝑎、𝛼𝑙、𝛼𝑔、𝛼𝑝及𝛼𝑑為經由 Softmax 計 算之後的調和權重值)

3. 注意力機制 (Attention)

第三種方式是透過注意力機制(Attention Mechanism),學習出各獨立訓練所 得特徵向量表示法的相對重要性。

如圖 4.7 所示,𝒗𝑖代表各為不同的疾病診斷碼向量表示法所組成的矩陣,其 會先透過權重(𝑾𝑄、𝑾𝐾、𝑾𝑉)投影計算出 Query (Q)、Key (K)及 Value (V),其維 度分別為𝑑𝑘、𝑑𝑘、𝑑𝑣,如公式 5。𝒁𝑖表示由 Q 及 K 算出以各向量為基準計算相 互重要性加總 Value (V) 得到的向量矩陣,維度為𝑁𝑓× 𝑑𝑣

𝑄 = 𝒗𝑖𝑾𝑄, 𝐾 = 𝒗𝑖𝑾𝐾, 𝑉 = 𝒗𝑖𝑾𝑉,

where 𝑾𝑄 ∈ ℝ𝑑𝑒×𝑑𝑘, 𝑾𝐾 ∈ ℝ𝑑𝑒×𝑑𝑘, 𝑾𝑉 ∈ ℝ𝑑𝑒×𝑑𝑣. 𝒁𝑖 = Attention(𝑄, 𝐾, 𝑉) = Softmax(𝑄𝐾𝑇

√𝑑𝑘)𝑉. (公式 5)

38

圖 4.7 整合模型之「注意力機制」以產生權重參數值之架構圖

當𝒁𝑖產生之後,我們使用一層平坦層(Flatten Layer)以產生整合後的結果向量 𝒉𝑖,再透過兩層全連接層的學習,以得到預期的輸出,也就是下一筆看診的疾病

𝒗𝑖 =

𝒁

𝑖

× 𝑾

𝑄

× 𝑾

𝐾

× 𝑾

𝑉

𝒗

𝑖,𝑐𝑇

𝒗

𝑖,𝛿𝑇

𝒗

𝑖,𝑎𝑇

𝒗

𝑖,𝑙𝑇

𝒗

𝑖,𝑑𝑇

𝒗

𝑖,𝑝𝑇

𝒗

𝑖,𝑔𝑇

𝒉

𝑖

39

診斷碼𝒙𝑖+1,𝑐分布機率值。兩層全連接層的說明如下:

 第一層為隱藏層(從𝒉𝑖到𝒖𝑖),將維度從𝑁𝑓× 𝑑𝑣投影到𝑑𝑢,以 ReLU 為激

活函數。

 第二層為輸出層(從𝒖𝑖到𝒙𝑖+1,𝑐),用來做最後的預測,其激活函數為

Softmax。

訓練時的損失函數採用 Categorical Cross Entropy。

相關文件