博客專欄

EEPW首頁 > 博客 > 達摩院SPACE大模型:知識注入與知識利用(1)

達摩院SPACE大模型:知識注入與知識利用(1)

發(fā)布人:數(shù)據(jù)派THU 時間:2022-11-20 來源:工程師 發(fā)布文章

以下文章來源于DataFunTalk ,作者李永彬

本文主要針對兩個主題:知識注入和知識利用,講解該模型的創(chuàng)新點與改進。


今天的介紹會圍繞下面四點展開:


  • 預(yù)訓(xùn)練語言模型 VS 預(yù)訓(xùn)練對話模型

  • “無知識不對話”:知識是對話的基礎(chǔ)

  • 半監(jiān)督預(yù)訓(xùn)練:一種新的知識注入方式

  • Proton:預(yù)訓(xùn)練模型中知識利用的探索



01、預(yù)訓(xùn)練語言模型 VS 預(yù)訓(xùn)練對話模型


 1. 大規(guī)模語言模型


圖片


過去幾年 NLP 領(lǐng)域的重大進展,主要是大型預(yù)訓(xùn)練模型出現(xiàn)與大規(guī)模使用。預(yù)訓(xùn)練語言模型有了很大的發(fā)展,出現(xiàn)了很多變種。但是,本質(zhì)上都還是語言模型,如上圖右邊的流程圖所示,輸入基本上為網(wǎng)絡(luò)上的自由文本,模型基本上都是 Transformer 結(jié)構(gòu),優(yōu)化的目標(biāo)基本上都是 MLM(掩碼語言模型)。


圖片


預(yù)訓(xùn)練語言模型對整個 NLP 領(lǐng)域帶來巨大進步,到了對話領(lǐng)域之后,可以進一步的提取對話領(lǐng)域更為獨特的特征。如上圖所示,左側(cè)的網(wǎng)絡(luò)上的自由文本為大規(guī)模預(yù)訓(xùn)練模型所需要的語料,右側(cè)的表示對話的語料,直觀上看,已經(jīng)有很大的不同。


圖片


對話是對語言的高級應(yīng)用,主要有以下幾個特點:


①口語化,表述隨意,不一定符合語法、句子不完整、噪音較多、有很多 ASR 錯誤。

②分角色多輪次,至少兩個參與主體,輪次間存在省略、指代、狀態(tài)繼承、狀態(tài)遺忘等。

③垂直知識約束,每個對話任務(wù)有自己的知識約束,模型需要針對性地利用起來。

④深層語義理解,需要深入理解語言,Intent-Slots/ 邏輯推理等等。

⑤講究對話策略,為完成特定任務(wù)目標(biāo),需要知道應(yīng)該怎么說。


 2. 預(yù)訓(xùn)練語言模型 VS 預(yù)訓(xùn)練對話模型


圖片


基于對話數(shù)據(jù)獨有的特點,在預(yù)訓(xùn)練模型的基礎(chǔ)上,發(fā)展出獨特的預(yù)訓(xùn)練對話模型。如上圖左側(cè)表示的預(yù)訓(xùn)練語言模型,其優(yōu)化的目標(biāo)是回答什么樣的句子更像自然語言;而上圖右側(cè)表示的是預(yù)訓(xùn)練對話模型,從端到端的角度看,其優(yōu)化的目標(biāo)是需要回答給定對話歷史,什么樣的回復(fù)更合理。這就是預(yù)訓(xùn)練語言模型與預(yù)訓(xùn)練對話模型的一個很大的不同點。


3. 預(yù)訓(xùn)練對話模型進展


對話主要分三塊:對話理解、對話策略、對話生成。2021 年初,預(yù)訓(xùn)練對話模型已經(jīng)有了較多發(fā)展。如下圖所示,對話理解領(lǐng)域,2019 年 PolyAI 提出了 ConveRT 模型、2020 年 Salesforce 提出了 TOD-BERT 模型、2021 年 JingDong 提出了 DialogBERT 模型。


圖片

圖片


面向理解的預(yù)訓(xùn)練對話模型的出現(xiàn),對于對話理解方面,相對于預(yù)訓(xùn)練語言模型,帶來了巨大的提升,如上圖所示,EMNLP2020 上的一篇文章(Probing Task-Oriented Dialogue Representation from Language Models)的實驗結(jié)果,表明預(yù)訓(xùn)練對話模型和預(yù)訓(xùn)練語言模型相比,在對話理解任務(wù)上,可以提升 10% 以上的效果;在表征學(xué)習(xí)上,也能學(xué)到更好的表示,有更好的聚類效果。這一點可以通俗的理解,因為當(dāng)前的預(yù)訓(xùn)練模型(包含語言與對話模型)本質(zhì)上是數(shù)據(jù)驅(qū)動出來的,那么,對話數(shù)據(jù)訓(xùn)練的預(yù)訓(xùn)練模型,自然比從自由文本上訓(xùn)練出來的模型在對話領(lǐng)域更具表現(xiàn)力。


圖片


除了對話理解以外,還有一塊是對話生成領(lǐng)域。


2019 年 Microsoft 提出了 DialoGPT、2020 年 Google 提出的 Meena、2020 年 Facebook 提出的 Blender、2021 年 Baidu 提出的 PLATO-2 等,這些模型的出現(xiàn)的話,對對話生成方面的質(zhì)量也帶來了很大的提升。如下圖所示,F(xiàn)acebook的Blender模型,從 2018 年到 2020 年,在 A/B Test 勝率從 23% 提升到了 49%。


圖片


以上是對整個預(yù)訓(xùn)練對話模型的簡單介紹,對理解本文提出的模型有很大的幫助??傮w上,預(yù)訓(xùn)練語言模型的出現(xiàn),大幅度提升了 NLP 所有任務(wù)的效果,而基于預(yù)訓(xùn)練語言模型的預(yù)訓(xùn)練對話模型,進一步提升了對話領(lǐng)域的 NLP 任務(wù)的效果。所以,基于預(yù)訓(xùn)練對話模型的智能對話已經(jīng)成為一個基座模型。


02、“無知識不對話”:知識是對話的基礎(chǔ)


對話還有一個非常大的特點,就是強依賴于知識。換而言之,知識是對話的基礎(chǔ)。


圖片


由上圖的對話體系架構(gòu)可以看出,上層的主流對話引擎,比如多輪對話、圖譜問答、表格問答、QA問答、文檔問答、閑聊(Chit-chat)等,其劃分的依據(jù)就是底層知識的不同。舉例而言,多輪對話引擎,主要是基于對話流程圖;圖譜問答,依賴于知識圖譜的知識等。除了這些顯著的知識,想要做好智能對話,還需要一些其他的知識,比如人類標(biāo)注知識、世界知識、各種常識等。


這里以一個辦理汽車保險的任務(wù)為參考案例。這個任務(wù)是一個流程類的任務(wù),即辦理一個保險是有步驟,有流程的。首先,校驗個人和證件信息,包括身份證、駕駛證、行駛證等;然后開始驗車,生成驗車結(jié)果:如果驗車結(jié)果不通過,則告知驗車不合格原因,流程結(jié)束,結(jié)果為不能辦理汽車保險;如果驗車結(jié)果通過,則進行后續(xù)步驟,填寫保單,包括車險險種、被保險人信息等,然后交保險費,并獲得保險存根。


這是一個典型的流程類任務(wù),需要通過任務(wù)型對話進行處理。流程類知識的一個顯著特點,大多是情況下,任務(wù)的順序是不可變的。比如,不能先做第三步,再做第一步,這樣整個流程是不對的,執(zhí)行不下去的。流程類知識的第二個特點就是,流程類知識打開每一步看的話,又包含了很多其他的知識。比如第一步,要校驗個人和證件信息,比如姓名,對于中國人,基本上都是漢字,而且字?jǐn)?shù)都在 2-10 個字以內(nèi),這些屬于世界知識或基本常識,以及身份證號,大陸身份證都是 18 位的等,都是世界知識里面的范疇。而且,為了訓(xùn)練出一個可用的任務(wù)型對話,需要一定量的標(biāo)注數(shù)據(jù),而這些標(biāo)注的數(shù)據(jù),蘊含了人類的知識。比如意圖、類別,以及情感等的標(biāo)注,都是將人類的知識,顯式的寫在了數(shù)據(jù)上,從而形成新的知識。綜上所述,整個對話都是圍繞知識展開的,無知識,不對話。


圖片


前面做了基本的引入和介紹,一方面,針對智能對話,預(yù)訓(xùn)練對話模型已經(jīng)成為基礎(chǔ)模型;另一方面,對于整個對話系統(tǒng)來講,都是圍繞著知識展開的。所以,我們(達摩院 Conversational AI 團隊)過去一段時間的研究和探索,都是圍繞著這兩點展開。主要的思路是將知識和預(yù)訓(xùn)練對話模型結(jié)合起來。具體來看,如上圖所示,將任務(wù)拆成兩個子任務(wù):一個子任務(wù)是我們?nèi)绾伟阎R注入到預(yù)訓(xùn)練對話模型,讓模型有更好的知識容量;另一個子任務(wù),在應(yīng)用方面,將在預(yù)訓(xùn)練對話模型中學(xué)到的大量的知識,顯式地抽取出來,和下游任務(wù)更好的結(jié)合和使用。圍繞這兩個方面,本文將重點分享一些探索性的工作。


03、半監(jiān)督預(yù)訓(xùn)練:一種新的知識注入方式


 1. 標(biāo)注知識


圖片


第一部分主要關(guān)于知識注入。如何將知識注入到模型中,本文提出一種新的方式,半監(jiān)督預(yù)訓(xùn)練方式。


圖片


首先回顧一下知識。知識中有一種非常重要——標(biāo)注知識。離開標(biāo)注知識,很難將 NLP 任務(wù)做好。在人工標(biāo)注的知識中,包含大量任務(wù)相關(guān)的知識。示意圖分類、意圖匹配、實體識別、對話策略、情感等,這些標(biāo)簽數(shù)據(jù),都是將人類的知識,顯式地表現(xiàn)在數(shù)據(jù)上。人工標(biāo)注的知識有如下特點:


第一,對提升具體任務(wù)效果至關(guān)重要,雖然現(xiàn)在 Few-Shot 等小數(shù)據(jù)量標(biāo)注很熱門,但是,這種不需要標(biāo)注數(shù)據(jù)或者少量標(biāo)注數(shù)據(jù)的模型,尚未滿足業(yè)務(wù)上線的要求,所以,標(biāo)注數(shù)據(jù)對于提升任務(wù)作用非常大;


第二, 任務(wù)相關(guān),數(shù)據(jù)分散。即在A任務(wù)上標(biāo)注的數(shù)據(jù),在 B 任務(wù)上并不能使用,需要重新標(biāo)注;


第三,總量較小。相對于無監(jiān)督數(shù)據(jù)往往幾千萬,幾億條,有標(biāo)注的數(shù)據(jù),可能只有幾百條、幾千條等。


如何將這些分散的標(biāo)注數(shù)據(jù),匯總到一塊,將其中蘊含的知識,注入到預(yù)訓(xùn)練對話模型,提高模型的能力?本文即針對這個問題進行了研究和探索。如果可以實現(xiàn)這樣的操作,即可實現(xiàn)知識遷移,將在A任務(wù)標(biāo)注的數(shù)據(jù)的知識,用到B任務(wù)上,從而提升B任務(wù)的效果。好處如下:第一,解決冷啟動問題;第二,在達到相同準(zhǔn)確率的情況下,需要的標(biāo)注數(shù)據(jù)更少。


圖片


首先,回顧一下預(yù)訓(xùn)練模型的發(fā)展。預(yù)訓(xùn)練模型在圖像領(lǐng)域首先使用,而且是基于有監(jiān)督的數(shù)據(jù)。而當(dāng) Bert 等預(yù)訓(xùn)練模型提出后,開始從大量的無監(jiān)督數(shù)據(jù)中進行預(yù)訓(xùn)練,即通過自監(jiān)督學(xué)習(xí)。預(yù)訓(xùn)練模型以前有兩種手段:一個是對有監(jiān)督數(shù)據(jù)進行監(jiān)督學(xué)習(xí);另一個是對無監(jiān)督數(shù)據(jù)進行自監(jiān)督學(xué)習(xí)。今天面對的任務(wù)是大量的無監(jiān)督數(shù)據(jù)和小量的有監(jiān)督數(shù)據(jù),我們提出了半監(jiān)督學(xué)習(xí),通過半監(jiān)督的方式,將有監(jiān)督數(shù)據(jù)和無監(jiān)督數(shù)據(jù)結(jié)合起來,如上圖所示,我們提出了一個 SPACE(Semi-supervised Pre-trAined Conversation ModEl)模型。


圖片


半監(jiān)督的概念已將發(fā)展很多年了,這里提出的半監(jiān)督方式和以前的半監(jiān)督方式是有所不同的,主要區(qū)別在于:過去,半監(jiān)督將半監(jiān)督和有監(jiān)督結(jié)合一起,用于降低知識標(biāo)注成本;現(xiàn)在,我們主要是半監(jiān)督和自監(jiān)督結(jié)合,向預(yù)訓(xùn)練模型注入知識。


 2. 預(yù)訓(xùn)練對話模型發(fā)展


圖片


基于我們提出的半監(jiān)督模型的理念和框架,再來看一下預(yù)訓(xùn)練對話模型的進展。如何將半監(jiān)督的思想融入到預(yù)訓(xùn)練對話模型,在一個具體的業(yè)務(wù)場景進行實驗和落地。由上圖可以知道,圍繞著對話理解和對話生成,有很多機構(gòu)做了很多的模型,但是對于對話策略做的非常少,基本上沒有相關(guān)研究。但是,對話策略非常的關(guān)鍵和重要。


圖片


那么,什么是對話策略?在對話理解和對話生成之間,存在著對話策略。對話策略就是根據(jù)對話理解的結(jié)果,以及結(jié)合歷史的狀態(tài),來決定如何回復(fù)下一句話。


舉例而言,兩個人 A 和 B,在對話過程中,A 不斷地說,B 可以一直回復(fù),嗯,好的,對對。這就是一種對話策略,B的策略表示我在聽,我聽懂了。還有一種策略,B 在聽的過程中,有部分聽不懂,需要反問其中某個點等;以及對于 A 說的某些地方有些疑問,進行澄清等,也是一種策略。所以,對話策略是保證一段對話可以順利進行很關(guān)鍵的一步。


學(xué)術(shù)界對對話策略的定義是 DA(Dialog act),由上圖所示,在不同時間,DA 的定義與名稱不盡相同,整個對話策略雖然發(fā)展了很多年,但是存在復(fù)雜和不一致等缺點。導(dǎo)致今天應(yīng)用起來比較麻煩。


*博客內(nèi)容為網(wǎng)友個人發(fā)布,僅代表博主個人觀點,如有侵權(quán)請聯(lián)系工作人員刪除。



關(guān)鍵詞: AI

相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉