Selective Encoding for Abstractive Sentence Summarization
- Qingyu Zhou, Nan Yang, Furu Wei, Ming Zhou; MSRA&HIT
- ACL2017
- sentence level again
- Models
- Encoder沒什麼好說的,單層BiGRU為每個詞x_i生成一個2d維的hidden state(h_i)
- Selective Mechanism是将詞的h_i與句子的s拼接到一起,擱到一個前饋網絡裡生成輸出h'_i。行吧,但是你這s有點不講道理啊,憑啥s=[h←_1, h→_n],憑啥這個就能代表整個句子。h←_1表示從右到左讀取了整個句子, h→_n表示從左到右讀取了整個句子,看起來還是比較合理的。
- Decoder的不同在于maxout。GRU使用s_t-1, c_t-1, y_t-1更新s_t;s_t+h_i計算e_i然後歸一化得到權重α_i,乘以h'_i得到context向量c_t,和s_t、y_t-1一起放到一個maxout層(k=2)中得到output,然後使用softmax。這個maxout層有點意思,相當于不同層網絡之間有2套互相獨立的權重參數,輸出z的時候選一個能讓z大的參數。這裡encoder使用了BiGRU,decoder得到的輸出是2d,使用k=2的maxout合并相鄰的兩個數值,将輸出降為d維(細細一想好像不是很有道理……把第i個和d+i個合并是不是好一點,畢竟在向量空間中是同一個次元)。
- 性能: all are state-of-the-art
- Gigaword(Rush et al., 2015): Rouge-1:36.15/Rouge-2:17.54/Rouge-L:33.63
- Gigaword(ours): Rouge-1:46.86/Rouge-2:24.58/Rouge-L:43.53(sounds something strange??? why so high?)
- DUC2004: Rouge-1:29.21/Rouge-2:9.56/Rouge-L:25.51