跨領域任務導向型對話的大規(guī)模中文數(shù)據(jù)集CrossWOZ
文章標題:CrossWOZ: A Large-Scale Chinese Cross-Domain Task-Oriented Dialogue Dataset
論文鏈接:https://arxiv.org/pdf/2002.11893.pdf
github鏈接:https://github.com/thu-coai/CrossWOZ
相關鏈接:https://cloud.tencent.com/developer/article/1617197
Abstract:
為促進多領域(跨領域)對話建模昆著,緩解面向任務的中文數(shù)據(jù)集的不足毛秘,我們提出了CrossWOZ努咐,第一個大規(guī)模中文跨領域任務導向型數(shù)據(jù)集奉呛。
它包含6K的對話,包括酒店围橡、餐廳梗搅、景點刃榨、地鐵、出租車等5個領域的會話和102K個utterances拙绊。此外,語料庫包含豐富的對話狀態(tài)標注對話動作向图,用于用戶和系統(tǒng)兩方面。大約60%的對話都有跨領域用戶目標标沪,即支持域間依賴榄攀,鼓勵對話中跨領域的自然過渡。我們還為pipelined的任務導向型對話系統(tǒng)提供了一些有助于研究人員在這個語料庫上的進行比較和評估的用戶模擬器和幾個benchmark models 基準模型金句。大規(guī)模且豐富的CrossWOZ標注使它適合研究跨領域對話建模中的各種任務檩赢,例如:對話狀態(tài)跟蹤,策略學習违寞,用戶模擬器等贞瞒。
一、 Introduction:
最近趁曼,由于神經(jīng)網(wǎng)絡架構的繁榮军浆,出現(xiàn)了各種任務導向型的對話模型(Yao et al., 2013; Wen et al., 2015; Mrk?ic et al. ′ , 2017; Peng et al., 2017; Lei et al., 2018; Gür et al., 2018)。然而挡闰,這項研究在很大程度上仍然受限于大規(guī)模高質量對話數(shù)據(jù)的可用性乒融。許多語料庫已經(jīng)推進了面向任務導向型的對話系統(tǒng)的研究,其中大多數(shù)是單域對話摄悯,包括ATIS (Hemphill et al., 1990), DSTC 2 (Henderson et al., 2014), Frames (El Asri et al., 2017), KVRET (Eric et al.,2017), WOZ 2.0 (Wen et al., 2017) and M2M (Shah et al., 2018)赞季。盡管這些對社區(qū)有重大貢獻,但這些數(shù)據(jù)集在規(guī)模奢驯、語言變異或任務復雜性方面仍然受到限制申钩。此外,現(xiàn)有的對話語料庫與現(xiàn)實生活中的人類對話數(shù)據(jù)之間存在差距瘪阁。在現(xiàn)實生活中的對話典蜕,對人類來說在不同的領域或場景之間進行轉換并且同時仍然保持連貫的上下文是很自然的断盛。因此,現(xiàn)實生活中的對話比那些只在單一領域中模擬的對話要復雜得多愉舔。為了解決這個問題,一些多領域語料庫已經(jīng)被提出(Budzianowski et al., 2018b; Rastogi et al., 2019)伙菜。最著名的語料庫是MultiWOZ (Budzianowski et al.轩缤, 2018b),一個由眾包的人與人之間的對話組成的大規(guī)模多領域數(shù)據(jù)集贩绕。它包含了10K個對話會話和7個域的143K個utterances火的,并標注了系統(tǒng)端對話狀態(tài)和對話行為。然而淑倾,狀態(tài)標注是嘈雜的(Eric et al.馏鹤, 2019),并且用戶端對話行為是缺失的娇哆∨壤郏跨領域的依賴簡單地體現(xiàn)在對不同的域施加相同的預先指定的約束,例如要求酒店和景點都位于城鎮(zhèn)中心碍讨。令人驚訝的是治力,與英語對話數(shù)據(jù)的豐富性相比,目前還沒有被廣泛認可的中文任務導向型對話語料庫勃黍。在本文中宵统,我們提出了一個大規(guī)模的面向中文多領域(跨域)任務對話數(shù)據(jù)集CrossWOZ。一個對話的例子 如圖1所示覆获。
我們比較CrossWOZ 與其他語料庫如表1和表2马澈。
與其他語料庫(特別是MultiWOZ (Budzianowski et al., 2018b))相比弄息,我們的數(shù)據(jù)集具有以下特點:
1痊班、域之間的依賴關系更具有挑戰(zhàn)性,因為在一個doarXiv:2002.11893v2 [cs.CL] 28 Feb 2020中進行選擇疑枯。圖1:一個對話示例辩块。用戶狀態(tài)由用戶目標初始化:找到一個景點及其附近的酒店,然后預訂一輛出租車在這兩個地方之間通勤荆永。除了表達預先指定的信息槽和填寫可請求槽外废亭,用戶還需要考慮并修改跨領域信息槽(粗體),這些信息槽會隨著會話的變化而變化具钥。我們只顯示了幾個回合(回合數(shù)在左邊)豆村,每一個回合都有當前域的用戶或系統(tǒng)狀態(tài),這些狀態(tài)在每個utterances上面都顯示出來骂删。main將影響CrossWOZ中相關域的選擇掌动。如圖1和表2所示四啰,酒店必須靠近用戶在前一回合中選擇的景點,這需要更準確的語境理解粗恢。
2柑晒、第一個包含大規(guī)模、多領域眷射、任務導向型的中文語料庫匙赞,包括5個領域(景點、餐廳妖碉、酒店涌庭、地鐵和出租車)的6K次會話和102K次utterances。
3欧宜、在這篇文章中坐榆,我們呈現(xiàn)了收集對話的過程并對語料庫提供詳細的數(shù)據(jù)分析。
統(tǒng)計數(shù)據(jù)表明冗茸,我們的跨領域對話是復雜的席镀。便于模型比較,benchmark model(基準模型)為流水線的任務導向型對話系統(tǒng)中的不同模塊提供了基準模型蚀狰,包括自然語言理解愉昆、對話狀態(tài)跟蹤、對話策略學習和自然語言生成麻蹋。我們還提供了一個用戶模擬器跛溉,這將有助于在這個語料庫上開發(fā)和評估對話模型。語料庫和基準測試模型可在以下網(wǎng)址公開獲劝缡凇:
https://github.com/thu-coai/CrossWOZ芳室。
二、 相關工作:
根據(jù)對話主體是否是人或者機器刹勃,我們可以將現(xiàn)有的任務導向型對話數(shù)據(jù)集的收集方法分組到三個類別:
第一個是人與人之間的對話堪侯。
最早著名的數(shù)據(jù)集之一ATIS(Hemphill et al., 1990)使用了這個設置, 緊隨其后的是El Asri et al. (2017), Eric et al. (2017), Wen et al. (2017), Lewis et al. (2017), Wei et al. (2018) and Budzianowski et al. (2018b)等人荔仁。雖然這種設置需要許多人的努力伍宦,但它可以收集自然和多樣的對話。第二個是人機對話乏梁。
它們需要一個現(xiàn)成的對話系統(tǒng)來與人類對話次洼。著名的對話狀態(tài)跟蹤挑戰(zhàn)提供了一組人機對話數(shù)據(jù)(Williams et al., 2013;Henderson et al., 2014)。對話系統(tǒng)的性能將在很大程度上影響對話數(shù)據(jù)的質量遇骑。第三個是機器-機器對話卖毁。
它需要建立兩個用戶和系統(tǒng)模擬器生成對話大綱,然后使用模板(Peng et al.落萎,2017)生成對話或進一步雇用人員對對話進行釋義亥啦,使其更自然 (Shah等人炭剪,2018;Rastogi等人,2019年)翔脱。它需要更少的人力奴拦。然而,仿真器限制了對話政策的復雜性和多樣性。為了探索多領域情景下的對話策略届吁,并收集自然和多樣化的對話粱坤,我們會求助于人與人之間的交流。
大多數(shù)現(xiàn)有的數(shù)據(jù)集在一個對話中只涉及單個域瓷产,除了MultiWOZ (Budzianowski等人,2018b)和Schema (Rastogi等人枚驻,2019)之外濒旦。MultiWOZ數(shù)據(jù)集以其龐大的規(guī)模和多領域的特點受到了廣泛的關注。它至少是一個比之前的數(shù)據(jù)集大數(shù)量級再登, 總計有8438個對話尔邓,115K個輪次的訓練集。它極大地促進了多領域對話建模的研究锉矢,如策略學習(Takanobu et al.梯嗽, 2019)、狀態(tài)跟蹤(Wu et al.沽损, 2019)和上下文到文本生成(Budzianowski et al.灯节, 2018a)。最近 Schema數(shù)據(jù)集以機器-機器的方式收集绵估,產(chǎn)生16個域的16142個對話 和330K個輪次的訓練集炎疆。然而,多領域依賴于這兩個數(shù)據(jù)集僅僅體現(xiàn)在對不同的領域施加相同的預先指定的約束国裳,如:要求餐廳和景點位于相同的區(qū)域形入,或酒店所在的城市 和航班的目的地相同(表 2所示)。
表1展示了我們數(shù)據(jù)集與其他任務型數(shù)據(jù)集之間的比較 缝左。與MultiWOZ相比亿遂,我們的數(shù)據(jù)集有相當?shù)囊?guī)模:5012個對話和84K個輪次的訓練集。每個對話的平均域數(shù)和輪次數(shù)比MultiWOZ要大渺杉,這表明我們的任務更復雜蛇数。在我們數(shù)據(jù)集中的跨域依賴關系是自然的,也是具有挑戰(zhàn)性的少办。例如苞慢,如表2中所示:系統(tǒng)需要推薦用戶在前幾輪選擇的景點附近的酒店。因此英妓,兩者的系統(tǒng)推薦及用戶的選擇都會動態(tài)地影響對話挽放。我們還允許同一個域在用戶目標中多次出現(xiàn)绍赛,因為游客可能想去多個景點。
為了更好地跟蹤會話流并建模用戶對話策略辑畦,除了系統(tǒng)狀態(tài)和對話行為外吗蚌,我們還提供了用戶狀態(tài)的標注。當系統(tǒng)狀態(tài)跟蹤對話歷史時纯出,用戶狀態(tài)由用戶維護蚯妇,并指示子目標是否已經(jīng)完成,這可以用來預測用戶的操作暂筝。這些信息將有助于用戶模擬器的構建箩言。據(jù)我們所知,CrossWOZ是任務導向型對話系統(tǒng)的第一個大規(guī)模中文數(shù)據(jù)集焕襟,這將在很大程度上緩解中文任務導向型對話語料庫的短缺問題陨收。
三、Data Collection - 數(shù)據(jù)采集:
我們的語料庫是模擬一個旅行者尋找旅游信息并計劃在北京旅行的場景鸵赖。領域包括酒店务漩、景點、餐廳它褪、地鐵和出租車饵骨。數(shù)據(jù)收集過程總結如下:
- 1. Database Construction - 創(chuàng)建數(shù)據(jù)庫:
我們從網(wǎng)上抓取了北京的旅游信息,包括酒店茫打、景點和餐館域(以下我們將這三個領域稱為HAR域)居触。然后,利用HAR域實體的城域信息構建城域數(shù)據(jù)庫包吝。對于出租車域饼煞,不需要存儲信息。相反诗越,如果有必要砖瞧,我們可以直接調用API。
- 2. Goal Generation - 目標生成:
設計了一個基于數(shù)據(jù)庫的多領域目標生成器嚷狞】榇伲跨域的關系可以通過兩種方式獲取:一種是約束相鄰的兩個目標床未;另一種方法是使用出租車或地鐵在上文提到的HAR領域的兩個目標之間通勤竭翠。為了讓工作人員更容易地理解任務,我們?yōu)槊總€結構化目標生成自然語言描述制作了模板薇搁。
- 3. Dialogue Collection - 對話收集:
在正式的數(shù)據(jù)收集開始之前斋扰,我們要求工人進行少量的對話,并對對話質量給予反饋。然后传货,訓練有素的工人被配對屎鳍,根據(jù)給定的目標進行交談。工作人員還被要求標注用戶狀態(tài)和系統(tǒng)狀態(tài)问裕。
- 4. Dialogue Annotation - 對話標注:
我們使用一些規(guī)則根據(jù)用戶狀態(tài)逮壁、系統(tǒng)狀態(tài)和對話歷史自動標注對話行為。為評價對話行為和狀態(tài)標注的質量粮宛,本研究聘請三位專家對50個對話行為和狀態(tài)進行了手工標注窥淆。結果表明,我們的標注具有較高的質量巍杈。最后忧饭,每個對話包含一個結構化的目標、任務描述筷畦、用戶狀態(tài)眷昆、系統(tǒng)狀態(tài)、對話行為和utterances汁咏。
3.1 Database Construction:
我們從網(wǎng)上收集了465個景點,951家餐館作媚,在北京有1133家酒店攘滩。表3顯示了一些統(tǒng)計數(shù)據(jù)。
每個實體有三種類型的槽:common slots通用槽纸泡,如名稱和地址; binary slots酒店服務二進制槽漂问,如叫醒服務;附近的景點/餐館/酒店槽女揭,包含在景點蚤假、餐館和酒店領域中的附近實體。
因為這不尋常在酒店區(qū)域內找到附近的另一家酒店吧兔, 我們沒有收集這些信息磷仰。這種鄰近關系允許我們生成自然的跨域目標,比如“在第一個景點附近找到另一個景點境蔼。 ”和“在景點附近找一家餐館”灶平。HAR實體最近的地鐵站形成地鐵數(shù)據(jù)庫。相反箍土,我們?yōu)槌鲎廛囉蛱峁┝藗纹囶愋秃蛙嚺铺柎a逢享。
3.2 Goal Generation:
為了避免產(chǎn)生過于復雜的目標,每個目標最多有五個子目標吴藻。為了生成更自然的目標瞒爬,子目標可以是相同的領域,比如兩個相鄰的景點。目標表示為(子目標id侧但、域矢空、槽、值)元組的列表俊犯,命名為語義元組妇多。子目標id用于區(qū)分可能在同一域中的子目標。有兩種類型的槽:informable slots - 是用戶需要告知系統(tǒng)的一些約束; requestable slots - 是用戶需要從系統(tǒng)中查詢的信息燕侠。如表4所示者祖,除了常見的信息槽(斜體值)的值是在對話之前確定的,我們還特別設計了跨領域信息槽(粗體值)绢彤,其值指向其他子目標七问。跨領域信息槽利用子目標id連接不同的子目標茫舶。因此械巡,實際的約束根據(jù)不同的上下文而不同,而不是預先指定的饶氏。常見informable slots的值是從數(shù)據(jù)庫中隨機抽樣的讥耗。根據(jù)informable slots需要用戶通過對話收集requestable slots的值(表4中的空白值)。
目標生成有四個步驟疹启。首先古程,我們在HAR領域中生成獨立的子目標台腥。對于HAR域中的每個域台舱,我們以相同的概率P生成一個子目標,而在概率為1?P時劣摇,我們不為這個域生成任何子目標荤懂。每個子目標都有公共informable slots和requestable slots茁裙。如表5所示,HAR域的所有槽都可以是requestable slots节仿,而帶星號的槽可以是公共informable slots晤锥。
其次,我們在HAR領域中生成跨領域的子目標廊宪。對于每個生成的子目標(例如查近,表4中的景點子目標),如果其requestable slots包含“附近的酒店”挤忙,我們在酒店域中生成一個附加的子目標(例如霜威,表4中的酒店子目標),其概率為P(景點→酒店)册烈。
當然戈泼,選擇的酒店必須滿足與景點實體的鄰近關系婿禽。同樣地,在概率為1?P(景點→酒店)的情況下大猛,我們不會在酒店域中生成任何額外的子目標扭倾。這也適用于景點和餐廳領域。 P(酒店→酒店) = 0挽绩,因為我們不允許用戶這樣找到一家酒店附近的酒店的做法膛壹。
第三,我們在地鐵和出租車領域生成子目標唉堪。根據(jù)P(出租車)的概率模聋,我們在出租車域生成一個子目標(例如,表4中的出租車子目標)唠亚,在已經(jīng)生成的HAR域的兩個實體之間通勤链方。與地鐵域類似,我們設置P(地鐵) = P(出租車)灶搜。地鐵或出租車域的所有槽都出現(xiàn)在子目標中祟蚀,并且必須被填充。如表5所示割卖,從和到槽總是跨域 的informable slots前酿,而其他槽總是requestable slots。
最后鹏溯,我們重新排列子目標的順序薪者,以產(chǎn)生更自然和邏輯的用戶目標。我們要求子目標應該被其所提及的子目標盡快地跟隨剿涮。
為了讓工作人員意識到這個跨領域特性,我們另外用自然語言為每個用戶目標提供了一個任務描述攻人,該描述是由手工制作的模板從結構化目標生成的取试。
與那些約束條件都是預先設定的目標相比,我們的目標在不同領域之間施加了更多的依賴性怀吻,這將顯著影響對話瞬浓。最后根據(jù)對話上下文確定跨域informable slots的準確值。
3.3 Dialogue Collection:
我們開發(fā)了一個專門的網(wǎng)站蓬坡,允許兩個工作人員同步交談猿棉,并在線做標注。在網(wǎng)站上屑咳,工作人員可以自由選擇兩種角色之一:游客(用戶)或系統(tǒng)(向導)萨赁。然后,兩個成對的工作人員被送到一個聊天室兆龙。用戶需要通過對話來完成分配的目標杖爽,同時向導搜索數(shù)據(jù)庫以提供必要的信息并給出響應。在正式的數(shù)據(jù)收集之前,我們通過給員工反饋的方式訓練他們完成少量的對話慰安。最后腋寨,90名訓練有素的工人參與了數(shù)據(jù)收集。
相比之下化焕,MultiWOZ (Budzianowski等人萄窜,2018b)雇傭了超過1000名員工進行異步交談。每個工人都收到了一個對話上下文來審查撒桨,每次只需要回應一個回合查刻。收集到的對話可能是不連貫的,因為工作人員可能不能正確理解上下文元莫,并且多個工作人員對同一個對話會話作出了貢獻赖阻,這可能導致數(shù)據(jù)質量的更多差異。例如踱蠢,一些工人在兩個連續(xù)的用戶回合中表達了兩個互斥的約束火欧,并未能消除系統(tǒng)在接下來的幾個回合中的混亂。與MultiWOZ相比茎截,我們的同步會話設置可以產(chǎn)生更連貫的對話苇侵。
- 3.3.1 User Side:
用戶狀態(tài)與對話開始前的用戶目標相同。在每一回合中企锌,用戶需要(1)根據(jù)上一回合的系統(tǒng)響應修改用戶狀態(tài)榆浓;(2)選擇用戶狀態(tài)下的一些語義元組,這些語義元組表示對話行為撕攒;(3)根據(jù)選擇的語義元組組成utterances陡鹃。
除了填充所需的值和在用戶狀態(tài)中使用真實值更新跨領域的informable slots外,還鼓勵用戶在此類約束下沒有結果時修改約束抖坪。更改也將記錄在用戶狀態(tài)中萍鲸。一旦目標完成(用戶狀態(tài)中的所有值都已填滿),用戶就可以終止對話擦俐。
- 3.3.2 Wizard Side:
我們把數(shù)據(jù)庫查詢看作是系統(tǒng)狀態(tài)脊阴,它記錄了當前回合的各個領域約束。在每個回合中蚯瞧,向導需要(1)根據(jù)先前的用戶響應填充查詢嘿期,并在必要時搜索數(shù)據(jù)庫;(2)選擇檢索的實體埋合;(3)根據(jù)所選實體的信息以自然語言響應备徐。如果沒有一個實體滿足所有約束,向導將嘗試放松其中一些約束以獲得建議甚颂,從而導致多個查詢坦喘。第一個查詢記錄了原始的用戶約束盲再,最后一個查詢記錄了系統(tǒng)放寬的約束。
- 3.4 Dialogue Annotation:
在收集對話數(shù)據(jù)之后瓣铣,我們使用一些規(guī)則來自動標注對話行為答朋。每個utterance可以有幾個對話行為。每個對話行為都是一個由意圖棠笑、域梦碗、槽和值組成的元組。我們預先定義了6種類型的意圖蓖救,并使用用戶狀態(tài)和系統(tǒng)狀態(tài)的更新以及關鍵字匹配來獲取對話行為洪规。對于用戶端,對話行為主要來源于語義元組的選擇循捺,其中包含域斩例、槽和值的信息。例如从橘,如果用戶選擇了表4中的(1,Attraction, fee, free)念赶,那么就標注了(Inform, Attraction, fee, free)。如果(1, Attraction, name, )被選中恰力,那么(Request, Attraction, name, none)被標記叉谜。如果(2,Hotel, name, near (id=1))被選中,那么(Select, Hotel, src domain, Attraction)被標記踩萎。這個意圖是專門為“附近”約束設計的停局。在系統(tǒng)方面,我們主要采用關鍵字匹配來標注對話行為香府。通知意圖是通過將系統(tǒng)話語與所選實體的信息進行匹配而得到的董栽。當向導選擇多個檢索到的實體并推薦它們時,推薦意圖會被標記企孩。當向導表示沒有結果滿足用戶約束時锭碳,將標記為NoOffer。對于用戶和系統(tǒng)兩方面的“再見”柠硕、“謝謝”等一般意圖,采用關鍵字匹配运提。我們還為每個處于用戶狀態(tài)的語義元組獲得了一個二進制標簽蝗柔,這表明該語義元組是否已被選擇由用戶表示。這個標注直接說明了對話的進展民泵。
為了評估對話行為和狀態(tài)(用戶和系統(tǒng)狀態(tài))標注的質量癣丧,我們雇傭了三位專家為相同的50個對話(806個utterances)手工標注對話行為和狀態(tài),每個目標類型10個(見第4節(jié))栈妆。由于對話行為標注不是一個分類問題胁编,我們沒有使用Fleiss’ kappa來衡量專家之間的一致程度厢钧。我們使用對話行為F1和狀態(tài)accuracy來衡量每兩個專家標注之間的一致性。平均對話行為F1為94.59%嬉橙,平均狀態(tài)accuracy為93.55%早直。然后,我們將自己的標注與每位專家的標注進行了比較市框,這些標注被視為黃金標準霞扬。平均對話行為F1為95.36%,平均狀態(tài)accuracy為94.95%枫振,說明我們的標注質量較高喻圃。
4 Statistics:
在刪除未完成的對話后,我們總共收集了6012個對話粪滤。數(shù)據(jù)集被隨機分割用于training斧拍、validation、test杖小,其中的統(tǒng)計數(shù)據(jù)如表6所示肆汹。在我們的數(shù)據(jù)集中,子目標的平均值為3.24窍侧,遠遠大于MultiWOZ (1.80) (Budzianowski et al.县踢, 2018b)和Schema (1.84) (Rastogi et al., 2019)伟件。平均回合數(shù)(16.9)也比MultiWOZ大(13.7)硼啤。這些統(tǒng)計數(shù)字表明我們的對話數(shù)據(jù)更加復雜。
根據(jù)用戶目標的類型斧账,我們將訓練集中的對話分為5類:
Single-domain (S) - 【單領域】: 417對話在HAR域中只有一個子目標谴返。
Independent multi-domain (M) - 【獨立多領域】:在HAR域中,獨立的多域(M) 1573對話具有多個子目標(2 ~ 3)咧织。然而嗓袱,這些子目標卻沒有跨域informable slots。
Independent multi-domain + traffic (M+T) -【獨立多領域+交通】:在HAR域习绢,691 次對話有多個子目標渠抹,并且在地鐵或出租車領域(3 ~ 5個子目標)至少有一個子目標 。 HAR域的子目標沒有跨域informable slots闪萄。
Cross multi-domain (CM) - 【不獨立多領域】:在 HAR域的1759個對話有多個子目標(2 ~ 5) 具有跨域 informable slots梧却。
Cross multi-domain + traffic (CM+T)-【不獨立多領域+交通】:在 HAR域,572個對話有多個子目標的跨域informable slots败去, 且在地鐵或出租車域上至少有一個子目標域(3~5子目標)放航。
數(shù)據(jù)統(tǒng)計如表7所示。如3.2節(jié)所述圆裕,我們依次生成獨立多領域子目標广鳍、不獨立多領域子目標和不獨立多領域+交通子目標荆几。因此,在任務復雜性方面赊时,我們有S<M<CM和M<M+T<CM+T,表7中的子目標吨铸、語義元組的平均數(shù)量和每個對話的輪數(shù)支持該方法。當目標變得更復雜時蛋叼,tokens的平均數(shù)量也會變得更大焊傅。
大約60%的對話(M+T、CM和CM+T)具有跨域informable slots狈涮。由于最大子目標數(shù)的限制狐胎,CM+T與CM的對話數(shù)比M+T與M的對話數(shù)比值要小。CM和CM+T比其他任務更具挑戰(zhàn)性歌馍,因為在HAR域中額外的跨域約束是嚴格的握巢,會導致更多的“NoOffer”情況(即向導沒有找到滿足當前約束的結果)。在這種情況下松却,向導將嘗試放松一些約束暴浦,并發(fā)出多個查詢以找到一些建議的結果,而用戶將折衷并更改最初的目標晓锻。協(xié)商過程被捕獲 由“無報價率”歌焦,“多查詢率”,和“目標變化率"如 表7所示砚哆。此外,“多查詢率 “表示M和M+T中的每個子目標 就像S中的目標一樣容易完成独撇。對話長度的分布如圖2所示,這是任務復雜性的指標躁锁。大多數(shù)單域對話在10個回合內終止纷铣。M和M+T的曲線形狀幾乎相同,這意味著交通任務平均需要額外兩個轉彎才能完成任務战转。CM和CM+T的曲線不太相似搜立。這可能是因為有5個子目標(約22%)的CM目標不能在交通領域中進一步生成子目標并成為CM+T目標。
5 Corpus Features:
我們的語料庫在以下幾個方面是唯一的:
復雜的用戶目標旨在促進領域間的依賴和多個領域之間的自然轉換槐秧。反過來啄踊,收集的對話對于跨領域對話任務來說更加復雜和自然。
一個控制良好的同步設置應用于收集人與人之間的對話刁标。這確保了收集到的對話的高質量颠通。
顯式標注不僅提供在系統(tǒng)方面,還有用戶方面命雀。這種特性允許我們模擬用戶行為或更輕松地開發(fā)用戶模擬器蒜哀。
6 Benchmark and Analysis:
可以在任務導向型對話系統(tǒng)的不同任務或設置中使用CrossWOZ斩箫。為了便于進一步研究吏砂,我們?yōu)槊嫦蛉蝿盏膒ipelined task-oriented對話系統(tǒng)(圖3)的不同組件提供了benchmark models 基準模型撵儿,包括自然語言理解(NLU)、對話狀態(tài)跟蹤(DST)狐血、對話策略學習和自然語言生成(NLG)淀歇。這些模型使用ConvLab-2 (Zhu et al., 2020)實現(xiàn)匈织,這是一個開源的面向任務的對話系統(tǒng)工具包浪默。我們還提供了一個基于規(guī)則的用戶模擬器,它可以用來訓練對話策略并生成模擬對話數(shù)據(jù)缀匕。benchmark models和模擬器將極大地方便研究者在語料庫上比較和評價他們的模型纳决。
- 6.1 Natural Language Understanding:
任務:面向任務的對話系統(tǒng)中的自然語言理解組件以一個utterance作為輸入,輸出相應的語義表示乡小,即對話行為阔加。該任務可以分為兩個子任務:決定utterances意圖類型的意圖分類和標識槽值的槽標記。
模型:我們改編自ConvLab2. BERT (Devlin et al., 2019)的BERTNLU在許多NLP任務中表現(xiàn)出色满钟。我們使用中文預訓練模型BERT?(Cui et al.胜榔, 2019)進行初始化,然后對CrossWOZ上的參數(shù)進行微調湃番。(https://github.com/ymcui/Chinese-BERT-wwm)夭织。我們從BERT中得到詞嵌入和句子表示(embedding of [CLS]) 。由于在一個utterances中可能存在不止一個意圖吠撮,我們修改傳統(tǒng)的相應的方法尊惰。對于對話行為的信息并推薦意圖,例如(intent=Inform纬向, 域名=景點择浊,槽=費用,價值=免費)哪個值出現(xiàn)在句子中逾条,我們使用MLP執(zhí)行順序標記琢岩,該MLP將單詞嵌入(“free”)作為BIO模式(“B-Inform-Attraction-fee”)中的輸入和輸出標記 。為每個對于其他沒有實際值的對話行為(例如(intent=Request, domain=Attraction, slot=fee))师脂,我們使用另一個MLP對句子表示執(zhí)行二進制分類 來預測句子是否應該被標記以用于這個對話行為担孔。為了整合上下文信息,我們使用相同的BERT來獲取后三個utterances話語的embedding吃警。我們用[SEP]tokens分隔utterances糕篇,并在開頭插入[CLS]token。然后將兩個MLP的每個原始輸入與上下文embedding([CLS]embedding )連接起來酌心,作為新的輸入拌消。我們還通過去除上下文信息進行了消融試驗。我們用系統(tǒng)端和用戶端的utterances訓練模型安券。
結果分析:對話行為預測結果(F1 score)如表8所示墩崩。我們進一步測試了不同意圖類型的性能氓英,如表9所示。一般來說鹦筹,BERTNLU能夠很好地處理上下文信息铝阐。
跨多領域對話(CM和CM+T)的性能略有下降,這可能是由于對話數(shù)據(jù)中“General”意圖的減少铐拐,“NoOffer”和“Select”意圖的增加徘键。我們還注意到,“Select”意圖的F1得分明顯低于其他類型遍蟋,但上下文信息可以顯著提高性能吹害。由于識別域轉換是跨領域對話系統(tǒng)的關鍵因素,自然語言理解模型需要更有效地利用上下文信息虚青。
- 6.2 Dialogue State Tracking:
任務:對話狀態(tài)跟蹤負責從對話上下文中識別用戶目標赠制,然后將目標編碼到預定義的系統(tǒng)狀態(tài)中。傳統(tǒng)的狀態(tài)跟蹤模型以自然語言理解模塊解析的用戶對話行為作為輸入挟憔,而最近出現(xiàn)了直接從上下文獲取系統(tǒng)狀態(tài)的聯(lián)合模型joint models钟些。
模型:在這個實驗中,我們實施了一個基于規(guī)則的模型(RuleDST)绊谭,并改編了TRADE(Transferable Dialogue State Generator)? (Wu et al., 2019) 政恍。RuleDST將以前的系統(tǒng)狀態(tài)和最后的用戶對話行為作為輸入。然后达传,根據(jù)手工制定的規(guī)則更新系統(tǒng)狀態(tài)篙耗。例如,如果其中一個用戶對話行為是(intent=Inform, domain=Attraction, slot=fee, value=free)宪赶,那么景點域中“fee”slot值就會填充上“free”宗弯。TRADE使用復制機制直接從所有以前的utterances中生成系統(tǒng)狀態(tài)。如3.3.2節(jié)所述搂妻,系統(tǒng)的第一個查詢通常記錄了完整的用戶約束蒙保,而最后一個查詢記錄了松弛的推薦約束。因此欲主,最后一種方法涉及到系統(tǒng)策略邓厕,超出了狀態(tài)跟蹤的范圍。我們對這些模型使用了第一個查詢扁瓢,并為以后的工作推薦了左狀態(tài)跟蹤(left state tracking)详恼。
結果分析:我們評估了這兩個模型的聯(lián)合狀態(tài)準確性(精確匹配百分比)(表8)。TRADE, MultiWOZ上的最新模型引几,在我們的數(shù)據(jù)集上表現(xiàn)不佳昧互,表明需要更強大的狀態(tài)跟蹤器。在測試階段,RuleDST可以訪問之前的gold系統(tǒng)狀態(tài)和用戶對話行為敞掘,這使得聯(lián)合狀態(tài)的準確性高于TRADE屿储。兩種模型在跨多域對話(CM和CM+T)上的表現(xiàn)都較差。為了評估建慕ヌ樱跨領域轉換的能力,我們進一步計算了從用戶接收“Select”意圖的那些回合的聯(lián)合狀態(tài)accuracy(例如民褂,“找到景點附近的酒店”)茄菊。RuleDST和TRADE的性能分別為11.6%和12.0%,說明它們不能很好地跟蹤域轉換赊堪。
- 6.3 Dialogue Policy Learning:
任務:在每輪中面殖,對話策略接收狀態(tài) s 和輸出系統(tǒng)動作 a 。相比由對話狀態(tài)跟蹤器給出的狀態(tài)哭廉,s 可能含有更多信息脊僚,例如最后的用戶對話行為和后端提供的實體數(shù)據(jù)庫。
模型:我們采用了一種由ConvLab-2 (SL策略)以監(jiān)督方式訓練的vanilla policy策略遵绰。狀態(tài)s包括最后的系統(tǒng)對話行為辽幌、最后的用戶對話行為、當前回合的系統(tǒng)狀態(tài)椿访、滿足當前域約束條件的實體數(shù)量以及表示用戶目標是否完成的終端信號乌企。動作a是當前回合的delexicalized(非定域化的;不受位置限制的)對話行為成玫,忽略了插槽的確切值加酵,在預測之后這些值將被填充回去。
結果分析:如表8所示哭当,精確對話行為的F1得分與delexicalized(非定域化的猪腕;不受位置限制的)對話行為的F1得分差距較大,這意味著我們需要一個強大的系統(tǒng)狀態(tài)跟蹤器來找到正確的實體钦勘。結果還表明陋葡,多領域對話(CM和CM+T)對系統(tǒng)對話行為的預測更加困難。此外彻采,當前面的用戶對話行為中存在“Select”意圖時脖岛,精確對話行為和delexicalized對話行為的F1得分分別為41.53%和54.39%。這表明該策略在跨領域轉換方面表現(xiàn)不佳颊亮。
- 6.4 Natural Language Generation:
任務:自然語言生成將結構化的對話行為轉換為自然語言句子柴梆。它通常將delexicalized的對話作為輸入,并生成一個模板風格的句子终惑,其中包含插槽占位符绍在。然后,占位符將被準確的值替換,這稱為詞匯化偿渡。
模型:我們提供了一個基于模板的模型(命名為TemplateNLG)和SC-LSTM (semantic Conditioned LSTM) (Wen et al.臼寄, 2015)用于自然語言生成。對于TemplateNLG溜宽,我們從訓練集中提取模板吉拳,并手動添加一些用于不常見對話行為的模板。對于SC-LSTM适揉,我們調整了在MultiWOZ上的implementation?實現(xiàn)留攒,并分別用系統(tǒng)端和用戶端utterances訓練了兩個SC-LSTM。
結果分析:我們計算了Wen et al. (2015)使用的語料庫水平的BLEU嫉嘀。我們將所有具有相同delexcalized對話行為的utterances作為參考(平均100個參考)炼邀,得到較高的BLEU分數(shù)。對于用戶端的utterances剪侮,TemplateNLG的BLEU得分是0.5780拭宁,而SC-LSTM的BLEU得分是0.7858。系統(tǒng)端BLEU得分分別為0.6828和0.8595瓣俯。如表10所示杰标,兩個模型之間的差距可以歸因于SC-LSTM生成的是通用模式,而TemplateNLG檢索的是原始句子彩匕,其中包含更具體的信息在旱。我們不提供不同目標類型(即S、M推掸、CM等)的BLEU得分桶蝎,因為不同語料庫上的BLEU得分不具有可比性。
- 6.5 User Simulator:
任務:用戶模擬器模擬用戶的行為谅畅,有助于對話策略學習和自動評估登渣。對話行為級別的用戶模擬器(如圖3中的“Usr Policy”)接收系統(tǒng)對話行為并輸出用戶對話行為,而自然語言級別的用戶模擬器(如圖3中的左邊部分)直接將系統(tǒng)utterance作為輸入并輸出用戶utterance毡泻。
https://github.com/andy194673/nlg-sclstm-multiwoz
模型:我們構建了一個基于規(guī)則的用戶模擬器胜茧,它運行在對話行為級別。與基于議程agenda-based(Schatzmann et al.仇味, 2007)的用戶模擬器不同它維持著一個堆疊式的議程stack-like agenda呻顽,我們的模擬器直接維護用戶狀態(tài)(第3.3.1節(jié))。模擬器將生成一個如章節(jié)3.2所述的用戶目標丹墨。在每個用戶回合廊遍,模擬器接收系統(tǒng)對話行為,修改其狀態(tài)贩挣,并根據(jù)一些手工制定的規(guī)則輸出用戶對話行為隘膘。例如,如果系統(tǒng)告知模擬器景點是免費的蚓峦,那么模擬器就會將用戶狀態(tài)下的“fee”槽填上“free”,并詢問下一個空槽裕便,如“address”。當所有可請求的槽都被填滿见咒,并且所有跨域信息槽都被實值填滿時偿衰,模擬器終止。
結果分析:在評估過程中改览,我們使用之前的黃金用戶狀態(tài)(gold user state.)初始化了模擬器的用戶狀態(tài)下翎。模擬器的輸入是黃金系統(tǒng)(gold system)對話行為。我們使用聯(lián)合狀態(tài)準確率(精確匹配百分比)來評估用戶狀態(tài)預測恃疯,使用F1得分來評估用戶對話行為的預測。結果如表8所示墨闲。我們可以觀察到今妄,復雜對話(CM和CM+T)的表現(xiàn)明顯低于簡單對話(S、M和M+T)鸳碧。提供了這個簡單的基于規(guī)則的模擬器來促進對話策略學習和自動評估盾鳞,并且我們的語料庫支持開發(fā)更精細的模擬器,因為我們提供了用戶端對話狀態(tài)和對話行為的標注瞻离。
- 6.6 Evaluation with User Simulation :
除了對每個模塊進行基于語料庫的評估外腾仅,我們還使用如上所述的用戶模擬器來評估整個對話系統(tǒng)的性能。研究了三種配置:
DA Sim : Simulation at dialogue act level. As shown by the dashed connections in Figure 3, we used the aforementioned simulator at the user side and assembled the dialogue system with RuleDST and SL policy.
對話行為層面的模擬套利。如圖3中的虛線連接所示推励,我們在用戶端使用前面提到的模擬器,并使用RuleDST和SL策略組裝對話系統(tǒng)肉迫。
NL Sim (Template): 使用TemplateNLG在自然語言級別進行模擬验辞。如圖3的實連接所示,模擬器和對話系統(tǒng)都另外配備了BERTNLU和TemplateNLG喊衫。
NL Sim (SC-LSTM) :使用SC-LSTM進行自然語言水平的NL Sim (SC-LSTM)模擬跌造。在第二種配置中TemplateNLG 被替換為SC-LSTM 配置。
當用戶目標中的所有槽都被實值填滿時族购,模擬器終止壳贪。這被認為是“任務完成”。值得注意的是寝杖,“任務完成”并不意味著任務成功违施,因為系統(tǒng)可能會提供錯誤的信息。我們對每種目標類型進行1000次模擬計算“任務完成率”(見表8)瑟幕。結果總結如下:
1醉拓、跨多領域任務(CM和CM+T) 都很難完成伟姐。比較M和 M+T,盡管每個模塊在交通域亿卤,其中的子目標域仍然很難完成愤兵。
2、系統(tǒng)級性能在很大程度上受到RuleDST和SL策略的限制排吴。雖然基于語料庫的NLU和NLG模塊的性能都很高秆乳,但這兩個模塊仍然會對性能造成損害。因此钻哩,pipelined對話系統(tǒng)的所有組件都需要更強大的模型屹堰。
3、TemplateNLG的BLEU分數(shù)要低得多街氢,但在在自然語言級模擬條件下性能優(yōu)于SC-LSTM 水平扯键。這可能是因為BERTNLU更喜歡模板從訓練集中檢索。
7 Conclusion:
在本文中珊肃,我們提出了第一個大規(guī)模的面向任務的中文對話數(shù)據(jù)集CrossWOZ荣刑。它包含5個域的6K對話和102K個utterances,并在用戶和系統(tǒng)雙方對標注對話狀態(tài)和對話行為伦乔。大約60%的對話都有跨領域的用戶目標厉亏,鼓勵相關領域之間的自然過渡。該語料庫在用戶端和系統(tǒng)端對對話狀態(tài)和對話行為進行了豐富的標注烈和,為研究對話狀態(tài)跟蹤爱只、策略學習等跨領域對話建模任務提供了新的測試平臺。我們的實驗表明招刹,跨領域約束對于所有這些任務都是具有挑戰(zhàn)性的恬试。在相關領域之間的轉換對于建模來說尤其具有挑戰(zhàn)性。除了基于語料庫的組件評估外疯暑,我們還使用用戶模擬器進行系統(tǒng)級評估忘渔,這需要對pipelined跨領域對話系統(tǒng)的所有組件建立更強大的模型。
Acknowledgments-感謝:
這項工作得到了國家自然科學基金(Grant No. 61936010/61876096) 和國家重點研發(fā)計劃 (Grant No. 2018YFC0830200)的支持 缰儿。 我們非常感謝THUNUS NExT JointLab的支持畦粮。我們也要感謝Ryuichi Takanobu和Fei Mi提出的建設性意見。我們非常感謝我們的行動編輯Bonnie Webber和匿名評審員的寶貴建議和反饋乖阵。
References:
略宣赔。
最后:
只供參考。