中文巨量模型“源1.0”的小樣本學習優化方法
浪潮人工智慧研究院
最近,浪潮人工智慧研究院釋出了中文巨量模型“源1.0”,引數量達2457億,超越美國OpenAI組織研發的GPT-3。“源1.0”在語言智慧方面表現優異,獲得中文語言理解評測基準CLUE榜單的零樣本學習(zero-shot)和小樣本學習(few-shot)兩類總榜冠軍。在零樣本學習榜單中,“源1.0”超越業界最佳成績18.3%,在6項任務中獲得冠軍;在小樣本學習的4項任務獲得冠軍。在成語閱讀理解填空專案中,源1.0的表現已超越人類得分。
為了提高“源1.0”在不同下游任務的泛化性和精度,我們採用了多種小樣本學習優化策略。本文介紹了標籤擴充和校正相結合的小樣本學習優化方法。該方法不僅能消除預訓練語料中標籤出現頻率不同而帶來偏置,而且通過空文字或資料集校正標籤詞和輸入樣本帶來的偏置,可使巨量模型避免再訓練,降低了記憶體需求和系統複雜性,而且大大提高了下游任務的準確率和穩定性。
根據在下游任務推理時提供的樣本數目,我們進一步將表述專門化為“零樣本”和“小樣本”。
1 採用零樣本和小樣本學習的原因
人類可以僅通過一個或幾個示例就可以輕鬆地建立對新事物的認知,而機器學習演算法通常需要成千上萬個有監督樣本來保證其泛化能力。擁有從零樣本、小樣本中學習和概括的能力,是人工智慧向人類智慧發展的重要標誌。簡單來說,零樣本學習就是訓練的模型不僅僅能夠識別出訓練集中已有的資料類別,還可以對未見過的類別的資料進行區分;小樣本學習就是使用遠小於深度學習所需要的資料樣本量,達到接近甚至超越大資料深度學習的效果,如圖1。
圖1 零樣本學習和小樣本學習示例
對“源1.0”這樣的超大型模型進行微調比較困難而且成本很高,因此希望固定它們的模型引數,然後將不同的優化策略應用到不同下游任務上。最新的研究成果也表明,在自然語言處理(NLP)領域通過增加模型規模、擴大預訓練資料體量、使用更多的計算資源等方式,巨量模型可以在小樣本學習甚至零樣本學習任務中獲得非常出色的效能表現。預訓練好的巨量模型不必再經過複雜的“微調”過程,就可以為諸多應用任務泛化支援提供統一強大的演算法支撐。
2 零樣本和小樣本學習優化方法
巨量模型最核心的能力是零樣本學習和小樣本學習能力。但是基於巨量模型的零樣本和小樣本學習可能是非常不穩定的:提示模板格式的選擇、訓練樣本、甚至訓練樣本順序都可能導致準確性在接近偶然和接近最先進水平之間漂移,這種不穩定性源於語言模型對預測某些答案的偏差,例如,那些被放在提示語末尾附近的答案,或在預訓練資料中常見的答案,這些偏差往往會導致模型的輸出分佈發生變化。因此針對零樣本和小樣本學習任務,我們提出了一套校準和標籤擴充套件方案來提升模型在下游任務上的效能表現。大量實驗結果表明這套方案能夠在多項語言處理NLP任務上穩定地提升模型的精度。以下內容以單句分類任務為例進行介紹。
2.1 提示模板設計
2.1.1 零樣本學習
經過大量的實驗對比,我們發現單句分類任務更適合基於概率生成方式,因此將提示模板設計成填空最後一個詞的形式。
表1 單句分類任務最佳提示模板
2.1.2 小樣本學習
巨量模型的準確性在很大程度上取決於訓練示例的選擇和排列。因此我們從訓練集中人工挑選三個不同類別(娛樂、文化、體育)示例進行測試排列測試。
表2 TNEWS任務3-shot不同示例排序結果對比
從實驗資料可知,當模型引數量較小時,模型沒有學到足夠的知識,此時小樣本示例對分類結果起負作用。隨著模型引數量增大,小樣本學習的效果越明顯。
2.2 校準
巨量模型在預訓練中會從語料庫帶來偏置,導致下游任務精度低或效能不穩定。例如,在零樣本情感分類設定中,給定“N/A”作為輸入,GPT-3 傾向於預測為“positive”而不是“negative”,而本應該分配50/50的概率給這兩個相反的標籤。另一個問題是同一物件的不同表示(例如,“computer”和“PC”)可能會競爭概率質量,導致任務標籤上的分佈不理想。因此在實際應用中校正很有必要。具體可參考論文:Calibrate Before Use: Improving Few-Shot Performance of Language Models()。
我們採用解決的方法是通過無文字輸入對帶偏置的標籤詞進行補償,把它們校準為無偏狀態,減少不同提示選擇之間的差異。
具體實現:
· 輸入無文字樣例,即將無文字["N/A", " ", "[MASK]"]分別和2.1設計的提示模板組合,如"N/A"與EPRSTMT提示模板組成輸入樣例:“N/A。總體來說,該產品很__”;
· 將無文字樣例輸入語言模型,輸出標籤詞位置對應的所有類別概率(logits),並取平均值後歸一化得到;
· 將驗證集樣本與提示模板組合為驗證集樣例輸入語言模型,輸出校正前所有類別概率。
· 根據公式 計算校正後類別概率。其中有兩種方案:一、當通過計算校正矩陣時,;二、當通過計算校正矩陣時,。
需要特別注意的是,為了同時校正標籤詞和輸入樣本帶來的偏置,我們還提出了將訓練集或驗證集樣本替代無文字["N/A", " ", "[MASK]"]計算校正矩陣的方法,使得模型可以根據輸入資料分佈進行校正。實驗結果如表3所示。
表3不同校正方法在多分類任務上實驗結果對比(10億引數模型)
綜合來看,通過資料集校正,效果更佳。
2.3 標籤擴充套件
在理想狀態下,所有標籤在預訓練語料中的出現頻率應該大致相同。但是在實驗中,我們發現標籤在語料中出現的頻率存在差異,使得模型對預測結果有偏好性。在實際應用中,人工從接近6萬的詞表空間中選擇符合條件的標籤對映詞是非常困難的,而且通常會引入主觀因素(參考論文Knowledgeable Prompt-tuning: Incorporating Knowledge into Prompt Verbalizer for Text Classification)。因此我們採用word2vec演算法和人工結合方式,擴充套件標籤詞步驟如下:
(1)通過word2vec初步篩選出與原標籤相近,並在詞表中的標籤;
(2)在初步篩選候選集中再人工精選,刪去稀有詞,儘可能找先驗分佈相近的標籤詞對。
表4 TNEWS任務標籤擴充結果
2.4 標籤擴充套件與校準結合
將2.3擴充套件標籤詞與2.2校準相結合提出三種校正優化方案,在實際應用中可根據測試選擇:
方法一:先通過模型對擴充後標籤對映詞計算其相應概率,然後按類別取平均,最後再校正;
方法二:先通過模型對擴充後標籤對映詞計算其相應概率,然後按類別取最大值,最後再校正;
方法三:先通過模型對擴充後標籤對映詞計算其相應概率,然後分別進行校正,最後按類別取平均。
表5 標籤擴充與校正結合不同方案結果對比(10億引數模型)
3 “源1.0”在CLUE榜單單句分類任務上的應用方法舉例
中文語言理解測評基準(CLUE,)是目前公認最權威的中文語言模型評估基準,提供了一個由語言學家建立的診斷評估資料集,覆蓋多個不同程度的語言任務,具有廣泛代表性。程式碼地址:。
表6 CLUE中小樣本學習榜單下游任務資料集介紹
單句分類任務包括情感分類(Eprstmt:用於情感分析的電子商務產品評論資料集)、新聞標題分類(Tnews:Toutiao Short Text Classificaiton for News)、應用描述分類(Iflytek:長文字分類)和學科分類(Csldcp:中國科學文獻學科分類)。Eprstmt 是二分類任務,包括帶有正面和負面產品評論。Tnews、Iflytek 和 Csldcp 是多分類任務,分別有 15、118 和 67 個類別。如果標籤為 0 或 1 或是英文,我們會將標籤轉換為中文。如果標籤長於一個標記,我們將標籤轉換為一個標記的長度,並確保其具有相同或相似的含義。對於所有文字分類任務,標籤都附加在句子的末尾,句子和標籤直接用提示詞連結。我們的生成模型會根據給定的句子預測標籤,並計算每個候選標籤的概率 P(label|sentence),其中概率最大的是模型預測結果。
預訓練好的“源1.0”千億引數模型,結合下游任務優化方法,在零樣本學習榜單中,超越業界最佳成績18.3%,並在文獻分類、新聞分類,商品分類、原生中文推理、成語閱讀理解填空、名詞代詞關係6項任務中獲得冠軍。
圖2 Zero榜單打榜結果
關於“源1.0”的更多資訊,大家可以參照浪潮人工智慧研究院釋出在arxiv上的論文:。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31545803/viewspace-2847859/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 中文巨量模型“源1.0”:模型結構與生成效果解析模型
- 如何訓練2457億引數量的中文巨量模型“源1.0”模型
- 小樣本學習,路在何方?
- 04 | 函式與優化方法:模型的自我學習(上)函式優化模型
- 無模型的強化學習方法模型強化學習
- 小樣本學習年度進展|VALSE2018
- 從因果關係來看小樣本學習
- 深度學習中的優化方法(二)深度學習優化
- 深度學習中的優化方法(一)深度學習優化
- 深度學習模型調優方法(Deep Learning學習記錄)深度學習模型
- [譯]深度學習模型的簡單優化技巧深度學習模型優化
- AI+遊戲:高效利用樣本的強化學習AI遊戲強化學習
- 源1.0大模型登頂中文語言能力評測基準CUGE榜首大模型
- AICC 2021 | 看巨量模型如何左右逢“源”AI模型
- 歸納+記憶:讓機器像人一樣從小樣本中學習
- MLSys提前看:機器學習的分散式優化方法機器學習分散式優化
- 機器學習中常見優化方法彙總機器學習優化
- 移動端 CPU 的深度學習模型推理效能優化——NCHW44 和 Record 原理方法詳解深度學習模型優化
- 如何為實時音視訊設計小且優的深度學習模型?深度學習模型
- 對抗樣本學習筆記(一)筆記
- 孟子小樣本和檢索式預訓練模型進展模型
- 小科普:機器學習中的粒子群優化演算法!機器學習優化演算法
- 《DNK210使用指南 -CanMV版 V1.0》第一章 本書學習方法
- MySQL優化學習手札(四) 單表訪問方法MySql優化
- 效能優化的過程學習優化
- 【火爐煉AI】機器學習012-用隨機森林構建汽車評估模型及模型的優化提升方法AI機器學習隨機森林模型優化
- 機器學習實戰 | 性別預測模型的構建與優化機器學習模型優化
- 自學入門 Python 優質中文資源索引Python索引
- 深度學習網路模型的輕量化方法深度學習模型
- 機器學習4-模型的誤差來源以及減少誤差的方法機器學習模型
- mysql優化手冊v1.0MySql優化
- 深度學習中影像上取樣的方法深度學習
- AnglerEK的Flash樣本解密方法初探解密
- 一文簡述深度學習優化方法——梯度下降深度學習優化梯度
- 深度學習煉丹-不平衡樣本的處理深度學習
- (資料科學學習手札162)Python GIS神器geopandas 1.0版本釋出資料科學Python
- Oracle效能優化方法論的發展之四:基於資源瓶頸分析的優化方法論Oracle優化
- 8步安裝多多客小程式全外掛化1.0開源版