天天看點

打破語言模型黑盒子:谷歌對BERT來了一次“文法測試”

打破語言模型黑盒子:谷歌對BERT來了一次“文法測試”

新智元報道

編輯:David

【新智元導讀】谷歌研究人員對自家BERT模型進行了「文法測試」,結果顯示,BERT确實學會了遵循「主謂一緻」的文法,但并未将其視作規則,而當成了一種偏好。模型的具體表現取決于動詞出現的頻率和形式。

近年來,預訓練的語言模型,如 BERT 和 GPT-3,在自然語言處理 (NLP) 中得到了廣泛應用。通過對大量文本進行訓練,語言模型獲得了關于世界的廣泛知識,在各種 NLP 基準測試中取得了強勁的表現。

然而,這些模型通常是不透明的,不清楚這些模型為何表現如此出色,這就限制了對這些模型進行進一步由假設驅動的改進。要搞清楚這個問題,首先要确定這些模型中包含哪些語言知識。

分析這個問題的基礎主題是英語中的主謂一緻文法規則,要求動詞的文法與主語的文法一緻。

例如,句子“「The dogs run」符合文法,因為“dogs”和“run”都是複數形式,但「The dogs runs就不合文法,因為「runs」是動詞的單數形式,而主語dogs是複數形式。

目标句法評估 (TSE)是評估語言模型的語言知識的一種架構。該架構會向語言模型顯示差異最小的句子對,一個合乎文法的,一個不合文法的,模型必須确定哪一個句子合乎文法。

這樣,TSE可用于測試英語主謂一緻規則的知識。

打破語言模型黑盒子:谷歌對BERT來了一次“文法測試”

根據這個原則,在 EMNLP 2021 發表的「Frequency Effects on Syntactic Rule-Learning in Transformers」中,谷歌的研究人員考察了 BERT 模型正确應用英語主謂一緻規則的能力,如何受單詞出現次數的影響模型在預訓練期間看到的。

打破語言模型黑盒子:谷歌對BERT來了一次“文法測試”

為了測試特定條件,研究人員使用精心控制的資料集,從頭開始預訓練 BERT 模型。結果發現,BERT在預訓練資料中沒有一起出現的主謂對句子上取得了良好的表現,這表明模型确實學會了應用主謂一緻。

不過,當錯誤的文法形式比正确形式出現得更頻繁時,模型傾向于預測錯誤形式,這表明 BERT 沒有将文法一緻性視為必須遵循的規則。這些結果有助于研究人員更好地了解預訓練語言模型的優勢和局限性。

先前工作回顧:「自然句」與「人造句」

打破語言模型黑盒子:谷歌對BERT來了一次“文法測試”

以前,研究人員使用 TSE 來衡量 BERT 模型遵守英語文法中主謂一緻的能力。給定動詞的單數和複數形式(「runs」和「run」),如果模型正确地學會了應用主謂一緻規則,那麼它應該始終為使句子在文法上正确的動詞形式配置設定更高的機率。

之前的研究使用「自然句」和「人造句」對 BERT 進行評估,後者是人為構造的文法正确、但在語義上無意義的句子。

這種人造句在測試模型文法能力時很有用,因為模型不能僅僅要依靠表面的語料庫統計資料。比如「dogs run」比「dogs running」更常見,但「dogs publish」和「dogs publishes」都是非常罕見的,是以模型不可能簡單地記住某些句子出現機率更高這一事實。

BERT 在「人造句」上實作了超過 80% 的準确率(遠好于 50% 的随機基線水準),這可以視作模型已經學會應用主謂一緻規則的證據。

而在這篇新發表的論文中,研究人員通過在特定資料條件下預訓練 BERT 模型,超越了之前的水準,可以更深入地研究這些結果,了解預訓練資料中的某些模式如何影響BERT的性能。

沒見過的「主語-動詞」對

研究人員首先研究了模型在預訓練期間在主語-動詞對上的表現,以及主語和動詞未出現在同一個句子中的示例的表現:

打破語言模型黑盒子:谷歌對BERT來了一次“文法測試”

BERT 在「自然句」和「人造句」評估上的錯誤率,根據訓練期間是否在同一句子中看到特定的主謂 (SV) 對進行分層。

BERT 的錯誤率在看不見的主謂句子對時略有增加,但它的表現仍然比樸素的啟發式算法好得多,這表明,BERT模型不是隻能簡單反應其看到的東西,它能夠實際學會主謂一緻的文法規則。

動詞出現頻率對BERT性能的影響

接下來,研究人員考察單詞的出現頻率對BERT正确使用主謂一緻規則的影響。

研究人員選擇了一組 60 個動詞,然後建立了多版本的預訓練資料,每個版本都設計為包含特定頻率的 60 個動詞,確定單複數形式出現相同的次數。然後從這些不同的資料集中訓練BERT模型,并在主謂一緻任務上對其進行了評估:

打破語言模型黑盒子:谷歌對BERT來了一次“文法測試”

BERT 遵循主謂一緻規則的能力,取決于訓練集中動詞出現的頻率

這些結果表明,雖然 BERT 能夠對主謂一緻規則進行模組化,但它需要看到一個動詞大約 100 次才能可靠地将它與規則一起使用。

動詞形式差異對BERT的影響

最後考察動詞單複數形式的相對頻率如何影響 BERT 的預測。例如,如果動詞的一種形式(如combat)比另一種動詞形式(combats)出現在預訓練資料中的頻率高得多,那麼 BERT 可能更有可能配置設定一個高機率到更頻繁的形式,即使它在文法上不正确。

為了評估這個名額,再次使用相同的 60 個動詞,但這次建立了預訓練資料的改動版本,動詞形式之間的頻率比從 1:1 到 100:1 不等。下圖顯示了 BERT 在這些不同級别的頻率不平衡下的性能:

打破語言模型黑盒子:谷歌對BERT來了一次“文法測試”

可見,随着訓練資料中動詞形式之間的頻率比變得更加不平衡,BERT 在合乎文法地使用這些動詞的能力出現了下降。

這些結果表明,當兩種形式在預訓練期間被模型看到相同的次數時,BERT 在預測正确的動詞形式方面取得了良好的準确性,但随着動詞出現頻率的差異增加,模型性能會逐漸下滑。

這意味着,即使 BERT 已經學會了如何應用主謂一緻性,它也不一定将其當做一個「規則」,而是更傾向于預測高頻詞,不管它們是否違反了主謂一緻性。

結論

本研究使用 TSE 來評估 BERT 的性能,揭示了模型在文法任務上的語言能力。此外還揭示了 BERT 處理判斷任務優先級的方式:模型知道主語和動詞應該一緻,面對高頻詞時尤為如此,但模型不了解這種一緻是必須遵循的規則,而隻是當成一種偏好。

研究人員希望,這項工作會對語言模型反映訓練資料集的屬性方面提供新的見解。

參考資料:

https://ai.googleblog.com/2021/12/evaluating-syntactic-abilities-of.html

https://arxiv.org/pdf/1901.05287.pdf

https://arxiv.org/abs/2109.07020

繼續閱讀