在很多人眼里,Salesforce也許是個陌生的名字,但它實際上是可以比肩微軟和甲骨文的科技巨頭。和眾多專注個體消費(fèi)者服務(wù)的公司不同,Salesforce的主營業(yè)務(wù)是CRM系統(tǒng),這也是它當(dāng)年迫于股東壓力放棄收購Twitter的一大因素。近年來,眼看競爭對手依靠AI技術(shù)取得巨大成功,坐擁大量優(yōu)質(zhì)數(shù)據(jù)、成立了人工智能平臺Einstein的Salesforce自然也不甘落后。今天,論智帶來的是Einstein研究所的新成果:一個十項全能的NLP深度學(xué)習(xí)模型。
對于機(jī)器翻譯、文本摘要、Q&A、文本分類等自然語言處理任務(wù)來說,深度學(xué)習(xí)的出現(xiàn)一遍遍刷新了state-of-the-art的模型性能記錄,給研究帶來諸多驚喜。但這些任務(wù)一般都有各自的度量基準(zhǔn),性能也只在一組標(biāo)準(zhǔn)數(shù)據(jù)集上測試,這就導(dǎo)致一個問題:即便這些模型在單個NLP任務(wù)中表現(xiàn)良好,但它們的基準(zhǔn)設(shè)計和架構(gòu)發(fā)展并不一定會對NLP全能模型的發(fā)展帶去積極影響。
為了探索這些模型的更多可能性,以及優(yōu)化它們的權(quán)重,我們引入decaNLP:自然語言十項全能多任務(wù)挑戰(zhàn)(同樣是個大型數(shù)據(jù)集)。這個挑戰(zhàn)包含十項任務(wù):Q&A、機(jī)器翻譯、摘要、自然語言推斷、情感分析、語義角色標(biāo)注、關(guān)系抽取、任務(wù)驅(qū)動多輪對話、數(shù)據(jù)庫查詢生成器和代詞消解。它的目標(biāo)是找到可以高質(zhì)量完成以上10種任務(wù)的模型,并探究這些模型與針對特定任務(wù)單獨訓(xùn)練的模型之間的不同。
為了方便比較,decaNLP使用了一個名為decaScore的基準(zhǔn)。
通過把這十項任務(wù)統(tǒng)一轉(zhuǎn)化成問答模式,這就成了一個大型Q&A模型
針對這項挑戰(zhàn),我們的具體做法是把這十項任務(wù)都轉(zhuǎn)換為問題和答案,并提出一個新的多任務(wù)問答網(wǎng)絡(luò)(MQAN),它可以在無需任何特定任務(wù)模塊、參數(shù)的情況下同時學(xué)習(xí)這十項任務(wù)。經(jīng)過實驗,MQAN得到了一些有趣發(fā)現(xiàn):機(jī)器翻譯和命名實體識別模型間可以進(jìn)行遷移學(xué)習(xí)、情感分析和自然語言推斷有相似的域……
通過比較基準(zhǔn),我們發(fā)現(xiàn)MQAN的多指針編碼器-解碼器結(jié)構(gòu)是它成功的一大關(guān)鍵,而且相反的訓(xùn)練策略可以進(jìn)一步提高網(wǎng)絡(luò)性能。盡管MQAN的定位是NLP全能模型,但它在單一任務(wù)中的表現(xiàn)也可圈可點??偠灾赪ikiSQL語義解析任務(wù)中取得了state-of-the-art的成果,在SQuAD上得分最高,在其他任務(wù)中也表現(xiàn)出眾。
任務(wù)及數(shù)據(jù)集
問題、文本、答案:十項NLP任務(wù)
首先我們來看看任務(wù)和相關(guān)數(shù)據(jù)集,這塊內(nèi)容在論文中有更詳細(xì)的介紹,包括每個任務(wù)的歷史背景和近期進(jìn)展情況,這里我們不再贅述。上圖是每個任務(wù)輸入輸出對的一些樣本。
Q&A
問答模型的輸入由問題和上下文兩部分組成,其中包含輸出答案所需的信息。對于這個任務(wù),我們使用的是斯坦福問答數(shù)據(jù)集(SQUAD),上下文截取自英語維基百科的段落,而答案則是從上下文中復(fù)制的單詞序列。
機(jī)器翻譯
機(jī)器翻譯的輸入是源語言文本,輸出是翻譯好的目標(biāo)語言。我們在這里把2016年國際口語機(jī)器翻譯評測比賽(IWSLT)中的英譯德數(shù)據(jù)作為訓(xùn)練集,并把2013年、2014年比賽的數(shù)據(jù)作為驗證集和測試集。輸入樣本來自轉(zhuǎn)錄的TED演講,因為它涵蓋了大多數(shù)自然語言會話主題。雖然對機(jī)器學(xué)習(xí)來說這個數(shù)據(jù)集有點小,但它的大小上和其他任務(wù)的數(shù)據(jù)集基本一致。
decaNLP沒有對額外數(shù)據(jù)的限制,所以如果你愿意,你還可以引入更多數(shù)據(jù),比如WMT的會議翻譯數(shù)據(jù)。
摘要
這類任務(wù)要求輸入文本后,模型能輸出該文本的摘要。近幾年來不少研究人員把CNN(美國有線電視新聞網(wǎng))和《每日郵報》語料庫匯總成數(shù)據(jù)集,并在這個基礎(chǔ)上取得了不少重大進(jìn)展。我們也為decaNLP挑戰(zhàn)引入了這個數(shù)據(jù)集的非匿名版本。
自然語言推斷
自然語言推斷(NLI)模型接收兩個輸入句子:一個前提和一個假設(shè)。模型需要推斷前提和假設(shè)之間的關(guān)系,并把它歸類為矛盾、中性、支持三者之一。我們用的是斯坦福大學(xué)的Multi-Genre NLI Corpus(MNLI)數(shù)據(jù)集,它是SNLI的升級版,提供多領(lǐng)域(語音轉(zhuǎn)錄、流行小說、政府報告)訓(xùn)練樣本。
情感分析
情感分析的任務(wù)是輸入文本后,輸出文本所表達(dá)的情緒。斯坦福大學(xué)的情緒樹庫(SST)是一個包含電影評論及其相應(yīng)情緒(正面、中性、負(fù)面)的數(shù)據(jù)集,非常適合這類任務(wù)。我們使用的是它的二進(jìn)制版本,以便decaNLP模型可以解析其中的依賴關(guān)系。
語義角色標(biāo)注
語義角色標(biāo)注(SRL),即輸入句子和謂語(通常是動詞),輸出語義角色間的關(guān)系:何時何地,“誰”對“誰”做了什么。我們把一個SRL數(shù)據(jù)集處理成問答形式,制作了一個新數(shù)據(jù)集:QA-SRL,它的內(nèi)容涵蓋新聞和維基百科。
關(guān)系抽取
關(guān)系抽取的目的是從輸入文本中提取屬于目標(biāo)種類的實體關(guān)系。在這種情況下,模型需要先識別實體間的語義關(guān)系,再判斷是不是屬于目標(biāo)種類。和SRL一樣,我們也為這項任務(wù)制作了一個新數(shù)據(jù)集:QA-ZRE。它把實體關(guān)系映射到一系列問題,所以抽取過程就也成了問答形式。
任務(wù)驅(qū)動多輪對話
在人機(jī)對話系統(tǒng)中,任務(wù)驅(qū)動多輪對話的一個關(guān)鍵是對話狀態(tài)跟蹤,也就是根據(jù)用戶發(fā)言和機(jī)器人的反應(yīng)確定用戶的明確目的,比如訂餐、訂票、購買商品等,它也可以追蹤交流過程中用戶提出的請求類型。對于這項任務(wù),我們用的是英文版的WoZ訂餐任務(wù),它包含訂餐食物實體、日期、時間、地址以及其他信息。
語義分析
從本質(zhì)上說,把自然語言翻譯成SQL再到數(shù)據(jù)庫查詢語句這個過程和語義分析密切相關(guān)。去年,我們曾在論文Seq2SQL中介紹過一種可以跳過SQL的方法,允許自然語言與數(shù)據(jù)庫直接進(jìn)行交互。所以這里用的還是當(dāng)時的數(shù)據(jù)集WikiSQL。
代詞消解
這個任務(wù)面向的是不圖靈測試,而是威諾格拉德模式挑戰(zhàn),其中最典型的一個例題是:市議會拒絕給示威者頒發(fā)許可,因為他們[擔(dān)心/宣揚(yáng)]暴力。這里“擔(dān)心”的主語是“市議會”,那么“宣揚(yáng)”的主語是誰?我們從這個例子開始訓(xùn)練,確保最終答案來自上下文,但它的得分又不會被上下文的措辭所影響。
模型得分:decaScore
多任務(wù)問答網(wǎng)絡(luò)(MQAN)
MQAN是一個多任務(wù)問答模型,只用一個深度學(xué)習(xí)神經(jīng)網(wǎng)絡(luò)就能解決decaNLP挑戰(zhàn)的十項任務(wù)。它沒有任何針對特定任務(wù)的參數(shù)和模塊,如上圖所示,輸入問題和上下文文本后,模型用BiLSTM對輸入進(jìn)行編碼,又用dual coattention分別調(diào)整兩個序列的表征,之后用另外兩個BiLSTM壓縮所有信息,以便它們能被用于高層計算。后面添加的自我注意力模塊能有效收集長期記憶,這些信息再被饋送進(jìn)最后兩個BiLSTM,得到問題和上下文的最終表征。
因為decaNLP是一個十項全能挑戰(zhàn),所以如果每項任務(wù)的評分基準(zhǔn)是百分制,那它就應(yīng)該是千分制——加法可以有效避免對不同任務(wù)的評分偏見。對于Q&A、自然語言推斷、情感分析和語義角色標(biāo)注,它們的評分基準(zhǔn)是歸一化的F1(nF1);摘要任務(wù)計算的是ROUGE-1、ROUGE-2和ROUGE-L得分的平均值;機(jī)器翻譯用的是BLEU評分;任務(wù)驅(qū)動多輪對話用的是任務(wù)跟蹤得分和請求跟蹤得分的平均值……
除了MQAN,我們還嘗試了其他結(jié)構(gòu)的模型并計算了它們的decaScores,下面是具體評分情況:
各模型評分結(jié)果
第一個S2S是一個包含注意力機(jī)制和指針生成器的序列到序列網(wǎng)絡(luò);第二個w/SAtt是S2S的衍生,它在編碼器的BiLSTM和解碼器的LSTM層之間加入了一層自我注意力模塊(Transformer);+CAtt把上下文和問題分解成兩個序列,并在編碼器上添加了額外的層;MQAN事實上就是帶額外問題指針的+CAtt,它在表格中被表示為+QPtr。
上表數(shù)據(jù)顯示了模型在多任務(wù)和單任務(wù)之間的權(quán)衡:通過在S2S中加入額外的注意力模塊,模型能更有效地從問題+上下文的單一序列中提取有效信息,從而極大地提高了它在SQUAD和WikiSQL上的性能;通過在前者基礎(chǔ)上把上下文和問題作為單獨的輸入序列,模型在大多數(shù)任務(wù)上的表現(xiàn)更好了,但它在MNLI和MWSC兩個數(shù)據(jù)集上卻性能暴跌,這不難理解,自然語言推斷和代詞消解需要結(jié)合上下文和問題,它們一旦分離,模型就失效了;針對這個問題,+QPtr引入了一個額外指針,可以發(fā)現(xiàn),這時模型在MNLI和MWSC上的性能比S2S更優(yōu)。
學(xué)習(xí)新任務(wù)時,MQAN預(yù)訓(xùn)練/直接訓(xùn)練的差距
-
深度學(xué)習(xí)
+關(guān)注
關(guān)注
73文章
5503瀏覽量
121157 -
nlp
+關(guān)注
關(guān)注
1文章
488瀏覽量
22035
原文標(biāo)題:decaNLP:一個深度學(xué)習(xí)模型能完成幾項NLP任務(wù)?
文章出處:【微信號:jqr_AI,微信公眾號:論智】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論