任务型对话系统预训练最新研究进展
?PaperWeekly 原創(chuàng) ·?作者 |?褚維蕪
單位 |?北京郵電大學碩士生
研究方向 |?自然語言處理
引言
近年來,隨著預訓練模型的發(fā)展,對話領域的研究也逐漸開始關注基于預訓練的端到端對話系統(tǒng),2019-2021 這三年的時間涌現(xiàn)出很多關于開放域?qū)υ捪到y(tǒng)預訓練的相關研究,基于英文的包括 google 在 2020 年 1 月發(fā)表的 Meena、Facebook 在 4 月發(fā)表的 Blender,基于中文的主要以百度 PLATO 系列模型為代表?[1]。這些模型的成功一定程度上表明海量數(shù)據(jù)和更大的模型能為對話系統(tǒng)帶來很好的性能收益。
然而,這種依靠參數(shù)量、數(shù)據(jù)量來提升系統(tǒng)性能的方式對于任務型對話而言并不完全適用。一方面,任務型對話數(shù)據(jù)集本身比閑聊型對話更難收集,想要獲取一個非常大的數(shù)據(jù)集來對任務型對話系統(tǒng)進行預訓練是非常困難的;另一方面,預訓練模型參數(shù)過大,訓練和運行需要很高的計算成本,會存在無法快速部署的問題。由于以上問題的存在,任務型對話預訓練的發(fā)展速度明顯不如開放域?qū)υ?#xff0c;但最近兩年也逐漸有一些針對任務型對話進行預訓練的相關工作,本文將對這些工作做一個梳理總結,供大家參考。
本文主要介紹的工作有:
2020EMNLP:TOD-BERT: Pre-trained Natural Language Understanding for Task-Oriented Dialogue?[2]
2021TACL:Soloist: Building task bots at scale with transfer learning and machine teaching?[3]
2021arXiv:PPTOD:Multi-Task Pre-Training for Plug-and-Play Task-Oriented Dialogue System(PPTOD)[4]
2022AAAI:GALAXY: A Generative Pre-trained Model for Task-Oriented Dialog with Semi-Supervised[5]?Learning and Explicit Policy Injection
TOD-BERT:面向任務型對話理解的預訓練模型
2.1 Background & Motivation
使用現(xiàn)有的預訓練語言模型直接在任務型對話數(shù)據(jù)上進行 fine-tune 無法取得很好的性能,主要原因包括以下兩點:一是,對話數(shù)據(jù)和文本數(shù)據(jù)的語言模式不同,所以兩者的數(shù)據(jù)分布有很大差異,因此普通文本預訓練的語言模型在對話數(shù)據(jù)上表現(xiàn)不佳;二是,閑聊型對話數(shù)據(jù)廣泛且易于獲得,但是它們通常很短,沒有明確的對話目標。而任務型對話通常有明確的目標,多輪對話交互,因此閑聊型對話數(shù)據(jù)預訓練模型也很難在任務型對話數(shù)據(jù)上取得很好的表現(xiàn)。
任務型對話數(shù)據(jù)集通常小而稀疏,標注成本很高,本文通過聯(lián)合多個數(shù)據(jù)集在一定程度上緩解了任務型對話預訓練數(shù)據(jù)量不足的問題,并針對對話數(shù)據(jù)的特點對原始 BERT 模型的輸入、預訓練任務進行修改使得模型可以更好地捕捉對話特有的任務信息。
2.2 Method
數(shù)據(jù)集:本文聯(lián)合了九個不同的多輪任務型對話數(shù)據(jù)集,如下表所示。最終,本文預訓練所采用的數(shù)據(jù)集包含 60 多個領域的 100,707 段對話,1.3M 句話語。
TOD-BERT模型
TOD-BERT 在 BERT 模型原有的 MLM 損失函數(shù)上,添加了一個 Response contrastive loss(RCL)用于模擬回復選擇任務。原始 BERT 中對兩段話語進行拼接并對他們的連續(xù)性進行 0-1 預測,而 RCL 損失則是采用了類似 ConveRT 中的雙編碼器結構,同一個 batch 中的其他回復為負樣本,如下圖所示,優(yōu)化目標為最大化正樣例的概率。RCL 損失一方面可以學習更好的【CLS】位置的表示,另一方面可以捕獲潛在的對話順序、結構信息和回復的相似性。
另外,TOD-BERT 的輸入中加入對說話人角色的編碼。對于對話,TOD-BERT 的輸入在每一個話語前面添加角色信息的 token:。TOD-BERT 在意圖識別、對話狀態(tài)追蹤、對話動作預測、回復選擇這四個下游任務上進行了評測,性能均超越了 BERT。
SOLOIST:預訓練對話系統(tǒng)遷移到新的對話任務
3.1 Background & Motivation
構建對話系統(tǒng)需要大量的標注、領域知識以及專家經(jīng)驗,人工標注數(shù)據(jù)費時費力。即便已經(jīng)對某個領域的數(shù)據(jù)進行了大量標注,現(xiàn)實情況下遇到新的任務時,對話系統(tǒng)依然難以完成。
針對以上問題,本文提出了一種新的大規(guī)模構建任務型對話系統(tǒng)的方法,并通過遷移學習和機器教學使其適應新的任務?,F(xiàn)有的模型都是通過收集、標記新的數(shù)據(jù),并為每個任務構建一個系統(tǒng),而 SOLOIST 則不需要,這極大簡化了對話系統(tǒng)遇到新的任務時模型的訓練和部署的工作流程。
3.2 Method
數(shù)據(jù)集:本文使用 Schema、Taskmaster 這兩個任務型對話數(shù)據(jù)集對模型進行預訓練,數(shù)據(jù)集統(tǒng)計數(shù)據(jù)如下表所示。
對于數(shù)據(jù)集中的每一段對話進行預處理如下:定義? 為對話歷史、 為 belief state、 為 DB state、 為 delexicalize 的對話回復,模型輸入是將以上信息進行拼接,因此,訓練數(shù)據(jù)集中的每輪對話可以表示為:
SOLOIST模型
結構說明:使用 GPT-2 直接生成對話狀態(tài)、對話動作、系統(tǒng)回復
預訓練任務:
Belief Prediction:生成任務
Grounded Response Generation:生成任務
Contrastive Objective:對比學習
SOLOIST 在輸入的 [EOS] 位置,引入了一個對比損失函數(shù),該函數(shù)用于預測輸入是正樣例?還是負樣例?,對比損失函數(shù)計算如下所示:
模型的損失函數(shù)為三個預訓練任務的損失函數(shù)相加:
在預訓練階段,本文使用 GPT-2 初始化,利用大型任務型對話標注數(shù)據(jù)訓練一個面向任務型對話的回復生成模型。該模型學習主要的任務完成技能,如對話狀態(tài)追蹤和對話策略學習,并可以根據(jù)用戶目標和外部知識生成可以完成對話任務的回復。在微調(diào)階段,本文通過機器教學將預訓練的 SOLOIST 模型微調(diào)為完成特定(新的)任務的系統(tǒng),其中訓練樣本是由真人教師與系統(tǒng)交互生成。
實驗表明,SOLOIST 成功地將兩種能力從預訓練模型轉(zhuǎn)移到一個新的任務型對話系統(tǒng):一是,預訓練過程中學習到的自然語言理解(NLU)和自然語言生成(NLG)的能力;二是,在域外對話語料庫上根據(jù)用戶目標和外部知識生成可以完成對話任務的回復的能力。
PPTOD:基于prompt方法的任務型對話預訓練
4.1 Background & Motivation
現(xiàn)有基于預訓練模型的任務型對話系統(tǒng)(SimpleTOD、SOLOIST 等)存在一定的局限性,一方面它們將各個子任務級聯(lián)來進行對話生成,有誤差累積,且系統(tǒng)推理會有延遲;另一方面,這些模型的訓練需要提前標注大量的數(shù)據(jù),且標注必須是完整的,因此大量的只有部分標注的數(shù)據(jù)無法使用(eg.只標注了對話狀態(tài)或者對話動作任務的數(shù)據(jù))。
因此,針對以上兩個問題,本文以 T5 模型為基礎,通過 prompt 方法使得預訓練模型不僅可以使用標注完整的對話數(shù)據(jù),還可以使用部分標注的數(shù)據(jù)。這在一定程度上緩解了任務型對話預訓練所面臨的數(shù)據(jù)量不足的問題。
4.2 Method
數(shù)據(jù)集:本文使用 11 個部分標注的任務型對話數(shù)據(jù)集對模型進行預訓練,總共 2.3M 句話語,包含 80 個領域。數(shù)據(jù)集及其標注信息如下表所示。
PPTOD模型
從圖中可以看出每一個訓練樣例之前都添加了一個任務提示,共有四種不同的任務:NLU、DST、POL、NLG,這四種任務是通過多任務學習的方式一起訓練的,任何一個包含上述四種標注之一的數(shù)據(jù)集都可以用于訓練 PPTOD。預訓練和微調(diào)階段的損失函數(shù)如下:
本文在端到端對話生成、對話狀態(tài)追蹤、用戶意圖識別三個下游任務上對模型進行了實驗,結果表明 PPTOD 在各種評估指標上均優(yōu)于當前的 SOTA 系統(tǒng)。
GALAXY:基于半監(jiān)督學習的任務型對話預訓練
5.1 Background & Motivation
現(xiàn)有的任務型對話預訓練的相關研究并沒有在預訓練階段豐富有關對話策略的知識,作者假設在預訓練階段直接學習進行對話策略的學習(DA prediction)可以使模型學習到更好地表示,并進一步提高端到端地性能。因此,本文主要關注于怎樣在預訓練階段來對對話策略進行更好地建模。
一個簡單的方式是將有監(jiān)督對話動作分類損失和預訓練的無監(jiān)督 MLM 損失一起進行多任務訓練,但這種方式存在三個問題:
目前各個任務型對話的 DA 標注不一致,收集一個大規(guī)模的有 DA 標注的數(shù)據(jù)集比較困難
大量的對話是沒有 DA 標注的,因為在聯(lián)合訓練過程中,模型可能會對這些少量的標注數(shù)據(jù)過擬合
對于無標注的對話數(shù)據(jù),模型只能提取到一般的語言知識,不能有效地挖掘?qū)υ挷呗韵嚓P知識
5.2 Method
針對以上問題,本文所設計的解決方案如下:
數(shù)據(jù)集:本文為任務型對話系統(tǒng)構建了一個統(tǒng)一的 DA 標注方法,并整合八個任務型對話數(shù)據(jù)集構建了一個新的有 DA 標注的數(shù)據(jù)集——UniDA;收集并處理了一個大規(guī)模無標注閑聊對話數(shù)據(jù)集——UnDial。
GALAXY模型
結構說明:
UniLM 為 backbone,它包含一個用于理解的雙向編碼器和一個用于生成的單向解碼器,編碼器和解碼器是權重共享的
輸入表示采用 PLATO 中的方式,包括四個部分:位置編碼、輪次編碼、角色編碼、token 編碼
預訓練任務:
回復選擇:構造正負樣例進行 0-1 分類
回復生成:解碼器逐個 token 進行解碼
對話動作預測:多分類任務,僅對有標注數(shù)據(jù)有用
一致性正則化:將一段對話歷史兩次輸入編碼器,由于 dropout 擾動會得到兩個不同的分布,采用 KL loss 來最小化這兩個分布之間的距離,如下圖所示。
半監(jiān)督預訓練范式
有標注數(shù)據(jù)的損失函數(shù)
無標注數(shù)據(jù)的損失函數(shù)
總的損失函數(shù)(有標和無標數(shù)據(jù)混合訓練)
微調(diào)及推理
數(shù)據(jù)集:MultiWOZ
對于有語義標注信息的對話數(shù)據(jù),將標注信息與系統(tǒng)回復拼接作為新的生成,并保留對話動作預測任務
損失函數(shù)
GALAXY 的實驗結果表明大規(guī)模任務型對話數(shù)據(jù)進行預訓練可以帶了很好的收益,且有監(jiān)督對話動作預測任務對學習對話策略是有效的。
總結
從預訓練數(shù)據(jù)來看,除了 SOLOIST 外,其他三個模型都是盡量使模型可以使用更多的預訓練數(shù)據(jù)。TOD-BERT 聯(lián)合了九個任務型對話數(shù)據(jù)集進行預訓練,PPTOD 設計了一種可以利用部分標注數(shù)據(jù)集的模型,GALAXY 則更近一步,有標注和無標注的數(shù)據(jù)都可以用于訓練。
從預訓練任務上來看,四個模型都針對對話的特點調(diào)整了傳統(tǒng)的預訓練任務。TOD-BERT 采用了可以模擬下游回復選擇任務的 Response contrastive loss,SOLOIST 將 DST、NLG 均建模為生成任務,PPTOD 基于 prompt 將下游任務均建模為生成任務,GALAXY 則采用了對話動作預測、回復生成 、回復選擇、一致性正則化作為預訓練任務。
從以上四個模型可以看出,目前任務型對話系統(tǒng)預訓練領域的研究主要集中在:如何解決任務型對話數(shù)據(jù)量不足的問題;以及怎樣設計更適用于對話系統(tǒng)的預訓練任務來捕捉對話中的任務相關的信息。本文所介紹的模型雖然一定程度上緩解了上述問題,但是任務型對話預訓練相比于 PLATO-XL 這種通用的對話預訓練模型還有很大的差距。
參考文獻
[1] Ni J, Young T, Pandelea V, et al. Recent advances in deep learning based dialogue systems: A systematic survey[J]. arXiv preprint arXiv:2105.04387, 2021.
[2] Wu C S, Hoi S C H, Socher R, et al. TOD-BERT: Pre-trained Natural Language Understanding for Task-Oriented Dialogue[C]//Proceedings of the 2020 Conference on Empirical Methods in Natural Language Processing (EMNLP). 2020: 917-929.
[3] Peng B, Li C, Li J, et al. Soloist: Building task bots at scale with transfer learning and machine teaching[J]. Transactions of the Association for Computational Linguistics, 2021, 9: 807-824.
[4] Su Y, Shu L, Mansimov E, et al. Multi-Task Pre-Training for Plug-and-Play Task-Oriented Dialogue System[J]. arXiv preprint arXiv:2109.14739, 2021.
[5] He W, Dai Y, Zheng Y, et al. GALAXY: A Generative Pre-trained Model for Task-Oriented Dialog with Semi-Supervised Learning and Explicit Policy Injection[J]. arXiv preprint arXiv:2111.14592, 2021.
特別鳴謝
感謝 TCCI 天橋腦科學研究院對于 PaperWeekly 的支持。TCCI 關注大腦探知、大腦功能和大腦健康。
更多閱讀
#投 稿?通 道#
?讓你的文字被更多人看到?
如何才能讓更多的優(yōu)質(zhì)內(nèi)容以更短路徑到達讀者群體,縮短讀者尋找優(yōu)質(zhì)內(nèi)容的成本呢?答案就是:你不認識的人。
總有一些你不認識的人,知道你想知道的東西。PaperWeekly 或許可以成為一座橋梁,促使不同背景、不同方向的學者和學術靈感相互碰撞,迸發(fā)出更多的可能性。?
PaperWeekly 鼓勵高校實驗室或個人,在我們的平臺上分享各類優(yōu)質(zhì)內(nèi)容,可以是最新論文解讀,也可以是學術熱點剖析、科研心得或競賽經(jīng)驗講解等。我們的目的只有一個,讓知識真正流動起來。
📝?稿件基本要求:
? 文章確系個人原創(chuàng)作品,未曾在公開渠道發(fā)表,如為其他平臺已發(fā)表或待發(fā)表的文章,請明確標注?
? 稿件建議以?markdown?格式撰寫,文中配圖以附件形式發(fā)送,要求圖片清晰,無版權問題
? PaperWeekly 尊重原作者署名權,并將為每篇被采納的原創(chuàng)首發(fā)稿件,提供業(yè)內(nèi)具有競爭力稿酬,具體依據(jù)文章閱讀量和文章質(zhì)量階梯制結算
📬?投稿通道:
? 投稿郵箱:hr@paperweekly.site?
? 來稿請備注即時聯(lián)系方式(微信),以便我們在稿件選用的第一時間聯(lián)系作者
? 您也可以直接添加小編微信(pwbot02)快速投稿,備注:姓名-投稿
△長按添加PaperWeekly小編
🔍
現(xiàn)在,在「知乎」也能找到我們了
進入知乎首頁搜索「PaperWeekly」
點擊「關注」訂閱我們的專欄吧
·
總結
以上是生活随笔為你收集整理的任务型对话系统预训练最新研究进展的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 花呗1万逾期超过了100天 会有什么影
- 下一篇: ACM旗舰期刊最新综述:一览端到端人脸识