訂閱
糾錯
加入自媒體

什么是文本摘要?為什么要有注意力機制?

推理部分

下圖是整個Encoder-Decode的結構。通過上面的理解,我覺得這個圖非常清晰。

什么是文本摘要?為什么要有注意力機制?

Encoder整個輸入序列,并且用Encoder最后一個狀態(tài)結果來初始化Decoder。

將[start]作為輸入傳遞給解碼器Decoder。

使用通過Encoder初始化過的Decoder運行一個time stpe。

輸出將是下一個單詞的概率,將選擇概率最大的單詞。

這個預測的單詞將會在下一時間Step中作為輸入。并且通過當前狀態(tài)更新內部參數(shù)。

重復步驟3-5,直到生成[end]或達到目標序列的最大長度。

image.png

Encoder-Decoder結構的局限性

Encoder將整個輸入序列轉為固定的長度,但是當序列很長的時候,Encoder將會很難記住整個序列的內容,無法將所有必要信息準確的編碼到固定長度。但是,我們需要關注序列中所有的內容么,不需要。

注意力機制

為了解決長句子的問題,注意力機制出現(xiàn)在人們的視野。注意力機制為對結果重要的部分添加高的權重,以保留主要信息。舉個例子:

需要編碼的序列[x1,x2,x3,x4,x5,x6,x7] Source sequence: “Which sport do you like the most?

需要解碼的序列[y1,y2,y3] Target sequence: I love cricket. 我們可以判斷,y1[I]與x4[you]有關,而y2[love]則與x5[like]有關。所以,相比記住序列中的所有單詞,不如增加對目標序列重要部分的權重,忽視低權重的部分。

image.png

Global Attention and Local Attention

全局注意力機制 編碼器的隱藏層中,所有部分都參與attention的計算上下文。

什么是文本摘要?為什么要有注意力機制?

局部注意力機制 編碼器的隱藏層中,僅有部分參與attention的計算上下文。

本文最終采用全局注意力機制。(只是添加了注意力機制,編碼的固定長度依然需要固定。所以實戰(zhàn)中需要通過數(shù)據(jù)確定一個合適的長度數(shù)值。短了無法表達文本內容,長了會造成計算資源浪費。)

實戰(zhàn)

我們的目標是為亞馬遜美食評論生成文本摘要。(這里我只提取了我覺得有用的部分)

數(shù)據(jù)表述

這些評論通常很長而且具有可描述性。數(shù)據(jù)集下載:kaggleData。 數(shù)據(jù)涵蓋了超過10年的時間,包括截至2012年10月的所有?500,000條評論。這些評論包括產(chǎn)品,用戶信息,評級,純文本評論和摘要。它還包括來自所有其他亞馬遜類別的評論。

數(shù)據(jù)處理

由于評論文本和摘要中涉及的預處理步驟略有不同,因此我們需要定義兩個不同的函數(shù)來預處理評論和摘要。

評論文本處理

將所有字母小寫;

移除HTML標簽;

Contraction mapping;

移除(‘s);

刪除括號內的內容(覺得括號里面的內容解釋說明不重要);

消除標點符號和特殊字符;

刪除停用詞;

刪除低頻詞;

摘要文本處理

為摘要文本添加[start]和[end]。

數(shù)據(jù)分布

通過數(shù)據(jù)統(tǒng)計,可以看到摘要與文本數(shù)據(jù)的長度分布。通過數(shù)據(jù)可視化,我們可以將評論文本的長度限定在80,而摘要的長度限定在10。

<上一頁  1  2  3  下一頁>  
聲明: 本文由入駐維科號的作者撰寫,觀點僅代表作者本人,不代表OFweek立場。如有侵權或其他問題,請聯(lián)系舉報。

發(fā)表評論

0條評論,0人參與

請輸入評論內容...

請輸入評論/評論長度6~500個字

您提交的評論過于頻繁,請輸入驗證碼繼續(xù)

暫無評論

暫無評論

    掃碼關注公眾號
    OFweek人工智能網(wǎng)
    獲取更多精彩內容
    文章糾錯
    x
    *文字標題:
    *糾錯內容:
    聯(lián)系郵箱:
    *驗 證 碼:

    粵公網(wǎng)安備 44030502002758號