打破不可能三角、比肩5400億模型,IDEA封神榜團隊僅2億級模型達到零樣本學習SOTA
自從 GPT-3 問世,展現出千億級模型的強大實力以來,NLP 任務面臨著規模、樣本、Fine-tuning 性能的不可能三角。如何在保證 10 億參數以下的語言模型可以達到 SOTA 的 Few-Shot (甚至是 Zero-shot)還有 Fine-tuning 的效能?一定要上千億的參數並且忍受不穩定的 prompt 提示才可以解決 zero-shot 場景嗎?本文中,IDEA 研究院封神榜團隊介紹了一種新的「表現型」UniMC,僅有 2 億參數即可達到 Zero-shot 的 SOTA。相關工作已經被 EMNLP 2022 接收。
在今年的一篇文章[1] 中指出,自預訓練技術被提出以來,NLP 界一直存在著一個不可能三角(如下圖1),即一個模型不能同時滿足:
- 中等模型大小(10 億以下);
- SOTA 的Few-Shot (甚至是Zero-shot)效能;
- SOTA 的Fine-tuning 效能。
圖1
不可能三角存在的原因是,目前預訓練模型的參數量只有達到一定的數量級,並且使用提示學習才能體現出強大的few/zero-shot 表現。
最近我們封神榜團隊被EMNLP 2022 收錄的論文:《Zero-Shot Learners for Natural Language Understanding via a Unified Multiple Choice Perspective》則打破了這一「魔咒」,提供了一個靈活高效的解決思路。我們的論文提出的UniMC 在擁有模型參數量很小(僅是億級)和SOTA 的Fine-tuning 能力的前提下,同時還能擁有(與5400 億的PaLM 相當的) SOTA的Few/Zero-Shot 性能。
- #論文網址:https://arxiv.org/abs/2210.08590
- 模型開源位址:https://github.com/IDEA-CCNL/Fengshenbang-LM/tree/main/fengshen/examples/unimc/
技術背景
2018 年BERT 的提出,標誌著整個NLP 領域進入一個預訓練時代,NLP 的百尺竿頭終於更進一步。現有的模型如 DeBERTa 等預訓練掩碼語言模型(PMLM)已經可以在 10 億級以下的參數做到 fine-tuning 的 SOTA 了,但是面對 Zero-shot 場景下的 NLU 任務時表現無力。
原因在於,使用 PMLM 的時候,我們需要在其頂部針對具體任務增加一個 MLP 層,如圖 2(c)。而且,這個 MLP 層會增加額外的參數,這使得這種方法面對 Zero-shot 場景時,只能選擇隨機初始化,根本沒辦法獲得合理的輸出。而且,在 finetuning 的場景下,增加 MLP 層也會造成不同任務之間是無法遷移的(例如,2 分類和 3 分類任務之間無法遷移)。
針對Zero-shot 場景,近年來的主流做法是利用上百億甚至千億的預訓練語言模型(PLM)統一將NLU 任務轉化為文本生成任務,這樣可以透過人工構造prompt 或是人工設計verbalizer 使得大模型可以應用在zero-shot 任務上,如圖2(a)。進一步地,FLAN 論文中,使用了大量人工構造的模版來統一了不同的任務,使得別的任務的知識可以遷移到特定任務上,如圖 2(b)。不過,這樣的生成模型有以下缺點:
#- 產生模型需要將verbalizer(標籤描述)給生成出來,而verbalizer 通常由人工進行編寫,不同的verbalizer 會導致較大的性能差異;
- prompt 也需要人工設計,不同的prompt 會極大影響下游任務的效果;
- 生成模型在推理時,需要自回歸的生成答案,速度較慢。且一般是單向的,無法像BERT 一樣可以取得雙向資訊;
- 為保證few/zero-shot 效能,產生模型參數量往往較大,達到GPT-3 的1750 億或PaLM 的5400 億;
- 雖然FLAN 的Instruction tuning 可以遷移別的任務的知識到特定任務上,但是面對不同任務需要新的訓練。例如,評估 A 時,需要在 BCDE 上訓練;評估 B 時,需要在 ACDE 上訓練。
而我們提出了圖2(d)中UniMC 的方法,避免了上述問題,並且在中英文數個任務中達到了SOTA 或是與最先進模型相近的表現。
#圖2
#UniMC(一個新的模型表現型)
模型想法
大部分的NLU 任務都是基於標籤的,而產生模型需要將標籤給生成出來,這無疑是加重了任務的難度和模型的學習成本。對於許多基於標籤的任務(Label-based Task)來說,通常只需要給定輸入文本,輸出文本屬於每種 label 的機率。基於這個思路,我們將 NLU 任務轉化為多項選擇任務(Multiple-Choice)。即給定文字、問題和選項,輸出每個選項的機率,而不需要將選項生成出來。
在此基礎之上,我們提出一個新的概念:模型的表現型。現有的模型表現型,都是在後面加上某個層,例如分類層。或者是,生成模型 GPT 的表現型是透過 Prompt 來挖掘模型的知識。而我們提出的 UniMC 方案不需要在 PMLM 引入任何額外的層,挖掘了另一個 PMLM 的表現型。
在本論文中,我們選擇了 ALBERT 作為我們的骨幹 PMLM 網路。
統一的多項選擇格式
#如圖3,我們希望將基於標籤的NLU 任務都轉換成統一的MC(Multiple-Choice)格式。我們的理念是,盡可能少添加人工資訊。
圖3
#具體地說,我們做瞭如下兩步:
- 把label 變成option;
- 選擇是否要加入question prompt(question 基本上來自資料集的描述)。
優點:只設計了一個 option prompt,設計一個或沒有 question prompt。
模型結構
#UniMC 的結構如下圖4 所示,它採用類似BERT 的自編碼結構。主要流程為,我們先統一好不同任務的輸入,並且限制好輸入資訊之間的流通性,經過PMLM 之後,利用O-MLM、OP 和MLM 進行MC training,最後使用O-MLM 和OP 進行zero- shot 預測。接下來我將一步一步拆解我們的方案。
圖4
#輸入Input
#如圖5 紅色實線框區域內容。在輸入到 UniMC 之前還要處理一下,變成 UniMC 獨特的 token 格式。為了提升運算效率,我們將所有選項與問題和文字直接拼接,即 [Options, Question, Passage]。而我們在每個選項的前面插入一個特殊的 token,[O-MASK],用來表示 yes 或 no(選不選這個選項)。 (註,為了可以提高復用性,我們復用了[MASK] token。
#如圖5 綠色虛線框區域內容。我們需要考慮輸入資訊來源太多,有選項資訊、問題資訊和文字段資訊。它們之間的資訊會互相影響,所以我們希望隔絕不同的資訊。例如,我們在輸入的時候,假如可以看到別的選項,那麼這題的難度就下降了,模型會有惰性。
因此我們進行瞭如下考慮:
- 使用Segment ID,告訴模型option 和context (question,passage)資訊是不同的;
- 修改Postion ID,需要模型同等地看待不同option 的位置資訊;
- ##修改Attention Mask 矩陣,避免模型可以看到不同option 的資訊導致模型產生惰性。
##圖5
模型如何做選擇題?(O-MLM 和OP)
如圖6,我們利用O -MLM 和OP 任務來讓模型可以去「選擇」答案。O-MASK 完全繼承於MASK token(具體地,為了不添加額外的參數以及充分利用模型在無監督預訓練階段所學習到的知識,我們重複使用了MaskLM head 的參數)。唯一不同的是,它是100% 被mask 的。O-MLM 任務的目標就是把O-MASK 解碼出'yes' 或'no',其用來預測該選項是否被選擇。而OP 任務的作用在於,從各個選項的'yes'中預測答案。具體地,我們取每個 [O-MASK] 輸出的'yes'的logit 進行softmax 得到每個選項的機率,取機率最大的選項最為預測答案即可。
在一個Batch 中處理多個MC 任務
如圖7,我們希望在一個batch中放入多個MC 資料集,這樣可以增強模型的能力,而且,也更加統一(Unified)。我們在建構batch 的時候,發現了一個問題:假如,一個batch 裡面有不同選項的sample 呢?
所以我們在輸出的前面,再設計了一個logit mask 的方法。直接給無關的 token 賦予一個負無窮大的預測值,加起來,我們就可以在計算 softmax 的時候消除別的 token 對於 O-MASK 的影響了。並且,不同數量的多項選擇題可以在一個 batch 中統一處理。
##模型訓練與預測
MC Training
# 與FLAN 的Instruction Tuning 不同,我們僅僅在MC 資料集上進行訓練,這主要是為了讓模型學會如何做選擇題,並且MC 資料集具有一定的通用性,例如,不同的數據集可能由數量不等的標籤組成。 圖8 #Zero-shot Inference 有趣的是,我們可以發現,這兩個任務,是可以在Training 和zero-shot inference 兩個階段擁有一致性的。這是因為我們都是使用了 O-MLM 和 OP 兩個任務來實現讓模型做選擇題。而由於我們拋棄了分類層,所有的參數都可以重複使用,這樣一來就啟動了 PMLM 的 Zero-shot 能力。 #圖9 英文場景 我們收集了14 份multiple -choice 任務進行預訓練,然後做其他NLU 任務進行zero-shot 效能測試。在 4 個 NLI 任務中, UniMC 取得了 SOTA 並且超越 5,400 億參數的 PaLM 模型。
在分類任務上擊敗了以GPT-2 和GPT-3 為骨幹的網路。對於非常困難的 Dbpedia 任務,高達 13 個類別,甚至可以達到 88.9% 的超高準確率。
圖11 #為了探究UNIMC 的泛化性,我們和FLAN 做了比較。可以看到,我們的 UniMC 幾乎可以在所有任務中超越 FLAN 或接近。 圖12 中文場景 UniMC 取得了 FewCLUE 和 ZeroCLUE 雙榜第一(圖中的二郎神 - UnifiedMC 即為 UniMC)。 #圖13 #####圖14############總結##########我們提出了一個新穎的Zero-shot 場景下的NLU 任務的解決方案,僅利用億級的參數量就戰勝了千倍參數量的複雜大模型。 ###### 此外,我們幾乎沒有引入任何的人工資訊。並且克服了 BERT 類別模型的預訓練和微調不一致的問題,我們的訓練和預測是具有一致性的。我們甚至可以做到一次訓練,多次 zero-shot 預測,大大節約了算力成本。目前 IDEA 封神榜團隊已經推出了超過 70 個預訓練大模型。 #引用 ##[1]Impossible Triangle: What's Next for Pre-trained Language Models?https://readpaper.com/paper/4612531641570566145##UniMC 效能
##並且我們
在中文場景中,我們收集了40 份有監督資料集,並統一建構成為MC 的任務形式對UniMC 模型進行預訓練,然後在FewCLUE 和ZeroCLUE 的9 個任務上進行測試。截止 2022 年 8 月 30 日,
以上是打破不可能三角、比肩5400億模型,IDEA封神榜團隊僅2億級模型達到零樣本學習SOTA的詳細內容。更多資訊請關注PHP中文網其他相關文章!

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

想像一下,一個人工智慧模型,不僅擁有超越傳統運算的能力,還能以更低的成本實現更有效率的效能。這不是科幻,DeepSeek-V2[1],全球最強開源MoE模型來了。 DeepSeek-V2是一個強大的專家混合(MoE)語言模型,具有訓練經濟、推理高效的特點。它由236B個參數組成,其中21B個參數用於啟動每個標記。與DeepSeek67B相比,DeepSeek-V2效能更強,同時節省了42.5%的訓練成本,減少了93.3%的KV緩存,最大生成吞吐量提高到5.76倍。 DeepSeek是一家探索通用人工智

AI,的確正在改變數學。最近,一直十分關注這個議題的陶哲軒,轉發了最近一期的《美國數學學會通報》(BulletinoftheAmericanMathematicalSociety)。圍繞著「機器會改變數學嗎?」這個話題,許多數學家發表了自己的觀點,全程火花四射,內容硬核,精彩紛呈。作者陣容強大,包括菲爾茲獎得主AkshayVenkatesh、華裔數學家鄭樂雋、紐大電腦科學家ErnestDavis等多位業界知名學者。 AI的世界已經發生了天翻地覆的變化,要知道,其中許多文章是在一年前提交的,而在這一

谷歌力推的JAX在最近的基準測試中表現已經超過Pytorch和TensorFlow,7項指標排名第一。而且測試並不是JAX性能表現最好的TPU上完成的。雖然現在在開發者中,Pytorch依然比Tensorflow更受歡迎。但未來,也許有更多的大型模型會基於JAX平台進行訓練和運行。模型最近,Keras團隊為三個後端(TensorFlow、JAX、PyTorch)與原生PyTorch實作以及搭配TensorFlow的Keras2進行了基準測試。首先,他們為生成式和非生成式人工智慧任務選擇了一組主流

波士頓動力Atlas,正式進入電動機器人時代!昨天,液壓Atlas剛「含淚」退出歷史舞台,今天波士頓動力就宣布:電動Atlas上崗。看來,在商用人形機器人領域,波士頓動力是下定決心要跟特斯拉硬剛一把了。新影片放出後,短短十幾小時內,就已經有一百多萬觀看。舊人離去,新角色登場,這是歷史的必然。毫無疑問,今年是人形機器人的爆發年。網友銳評:機器人的進步,讓今年看起來像人類的開幕式動作、自由度遠超人類,但這真不是恐怖片?影片一開始,Atlas平靜地躺在地上,看起來應該是仰面朝天。接下來,讓人驚掉下巴

本月初,來自MIT等機構的研究者提出了一種非常有潛力的MLP替代方法—KAN。 KAN在準確性和可解釋性方面表現優於MLP。而且它能以非常少的參數量勝過以更大參數量運行的MLP。例如,作者表示,他們用KAN以更小的網路和更高的自動化程度重現了DeepMind的結果。具體來說,DeepMind的MLP有大約300,000個參數,而KAN只有約200個參數。 KAN與MLP一樣具有強大的數學基礎,MLP基於通用逼近定理,而KAN基於Kolmogorov-Arnold表示定理。如下圖所示,KAN在邊上具

特斯拉機器人Optimus最新影片出爐,已經可以在工廠裡打工了。正常速度下,它分揀電池(特斯拉的4680電池)是這樣的:官方還放出了20倍速下的樣子——在小小的「工位」上,揀啊揀啊揀:這次放出的影片亮點之一在於Optimus在廠子裡完成這項工作,是完全自主的,全程沒有人為的干預。而且在Optimus的視角之下,它還可以把放歪了的電池重新撿起來放置,主打一個自動糾錯:對於Optimus的手,英偉達科學家JimFan給出了高度的評價:Optimus的手是全球五指機器人裡最靈巧的之一。它的手不僅有觸覺

目標偵測在自動駕駛系統當中是一個比較成熟的問題,其中行人偵測是最早得以部署演算法之一。在多數論文當中已經進行了非常全面的研究。然而,利用魚眼相機進行環視的距離感知相對來說研究較少。由於徑向畸變大,標準的邊界框表示在魚眼相機當中很難實施。為了緩解上述描述,我們探索了擴展邊界框、橢圓、通用多邊形設計為極座標/角度表示,並定義一個實例分割mIOU度量來分析這些表示。所提出的具有多邊形形狀的模型fisheyeDetNet優於其他模型,並同時在用於自動駕駛的Valeo魚眼相機資料集上實現了49.5%的mAP

寫在前面項目連結:https://nianticlabs.github.io/mickey/給定兩張圖片,可以透過建立圖片之間的對應關係來估計它們之間的相機姿態。通常,這些對應關係是二維到二維的,而我們估計的姿態在尺度上是不確定的。一些應用,例如隨時隨地實現即時增強現實,需要尺度度量的姿態估計,因此它們依賴外部的深度估計器來恢復尺度。本文提出了MicKey,這是一個關鍵點匹配流程,能夠夠預測三維相機空間中的度量對應關係。透過學習跨影像的三維座標匹配,我們能夠在沒有深度測試的情況下推斷度量相對
