本文介紹的深度學習模型來自Di Jin和Peter Szolovits的paper《PICO Element Detection in Medical Text via Long Short-Term Memory Neural Networks》。在該模型中涉及到的知識點主要有詞嵌入(word embedding),雙向LSTM網絡,Attention機制(Hierarchical Attention),Softmax迴歸,以及條件隨機場。該模型的架構如圖所示。
1. word Embedding
舉個例子,下表詞彙表在手工特徵中的編碼值,大小在[-1,+1]之間。絕對值越接近1表示該詞具有該特徵。
這裏King位於詞彙表的第3個位置,則King的One-hot編碼爲: 。
想要獲得King的特徵值向量,可以通過將上表表示的矩陣與King的One-hot編碼做乘法得到,即 。
2. bi-Long Short-Term Memory(bi-LSTM)
LSTM神經網絡架構是RNN架構的變體。首先看一下雙向的RNN展開圖的架構。
該架構的輸入輸出可由下式給出:
LSTM神經網絡單元較RNN單元來說,增加了較多的參數。其單元內部結構如下圖所示:
雙向的LSTM架構則是以LSTM單元按照前面雙向RNN架構的方式組織在一塊的。關於各個門的輸出情況,已經在《深度學習綜述》一文中給出。
3. Attention機制
本模型中只使用了Hierarchical Attention模型中的Word Attention。Hierarchical Attention模型如下圖所示。對於上下文關係,這裏面沒有使用sentence attention層,而是使用了條件隨機場模型。
Why Word Attention ?
並非所有的詞都對句子意義的表示有同等的貢獻。因此,我們引入注意機制來提取對於句子的意義重要的詞,並將這些詞彙的表示聚合在一起形成一個句子向量。
How Word Attention ?
其中, 是一個隨機初始化的上下文向量,會隨着模型的訓練一起學習。這裏,Attention Pooling層首先有一個單層的神經網絡將 轉換成 ,通過比較 和 的相似性確定其權重。對 加權求和得到句子信息向量 。
4. Softmax層的數學依據
這裏,首先需要對指數族分佈和一般線性模型有所瞭解。
指數族分佈:概率分佈滿足
伯努利分佈,高斯分佈,泊松分佈,貝塔分佈都屬於指數分佈。
一般線性模型要點:
1) y|x; θ 滿足一個以η爲參數的指數分佈,那麼可以求得η的表達式。
2) 給定 x,我們的目標是要確定T(y),大多數情況下T(y) = y,那麼我們實際上要確
定的是h(x), 而h(x) = E[y|x]。
3) 。
使用單層神經網絡Softmax迴歸對句子進行多元分類。多元分類的對應於多項式分佈,就像二元分類對應伯努利分佈一樣,都有其數學模型在裏面。對於二元分類問題我們使用的是logistic迴歸。
在對數迴歸時,採用的是伯努利分佈,伯努利分佈的概率可以表示爲:
其中,令 則有
該表達式就是logistic迴歸的sigmoid函數。
再看Softmax迴歸,其 T(y)爲一組k-1維的向量。
其中, 。 表示T(y)的第i個數。
求得:
5. 條件隨機場(conditional random field, CRF)
不同於隱馬爾科夫模型和馬爾科夫隨機場這種生成式模型,條件隨機場是判別式模型。
生成式模型直接對聯合分佈進行建模,而判別式模型則是對條件分佈進行建模。
條件隨機場試圖對多個變量在給定觀測值後的條件概率進行建模。
若令 爲觀測序列, 爲與之對應的標記序列,則條件隨機場的目標是構建條件概率模型P(y | x)。
鏈式條件隨機場(chain-structured CRF)
是定義在觀測序列的兩個相鄰標記位置上的轉移函數,用於刻畫相鄰標記變量之間的相關關係以及觀測序列對他們的影響。
是定義在觀測序列的標記位置i上的狀態特徵函數,用於刻畫觀測序列對標記序列的影響。
, 是參數,Z是規範化因子。
這裏需要對 取最大值以獲取概率最大的序列,可採用維特比算法。
x_ij表示狀態x_i 的第j種可能的值
#1. 從S點出發,對於第一個狀態 的各個節點,計算 出S到他們的距離d(S, ),其中 表示任意狀態1的節點。
#2. 對於第二個狀態 ,的所有節點,計算出從S到它們的最短距離:
#3. 按照步驟2的方法從狀態2走到狀態n。