天天看點

任務型對話資料集:MultiWOZ 、DSTC一、MultiWOZ 2.0:

一、MultiWOZ 2.0:

必須吐槽,所有人都在說MultiWOZ 2.0,為什麼沒人說1.0是什麼啊,我都要被這個系列搞懵了,況且沒有一篇論文是MultiWOZ 2.0的,也沒有論文是MultiWOZ 1.0的。。。如果沒有人跟我有同樣的困擾,可能是我的問題吧。。。言歸正傳,MultiWOZ這個系列最有名的就是MultiWOZ 2.0了,至今也是相關論文最多的資料集,但為了讓跟我有共同困擾的同學能搞清楚這個系列,我決定先來介紹一下MultiWOZ的前世今生。

1、MultiWOZ的前世今生:

  • New Woz

2018年的時候,劍橋大學的研究人員在提出了一個新的multi-domain DST模型的同時,順帶着提出了一個新的資料集,這論文裡叫做New WOZ,發表在ACL。連結如下,感興趣的自己去讀:

https://www.aclweb.org/anthology/P18-2069/​www.aclweb.org

  • MultiWOZ 2.0

在之前那篇New Woz反響不錯之後,這群劍橋大學的研究人員又單獨發了一篇論文,首次提出了MultiWOZ這個資料集,也就是大家嘴裡一直念叨的MultiWOZ 2.0,因為1.0叫New Woz(真相大白,但是是個人了解。。),這篇論文也是當年EMNLP的Best Paper,也是我這裡要詳細閱讀的一篇,連結如下:

https://www.aclweb.org/anthology/D18-1547/​www.aclweb.org

  • MultiWOZ 2.1

2019年,亞馬遜的研究人員針對MultiWOZ 2.0中的一些錯誤做了修正,添加了對槽位的解釋和對話行為的标注,MultiWOZ 2.1誕生了,連結如下:

MultiWOZ 2.1: A Consolidated Multi-Domain Dialogue Dataset with State Corrections and State Tracking Baselines​arxiv.org

  • MultiWOZ 2.2

今年,谷歌的研究人員又在2.1的基礎上,提出了更新版2.2,目前還沒有研究,先貼出論文連結:

https://www.aclweb.org/anthology/2020.nlp4convai-1.13/​www.aclweb.org

2、關于MultiWOZ這個名字(資料收集方法):

這個名字我也要吐槽,其實也查了半天,百度能給的東西還是太少,或者說翻譯過來可能有問題,是以一直搜尋不到理想的結果。MultiWOZ全稱Multi Domain Wizard-of-Oz ,多領域都好了解,主要是這個Wizard-of-Oz,翻譯過來是《綠野仙蹤》,直譯是《奧茲國的巫師》,據說是美國的西遊記那種。。。如果不好好查閱資料我是真的差點就以為作者是很愛這本書的忠實粉絲了。。。

Wizard-of-Oz 是Wizard-of-Oz Experiment或者Wizard-of-Oz Testing或者Wizard-of-Oz Method,是一種方法、技術,簡單來說就是“你以為你在跟機器對話,實際上這個機器的背後是另一個人”,這是一種使還沒有實作的技術先通過人工模拟系統的響應的技術手段,請看wikipedia上的解釋,再具體的感興趣的自己去查,反正我在百度搜尋“綠野仙蹤實驗/方法/技術”壓根搜尋不出來,可能是翻譯過來人家中文不叫這個名字把,隻能這麼安慰一下自己。。。

任務型對話資料集:MultiWOZ 、DSTC一、MultiWOZ 2.0:
任務型對話資料集:MultiWOZ 、DSTC一、MultiWOZ 2.0:

是以,這個MultiWOZ資料集,正是因為用了Wizard-of-Oz方法進行資料的制作和收集,是以才取了這個名字,當然還提到了crowd-sourcing衆包的方法,這個方法我也是第一次聽說,衆包跟外包聯系起來就比較好了解,衆包也是找人來幹活,但不花錢,找社會上的志願者,你一點我一點,大家就把這事幹成了。針對這個方法,這篇論文的附錄還展示了他們做的GUI,專門用來讓大衆制作(收集)資料集。關于資料收集的細節,不是我要了解的重點,就不展開介紹了。

3、MultiWOZ 2.0資料集細節:

  • 主要目标:在旅遊城市的資訊中心擷取旅遊者查詢的高度自然對話
  • Domain:Attraction, Hospital, Police, Hotel, Restaurant, Taxi, Train,其中後四個域屬于擴充域,包括子任務Booking。每段對話涉及1-5個領域,是以長度和複雜性差别很大。全部的act和slot如下:
任務型對話資料集:MultiWOZ 、DSTC一、MultiWOZ 2.0:
  • 數量及分布:10438個對話,其中3406個單領域對話,7032個多領域對話,多領域中,包含最少2-5個領域。70%的對話超過10個回合,其中單領域平均輪數為8.93,多領域為15.39。在資料裡,對話的序号前面是SNG就是單輪,MUL就是單輪。
任務型對話資料集:MultiWOZ 、DSTC一、MultiWOZ 2.0:
  • 資料結構:每個對話包含a goal,multiple user,system utterances,belief state,dialogue acts and slots。
  • Belief state:有三個部分,分别是semi、book、booked。其中semi是特定領域裡的槽值;book在特定領域的booking slots;booked是book的一個子集,在book這個字典裡,是booked entity(一旦預定生成)。

4、MultiWOZ as a New Benchmark:

MultiWOZ 2.0 作為新的benchmark,提供了三個子任務。分别是,dialogue state tracking、dialogue-act-to-text generation、dialogue context-to-text generation。

  • Dialogue state tracking:用在餐廳子領域的overall和joint goals的accuracy作為評價名額
  • Dialogue-act-to-text generation:用了三個評價名額,分别是Inform rate、success rate、BLEU。其中,Inform rate是判斷系統有沒有提供合适的實體;success rate是判斷系統是否響應所有請求的屬性;BLEU是判斷流暢度的。
  • Dialogue context-to-text generation:用了兩個名額,BLEU和SER,其中SER是slot error rate也就是槽值的錯誤率。

5、在不同任務上的最新Model/Paper(要論文連結的進這個,reference:

https://github.com/budzianowski/multiwoz​github.com

):

  • Belief Tracking:
任務型對話資料集:MultiWOZ 、DSTC一、MultiWOZ 2.0:
  • Policy Optimization:
任務型對話資料集:MultiWOZ 、DSTC一、MultiWOZ 2.0:
  • Natural Language Generation:
任務型對話資料集:MultiWOZ 、DSTC一、MultiWOZ 2.0:
  • End-to-End Modelling:
任務型對話資料集:MultiWOZ 、DSTC一、MultiWOZ 2.0:

6、MultiWOZ 2.0 / 2.1 / 2.2 / 2.3 資料品質對比:

公布時間 主要貢獻 不足之處 針對上一版本的改進
MultiWOZ 2.0 2018年
MultiWOZ 2.1 2019年
MultiWOZ 2.2 2020年
MultiWOZ 2.3 2020年

二、DSTC 2:

其他年份的DSTC都能通路,除了DSTC 2/3的官網通路不了,看樣子像是域名到期了,不知道什麼時候能修複。。。沒有官方管道隻能通過各種零散的資料來學習,還好資料集早早就下載下傳下來了。

先來介紹一下DSTC這個系列吧,全稱是dialogue state tracking challenge,目前2020年已經出到了DSTC9。這個系列從2013年開始的,是國際上第一個對話狀态跟蹤任務的公開評測,由微軟研究院,本田研究院和卡内基·梅隴大學聯合組織。

1、DSTC大家族(簡介):

  • DSTC1 : (人機對話)公交線路查詢,目标固定不變。共5個slot(路線,出發點,重點,日期,時間),有些slot(時間和日期)的取值數量不固定。而且DSTC1的使用者目标在對話過程中不會發生變化。

https://www.microsoft.com/en-us/research/event/dialog-state-tracking-challenge/​www.microsoft.com

  • DSTC2/3 :(人機對話)餐館預訂,使用者查詢滿足特定條件下的餐館的某些資訊(電話、位址等),使用者目标會在對話過程中發生變化。3在2的基礎上新增了一些slot。而且添加了新的領域(旅遊資訊查詢),且隻有很少的訓練資料,目的就是為了嘗試領域遷移。下面這個連結打不開,很難受,等以後再試試,看會不會修複。

http://camdial.org/~mh521/dstc/​camdial.org

  • DSTC4 :(人人對話)旅遊資訊查詢

DSTC4​www.colips.org

任務型對話資料集:MultiWOZ 、DSTC一、MultiWOZ 2.0:
  • DSTC5 :(人人對話)旅遊資訊查詢,與4的差別在于,訓練資料和測試資料用的是不同的語言。

http://workshop.colips.org/dstc5/tasks.html​workshop.colips.org

  • DSTC6 :由三部分組成,分别是End-to-End Goal Oriented Dialog Learning端到端目标導向對話學習, End-to-End Conversation Modeling端到端對話模組化, Dialogue Breakdown Detection對話終端檢測。

http://workshop.colips.org/dstc6/​workshop.colips.org

  • DSTC7-9 :暫時還沒有了解過。

2、DSTC2資料細節:

  • DSTC2是人機對話資料,是一個餐廳預定領域的多輪對話資料集,其中訓練資料有1612個,驗證集有506個,測試集有1117個。
  • 相比于DSTC1,DSTC2允許使用者的目标發生改變,例如,一開始使用者想訂中國餐館,結果最後改為訂印度餐館,這也從某種程度上增加了對話的複雜度。
  • 在對話狀态表示上,DSTC2也更加豐富了,不僅包含使用者目标的槽值對,還包括查找他們的方法以及還有哪些資訊使用者希望系統可以傳回到他。
  • 在DSTC1中,對話狀态是依賴于SLU的結果,而在2中,狀态是獨立于SLU的。

3、DSTC2的對話狀态:

每一輪對話包含三個元素:

  • informable slot:使用informable slot來對使用者目标進行限制,比如使用者想要便宜、西邊的餐廳等等。
  • requested slot:這個slot是一些資訊層面的東西,是使用者可以索取索要的,比如說,餐廳位址、電話告訴我等等。
  • search method:使用者可以有不同的方法讓系統幫忙查詢,例如使用者有哪些限制,可以在限制内查詢;或者使用者要求系統更換一個選項;或者使用者通過具體的名字直接查詢等等。
任務型對話資料集:MultiWOZ 、DSTC一、MultiWOZ 2.0:

4、輸入輸出:

每一輪的輸入是SLU的結果,也就是N-BEST的SLU結果的機率分布,輸出有三個分布,分别是goal constraints目标限制、requested slot請求槽、search method搜尋方法。

任務型對話資料集:MultiWOZ 、DSTC一、MultiWOZ 2.0:

5、DSTC2評價名額:

DSTC2比賽裡最後主要采用了三種名額,同時每種都會被用在上述三個輸出上。分别為:

  • Accuracy,schedule 2,scheme A :準确率,計算每輪對話分布最大值的假設是否正确。基于方案A和時間表2(後面會介紹)。
  • L2 norm,schedule 2,scheme A:L2正則,是指置信狀态的機率向量和真實狀态的0/1向量之間的 L2 距離。此标準用以衡量置信狀态中機率值的品質,同樣基于方案A和時間表2。
  • ROC V2 CA 5,schedule 2,scheme A:ROC曲線,V2是指正确分類話語的分數(我是直譯過來,具體其實也不是很清楚),CA5下文會解釋。

6、DSTC評價名額:

DSTC從DSTC1開始就推出了多項名額,DSTC2也是從中選取了三個來使用:

  • Hypothesis accuracy: 置信狀态中首位假設(top hypothesis)的準确率。此标準用以衡量首位假設的品質。
  • Mean reciprocal rank: 1/R 的平均值,其中R是第一條正确假設在置信狀态中的排序。此标準用以衡量置信狀态中排序的品質。
  • L2-norm: 置信狀态的機率向量和真實狀态的0/1向量之間的 L2 距離。此标準用以衡量置信狀态中機率值的品質。
  • Average probability: 真實狀态在置信狀态中的機率得分的平均值。此标準用以衡量置信狀态對真實狀态的機率估計的品質。
  • ROC performance: 如下一系列名額來刻畫置信狀态中首位假設的可區分性
  • Equal error rate: 錯誤接受率(false accepts,FAs) 和錯誤拒絕率(false rejects,FRs)的相交點(FA=FR)。
  • Correct accept 5/10/20: 當至多有5%/10%/20%的 FAs 時的正确接受率(correct accepts,CAs)。

上述 ROC 曲線相關名額采取了兩種 ROC 計算方式。第一種方式計算 CA 的比例時分母是所有狀态的總數。這種方式綜合考慮了準确率和可區分度。第二種方式計算 CA 的比例時分母是所有正确分類的狀态數。這種計算方式單純考慮可區分度而排出準确率的因素。

7、Schedule評測時機:

DSTC提出了三種評測時機,分别為:

  • Schedule 1:每輪對話都做評估;
  • Schedule 2:對于一個概念(slot-value pair),隻有在這個概念被提及時才評估;
  • Schedule 3:在每個對話結束時評估。

可以看出上述三種評估時機中,schedule 2 更能展現在真實應用中的價值。而 schedule 1是有偏執的,因為當一個概念被提及後,如果使用者或系統沒有對其修改的操作,多數情況下其置信狀态的估計不會改變,這個結果會一直保持多個對話輪次,這樣無論這個估計的品質優劣,都會被計算多次,對評估名額的均值産生影響。Schedule 3 的問題在于忽略了置信狀态品質在對話過程中的影響,即一個概念如果在對話過程中被多次提及或澄清過,那麼在對話過程中這個概念對應的置信機率的變化被忽略了。其實 schedule 2 也有一定的局限性,如果概念之間有沖突或互相影響,即當使用者或系統提及一個概念時會潛在的影響其他在目前輪未被提及的概念的置信機率時,schedule 2 就無法衡量這個影響造成的狀态變化。

(有時間就更新一下。。。)

繼續閱讀