語(yǔ)言生成不夠「生動(dòng)」?Percy Liang 等來(lái)自斯坦福大學(xué)的研究者提出了自然語(yǔ)言評(píng)估新標(biāo)準(zhǔn)。
困惑度是評(píng)估生成語(yǔ)言是否「自然」的最常見(jiàn)標(biāo)準(zhǔn),它的值越小,則表示模型生成的句子越接近人類語(yǔ)言。但是這種基于統(tǒng)計(jì)的方法并不能很好地評(píng)估生成質(zhì)量,因此本文提出一種新的評(píng)估方式 HUSE,它為自然語(yǔ)言生成提供了結(jié)合人類和統(tǒng)計(jì)評(píng)估的新架構(gòu)。
怎樣度量生成的語(yǔ)言
生成文本是很多 NLP 任務(wù)的核心,但如何恰當(dāng)?shù)卦u(píng)估生成語(yǔ)言的「自然性」是很有難度的。好的評(píng)估指標(biāo)應(yīng)該不僅能捕捉到生成結(jié)果的質(zhì)量,還能考慮到生成結(jié)果的多樣性,這對(duì)對(duì)話或故事生成這類需要?jiǎng)?chuàng)造性的開(kāi)放性任務(wù)尤為關(guān)鍵。
人類評(píng)估通常被視為金科玉律,既能捕捉質(zhì)量也不會(huì)忽略多樣性。但是,統(tǒng)計(jì)評(píng)估(即在參考測(cè)試集上的困惑度)也能捕捉多樣性,因?yàn)樗_保模型為新句子分配合理的概率,但是困惑度(Perplexity)無(wú)法提供充分的質(zhì)量評(píng)估。
目前困惑度在語(yǔ)言模型等領(lǐng)域中是應(yīng)用最廣泛的度量方法,它刻畫的是語(yǔ)言模型估計(jì)一句話出現(xiàn)的概率。困惑度有一個(gè)非常直觀的理解,即我們可以認(rèn)為它是平均分支系數(shù)。也就是說(shuō)語(yǔ)言模型預(yù)測(cè)下一個(gè)詞時(shí)平均可選的數(shù)量,即模型對(duì)下一個(gè)詞的「困惑程度」。
現(xiàn)有的將統(tǒng)計(jì)評(píng)估和人類評(píng)估結(jié)合起來(lái)的方法是點(diǎn)對(duì)點(diǎn)的,這會(huì)導(dǎo)致有誤導(dǎo)性的性能評(píng)估。常見(jiàn)的方法是通過(guò)概率模型的困惑度來(lái)評(píng)估多樣性、通過(guò)對(duì)束搜索輸出進(jìn)行人類評(píng)估來(lái)衡量質(zhì)量。這就會(huì)產(chǎn)生一種錯(cuò)覺(jué):某個(gè)模型質(zhì)量高且具備多樣性,而現(xiàn)實(shí)則是這個(gè)模型要么只具備多樣性,要么只能輸出高質(zhì)量的結(jié)果。
斯坦福的解決方案
在這篇論文中,斯坦福的研究者采用對(duì)抗的思想,用判別器判斷句子到底是來(lái)自參考分布還是模型分布,并將最優(yōu)判別器誤差率的 2 倍作為理想的評(píng)估指標(biāo)。如果模型生成的句子質(zhì)量較低,則最優(yōu)判別器能夠?qū)δP蜕傻木渥舆M(jìn)行準(zhǔn)確地分類。如果參考分布包含該模型無(wú)法生成的句子(低多樣性),則最優(yōu)判別器也能夠?qū)?lái)自參考分布的句子進(jìn)行準(zhǔn)確地分類。
但是,最優(yōu)判別器并不可得?!溉祟悺古袆e器無(wú)法高效捕捉多樣性,訓(xùn)練得到的判別器(比如基于 GAN 或人類判斷訓(xùn)練得到的判別器)也無(wú)法用于嚴(yán)謹(jǐn)?shù)脑u(píng)估。
該研究的關(guān)鍵結(jié)果,即最優(yōu)分類器依賴于兩個(gè)數(shù)值:句子是模型生成的概率;句子才樣子參考分布的概率。前者可以直接從模型中計(jì)算得到,后者可以通過(guò)人類判斷的分?jǐn)?shù)近似得到,從而得到圖 1 所示的二維空間。
圖 1:HUSE(Human Unified with Statistical Evaluation)是分類誤差的兩倍,即基于人類判斷分?jǐn)?shù)和模型預(yù)測(cè)概率來(lái)區(qū)分文本是來(lái)自參考數(shù)據(jù)還是模型生成。HUSE 能識(shí)別出質(zhì)量和多樣性存在問(wèn)題的樣本。
CodaLab 與 論文復(fù)現(xiàn)
該研究在 CodaLab 平臺(tái)上提供了所有代碼、數(shù)據(jù)和實(shí)驗(yàn)結(jié)果。值得注意的是,CodaLab 也是 Percy Liang 和斯坦福等研究者構(gòu)建的一個(gè)開(kāi)放平臺(tái),它希望能為可復(fù)現(xiàn)研究提供管理實(shí)驗(yà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
論文鏈接:https://arxiv.org/pdf/1904.02792.pdf
我們?cè)撊绾味攘孔匀徽Z(yǔ)言生成系統(tǒng)是否生成高質(zhì)量和多樣性的輸出?人類評(píng)估可以捕捉質(zhì)量,但是不能衡量多樣性,因?yàn)檫@種方法不能分辨生成結(jié)果是不是簡(jiǎn)單地抄襲自訓(xùn)練集。但同時(shí),基于統(tǒng)計(jì)的度量方法(即困惑度)能很好地捕捉多樣性,但不能嚴(yán)格地度量質(zhì)量,因?yàn)榕紶柹傻牡唾|(zhì)量樣本并不能得到充分的懲罰。
在這篇論文中,我們提出了一個(gè)統(tǒng)一的框架以同時(shí)評(píng)估生成質(zhì)量與多樣性,它主要通過(guò)預(yù)測(cè)一句話到底是機(jī)器生成語(yǔ)言還是人類語(yǔ)言,從而給出預(yù)測(cè)的最優(yōu)誤差率。我們表示,該誤差率能通過(guò)結(jié)合人類和統(tǒng)計(jì)評(píng)估高效地估計(jì),我們將使用的評(píng)估度量稱之為 HUSE。
在摘要生成和聊天對(duì)話生成中,我們證明了 (1) HUSE 能夠檢測(cè)到純粹人類評(píng)估無(wú)法發(fā)現(xiàn)的多樣性缺陷,(2) 退火等技術(shù)在提升質(zhì)量的同時(shí)降低了 HUSE 值,即以降低多樣性為代價(jià)。
核心方法 HUSE
自然語(yǔ)言生成可以視為在給定先驗(yàn)句 x 的情況下生成后續(xù) y 的概率,即 p_model(y | x)?,F(xiàn)在我們理想的評(píng)估是判斷 p_model 與真實(shí)的參考分布 p_ref 之間的距離,如果它們之間的距離很小,那么我們就可以說(shuō)生成效果很好。
具體而言,如果 y 可以是機(jī)器生成的(采樣自 p_model),也可以是人類的自然語(yǔ)言(采樣自 p_ref),那么類似 GAN 的概念可以定義為:
如果我們有任意判別器,它嘗試在給定 x 和 y 的情況下判斷 z,那么我們可以定義 L*為該判別器最低可能誤差率的兩倍:
其中 L*即度量了 p_model 和 p_pref 的相似性,它是總變分散度(variational divergenc)的線性函數(shù)。因此,如果 p_model 和 p_pref 是互斥的,那么 L*就為 0,如果是等同的,那么 L*就為 1。
對(duì)于將 (x, y) 映射到 d 維實(shí)數(shù)φ(x, y) 的任意特征映射φ,我們可以將評(píng)估分?jǐn)?shù) L(φ) 定義為:
其中 L(φ) 會(huì)在所有依賴于φ的函數(shù)上做最優(yōu)化,因此φ包含的信息越多,L(φ) 就會(huì)越低。這表示了兩個(gè)內(nèi)在關(guān)系:首先任何特征映射φ都會(huì)導(dǎo)致 L*的上邊界(optimistic),即 L(φ) 能檢測(cè)模型差的程度但卻又不能確定好的程度;第二向 φ添加新特征只會(huì)提升上邊界。
因?yàn)榛?(x, y) 的最優(yōu)判別器只需要兩個(gè)特征就足夠了,我們可以將特征映射 φ 定義為如下:
此外,如果我們使用句子長(zhǎng)度 len(y) 做正則化,它會(huì)構(gòu)建更低或更緊致的分?jǐn)?shù)。因此總的而言,HUSE 特征可以定義為如下:
其中 HJ(x, y) 為 20 個(gè)眾包工作者的平均回復(fù),圖 2 展示了 Reddit 語(yǔ)料庫(kù)的自然語(yǔ)言建模與 HJ(x, y)。
圖 2:在 Reddit 語(yǔ)料庫(kù)中,對(duì)于句子 y 中的「typicality」人類判斷(HJ),它與其在語(yǔ)料庫(kù)出現(xiàn)的頻率高度相關(guān)(r = 0.92)。因此 HJ 是 log p_ref 很好的代理函數(shù)。
實(shí)驗(yàn)
研究者使用 HUSE 評(píng)估三種不同類型的單句子自然語(yǔ)言生成任務(wù):1)無(wú)條件和高熵的語(yǔ)言建模;2)有條件和高熵的故事生成、聊天對(duì)話系統(tǒng);3)有條件和低熵的文本摘要。實(shí)驗(yàn)表明,HUSE 為高熵任務(wù)上的多樣性提供直接、可解釋的評(píng)估,同時(shí)為低熵任務(wù)提供有用的模型診斷。
表 1:在文本摘要、故事生成、聊天對(duì)話系統(tǒng)和語(yǔ)言建模四種任務(wù)上最優(yōu)模型的性能,評(píng)估指標(biāo)為整體的擬合優(yōu)度 (HUSE)、樣本質(zhì)量 (HUSE-Q) 和多樣性 (HUSE-D)。HUSE 和 HUSE-Q 的范圍是 0.0(完全可與參考文本區(qū)分開(kāi)來(lái))到 1.0(完全無(wú)法與參考文本區(qū)分開(kāi)來(lái)),分類誤差為 HUSE/2。當(dāng) HUSE-Q > HUSE 時(shí),HUSE-D 的范圍可能會(huì)超出 1.0,因?yàn)樗臉颖玖枯^小。
圖 3:HUSE-D 和 HUSE-Q 之間的權(quán)衡。點(diǎn)表示模型,顏色表示任務(wù)。神經(jīng)模型(圓圈)使用退火生成(點(diǎn)標(biāo)簽表示 Temperature)。與右上最接近的模型越優(yōu)秀,灰色的對(duì)角線表示 HUSE。任務(wù)的陰影區(qū)域表示嚴(yán)格主導(dǎo)該任務(wù)的模型。退火是對(duì)多樣性和質(zhì)量的權(quán)衡,但是它無(wú)法輕松地增加底層模型性能(HUSE)。
圖 4:算法 1 中的二維分類問(wèn)題在具備不同 Softmax Temperature 的摘要任務(wù)上的示例。每個(gè)點(diǎn)表示參考句子 φ_huse(x_i, y_i) 或模型生成句子 φ_huse(x_i, y'_ i)。顏色表示句子的來(lái)源 (z),陰影表示最近鄰分類器的分類置信度。
圖 5:HUSE 的估計(jì)也適用于較小的測(cè)試集規(guī)模,但是通常需要約 20 個(gè)眾包工作者對(duì)每個(gè)樣本進(jìn)行評(píng)估。