《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 可編程邏輯 > 解決方案 > NAACL 2019 | 怎樣生成語言才能更自然,斯坦福提出超越Perplexity的評估新方法

NAACL 2019 | 怎樣生成語言才能更自然,斯坦福提出超越Perplexity的評估新方法

2019-04-21
關(guān)鍵詞: CodaLab 語言模型 NLP

語言生成不夠「生動」?Percy Liang 等來自斯坦福大學的研究者提出了自然語言評估新標準。


困惑度是評估生成語言是否「自然」的最常見標準,它的值越小,則表示模型生成的句子越接近人類語言。但是這種基于統(tǒng)計的方法并不能很好地評估生成質(zhì)量,因此本文提出一種新的評估方式 HUSE,它為自然語言生成提供了結(jié)合人類和統(tǒng)計評估的新架構(gòu)。


怎樣度量生成的語言


生成文本是很多 NLP 任務(wù)的核心,但如何恰當?shù)卦u估生成語言的「自然性」是很有難度的。好的評估指標應(yīng)該不僅能捕捉到生成結(jié)果的質(zhì)量,還能考慮到生成結(jié)果的多樣性,這對對話或故事生成這類需要創(chuàng)造性的開放性任務(wù)尤為關(guān)鍵。


人類評估通常被視為金科玉律,既能捕捉質(zhì)量也不會忽略多樣性。但是,統(tǒng)計評估(即在參考測試集上的困惑度)也能捕捉多樣性,因為它確保模型為新句子分配合理的概率,但是困惑度(Perplexity)無法提供充分的質(zhì)量評估。


目前困惑度在語言模型等領(lǐng)域中是應(yīng)用最廣泛的度量方法,它刻畫的是語言模型估計一句話出現(xiàn)的概率。困惑度有一個非常直觀的理解,即我們可以認為它是平均分支系數(shù)。也就是說語言模型預(yù)測下一個詞時平均可選的數(shù)量,即模型對下一個詞的「困惑程度」。


現(xiàn)有的將統(tǒng)計評估和人類評估結(jié)合起來的方法是點對點的,這會導致有誤導性的性能評估。常見的方法是通過概率模型的困惑度來評估多樣性、通過對束搜索輸出進行人類評估來衡量質(zhì)量。這就會產(chǎn)生一種錯覺:某個模型質(zhì)量高且具備多樣性,而現(xiàn)實則是這個模型要么只具備多樣性,要么只能輸出高質(zhì)量的結(jié)果。


斯坦福的解決方案


在這篇論文中,斯坦福的研究者采用對抗的思想,用判別器判斷句子到底是來自參考分布還是模型分布,并將最優(yōu)判別器誤差率的 2 倍作為理想的評估指標。如果模型生成的句子質(zhì)量較低,則最優(yōu)判別器能夠?qū)δP蜕傻木渥舆M行準確地分類。如果參考分布包含該模型無法生成的句子(低多樣性),則最優(yōu)判別器也能夠?qū)碜詤⒖挤植嫉木渥舆M行準確地分類。


但是,最優(yōu)判別器并不可得?!溉祟悺古袆e器無法高效捕捉多樣性,訓練得到的判別器(比如基于 GAN 或人類判斷訓練得到的判別器)也無法用于嚴謹?shù)脑u估。


該研究的關(guān)鍵結(jié)果,即最優(yōu)分類器依賴于兩個數(shù)值:句子是模型生成的概率;句子才樣子參考分布的概率。前者可以直接從模型中計算得到,后者可以通過人類判斷的分數(shù)近似得到,從而得到圖 1 所示的二維空間。

微信圖片_20190421160931.jpg

圖 1:HUSE(Human Unified with Statistical Evaluation)是分類誤差的兩倍,即基于人類判斷分數(shù)和模型預(yù)測概率來區(qū)分文本是來自參考數(shù)據(jù)還是模型生成。HUSE 能識別出質(zhì)量和多樣性存在問題的樣本。


CodaLab 與 論文復現(xiàn)



該研究在 CodaLab 平臺上提供了所有代碼、數(shù)據(jù)和實驗結(jié)果。值得注意的是,CodaLab 也是 Percy Liang 和斯坦福等研究者構(gòu)建的一個開放平臺,它希望能為可復現(xiàn)研究提供管理實驗、數(shù)據(jù)等方法。


Codalab 地址:https://worksheets.codalab.org/worksheets/0x88644b5ee189402eb19d39d721d1005c

GitHub 地址:https://github.com/hughbzhang/HUSE


論文:Unifying Human and Statistical Evaluation for Natural Language Generation

微信圖片_20190421161002.jpg


論文鏈接:https://arxiv.org/pdf/1904.02792.pdf


我們該如何度量自然語言生成系統(tǒng)是否生成高質(zhì)量和多樣性的輸出?人類評估可以捕捉質(zhì)量,但是不能衡量多樣性,因為這種方法不能分辨生成結(jié)果是不是簡單地抄襲自訓練集。但同時,基于統(tǒng)計的度量方法(即困惑度)能很好地捕捉多樣性,但不能嚴格地度量質(zhì)量,因為偶爾生成的低質(zhì)量樣本并不能得到充分的懲罰。


在這篇論文中,我們提出了一個統(tǒng)一的框架以同時評估生成質(zhì)量與多樣性,它主要通過預(yù)測一句話到底是機器生成語言還是人類語言,從而給出預(yù)測的最優(yōu)誤差率。我們表示,該誤差率能通過結(jié)合人類和統(tǒng)計評估高效地估計,我們將使用的評估度量稱之為 HUSE。


在摘要生成和聊天對話生成中,我們證明了 (1) HUSE 能夠檢測到純粹人類評估無法發(fā)現(xiàn)的多樣性缺陷,(2) 退火等技術(shù)在提升質(zhì)量的同時降低了 HUSE 值,即以降低多樣性為代價。


核心方法 HUSE


自然語言生成可以視為在給定先驗句 x 的情況下生成后續(xù) y 的概率,即 p_model(y | x)?,F(xiàn)在我們理想的評估是判斷 p_model 與真實的參考分布 p_ref 之間的距離,如果它們之間的距離很小,那么我們就可以說生成效果很好。


具體而言,如果 y 可以是機器生成的(采樣自 p_model),也可以是人類的自然語言(采樣自 p_ref),那么類似 GAN 的概念可以定義為:


微信圖片_20190421161033.jpg


如果我們有任意判別器,它嘗試在給定 x 和 y 的情況下判斷 z,那么我們可以定義 L*為該判別器最低可能誤差率的兩倍:

微信圖片_20190421161058.png


其中 L*即度量了 p_model 和 p_pref 的相似性,它是總變分散度(variational divergenc)的線性函數(shù)。因此,如果 p_model 和 p_pref 是互斥的,那么 L*就為 0,如果是等同的,那么 L*就為 1。



對于將 (x, y) 映射到 d 維實數(shù)φ(x, y) 的任意特征映射φ,我們可以將評估分數(shù) L(φ) 定義為:


微信圖片_20190421161118.png


其中 L(φ) 會在所有依賴于φ的函數(shù)上做最優(yōu)化,因此φ包含的信息越多,L(φ) 就會越低。這表示了兩個內(nèi)在關(guān)系:首先任何特征映射φ都會導致 L*的上邊界(optimistic),即 L(φ) 能檢測模型差的程度但卻又不能確定好的程度;第二向 φ添加新特征只會提升上邊界。


因為基于 (x, y) 的最優(yōu)判別器只需要兩個特征就足夠了,我們可以將特征映射 φ 定義為如下:


微信圖片_20190421161139.png


此外,如果我們使用句子長度 len(y) 做正則化,它會構(gòu)建更低或更緊致的分數(shù)。因此總的而言,HUSE 特征可以定義為如下:



微信圖片_20190421161159.jpg


其中 HJ(x, y) 為 20 個眾包工作者的平均回復,圖 2 展示了 Reddit 語料庫的自然語言建模與 HJ(x, y)。

微信圖片_20190421161226.jpg

圖 2:在 Reddit 語料庫中,對于句子 y 中的「typicality」人類判斷(HJ),它與其在語料庫出現(xiàn)的頻率高度相關(guān)(r = 0.92)。因此 HJ 是 log p_ref 很好的代理函數(shù)。


實驗


研究者使用 HUSE 評估三種不同類型的單句子自然語言生成任務(wù):1)無條件和高熵的語言建模;2)有條件和高熵的故事生成、聊天對話系統(tǒng);3)有條件和低熵的文本摘要。實驗表明,HUSE 為高熵任務(wù)上的多樣性提供直接、可解釋的評估,同時為低熵任務(wù)提供有用的模型診斷。

微信圖片_20190421161257.jpg

表 1:在文本摘要、故事生成、聊天對話系統(tǒng)和語言建模四種任務(wù)上最優(yōu)模型的性能,評估指標為整體的擬合優(yōu)度 (HUSE)、樣本質(zhì)量 (HUSE-Q) 和多樣性 (HUSE-D)。HUSE 和 HUSE-Q 的范圍是 0.0(完全可與參考文本區(qū)分開來)到 1.0(完全無法與參考文本區(qū)分開來),分類誤差為 HUSE/2。當 HUSE-Q > HUSE 時,HUSE-D 的范圍可能會超出 1.0,因為它的樣本量較小。

微信圖片_20190421161315.jpg

圖 3:HUSE-D 和 HUSE-Q 之間的權(quán)衡。點表示模型,顏色表示任務(wù)。神經(jīng)模型(圓圈)使用退火生成(點標簽表示 Temperature)。與右上最接近的模型越優(yōu)秀,灰色的對角線表示 HUSE。任務(wù)的陰影區(qū)域表示嚴格主導該任務(wù)的模型。退火是對多樣性和質(zhì)量的權(quán)衡,但是它無法輕松地增加底層模型性能(HUSE)。

微信圖片_20190421161335.jpg

圖 4:算法 1 中的二維分類問題在具備不同 Softmax Temperature 的摘要任務(wù)上的示例。每個點表示參考句子 φ_huse(x_i, y_i) 或模型生成句子 φ_huse(x_i, y'_ i)。顏色表示句子的來源 (z),陰影表示最近鄰分類器的分類置信度。

微信圖片_20190421161355.jpg

圖 5:HUSE 的估計也適用于較小的測試集規(guī)模,但是通常需要約 20 個眾包工作者對每個樣本進行評估。



本站內(nèi)容除特別聲明的原創(chuàng)文章之外,轉(zhuǎn)載內(nèi)容只為傳遞更多信息,并不代表本網(wǎng)站贊同其觀點。轉(zhuǎn)載的所有的文章、圖片、音/視頻文件等資料的版權(quán)歸版權(quán)所有權(quán)人所有。本站采用的非本站原創(chuàng)文章及圖片等內(nèi)容無法一一聯(lián)系確認版權(quán)者。如涉及作品內(nèi)容、版權(quán)和其它問題,請及時通過電子郵件或電話通知我們,以便迅速采取適當措施,避免給雙方造成不必要的經(jīng)濟損失。聯(lián)系電話:010-82306118;郵箱:aet@chinaaet.com。