中文巨量模型“源1.0”的学习优化方法
最近,浪潮人工智能研究院發(fā)布了中文巨量模型“源1.0”,參數(shù)量達2457億,超越美國OpenAI組織研發(fā)的GPT-3。“源1.0”在語言智能方面表現(xiàn)優(yōu)異,獲得中文語言理解評測基準CLUE榜單的零樣本學習(zero-shot)和小樣本學習(few-shot)兩類總榜冠軍。在零樣本學習榜單中,“源1.0”超越業(yè)界極佳成績18.3%,在6項任務中獲得冠軍;在小樣本學習的4項任務獲得冠軍。在成語閱讀理解填空項目中,源1.0的表現(xiàn)已超越人類得分。
????為了提高“源1.0”在不同下游任務的泛化性和精度,我們采用了多種小樣本學習優(yōu)化策略。本文介紹了標簽擴充和校正相結(jié)合的小樣本學習優(yōu)化方法。該方法不僅能消除預訓練語料中標簽出現(xiàn)頻率不同而帶來偏置,而且通過空文本或數(shù)據(jù)集校正標簽詞和輸入樣本帶來的偏置,可使巨量模型避免再訓練,降低了內(nèi)存需求和系統(tǒng)復雜性,而且大大提高了下游任務的準確率和穩(wěn)定性。
????根據(jù)在下游任務推理時提供的樣本數(shù)目,我們進一步將表述專門化為“零樣本”和“小樣本”。
采用零樣本和小樣本學習的原因
????人類可以僅通過一個或幾個示例就可以輕松地建立對新事物的認知,而機器學習算法通常需要成千上萬個有監(jiān)督樣本來保證其泛化能力。擁有從零樣本、小樣本中學習和概括的能力,是人工智能向人類智能發(fā)展的重要標志。簡單來說,零樣本學習就是訓練的模型不僅僅能夠識別出訓練集中已有的數(shù)據(jù)類別,還可以對未見過的類別的數(shù)據(jù)進行區(qū)分;小樣本學習就是使用遠小于深度學習所需要的數(shù)據(jù)樣本量,達到接近甚至超越大數(shù)據(jù)深度學習的效果,如圖1。
????圖1零樣本學習和小樣本學習示例
????對“源1.0”這樣的超大型模型進行微調(diào)比較困難而且成本很高,因此希望固定它們的模型參數(shù),然后將不同的優(yōu)化策略應用到不同下游任務上。新的研究成果也表明,在自然語言處理(NLP)領(lǐng)域通過增加模型規(guī)模、擴大預訓練數(shù)據(jù)體量、使用更多的計算資源等方式,巨量模型可以在小樣本學習甚至零樣本學習任務中獲得非常出色的性能表現(xiàn)。預訓練好的巨量模型不必再經(jīng)過復雜的“微調(diào)”過程,就可以為諸多應用任務泛化支持提供統(tǒng)一強大的算法支撐。
零樣本和小樣本學習優(yōu)化方法
????巨量模型核心的能力是零樣本學習和小樣本學習能力。但是基于巨量模型的零樣本和小樣本學習可能是非常不穩(wěn)定的:提示模板格式的選擇、訓練樣本、甚至訓練樣本順序都可能導致準確性在接近偶然和接近先進水平之間漂移,這種不穩(wěn)定性源于語言模型對預測某些答案的偏差,例如,那些被放在提示語末尾附近的答案,或在預訓練數(shù)據(jù)中常見的答案,這些偏差往往會導致模型的輸出分布發(fā)生變化。因此針對零樣本和小樣本學習任務,我們提出了一套校準和標簽擴展方案來提升模型在下游任務上的性能表現(xiàn)。大量實驗結(jié)果表明這套方案能夠在多項語言處理NLP任務上穩(wěn)定地提升模型的精度。以下內(nèi)容以單句分類任務為例進行介紹。
提示模板設計 ? 零樣本學習
????經(jīng)過大量的實驗對比,我們發(fā)現(xiàn)單句分類任務更適合基于概率生成方式,因此將提示模板設計成填空最后一個詞的形式。
小樣本學習
????巨量模型的準確性在很大程度上取決于訓練示例的選擇和排列。因此我們從訓練集中人工挑選三個不同類別(娛樂、文化、體育)示例進行測試排列測試。
????從實驗數(shù)據(jù)可知,當模型參數(shù)量較小時,模型沒有學到足夠的知識,此時小樣本示例對分類結(jié)果起負作用。隨著模型參數(shù)量增大,小樣本學習的效果越明顯。
校準
????巨量模型在預訓練中會從語料庫帶來偏置,導致下游任務精度低或性能不穩(wěn)定。例如,在零樣本情感分類設置中,給定“N/A”作為輸入,GPT-3傾向于預測為“positive”而不是“negative”,而本應該分配50/50的概率給這兩個相反的標簽。另一個問題是同一對象的不同表示(例如,“computer”和“PC”)可能會競爭概率質(zhì)量,導致任務標簽上的分布不理想。因此在實際應用中校正很有必要。具體可參考論文:CalibrateBefore Use: Improving Few-Shot Performance of LanguageModels(https://arxiv.org/abs/2102.09690)。
????我們采用解決的方法是通過無文本輸入對帶偏置的標簽詞進行補償,把它們校準為無偏狀態(tài),減少不同提示選擇之間的差異。
????具體實現(xiàn):
???? 輸入無文本樣例,即將無文本["N/A", " ", "[MASK]"]分別和2.1設計的提示模板組合,如"N/A"與EPRSTMT提示模板組成輸入樣例:“N/A。總體來說,該產(chǎn)品很__”;
???? 將無文本樣例輸入語言模型,輸出標簽詞位置對應的所有類別概率(logits),并取平均值后歸一化得到;
?將驗證集樣本與提示模板組合為驗證集樣例輸入語言模型,輸出校正前所有類別概率。
???? 根據(jù)公式 ?
計算校正后類別概率。其中有兩種方案:一、當通過
計算校正矩陣時,
;二、當通過
計算校正矩陣時,
。
????需要特別注意的是,為了同時校正標簽詞和輸入樣本帶來的偏置,我們還提出了將訓練集或驗證集樣本替代無文本["N/A"," ", "[MASK]"]計算校正矩陣的方法,使得模型可以根據(jù)輸入數(shù)據(jù)分布進行校正。實驗結(jié)果如表3所示。
????綜合來看,通過數(shù)據(jù)集校正,效果更佳。
標簽擴展
????在理想狀態(tài)下,所有標簽在預訓練語料中的出現(xiàn)頻率應該大致相同。但是在實驗中,我們發(fā)現(xiàn)標簽在語料中出現(xiàn)的頻率存在差異,使得模型對預測結(jié)果有偏好性。在實際應用中,人工從接近6萬的詞表空間中選擇符合條件的標簽映射詞是非常困難的,而且通常會引入主觀因素(參考論文KnowledgeablePrompt-tuning: Incorporating Knowledge into Prompt Verbalizer forText Classification)。因此我們采用word2vec算法和人工結(jié)合方式,擴展標簽詞步驟如下:
????(1)通過word2vec初步篩選出與原標簽相近,并在詞表中的標簽;
????(2)在初步篩選候選集中再人工精選,刪去稀有詞,盡可能找先驗分布相近的標簽詞對。
標簽擴展與校準結(jié)合
????將2.3擴展標簽詞與2.2校準相結(jié)合提出三種校正優(yōu)化方案,在實際應用中可根據(jù)測試選擇:
????方法一:先通過模型對擴充后標簽映射詞計算其相應概率,然后按類別取平均,最后再校正;
????方法二:先通過模型對擴充后標簽映射詞計算其相應概率,然后按類別取至大值,最后再校正;
????方法三:先通過模型對擴充后標簽映射詞計算其相應概率,然后分別進行校正,最后按類別取平均。
“源1.0”在CLUE榜單單句分類任務上的應用方法舉例
????中文語言理解測評基準(CLUE,https://www.cluebenchmarks.com/)是目前公認權(quán)威的中文語言模型評估基準,提供了一個由語言學家創(chuàng)建的診斷評估數(shù)據(jù)集,覆蓋多個不同程度的語言任務,具有廣泛代表性。代碼地址:https://github.com/chineseGLUE/chineseGLUE。
????單句分類任務包括情感分類(Eprstmt:用于情感分析的電子商務產(chǎn)品評論數(shù)據(jù)集)、新聞標題分類(Tnews:ToutiaoShort Text Classificaiton forNews)、應用描述分類(Iflytek:長文本分類)和學科分類(Csldcp:中國科學文獻學科分類)。Eprstmt是二分類任務,包括帶有正面和負面產(chǎn)品評論。Tnews、Iflytek和Csldcp是多分類任務,分別有15、118和67個類別。如果標簽為0 或1或是英文,我們會將標簽轉(zhuǎn)換為中文。如果標簽長于一個標記,我們將標簽轉(zhuǎn)換為一個標記的長度,并確保其具有相同或相似的含義。對于所有文本分類任務,標簽都附加在句子的末尾,句子和標簽直接用提示詞鏈接。我們的生成模型會根據(jù)給定的句子預測標簽,并計算每個候選標簽的概率P(label|sentence),其中概率至大的是模型預測結(jié)果。
????預訓練好的“源1.0”千億參數(shù)模型,結(jié)合下游任務優(yōu)化方法,在零樣本學習榜單中,超越業(yè)界極佳成績18.3%,并在文獻分類、新聞分類,商品分類、原生中文推理、成語閱讀理解填空、名詞代詞關(guān)系6項任務中獲得冠軍。
????圖2Zero榜單打榜結(jié)果
????關(guān)于“源1.0”的更多信息,大家可以參照浪潮人工智能研究院發(fā)布在arxiv上的論文:https://arxiv.org/abs/2110.04725。
創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎勵來咯,堅持創(chuàng)作打卡瓜分現(xiàn)金大獎總結(jié)
以上是生活随笔為你收集整理的中文巨量模型“源1.0”的学习优化方法的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: “解救”外卖骑手,美团首次公开算法规则!
- 下一篇: 一行代码,揭开 CPU 执行原理!