• 沒有找到結果。

3. 研究方法

3.2. 階層式類神經摘要模型

3.2.1. 基本架構

基本架構中包含一階層式編碼器及一解碼器,亦稱之為語句選取器。階層式編碼 器中主要有兩個階層,我們會先針對文件中的語句找到對應的語句表示,再從語 句表示中學習到文件中的重要概念,亦可稱為文件表示;最後會將語句表示及文 件表示皆放置於語句選取器中,使其能夠根據文件表示及語句表示,辨別及排序 摘要句。

語句編碼器

我們利用摺積式類神經網路 (Convolutional Neural Networks, CNNs) 將每個不同 長度的語句投影至向量空間,能夠得到固定長度的向量表示 (Representation)。在 過去的研究中顯示,CNNs 在 NLP 領域的任務中有相當不錯的成效[Cheng and Lapata, 2016; Collobort et al., 2011; Kalchbrenner et al., 2014; Kim et al., 2016, Lei et al., 2015; Zhang et al., 2015]。我們使用 1-D 摺積 (Convolution) 並給定寬度 ℎ 的 摺積核 (Kernel) 𝐾,其定義為每次看 ℎ 個詞彙,類似於 N 元模型 (N-gram) 的 概念,可得到特徵圖 (Feature map) 𝑓。之後,對每個特徵圖沿著時序使用最大池 化 (Max Pooling),將特徵圖中的最大值視為語句特徵。為了能找到更好的特徵,

我們使用多種寬度的摺積核,且每種寬度有多個不同的摺積核,最後將所得到的 特徵串接在一起,即為語句的向量表示。

文件編碼器

在文件編碼器中,我們使用遞迴式類神經網路 (Recurrent Neural Networks, RNNs),

將每個文件的語句序列轉換成一固定長度之向量表示,其能夠擷取到文件中的重 要資訊。其中為了避免產生消失的梯度 (Vanishing Gradient) 問題,我們選擇使用 GRU (Gated Recurrent Unit) [Cho et al., 2014] 作為 RNN 的基本單元。此外,我們 參考相關實作,將文件以倒序的方式作為輸入[Narayan et al., 2017; Narayan et al., 2018a; Narayan et al., 2018b; Sutskever et al., 2014]。由於我們使用的訓練語料是以 新聞為主,而大多數新聞的主旨通常座落於開頭幾句,因此以倒序方式輸入文章,

能使得RNN 對重要資訊記憶更深,因此可定義下列算式:

𝐡+ = 𝑓y(𝐡+‰g, 𝐬+) (3-2)

𝐝 = 𝐡g (3-3)

其中 𝑓y(∙) 為 RNN,𝐡+ 是序列中每個時間點經過 RNN 運算後得到的隱藏層輸 出,而 𝐬+ 為語句向量。因輸入方式為倒序,所以每個時間點 𝐡+ 都會參考後一 時間點的輸出 𝐡+‰g 及當前時間點的語句向量 𝐬+ 。最後為了能得到整篇文章的 隱含資訊,我們將最後一個時間點的輸出 𝐡g 視為文件向量 𝐝 ,並供之後摘要 擷取時使用。

摘要選取器

我們的摘要選取器主要會將文件中每個語句標示為1 (摘要) 或 0 (非摘要)。在此 部分,我們將會使用另外一個RNN,其中輸入一樣以語句向量為主,而語句向量 同樣是經由語句編碼器所產生。此處與文件編碼器不同之處在於,摘要選取時是 以文件的正序輸入,因此可定義成下列方程式:

𝐨+ = 𝑓<(𝐨+•g, 𝐬+) (3-4)

𝐨Ž= 𝐝 (3-5)

𝑦+ = softmax(MLP(𝐨+)) (3-6)

其中 𝐨+ 為隱藏層輸出,𝑓<(∙) 為一 RNN 架構,其輸入包含前一時間點的隱層層 輸出 𝐨+•g 和當前時間點的語句輸入 𝐬+。為了在選取摘要時能參考到整篇文章的 主旨,我們將初始的隱藏層 𝐨Ž 設定為文件向量 𝐝。此舉可以同時參考局部 (單 一語句) 及整體 (文件) 的資訊,因此能更好的辨別語句。最後我們會透過 (3-6) 計算每個語句的類別 𝑦𝑖,其中 MLP(∙) 為一簡單的前向式類神經網路(Feed-forward Neural Networks) 之 後 經 由 一 個 softmax 函 式 得 到 語 句 類 別 的 機 率 𝑝(𝑦+|𝐬+, 𝐷, 𝜃) ,並依據 𝑝(𝑦+ = 1|𝐬+, 𝐷, 𝜃) 將每個語句進行排序,依照固定的摘要 比例選取排名高的語句作為完整的摘要結果。

圖 3.2 階層式類神經摘要模型-結合聲學特徵

相關文件