如何“錨定”NLP模型中的語言智慧?丨長文評析語言探針

??新智元推薦??
??新智元推薦??
來源:數(shù)據(jù)實戰(zhàn)派
作者:Keyur Faldu等
【新智元導(dǎo)讀】本文由兩位數(shù)據(jù)科學(xué)家 ——Keyur Faldu 和 Amit Sheth 所撰寫,詳細闡述了現(xiàn)代自然語言處理的興起以及可解釋性的必要,并結(jié)合對當前技術(shù)狀況的調(diào)查,以更好地回答由 NLP 模型所引發(fā)的語言智慧相關(guān)的一些開放性問題。
當然,還有其他方面需要深入分析,例如:
更大的模型能夠更好的編碼語言知識嗎?模型所捕獲的語言知識在復(fù)雜性方面(維度大小,參數(shù)數(shù)量)如何變化?探索不同復(fù)雜度模型在輔助任務(wù)上的分類器性能,可以對此問題作出解釋。
如何評估模型對語言知識進行編碼的泛化能力?探針在編碼語言知識上的成功可看作模型測試復(fù)雜數(shù)據(jù)時泛化能力的標志。例如,如果訓(xùn)練數(shù)據(jù)通常將 “主要助動詞” 作為第一個動詞,而廣義的數(shù)據(jù)故意包含干擾因素,則 “主要助動詞” 不再是第一個動詞如何處理?在這種情況下,如果探針可以檢測到 “主要助動詞”,則可以將其歸因于諸如語法解析樹之類的語言特征,而非順序位置特征。
我們可以解碼語言知識,而不是依賴于淺層探針分類器標簽嗎?在探索解碼語言知識的能力中發(fā)現(xiàn),與解碼或構(gòu)建語言知識的任務(wù)相比,分類任務(wù)的復(fù)雜性相對較低,那能否使用內(nèi)部表示構(gòu)建一個完整的依存解析樹呢?或許尋找恢復(fù)潛在語言知識的方法將會是一種非常有趣的體驗。
探針的局限性是什么?當探針能夠很好地完成輔助語言任務(wù)時,是由于某種相關(guān)性,還是有因果關(guān)系?考慮到深層而復(fù)雜的探針模型也具有記憶能力,很可能會導(dǎo)致過擬合現(xiàn)象。那么,如何驗證探針所表達的語言知識的來源呢?可以嘗試以下方案,在設(shè)計 “控制任務(wù)” 時,將探針的預(yù)測性能與控制任務(wù)的性能進行比較,便于揭秘探針的有效性和語言知識的來源。
我們可以注入語言知識嗎?如果神經(jīng)網(wǎng)絡(luò)模型在訓(xùn)練端到端任務(wù)的過程中學(xué)習(xí)語言知識,那么,是否可以考慮注入語言知識(即語法解析樹)來提高性能呢?

圖 1 BERT 模型上的探針說明圖
模型越大,效果越好?
文中,三個與句子結(jié)構(gòu)相關(guān)的輔助任務(wù)考慮如下:
句子長度(Sentence length):句子嵌入是否在句子長度上編碼信息?
單詞內(nèi)容(Word-content):是否可以根據(jù)句子嵌入來預(yù)測句子中是否包含某個單詞?
單詞順序(Word-order)。給定句子嵌入和兩個單詞,能否確定兩個單詞的順序?
這些探針基于句子嵌入,而該句子嵌入是由編碼器 - 解碼器模型和連續(xù)詞袋模型(CBOW, Continuous Bag-of-Words Model)產(chǎn)生的最終表示的平均值來計算的。該論文的主要發(fā)現(xiàn)是 —— 大的模型可以更好地對語言知識進行編碼。
如下所示:

圖 2 圖片出處:ICLR 2017
泛化能力
圖 3 圖片出處:ACL 2019

圖 4 圖片出處:ACL 2019

圖 5 圖片出處:ACL 2019

圖 6 圖片出處:ACL 2019
語言知識的解碼能力

圖 7 圖片出處:NAACL 2019

圖 8 圖片出處:NAACL 2019
語言知識的局限和來源

圖 9 圖片出處:EMNLP-2019

圖 10 圖片出處:ICLR 2017
注入語言知識

圖 11 圖片出處:TACL 2020

圖 12 圖片出處:TACL 2020
編碼語言知識能否捕獲其含義?
最小功能測試(MFT, Minimum Functionality Tests),其中使用預(yù)期的金標生成示例;
不變性測試(INV, INVariance Tests),其中從給定的示例中,創(chuàng)建新示例,其中金標被翻轉(zhuǎn);
方向預(yù)期測試(DIR, Directional Expectation Tests)對原始句子進行修改,金標往期望的方向(正向 / 負向)變化。
作者建議對于 NLP 模型的每一種能力,都盡量采用這三種測試方法測試一遍。

圖 13 圖片出處:ACL 2020
NLP 模型確實可以對語言知識進行編碼,以解決某些下游 NLP 任務(wù)。
較大的模型或表示形式不一定更好編碼語言知識。
為句法任務(wù)編碼的語言知識可以泛化到具有復(fù)雜句子結(jié)構(gòu)的測試數(shù)據(jù),這歸因于模型對語言語法的編碼能力。
較深層次的探針可能會過度擬合并潛在地記憶輔助任務(wù),從而導(dǎo)致我們對編碼語言知識的估計過高,得出誤判,所以,建議設(shè)計探針的控制任務(wù)。
提供語言知識后,模型可以更好地完成從此類知識中尋求指導(dǎo)的任務(wù)。
句法語言知識不足以捕捉自然語言理解的含義,甚至目前最前沿的模型離實現(xiàn) NLP 任務(wù)所需的理解也尚有差距。


