最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

Prompt Learning學(xué)習(xí)總結(jié)

2023-04-03 11:54 作者:LEKNIGHT  | 我要投稿

摘要:由于個(gè)人研究學(xué)習(xí)需要,對(duì)Prompt?Learning、NLP和預(yù)訓(xùn)練模型的一些基本概念進(jìn)行了學(xué)習(xí)總結(jié)。

NLP

概念:(NLP:Natural Language Processing)自然語言處理,讓計(jì)算機(jī)讀懂人類語言,將人的語言轉(zhuǎn)換為計(jì)算機(jī)可以閱讀的指令

基礎(chǔ)應(yīng)用:

  • 序列標(biāo)注問題:分詞;詞性標(biāo)注;命名實(shí)體識(shí)別(使用BIO序列標(biāo)注方法)eg:“我在北京大學(xué)讀書”,輸出:OOBIIIIBI

  • 關(guān)鍵詞提取:提取句子意思

  • 關(guān)系提?。撼槿【渥又械膶?shí)體和關(guān)系,生成實(shí)體和實(shí)體的關(guān)系

  • 事件提?。禾崛∥谋局械氖录?/span>

  • 文本相似度:計(jì)算文本之間的相似度

  • 文本分類

  • 文本表示:文本向量化、文本數(shù)值化

因此,本文中主要用到的將會(huì)是NLP中的關(guān)鍵詞提取應(yīng)用。不過提示學(xué)習(xí)可以實(shí)現(xiàn)在零樣本或少樣本的場(chǎng)景中獲得良好的任務(wù)效果。所以嘗試了提示學(xué)習(xí)

預(yù)訓(xùn)練模型

概念:將NLP領(lǐng)域研究提升到了一個(gè)新的階段,無需人工標(biāo)簽,可以從海量的語料中學(xué)習(xí)到通用的語言表示,并顯著提升下游的任務(wù)效果。


第一代預(yù)訓(xùn)練模型:預(yù)訓(xùn)練詞向量

Word2Vec,CBOW和Glove等從無標(biāo)注語料中訓(xùn)練得到詞向量的模型可以視為第一代預(yù)訓(xùn)練模型;這類模型結(jié)構(gòu)簡(jiǎn)單,但往往也能得到高質(zhì)量的詞向量,這類詞向量能夠捕捉到潛在的文本中詞之間潛在的語法和語義信息。

盡管在許多NLP任務(wù)中都有廣泛的應(yīng)用,但這類預(yù)訓(xùn)練詞向量無法隨上下文而動(dòng)態(tài)變化。此外,在下游任務(wù)中,其余的模型參數(shù)仍然需要重新訓(xùn)練。

第二代預(yù)訓(xùn)練模型:預(yù)訓(xùn)練的編碼模型

第一代預(yù)訓(xùn)練模型得到的是上下文無關(guān)的embedding,不可避免的遇到1.1 中所提到的問題. 而第二代預(yù)訓(xùn)練模型通常得到的是上下文相關(guān)的 embedding, 詞的語義信息隨上下文而變化。有研究者在機(jī)器翻譯任務(wù)中使用LSTM作為編碼器,訓(xùn)練Seq2Seq模型得到的詞向有效的提升的下游許多任務(wù)。更進(jìn)一步,基于雙向LSTM,研究者提出了ELMO模型,產(chǎn)出的上下文的語義表示對(duì)下游許多任務(wù)的效果有明顯提升。然而這些早期的預(yù)訓(xùn)練模型通常被用作特征提取器來提取上下文相關(guān)的詞向量,然后再應(yīng)用于下游任務(wù),這些模型的參數(shù)往往是固定的,主模型的參數(shù)仍然需要從頭訓(xùn)練。

ULMFiT模型嘗試在文本分類任務(wù)使用微調(diào)預(yù)訓(xùn)練模型的方法并取得了最優(yōu)的效果。模型主要包括三部分:(1)在通用語料上預(yù)訓(xùn)練的語言模型(2)在目標(biāo)任務(wù)相關(guān)的數(shù)據(jù)集上微調(diào)語言模型(3)在目標(biāo)數(shù)據(jù)集上進(jìn)行微調(diào)相關(guān)參數(shù)(如分類層等)。ULMFiT還研究了不同的微調(diào)策略,包括逐步微調(diào),三角學(xué)習(xí)率和逐步解凍。從ULMFiT開始,微調(diào)已經(jīng)稱為預(yù)訓(xùn)練模型應(yīng)用于下游任務(wù)的主要方法。

隨著Transformer的引入,結(jié)構(gòu)更復(fù)雜,層數(shù)更多的預(yù)訓(xùn)練語言模型受到了更多的關(guān)注,典型代表為GPT以及BERT等相關(guān)的模型。

預(yù)訓(xùn)練語言模型任務(wù)分類

監(jiān)督學(xué)習(xí)(無標(biāo)簽),無監(jiān)督學(xué)習(xí)(有標(biāo)簽),自監(jiān)督學(xué)習(xí)(有+無混合,有標(biāo)簽也是自動(dòng)生成的)。

Language Model(語言模型)


Masked Language Modeling(帶掩碼機(jī)制的語言模型)

概念:為了克服無向語言模型存在的缺點(diǎn),MLM將文本中部分token遮蓋,通過使用其余的token來預(yù)測(cè)被遮蓋的token來訓(xùn)練模型。然而,這種方法會(huì)導(dǎo)致預(yù)訓(xùn)練階段和微調(diào)階段的不一致,因?yàn)楸徽谏w的token不會(huì)出現(xiàn)在微調(diào)(Fine tuning)階段。為了緩解這一問題,研究者提出了一個(gè)trick: 在待遮蓋的token中,使用[MASK] 表示80%的情況,10%用隨機(jī)的一個(gè)token代替,10%并不進(jìn)行遮蓋。

預(yù)訓(xùn)練模型分類體系:

<img src="https://pic1.zhimg.com/80/v2-09ed8168759a57ae2ce68fba54773e88_720w.webp">


預(yù)訓(xùn)練模型應(yīng)用于下游任務(wù)

Transfer Learning(遷移學(xué)習(xí))

遷移學(xué)習(xí)通常是將知識(shí)從一個(gè)領(lǐng)域遷移到另一個(gè)領(lǐng)域。在NLP領(lǐng)域中有許多的遷移學(xué)習(xí)方式,如領(lǐng)域自適應(yīng),跨語言學(xué)習(xí),多任務(wù)學(xué)習(xí)。將PTM應(yīng)用到下游任務(wù)是一個(gè)序列遷移的任務(wù),即這些任務(wù)需要順序的從中學(xué)習(xí)并且目標(biāo)任務(wù)帶有標(biāo)簽信息。

Fine-Tuning(微調(diào))

一般有兩種方式對(duì)模型進(jìn)行遷移:特征提取(模型參數(shù)固定)和微調(diào)(模型參數(shù)參與微調(diào))。采用特征提取的方式,需要將預(yù)訓(xùn)練模型視為特征抽取器,同時(shí)還需要暴露模型中間層,但這種方式需要針對(duì)目標(biāo)任務(wù)設(shè)計(jì)復(fù)雜的網(wǎng)絡(luò)結(jié)構(gòu),因此針對(duì)目標(biāo)任務(wù)進(jìn)行微調(diào)就稱通用的方法。

附:BERT模型

BERT(Bidirectional Encoder Representations from Transformers) 是一個(gè)語言表示模型(language representation model)。它的主要模型結(jié)構(gòu)是trasnformer的encoder堆疊而成,它其實(shí)是一個(gè)2階段的框架,分別是pretraining,以及在各個(gè)具體任務(wù)上進(jìn)行finetuning。 pretaining階段需要大量的數(shù)據(jù),以及大量的計(jì)算機(jī)資源,所以google開源了多國(guó)的語言預(yù)訓(xùn)練模型,我們可以直接在這個(gè)基礎(chǔ)上進(jìn)行finetune。

Prompt Learning

背景:在很長(zhǎng)一段時(shí)間內(nèi),NLP的任務(wù)采用的都是Pretrain + Fine-tuning的解決方案,但是這種方案,需要對(duì)每個(gè)任務(wù)都重新fine-tune一個(gè)新的模型,且不能共用。對(duì)于一個(gè)預(yù)訓(xùn)練的大預(yù)言模型來說,這就仿佛是對(duì)每個(gè)任務(wù)都進(jìn)行了定制化,十分不高效。是否存在一種方式,可以將預(yù)訓(xùn)練語言模型作為電源,不同的任務(wù)當(dāng)作電器,僅需要根據(jù)不同的電器(任務(wù)),選擇不同的插座,對(duì)于模型來說,即插入不同的任務(wù)特定的參數(shù),就可以使得模型適配該下游任務(wù)。Prompt Learning 就是這個(gè)適配器,它能高效得進(jìn)行預(yù)訓(xùn)練語言模型的使用。

傳統(tǒng)Model Tuning和Prompt Tuning的區(qū)別:

如下圖:左側(cè)為傳統(tǒng)Model Tuning,主要過程為將預(yù)訓(xùn)練模型分別用于不同任務(wù)的訓(xùn)練,得到不同的針對(duì)性的模型參數(shù),另外Fine-tuning隨著模型規(guī)模逐漸增大,不再容易;而右圖中Prompt Tuning則是直接對(duì)預(yù)訓(xùn)練模型中的參數(shù)進(jìn)行操作,通過對(duì)參數(shù)添加標(biāo)簽的方式實(shí)現(xiàn)不同任務(wù)能夠在同一組模型上訓(xùn)練,可以大大縮短訓(xùn)練時(shí)間,也極大提升了模型使用率(另外Prompt Learning還有一個(gè)優(yōu)點(diǎn):小樣本學(xué)習(xí),是GPU資源受限的研究者的福音)。

兩者本質(zhì)區(qū)別是Fine-tuning強(qiáng)迫上游任務(wù)適配下游任務(wù),Prompt Tuning強(qiáng)迫下游任務(wù)適配上游任務(wù)


嚴(yán)謹(jǐn)定義:Prompt是一種為了更好的使用預(yù)訓(xùn)練語言模型的知識(shí),采用在輸入段添加額外文本的技術(shù)。

Prompt Learning的工作過程

  1. Prompt模版(Template)的構(gòu)造

  2. Prompt答案空間映射(Verbalizer)的構(gòu)造

  3. 文本代入template,并且使用預(yù)訓(xùn)練語言模型進(jìn)行預(yù)測(cè)

  4. 將預(yù)測(cè)結(jié)果映射回label



過程描述:首先,需要人為設(shè)計(jì)Prompt模版,以此圖為例,模板為[x], Overall, it was a [z] movie,[x]:是用戶的輸入,[z]輸出。構(gòu)造好模版后,還需要人為構(gòu)造答案映射空間,即輸入后,將模版放入訓(xùn)練模型得出[z]結(jié)果,需要將[z]映射為我們所期望的結(jié)果,例如上圖需要將輸出的形容詞匯映射為兩個(gè)標(biāo)簽(笑臉、苦臉)。然后,構(gòu)造好前兩者,用戶輸入值[x],將模版放入人為選擇的預(yù)訓(xùn)練任務(wù)得到輸出[z],并將[z]經(jīng)過答案映射表得到最終結(jié)果。

尚存問題:

  1. 具體細(xì)節(jié)尚不清楚,例如預(yù)訓(xùn)練模型是對(duì)大量數(shù)據(jù)的學(xué)習(xí),那其輸出是什么?預(yù)訓(xùn)練模型的輸出與加入Prompt Learning后的輸出有什么區(qū)別(大概是加Prompt Learning會(huì)結(jié)果更好一些?);

后續(xù)需要查閱的資料:

Prompt Learning和預(yù)訓(xùn)練模型的具體過程;Prompt Learning的主要優(yōu)勢(shì)

參考資料:

[1] ? ?https://zhuanlan.zhihu.com/p/144927093?預(yù)訓(xùn)練語言模型綜述

[2] ? ?https://zhuanlan.zhihu.com/p/442486331?【NLP】Prompt Learning 超強(qiáng)入門教程

[3] ? ?https://zhuanlan.zhihu.com/p/582333142?Prompt Learning(提示學(xué)習(xí))簡(jiǎn)介與發(fā)展



Prompt Learning學(xué)習(xí)總結(jié)的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
陕西省| 淮滨县| 红河县| 华阴市| 富蕴县| 尉氏县| 景宁| 亳州市| 延安市| 衡山县| 哈尔滨市| 河津市| 莱阳市| 腾冲县| 绥宁县| 南通市| 永兴县| 霍州市| 资阳市| 平昌县| 蒲城县| 麦盖提县| 新建县| 尼木县| 阳信县| 兴和县| 金寨县| 长丰县| 黑水县| 教育| 惠东县| 舟曲县| 桐庐县| 新龙县| 屏边| 佳木斯市| 五河县| 无极县| 桂平市| 克拉玛依市| 宜丰县|