0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

應用于任意預訓練模型的prompt learning模型—LM-BFF

自然語言處理愛好者 ? 來源:AI部落聯(lián)盟 ? 作者:JasonCai ? 2021-08-16 11:21 ? 次閱讀

最近又出了個比較吸引人眼球的Prompt Learning,甚至該方法還被稱之為NLP的“第四范式”,具體有哪幾項請參考以下鏈接:

綜述文章:https://arxiv.org/pdf/2107.13586.pdf

相關(guān)資源:http://pretrain.nlpedia.ai

Part1什么是Prompt Learning

從BERT誕生開始,使用下游任務數(shù)據(jù)微調(diào)預訓練語言模型 (LM)已成為 NLP 領(lǐng)域的通用做法。直到GPT-3模型首先將自然語言的提示信息(prompt)和任務示例(demonstration)作為上下文輸入給GPT-3,使得GPT-3只需要少數(shù)的幾個樣本,不需要訓練底層的參數(shù)便能夠處理任務。應該是受到這一做法的啟發(fā),目前很多研究聚焦在Prompt Learning上,只為了更好的激發(fā)語言模型的潛能。

在了解Prompt Learning之前,首先我們要知道什么是prompt。prompt是提示的意思,也就是說需要提示模型我們想讓它干什么。通常在GPT-3中,我們輸入一段描述,再加上“翻譯”或者“問答”的prompt,那么GPT-3會生成相應的結(jié)果。

最近該玩法在NLU中也得到了應用,比如情感分類任務,給定一句話“I missed the bus today.”,在其之后添加一個prompt:“I felt so __”,之后讓語言模型用一個情感類的詞進行完型填空,再將填空的詞語映射到標簽,這樣一來就能夠解決分類任務了。

大家發(fā)現(xiàn)沒有,這樣一來減少了訓練和測試階段之間的gap,因為我們在預訓練的時候使用的MLM任務就是一個完型填空任務,通常使用分類任務fine-tuning模型的時候需要加一個hidden_size * label_size的FFN,還得專門去訓練這個FFN的參數(shù)。但是如果使用Prompt Learning的方式,就省略了這一步了。這樣一來豈不是不用花大力氣訓練模型了?哈哈是的,很多研究證明Prompt Learning在小樣本(few-shot)場景下很有效。

Part2Few-shot Learner

論文標題:Making Pre-trained Language Models Better Few-shot Learners

論文來源:ACL2021

論文鏈接:https://arxiv.org/pdf/2012.15723.pdf

論文代碼:https://github.com/princeton-nlp/LM-BFF

本文主要有兩個貢獻點:

(1)基于提示(prompt)進行微調(diào),關(guān)鍵是如何自動化生成提示模板;

(2)將樣本示例以上下文的形式添加到每個輸入中,關(guān)鍵是如何對示例進行采樣;

1prompt-based fine-tuning

之前說過GPT-3模型基于prompt生成文本。受到該啟發(fā)本文提出了一種可以應用于任意預訓練模型的prompt learning模型——LM-BFF(小樣本微調(diào)預訓練模型)。

9d8d181e-fd9a-11eb-9bcf-12bb97331649.png

從上圖可以看出在預訓練的時候使用的MLM任務就是一個完型填空任務,在分類任務中微調(diào)的時候需要加一個hidden_size * label_size的FFN,微調(diào)的過程需要訓練這個FFN的參數(shù)。在使用Prompt Learning的方式的時候省略了這一步。這樣一來就不用花大力氣訓練模型了,而且該方法減少了訓練和測試階段之間的gap,在小樣本(few-shot)場景下很有效。

在具體的實驗過程中,作者發(fā)現(xiàn)使用不同的模板或不同的標簽詞進行微調(diào)得到的效果是不同的,如下圖所示:

9dda6e0c-fd9a-11eb-9bcf-12bb97331649.png

比如對于同一個標簽詞,如果使用的prompt的模板不同(替換了某個單詞或者刪除某一個標點符號),得到的結(jié)果會有較大的波動;而且當選擇不同的標簽詞時,對預測的結(jié)果也會產(chǎn)生影響。這是由于人工設(shè)計模板和標簽詞時候和模型本身具有的gap帶來的缺陷。因此作者提出一種自動創(chuàng)建模板的方法。

2Automatic Prompt Generation

Prompt的自動生成又分為了兩個部分(label的生成和模板的生成):

Label Generation

這個部分主要分成3步:

(1)首先在訓練集中,針對未經(jīng)過微調(diào)的語言模型,對于每個label都找到使其條件概率最大Topk個單詞;

9e0efc26-fd9a-11eb-9bcf-12bb97331649.png

(2)綜合每個類別下的候選標簽詞,然后找出使得訓練集正確率最大的top-n個分配方式;

(3)使用dev集對模型進行微調(diào),從n個分配方式中選擇最佳的一個標簽詞,構(gòu)建標簽映射關(guān)系M。

Prompt Generation

模板的生成則是使用的T5模型,固定標簽詞,生成固定模板。

9e50d790-fd9a-11eb-9bcf-12bb97331649.png

整體過程如下所示:

Fine-tuning with Demonstration

在GPT-3中,微調(diào)的時候從訓練集中隨機抽取32個示例,以上下文的形式添加到每個輸入中;

這種方式的缺陷在于:樣本示例的數(shù)量會受到模型最大輸入長度的限制;不同類型的大量隨機示例混雜在一起,會產(chǎn)生很長的上下文,不利于模型學習。

LM-BFF采用2種簡單的方式進行了改進:

對于每個輸入,從每個類別中隨機采樣一個樣本示例,最終將所有類別下的采樣示例進行拼接輸入;

對于每個輸入,在每個類別中,通過與Sentence-BERT進行相似度計算、并從排序得分的top50%中隨機選擇一個樣本示例。

Results

本文提出了一種簡單而又有效的小樣本微調(diào)方法——LM-BFF。主要包括2部分:

采用提示自動構(gòu)建方式來進行「基于模板的微調(diào)方法」。

動態(tài)選擇樣本示例,作為輸入的上下文。但LM-BFF也有以下缺陷:

LM-BFF仍落后基于全量標注數(shù)據(jù)的標準微調(diào)方法(PS:廢話,數(shù)據(jù)目前還是越多好~)

LM-BFF自動構(gòu)建提示的方法雖然有效,但擴展搜索空間在現(xiàn)實應用中仍是一個巨大挑戰(zhàn);

LM-BFF僅支持幾種特定的任務:1)能自然轉(zhuǎn)化為「空白填空」問題,如結(jié)構(gòu)化預測的NER任務可能就不適合;2)句子輸入不要太長;3)不要包含過多的類別;其中2)和3)可以在長距離語言模型中進行改善。

編輯:jq

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • GPT
    GPT
    +關(guān)注

    關(guān)注

    0

    文章

    347

    瀏覽量

    15182
  • nlp
    nlp
    +關(guān)注

    關(guān)注

    1

    文章

    481

    瀏覽量

    21935

原文標題:Prompt Learning-使用模板激發(fā)語言模型潛能

文章出處:【微信號:NLP_lover,微信公眾號:自然語言處理愛好者】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    python訓練出的模型怎么調(diào)用

    在Python中,訓練出的模型可以通過多種方式進行調(diào)用。 1. 模型保存與加載 在Python中,訓練好的模型需要被保存,以便在其他程序或會
    的頭像 發(fā)表于 07-11 10:15 ?874次閱讀

    大語言模型訓練

    能力,逐漸成為NLP領(lǐng)域的研究熱點。大語言模型訓練是這一技術(shù)發(fā)展的關(guān)鍵步驟,它通過在海量無標簽數(shù)據(jù)上進行訓練,使模型學習到語言的通用知識
    的頭像 發(fā)表于 07-11 10:11 ?249次閱讀

    llm模型有哪些格式

    Representations from Transformers):BERT是一種雙向訓練模型,通過大量文本數(shù)據(jù)進行訓練,可以
    的頭像 發(fā)表于 07-09 09:59 ?337次閱讀

    人臉識別模型訓練流程

    人臉識別模型訓練流程是計算機視覺領(lǐng)域中的一項重要技術(shù)。本文將詳細介紹人臉識別模型訓練流程,包括數(shù)據(jù)準備、模型選擇、
    的頭像 發(fā)表于 07-04 09:19 ?503次閱讀

    人臉識別模型訓練是什么意思

    人臉識別模型訓練是指通過大量的人臉數(shù)據(jù),使用機器學習或深度學習算法,訓練出一個能夠識別和分類人臉的模型。這個模型可以
    的頭像 發(fā)表于 07-04 09:16 ?337次閱讀

    訓練模型的基本原理和應用

    訓練模型(Pre-trained Model)是深度學習和機器學習領(lǐng)域中的一個重要概念,尤其是在自然語言處理(NLP)和計算機視覺(CV)等領(lǐng)域中得到了廣泛應用。
    的頭像 發(fā)表于 07-03 18:20 ?1436次閱讀

    深度學習模型訓練過程詳解

    深度學習模型訓練是一個復雜且關(guān)鍵的過程,它涉及大量的數(shù)據(jù)、計算資源和精心設(shè)計的算法。訓練一個深度學習模型,本質(zhì)上是通過優(yōu)化算法調(diào)整模型參數(shù),
    的頭像 發(fā)表于 07-01 16:13 ?492次閱讀

    大語言模型:原理與工程時間+小白初識大語言模型

    種語言模型進行訓練,此處訓練為自然語言處理領(lǐng)域的里程碑 分詞技術(shù)(Tokenization) Word粒度:我/賊/喜歡/看/大語言
    發(fā)表于 05-12 23:57

    【大語言模型:原理與工程實踐】大語言模型的應用

    操作。所謂零樣本提示(Zero-Shot Prompt),指的是在提示詞中不包含與指令任務相似的任何示例。 當大語言模型訓練完成后,它便具備了分析情緒和識別命名實體等常見任務的能力,這些能力源于
    發(fā)表于 05-07 17:21

    【大語言模型:原理與工程實踐】大語言模型訓練

    大語言模型的核心特點在于其龐大的參數(shù)量,這賦予了模型強大的學習容量,使其無需依賴微調(diào)即可適應各種下游任務,而更傾向于培養(yǎng)通用的處理能力。然而,隨著學習容量的增加,對訓練數(shù)據(jù)的需求也相
    發(fā)表于 05-07 17:10

    【大語言模型:原理與工程實踐】大語言模型的基礎(chǔ)技術(shù)

    就無法修改,因此難以靈活應用于下游文本的挖掘中。 詞嵌入表示:將每個詞映射為一個低維稠密的實值向量。不同的是,基于訓練的詞嵌入表示先在語料庫中利用某種語言模型進行
    發(fā)表于 05-05 12:17

    【大語言模型:原理與工程實踐】核心技術(shù)綜述

    訓練和微調(diào),直到模型的部署和性能評估。以下是對這些技術(shù)的綜述: 模型架構(gòu): LLMs通常采用深層的神經(jīng)網(wǎng)絡(luò)架構(gòu),最常見的是Transformer網(wǎng)絡(luò),它包含多個自注意力層,能夠捕
    發(fā)表于 05-05 10:56

    【大語言模型:原理與工程實踐】探索《大語言模型原理與工程實踐》

    處理中訓練架構(gòu)Transformer,以及這些技術(shù)在現(xiàn)實世界中的如何應用。通過具體案例的分析,作者展示了大語言模型在解決實際問題中的強大能力,同時也指出了當前技術(shù)面臨的挑戰(zhàn)和局限性。書中對大語言
    發(fā)表于 04-30 15:35

    谷歌模型訓練軟件有哪些功能和作用

    谷歌模型訓練軟件主要是指ELECTRA,這是一種新的訓練方法,源自谷歌AI。ELECTRA不僅擁有BERT的優(yōu)勢,而且在效率上更勝一籌。
    的頭像 發(fā)表于 02-29 17:37 ?640次閱讀

    如何優(yōu)化深度學習模型?

    因為大部分人使用的模型都是訓練模型,使用的權(quán)重都是在大型數(shù)據(jù)集上訓練好的模型,當然不需要自己去
    發(fā)表于 01-29 14:25 ?1064次閱讀
    如何優(yōu)化深度學習<b class='flag-5'>模型</b>?