Dialogue Transformers 論文詳解
摘要
論文中引入 transformer 的結構,其中注意力模型在對話(huà)輪的順序上面起了了作用.最近我們使用遞歸神經(jīng)網(wǎng)絡(luò )多輪對話(huà)的上下文中用戶(hù)說(shuō)的話(huà),但是我們原本認為注意力模型會(huì )更適合多輪場(chǎng)景.默認情況下,RNN假設每個(gè)選項和完整的序列有關(guān),但是一輪對話(huà)當中包括一些交錯的對話(huà)邏輯在里面. transformer 模型可以選擇忽略或者選擇對話(huà)的一部分內容.們比較了 Transformer Embedding Dialogue對話(huà)策略對LSTM和REDP的政策.旨在克服RNN的這一限制。我們證明了TED的政策無(wú)論是在準確性還是速度上,行為都是比較有利的。
簡(jiǎn)介
對話(huà)式人工智能助手承諾通過(guò)自然語(yǔ)言幫助用戶(hù)完成任務(wù)。解釋一些簡(jiǎn)單的指令,比如請打開(kāi)燈,相對來(lái)說(shuō)比較簡(jiǎn)單,但是要處理更復雜的任務(wù),這些系統必須能夠進(jìn)行多回合對話(huà).
談話(huà)中的每一句話(huà)不一定非得是對方最近的一句話(huà)的回應。Groz和Sidner[3]認為對話(huà)是一組交錯的話(huà)語(yǔ)片段,其中一個(gè)話(huà)語(yǔ)片段(或話(huà)題)是一組直接相互回應的話(huà)語(yǔ)。在談話(huà)中,這些輪流的順序可能不直接跟著(zhù)對方。一個(gè)直觀(guān)的例子是面向任務(wù)的對話(huà)系統中需要子對話(huà)??紤]這段對話(huà):
BOT: Your total is $15.50 - shall I charge the card you used last time?
USER: do I still have credit on my account from that refund I got?
BOT: Yes, your account is $10 in credit.
USER: Ok, great.
BOT: Shall I place the order?
USER: Yes.
BOT: Done. You should have your items tomorrow.
Dialogue Stacks
助理的問(wèn)題我可以點(diǎn)菜嗎?提示返回手頭的任務(wù):完成購買(mǎi)一種模式是將這些子對話(huà)視為在堆棧、預印本上存在。在審查中,新主題在引入時(shí)被推到堆棧上,并在結束后從堆棧中彈出。
20世紀80年代,Groz和Sidner[3]主張將對話(huà)歷史表示為一堆主題,后來(lái)RavenClaw[4]對話(huà)系統實(shí)現了一個(gè)對話(huà)堆棧,用于處理子對話(huà)。雖然堆棧自然允許處理和結束子對話(huà),但堆棧的嚴格結構也有限制。拉文克勞的作者主張顯式跟蹤主題以啟用用戶(hù)意圖的上下文解釋。但是,一旦從對話(huà)堆棧中彈出一個(gè)主題,就無(wú)法再提供此上下文。在上面的例子中,用戶(hù)可能會(huì )繼續問(wèn)一個(gè)類(lèi)似這樣的問(wèn)題,這樣就耗盡了我的信用,對吧?。如果退款積分的主題已經(jīng)從堆棧中彈出,這將不再有助于澄清用戶(hù)想要知道的內容。由于原則上沒(méi)有限制人類(lèi)如何在對話(huà)中重新訪(fǎng)問(wèn)和插入話(huà)題,所以我們感興趣的是比堆棧更靈活的結構。
Recurrent Neural Networks
近年來(lái),一個(gè)常見(jiàn)的選擇是使用一個(gè)遞歸神經(jīng)網(wǎng)絡(luò )(RNN),用于處理開(kāi)放域和任務(wù)導向系統。如果有足夠的訓練數據,RNN應該能夠學(xué)習任何想要的行為。然而,在一個(gè)典型的低資源環(huán)境中,沒(méi)有用于訓練特定對象的大型語(yǔ)料庫任務(wù)是可用的,不能保證RNN實(shí)際上會(huì )學(xué)習概括這些行為。先前關(guān)于修改基本RNN結構以包含此行為的歸納偏差的工作弗拉索夫等人實(shí)施了一項對話(huà)政策。和Sahay等人。這些作品旨在克服了RNNs不適合對話(huà)建模的特點(diǎn)。默認使用RNN生成編碼的整個(gè)輸入元素序列,除非長(cháng)期短期記憶(LSTM)單元接受足夠的數據訓練,以明確地知道它應該“忘記”序列的一部分。
Transformers
近年來(lái),Transformers結構已經(jīng)取代了遞歸神經(jīng)網(wǎng)絡(luò )作為訓練語(yǔ)言模型的標準,有Transformer XL[9]和GPT等模型-2在各種語(yǔ)料庫中產(chǎn)生許多困惑和產(chǎn)生陳述。對于各種下游任務(wù)是有用的。此外,Transformers對處理異常的輸入更為穩健.
由于Transformers選擇序列中的哪些元素用于在每個(gè)步驟生成編碼器狀態(tài),我們假設它可能是處理對話(huà)歷史的有用架構。這個(gè)會(huì )話(huà)中的話(huà)語(yǔ)序列可以代表多個(gè)交錯的話(huà)題,而轉換者的自我注意機制可以同時(shí)學(xué)習去理清這些話(huà)語(yǔ)片段也要做出適當的反應.
相關(guān)工作
開(kāi)放領(lǐng)域的Transformers
Henderson等人在Reddit的一個(gè)大數據集上訓練答案選擇模型,對話(huà)上下文和答案都是用一個(gè)轉換器編碼的,它們表明這些架構可以在一個(gè)大的、多樣的數據集上預先訓練,然后針對特定領(lǐng)域中的面向任務(wù)的對話(huà)進(jìn)行微調。Dinan等人使用了類(lèi)似的方法,使用transformers對對話(huà)上下文和背景知識進(jìn)行編碼,以研究基于開(kāi)放域的對話(huà)。他們提出的架構有兩種形式:
- 一種是檢索模型,其中另一個(gè)轉換器用于對通過(guò)排名選擇的候選響應進(jìn)行編碼;
- 另一種是生成模型,其中一個(gè)轉換器用作解碼器,通過(guò)令牌生成響應令牌。
與這些方法的關(guān)鍵區別在于,我們在話(huà)語(yǔ)層面運用attention模型,關(guān)注對話(huà)輪回的順序,而不是單個(gè)輪回中的標記順序。
Topic disentanglement in task-oriented dialogue
Recurrent Embedding Dialogue Policy (REDP) : 本文的消融研究強調了REDP性能的提高是由于對話(huà)歷史上的注意力機制和從意外用戶(hù)輸入中恢復的復制機制。對標準RNN結構的這種修改使對話(huà)策略能夠“跳過(guò)”對話(huà)歷史中的特定圈數,并生成在意外輸入前后相同的編碼器狀態(tài)。
未完待續
實(shí)驗結果
參考文檔
論文:Dialogue Transformers
