預訓練模型的興起給自然語言處理(NLP)帶來了“新面貌”。
近年來,Google、Facebook、OpenAI、微軟、百度等人工智能“頭部玩家”推出多個頗具影響的預訓練模型,并反復迭代出十多個版本。無論學術界還是業界,人們對大規模預訓練模型“熱情高漲”。
日前,來自清華大學的一支研究團隊提出一種簡單高效的NLP學習框架。不同于當下NLP社區主流的“大規模預訓練+下游任務微調”的范式,這一框架無需進行大規模預訓練,同時將訓練效率提升兩個數量級,并在多個NLP任務上,實現了比肩甚至超出預訓練模型的性能。近日,相關研究以預印本形式,在arXiv上發表。
預訓練模型的“內功”
預訓練模型在自然語言處理領域蓬勃發展,近年來在多個子方向取得了顛覆性的成果。
“自然語言處理的‘預訓練’過程,就像武俠小說中,練武之人的‘修煉內功’。”上海對外經貿大學副研究員邵浩說,“一個人要成為武林高手,需要有扎實的“內功”,內功修煉好之后,再去學各種招式就非常容易上手,并能發揮其最大效用。”
隨著深度學習的發展,模型參數顯著增長,從而需要越來越大的數據集,用于充分訓練模型參數。然而,因大部分NLP任務的標注成本極為高昂,尤其是句法和語義相關的任務,構建大規模標注數據集尤為困難。
相比較而言,大規模無標注數據集相對易于構建。為更好地利用海量無標簽文本數據,常規的做法是首先從這些數據中學到較好的文本表示,然后再將其用于其他任務。許多研究表明,在大規模無標注語料中訓練的預訓練語言模型,可以使多方面NLP任務獲得顯著的性能提升。
通過海量無標注語料來預訓練神經網絡模型,可以讓人工智能更利于下游NLP任務的完成。預訓練模型的作者已經設計出了基準模型,這樣,使用者就可以在自己的NLP數據集上應用該模型,而無需從頭開始構建模型來解決類似的問題。盡管后續過程需要進行一些微調,但這為人們節省了大量的時間和計算資源。
2018年,無監督的雙向預訓練語言模型ELMo被提出,這種上下文相關的文本表示方法在多個典型任務上表現驚艷,能有效處理一詞多義問題。緊隨其后,GPT,BERT等預訓練語言模型相繼被提出,預訓練模型技術開始在NLP領域大放異彩,并在各種下游任務中遍地開花。
任務驅動模型出場
“預訓練語言模型因其強大的性能被廣泛關注,基于‘預訓練—微調’的范式也成為許多NLP任務的標準方法。”清華大學交叉信息研究院助理教授、RecurrentAI聯合創始人楊植麟對《中國科學報》說,“然而,當前通用語言模型的預訓練成本極其高昂,這使得只有少數資源充足的研究機構或組織能夠對其展開探索。”
為解決上述問題,楊植麟團隊提出的一種完全不需要預訓練語言模型的高效學習框架。這一框架從通用語料中篩選出與下游任務相關的子集,并將語言建模任務與下游任務進行聯合訓練。
該論文第一作者、清華大學計算機科學實驗班(姚班)大四本科生姚星丞介紹說,提出任務驅動的語言模型的想法源于一個基本的觀察:人類可以通過對關鍵信息的學習,在有限的時間和精力投入情況下,快速掌握某一任務技能。例如,在臨近考試時,學生僅根據考綱復習瀏覽若干相關章節的要點即可應對考試,而不必學習所有可能的知識點。與之類似,預訓練語言模型在某一下游任務上的優良表現,“很有可能因為來自于語料中與下游任務相關的數據”。
基于這一判斷,該團隊提出任務驅動的語言模型(TLM),它僅利用從大規模通用語料中提取的少量與下游任務相關的數據,就可以取得與全量數據類似的結果。
“相較于傳統的預訓練模型RoBERTa(基于BERT的改進模型,使用更大的批次和更多的數據對模型進行更長的訓練),TLM僅需要約1%的訓練時間與1%的語料,即可在眾多NLP任務上,表現出比肩甚至超出預訓練模型的性能。”姚星丞說,“我們目前也正在嘗試將任務驅動的方法推廣到更大規模的模型上,如GPT-3或T5。”
跳出預訓練范式
為了從大規模通用語料中抽取關鍵數據,TLM以任務數據作為查詢對象,用基于稀疏特征的BM25算法作為召回算法,對通用語料庫進行相似數據的召回。
“除已有的下游任務數據以外,其余的語料均通過BM25算法進行相似性匹配而自動篩選,不需要人工做額外的選擇與標記。”姚星丞說。“TLM基于任務數據和召回數據,同時優化任務目標和語言建模目標,從零開始進行聯合訓練。”
為了測試TLM的性能,研究人員在8項NLP分類任務上,從三個不同規模展開了對比實驗。這8項任務涵蓋了計算機科學、生物醫藥、新聞、評論等4個領域,包括了訓練樣本數量小于5000的低資源任務和訓練樣本數量大于20000的高資源任務,任務類型覆蓋了話題分類,情感分類,實體關系抽取等。
測試結果顯示,和對應“預訓練—微調”基準相比,TLM實現了相當甚至更優的性能。平均而言,TLM減少了兩個數量級規模的訓練計算量以及訓練語料的規模。整體來說,預訓練模型以極高的成本學習盡可能多的,和任務無關的知識,而TLM以非常低的成本,針對每個任務學習相關知識。
“當我們有少數特定目標的任務需要解決的時候(例如希望對少量幾個數據集進行研究),TLM會是非常高效的。”姚星丞說,“而需要一次性解決大量任務時(例如工業界構建一個NLP平臺為多方提供相似的服務),預訓練模型仍然具有優勢。”
此外,TLM是任務驅動的,所以可以給研究人員更大的自由度,從而自定義策略進行標記、序列長度、數據表示、超參數的調整等等,從而達到提高性能和效率的目的。
“TLM的提出,讓NLP研究跳脫出‘預訓練—微調’范式成為可能,這有利于推動NLP研究公平化。”楊植麟解釋說,預訓練本身嚴重依賴大量的計算資源,這一限制使大多數NLP研究者只能專注于對微調算法的研究。然而微調算法的性能上限,很大程度上受預訓練模型性能的約束。而TLM可以讓大多數研究人員可以以較低的代價和較高的效率,基于最先進的解決方案對模型架構、損失函數、算法等方面進一步自由探索。
楊植麟認為,未來會有更多有趣的研究可以在TLM的基礎上展開。例如,如何經濟地達到更大規模預訓練模型的表現效果;如何提升TLM的通用性與可遷移性;可否利用TLM進行小樣本或零樣本學習等。此外,還可以將預訓練模型和TLM結合,從而在通用性和效率之間實現更好的權衡。
相關論文信息:https://arxiv.org/pdf/2111.04130.pdf