天天看點

不可能三角:預訓練語言模型的下一步是什麼?

PLM的不可能三角困境。

編譯 | 王玥

編輯 | 陳彩娴

近年來,大規模預訓練語言模型(PLM)顯著提高了各種NLP任務的性能。由BERT和GPT-2開始,自監督預訓練範式和監督的微調範式取得了巨大的成功,并重新整理了許多自然語言處理領域的最先進成果,如語義相似度、機器閱讀了解、常識推理和文本摘要等。此外,這些PLM的規模為中等(即大小低于1B參數),令模型可以做出廣泛且快速的微調與适應。

然而在許多真實的、特别是新穎的NLP場景中,由于預算或時間限制,用于有效微調的标記資料非常有限。這就刺激了零樣本和少樣本NLP模型的開發。

從GPT-3開始,超大規模 PLM (SL-PLM)在隻給出任務描述和一些手工示例的情況下,在一般的NLP任務上表現出了優越的性能。這種能力以前在中等規模的PLM中沒有觀察到。然而,這些SL-PLM前所未有的超大規模在很大程度上阻礙了其廣泛應用。人們甚至很難獲得足夠的計算資源來加載這樣的模型,更不用說有效的部署和微調了。是以我們認為,目前還沒有一種輕量級PLM在監督學習和一般NLP任務的零/少樣本學習場景中都具有出色的性能。這導緻了在實際場景中使用這些PLM時需要投入大量的額外工作。

對于PLM來說,似乎産生了中等規模,零/少樣本學習能力和微調能力三者不可同時出現的困境。日前,微軟認知服務研究小組研究員朱晨光(Chenguang Zhu)及 Michael Zeng在其新論文《Impossible Triangle: What’s Next for Pre-trained Language Models?》中将這種困境稱為“不可能三角”。

據悉,朱晨光大學畢業于清華姚班,後取得斯坦福大學計算機系博士學位,畢業後進入微軟公司,現為微軟公司自然語言處理進階研究員。此前,AI科技評論對朱晨光博士做過一次人物專訪,更多内容可看:《朱晨光:一個從不通宵的AI研究員》。

1

不可能三角

不可能三角:預訓練語言模型的下一步是什麼?

PLM的不可能三角包含了在實際場景中部署模型所需的三個屬性,分别是:

P1:模型規模适中,即參數小于10億

P2:SoTA少樣本學習能力

P3::SoTA微調能力

三角形圖源:https://commons.wikimedia.org/wiki/File:Penrose_triangle.svg

圖為描述目前PLM障礙的不可能三角形,這個三角形描繪了三個PLM關鍵屬性:P1,即模型規模适中,P2,即SoTA少樣本學習能力,以及P3,即SoTA監督學習能力。這三個屬性對應于PLM實際應用中的三個要求:P1是使用合理數量的計算資源進行高效部署;P2對應标記資料為零或很少的情況;而P3對應标記資料相對豐富的情景。

不可能三角形存在的一個原因是,在目前階段,隻有當PLM達到極大的規模并具有足夠的模型容量時,才會擁有強大的少樣本學習能力。雖然iPET設計了中等大小的PLM,進而實作比GPT-3更佳的少樣本學習性能,但已經被後來的SL-PLM(如PaLM)超越。随着模型規模的增大,我們可以觀察到零樣本/少樣本學習性能的不連續改善。例如,與參數為8B和62B的模型相比,參數為540B的PaLM在許多任務上的準确性都有了巨大飛躍。是以,開發出一個具有SoTA零/少樣本學習性能的中等大小模型,同時又保持高超的監督學習能力,仍然是一個巨大的挑戰。

雖然沒有一個PLM能實作不可能三角中的所有三個特性,但許多PLM已經具備了其中的一or兩個屬性:

中等規模的PLM(具備P1 + P3的屬性),這些語言模型屬于中等大小,參數小于10億個,進而能夠有效地進行模型調優和部署。它們在一般的NLP任務中都可以達到SoTA性能,這些NLP任務包括GLUE基準測試、文本摘要、開放域問題回答和常識推理等。然而這些模型的零/少樣本學習能力通常相對較弱,這意味着使用這些模型需要依賴目标域中足夠的标記資料。

具備P2屬性的超大規模PLM,這些語言模型有極大的規模(參數從10到1000億不等),且已經在超大規模的資料上預訓練過。擁有5400億個參數、在7800億個單詞的文本語料庫上進行了預訓練的PaLM就屬此列。當隻提示任務描述和少量輸入輸出對示例時,他們在一般的零/少樣本NLP任務中已經實作了SoTA性能。然而總的來說,1)SL-PLM的零/少樣本學習性能低于有監督訓練的模型,2)經過微調後,許多SL-PLM的性能仍然低于最好的經過微調的中等大小的PLM,這可能就是因為它們的模型規模太大。

2

改善措施

由于不可能三角的存在,學界和工業界采取了許多措施來解決實踐中所使用的PLM所缺少的能力。總結如下:

極大模型(缺少P1):這種情況出現在需要部署一個超大PLM的時候。為了獲得一個中等規模、性能與SL-PLM類似的模型,常用的做法是知識蒸餾(KD)。在KD中,較大的模型是老師,較小的模型是學生,從教師的預測分布和/或參數中學習。知識提取在建立更高效的模型時非常有效,隻需要犧牲一點性能。然而,這裡仍然存在兩個問題。首先,學生很難達到和老師一樣的表現。其次,SL-PLM的巨大規模阻礙了有效的推理,使它們不友善作為教師模型。

零/少樣本學習性能較差(缺少P2)。這對于中等規模的PLM最常見,它們在微調後可以實作SoTA性能,但具有相對較低的零/少樣本學習能力。在許多場景中,當缺少足夠的标記資料時,希望部署這樣的模型。是以,解決這個問題的一種方法是資料增強,生成僞标簽和僞資料執行個體使得模型可以利用這些額外的資料進行有效的監督訓練。然而,僞資料品質的參差不齊和不同任務中資料類型的多樣性對普遍适用的解決方案提出了挑戰。

監督訓練表現欠佳(缺乏P3)。這種情況在使用SL-PLM時很常見,在這種情況下,計算資源有限使得微調超大型模型的所有參數變得十分困難。一個典型解決方案是prompt學習。我們可以利用hard prompt,如離散文本模闆,或 soft prompt,如連續參數嵌入,以便在微調期間僅更新 hard prompt 詞或 soft prompt 參數。這些方法已被證明對于提高SL-PLM 的準确度十分有效。然而,這些方法的效果對prompt以及訓練資料的選擇非常敏感,且最終效果一般仍然低于監督學習後的中等規模PLM。

以上提到的這些額外工作拖慢了訓練和部署PLM模型的程序。而且對于不同下遊任務或産品,需要不斷進行這些工作。是以,如果一個PLM能夠實作這個不可能三角形,則将大大加快模型訓練和實用的過程。

3

展望未來

雖然目前在NLP模型中存在不可能三角形,但研究者認為可以通過三階段的方法來解決這個問題。

階段1:開發PLM以達到三角形中的某些屬性,并同時改進其他缺失的屬性。例如,提高一個具有SoTA監督學習能力的中等規模模型在少樣本學習上的效果;或将具有SoTA少樣本學習能力的SL-PLM壓縮成更小的模型,并使其具有更好的監督學習性能。

階段2:在一個或幾個NLP任務上實作具有所有三個期望屬性的PLM。為了實作這一點,可以利用目标任務的特殊性。例如,在某些任務上,模型性能對于訓練資料規模的依賴性較小,零/少樣本學習和監督學習性能之間的差距較小,等等。

階段3:在第一階段和第二階段的基礎上開發在通用NLP任務上實作所有三個屬性的PLM。可能使用到的方法有:i) 用更大資料預訓練一個中等規模模型; ii) 更好地進行知識蒸餾; iii) 泛化資料增強方法等。一旦一個PLM在通用NLP任務中具備了不可能三角形的所有三個特性,将很大程度上改變整個NLP研究和應用的格局,促進快速、高效和高品質的模型開發和部署。

不可能三角:預訓練語言模型的下一步是什麼?

雷峰網

繼續閱讀