pos機(jī)訓(xùn)練,知識(shí)融入預(yù)訓(xùn)練+小樣本學(xué)習(xí)的實(shí)戰(zhàn)解析

 新聞資訊2  |   2023-06-27 09:14  |  投稿人:pos機(jī)之家

網(wǎng)上有很多關(guān)于pos機(jī)訓(xùn)練,知識(shí)融入預(yù)訓(xùn)練+小樣本學(xué)習(xí)的實(shí)戰(zhàn)解析的知識(shí),也有很多人為大家解答關(guān)于pos機(jī)訓(xùn)練的問題,今天pos機(jī)之家(www.mxllmx.com)為大家整理了關(guān)于這方面的知識(shí),讓我們一起來看下吧!

本文目錄一覽:

1、pos機(jī)訓(xùn)練

pos機(jī)訓(xùn)練

一 概述

7月8日,中文語言理解權(quán)威評(píng)測基準(zhǔn)CLUE公開了中文小樣本學(xué)習(xí)評(píng)測榜單最新結(jié)果,阿里云計(jì)算平臺(tái)PAI團(tuán)隊(duì)攜手達(dá)摩院智能對(duì)話與服務(wù)技術(shù)團(tuán)隊(duì),在大模型和無參數(shù)限制模型雙賽道總成績第一名,決賽答辯總成績第一名。

中文語言理解權(quán)威評(píng)測基準(zhǔn)CLUE自成立以來發(fā)布了多項(xiàng)NLP評(píng)測基準(zhǔn),包括分類榜單,閱讀理解榜單和自然語言推斷榜單等,在學(xué)術(shù)界、工業(yè)界產(chǎn)生了深遠(yuǎn)影響。其中,F(xiàn)ewCLUE是CLUE最新推出的一項(xiàng)中文小樣本學(xué)習(xí)評(píng)測基準(zhǔn),用來評(píng)估機(jī)器學(xué)習(xí)模型是否能夠通過極少樣本的學(xué)習(xí)來掌握特定的自然語言處理任務(wù)。基于這項(xiàng)評(píng)估,科研人員可以更精準(zhǔn)的衡量機(jī)器學(xué)習(xí)訓(xùn)練出來的模型的泛化性和準(zhǔn)確率。比如智能客服場景中的用戶意圖識(shí)別,僅需人工標(biāo)注幾十條樣本,就能讓意圖識(shí)別的準(zhǔn)確率達(dá)到90%。

眾所周知,大規(guī)模預(yù)訓(xùn)練模型雖然在各大任務(wù)里面取得非常大的效果,但是在特定的任務(wù)上,還是需要許多標(biāo)注數(shù)據(jù)。由于收集和標(biāo)注模型需要的訓(xùn)練的數(shù)據(jù)收集成本昂貴,所以需要攻關(guān)小樣本學(xué)習(xí)技術(shù),使用遠(yuǎn)小于經(jīng)典深度學(xué)習(xí)算法需要的數(shù)據(jù)量,接近甚至超越經(jīng)典深度學(xué)習(xí)算法的精度。此次,阿里云PAI團(tuán)隊(duì)攜手達(dá)摩院提出了一套大模型+小樣本的聯(lián)合方案,在大規(guī)模通用預(yù)訓(xùn)練基礎(chǔ)之上,結(jié)合了基于知識(shí)的預(yù)訓(xùn)練和Fuzzy-PET少樣本學(xué)習(xí),一舉取得了優(yōu)異的成績。甚至在一個(gè)小樣本學(xué)習(xí)任務(wù)上的精準(zhǔn)度超過了人類。

二 賽題分析 & 建模思路

比賽數(shù)據(jù)集總體特點(diǎn)如下:

小樣本:訓(xùn)練集和檢驗(yàn)集均為每個(gè)類別16shot,考驗(yàn)算法在小樣本情境下的魯棒性泛化性:任務(wù)特征差異明顯,需要模型有較好的泛化能力無標(biāo)簽數(shù)據(jù):多數(shù)任務(wù)提供了數(shù)量可觀的無標(biāo)簽數(shù)據(jù),可以嘗試continued pretrain和self-training

基于對(duì)賽題的解讀,我們?cè)O(shè)計(jì)了三段式的建模方法:

通用領(lǐng)域數(shù)據(jù)的從頭預(yù)訓(xùn)練:借助PAI-Rapidformer提供的各種加速策略以及預(yù)訓(xùn)練套件,我們從頭預(yù)訓(xùn)練了3億量級(jí)和15億量級(jí)的中文預(yù)訓(xùn)練模型,預(yù)訓(xùn)練過程采用融入知識(shí)的預(yù)訓(xùn)練算法(詳見3.2)。多任務(wù)的繼續(xù)預(yù)訓(xùn)練:目的是進(jìn)一步強(qiáng)化雙句匹配任務(wù)(OCNLI, BUSTM, CSL)的Performance。我們將分類任務(wù)轉(zhuǎn)化為文本蘊(yùn)含任務(wù),使用文本蘊(yùn)含數(shù)據(jù)進(jìn)行Continued Pretrain。例如 [CLS]I like the movie[SEP]This indicates positive user sentiment[EOS]針對(duì)每個(gè)任務(wù)進(jìn)行小樣本算法微調(diào):選擇PET(Pattern-Exploiting Training)作為下游微調(diào)的核心方法, 開發(fā)Fuzzy-PET算法,減少了PET算法標(biāo)簽詞人工選擇帶來的波動(dòng),并且在任務(wù)上帶來效果提升。同時(shí)使用了self-training 的半監(jiān)督方法,在下游微調(diào)階段利用上半監(jiān)督學(xué)習(xí)(詳見3.3)三 核心技術(shù)

1. PyTorch大模型訓(xùn)練加速

自從2020年推出PAI-EasyTransfer面向NLP和遷移學(xué)習(xí)的框架之后,PAI團(tuán)隊(duì)開發(fā)了PyTorch版本的EasyTransfer,命名為EasyTexMiner。比賽所用的模型,是通過EasyTexMiner的高性能分布式預(yù)訓(xùn)練完成的。EasyTexMiner的分布式訓(xùn)練有機(jī)整合了微軟的DeepSpeed和英偉達(dá)的Megatron優(yōu)點(diǎn),整體框圖如下:

EasyTexMiner的分布式訓(xùn)練融合了以下核心的技術(shù):

1)激活檢查點(diǎn)(Activation Checkpoint)

在神經(jīng)網(wǎng)絡(luò)中間設(shè)置若干個(gè)檢查點(diǎn)(checkpoint),檢查點(diǎn)以外的中間結(jié)果全部舍棄,反向傳播求導(dǎo)數(shù)的時(shí)間,需要某個(gè)中間結(jié)果就從最近的檢查點(diǎn)開始計(jì)算,這樣既節(jié)省了顯存,又避免了從頭計(jì)算的繁瑣過程。

2)梯度累積 (Gradient Accumulation)

以batch_size=16為例,可以每次算16個(gè)樣本的平均梯度,然后緩存累加起來,算夠了4次之后,然后把總梯度除以4,然后才執(zhí)行參數(shù)更新,這個(gè)效果等價(jià)于batch_size=64。這是一種有效的增加Batch Size的方法。通過該策略可以將每個(gè)step的batch size擴(kuò)充到很大,結(jié)合LAMB優(yōu)化器會(huì)提升收斂速度。

3)混合精度訓(xùn)練(Mixed Precision Training)

采用混合精度訓(xùn)練的好處主要有以下兩點(diǎn):

減少顯存占用,由于FP16的內(nèi)存占用只有FP32的一半,自然地就可以幫助訓(xùn)練過程節(jié)省一半的顯存空間。加快訓(xùn)練和推斷的計(jì)算,F(xiàn)P16除了能節(jié)約內(nèi)存,還能同時(shí)節(jié)省模型的訓(xùn)練時(shí)間。具體原理如下圖所示,核心是在反向傳播參數(shù)更新的時(shí)候需要維護(hù)一個(gè)FP32的備份來避免舍入誤差,另外會(huì)通過Loss Scaling來緩解溢出錯(cuò)誤。

4)即時(shí)編譯JIT

當(dāng)PyTorch在執(zhí)行一系列element-wise的Tensor操作時(shí),底層Kernel的實(shí)現(xiàn)需要反復(fù)地讀寫訪存,但是只執(zhí)行少量的計(jì)算,其中大部分時(shí)間開銷并不在計(jì)算上,而在訪存讀寫上。比如,實(shí)現(xiàn)一個(gè)帶有N個(gè)元素的Tensor的乘/加法Kernel,需要N次加計(jì)算,2N次讀和N次寫訪存操作。我們稱計(jì)算少, 訪存次數(shù)多的Kernel為訪存Bound。為了避免這種反復(fù)的讀寫,以及降低Kernel Launch的開銷,可以采用Kernel Fusion。訪存Bound的Kernel Fusion的核心原理是通過訪存的局部性原理,將多個(gè)element-wise的Kernel自動(dòng)合并成一個(gè)Kernel,避免中間結(jié)果寫到內(nèi)存上,來提高訪存的利用率;同時(shí)由于多個(gè)Kernel合并成一個(gè)Kernel,Kernel launch開銷也減少到了1次。

5)3D并行

3D并行策略指的是:數(shù)據(jù)并行,模型并行,流水并行三種策略的混合運(yùn)用,以達(dá)到快速訓(xùn)練百億/千億量級(jí)模型的目的。該項(xiàng)技術(shù)最早由DeepSpeed團(tuán)隊(duì)研發(fā),可以加速大模型的訓(xùn)練。

6)CPU Offload

反向傳播不在GPU上計(jì)算,而是在CPU上算,其中用到的中間變量全部存儲(chǔ)在內(nèi)存中,這樣可以節(jié)省下GPU的顯存占用,用時(shí)間換空間,以便能放到更大尺寸的模型。

7)Zero顯存優(yōu)化器

ZeRO(The Zero Redundancy Optimizer)是一種用于大規(guī)模分布式深度學(xué)習(xí)的新型內(nèi)存優(yōu)化技術(shù)。ZeRO具有三個(gè)主要的優(yōu)化階段:

優(yōu)化器狀態(tài)分區(qū)(Pos) :減少了4倍的內(nèi)存,通信容量與數(shù)據(jù)并行性相同;增加梯度分區(qū)(Pos+g) :8x內(nèi)存減少,通信容量與數(shù)據(jù)并行性相同;增加參數(shù)分區(qū)(Pos+g+p) :內(nèi)存減少與數(shù)據(jù)并行度和復(fù)雜度成線性關(guān)系。

吞吐性能評(píng)測本次發(fā)布使用了最新的阿里云EFLOPS AI集群系統(tǒng),使用NVIDIA A100 GPU和 100Gbps Mellanonx CX6-DX網(wǎng)卡,結(jié)合全系統(tǒng)拓?fù)涓兄母咝阅芊植际酵ㄐ艓霢CCL 和 EFLOPS集群多軌網(wǎng)絡(luò)能力,實(shí)現(xiàn)無擁塞通信,大幅加速了模型的訓(xùn)練速度。如下圖所示:

可擴(kuò)展性評(píng)測我們采用比BertLarge更大一點(diǎn)的單卡放不下的模型來做模型并行下的可擴(kuò)展性評(píng)測。具體配置是 num-layers=24,hidden-size=2048,num-attention-heads=32,該模型的參數(shù)總量大約是1.2B。我們分別在8/16/32/64卡上進(jìn)行來吞吐評(píng)測,從下圖的指標(biāo)來看,隨著卡數(shù)的增加,吞吐幾乎是近線性的提升。

2. 融入知識(shí)的預(yù)訓(xùn)練算法KGBERT

在通用預(yù)訓(xùn)練模型基礎(chǔ)之上,我們考慮融入知識(shí)的預(yù)訓(xùn)練來提升預(yù)訓(xùn)練模型的效果。數(shù)據(jù)和知識(shí):通過與達(dá)摩院NLP數(shù)據(jù)團(tuán)隊(duì)合作,獲取了大規(guī)模、高質(zhì)量且具備多樣性的數(shù)據(jù)與知識(shí)。

大規(guī)模:5億中文圖譜知識(shí),通過遠(yuǎn)監(jiān)督獲取2億 Sentence-SPO Pair;高質(zhì)量:針對(duì)原始語料龐雜,存在大量冗余、噪聲的問題,通過DSGAN知識(shí)降噪算法,精選上億高質(zhì)量Sentence-SPO,用于模型訓(xùn)練;多樣性:FewCLUE數(shù)據(jù)集除了通用領(lǐng)域,還包含電商、旅游、教育、金融等垂直行業(yè),而這部分?jǐn)?shù)據(jù)和知識(shí)比較稀缺,為此我們構(gòu)建了一套高效的知識(shí)生產(chǎn)系統(tǒng),能夠?qū)Ω黝惔怪毙袠I(yè)的文檔、網(wǎng)頁進(jìn)行自動(dòng)三元組抽取,從而極大的提升了知識(shí)的豐富度。

模型和預(yù)訓(xùn)練任務(wù)

為了高效的利用知識(shí),我們基于“Sentence-正向SPO-負(fù)向SPO”對(duì)齊語料,設(shè)計(jì)了多粒度語義理解預(yù)訓(xùn)練任務(wù):

Mention Detection:增強(qiáng)模型對(duì)核心實(shí)體Mention的理解;Sentence-SPO joint Mask:將大規(guī)模文本數(shù)據(jù)及其對(duì)應(yīng)的SPO知識(shí)同時(shí)輸入到預(yù)訓(xùn)練模型中進(jìn)行預(yù)聯(lián)合訓(xùn)練,促進(jìn)結(jié)構(gòu)化知識(shí)和無結(jié)構(gòu)文本之間的信息共享,提升模型語義理解能力;SPO Margin Magnify:設(shè)計(jì)對(duì)比學(xué)習(xí)的預(yù)訓(xùn)練任務(wù),拉開Sentence相關(guān)SPO與無關(guān)SPO語義間隔,使其具備更強(qiáng)的語義區(qū)分能力。

技術(shù)創(chuàng)新:知識(shí)篩選與融入機(jī)制

1)動(dòng)機(jī)

NLP任務(wù)中,常見的做法是根據(jù)當(dāng)前輸入的自然語言進(jìn)行建模,但是這樣通常用到的信息只有當(dāng)前字面局部信息。這和人類在理解語言的時(shí)候具有明顯差別,人類會(huì)用到我們之前學(xué)習(xí)到的知識(shí)輔助理解。人類會(huì)利用這些外部知識(shí)來加強(qiáng)自己的理解,如果沒有額外的知識(shí),比如接觸到我們一個(gè)不熟悉的領(lǐng)域,我們也很難完全理解語義。而目前NLP常見做法只利用了輸入信息,沒用利用外部知識(shí),理解層次偏低。

現(xiàn)實(shí)中知識(shí)是龐大且繁雜的,需要針對(duì)性的采樣知識(shí),減少引入無關(guān)的知識(shí),最大化知識(shí)的收益。

2)方法

設(shè)計(jì)一種新穎的Gated機(jī)制,先對(duì)句子進(jìn)行編碼,再通過GCN聚合出子圖信息,通過門控機(jī)制,控制信息的流入;在預(yù)訓(xùn)練階段,通過設(shè)計(jì)最大化知識(shí)增益目標(biāo)函數(shù),讓模型更好的學(xué)習(xí)到有價(jià)值的信息。

3)結(jié)果

基于Gated機(jī)制的知識(shí)篩入,能夠有效捕捉到高增益的三元組進(jìn)行融入,在政務(wù)、金融屬性識(shí)別任務(wù)上準(zhǔn)確率有2%的提升。這樣的知識(shí)篩選機(jī)制在學(xué)術(shù)公開數(shù)據(jù)集驗(yàn)證有效,并取得SOTA的效果,相關(guān)工作已發(fā)表在SIGIR2021。

3. 小樣本學(xué)習(xí)算法

在融入知識(shí)的預(yù)訓(xùn)練語言模型基礎(chǔ)上,計(jì)算平臺(tái)PAI和達(dá)摩院團(tuán)隊(duì)聯(lián)合推出了自研的多任務(wù)小樣本學(xué)習(xí)算法Fuzzy-PET。由于FewClue榜單具有一系列不同類別的任務(wù),如果在針對(duì)特定任務(wù)進(jìn)行小樣本微調(diào)之前,模型能學(xué)習(xí)到跨任務(wù)的可遷移的知識(shí),模型在針對(duì)特定任務(wù)進(jìn)行小樣本微調(diào)過程中會(huì)獲得更好的初始參數(shù)設(shè)置?;谟?jì)算平臺(tái)PAI團(tuán)隊(duì)在Meta-Learning相關(guān)算法的積累基礎(chǔ)上,我們?cè)谌谌胫R(shí)的預(yù)訓(xùn)練語言模型的繼續(xù)預(yù)訓(xùn)練階段,引入了多個(gè)FewClue任務(wù)的無標(biāo)注數(shù)據(jù)進(jìn)行學(xué)習(xí),在學(xué)習(xí)過程中,模型自動(dòng)從這些任務(wù)相關(guān)的數(shù)據(jù)中學(xué)習(xí)到這些任務(wù)的背景知識(shí),從而更有利于特定任務(wù)的小樣本學(xué)習(xí)。Meta-Learning的相關(guān)算法已經(jīng)發(fā)表在EMNLP2020和ACL2021上。。

在特定小樣本任務(wù)學(xué)習(xí)階段,我們對(duì)Pattern-Exploiting Training(PET)算法進(jìn)行了改進(jìn),引入了Fuzzy Verbalizer Mapping機(jī)制。舉例來說,在經(jīng)典的PET算法中,對(duì)于FewClue的任務(wù)OCNLI,我們?cè)O(shè)計(jì)了如下模板:“其實(shí)我覺得你不懂球啊”和“你不懂籃球?!钡年P(guān)系是MASK。

對(duì)于輸出的Masked Language Token(即Verbalizer),如果預(yù)測結(jié)果為“相關(guān)”,我們將其映射為類別標(biāo)簽“entailment”;如果預(yù)測結(jié)果為“無關(guān)”,我們將其映射為類別標(biāo)簽“neural”; 如果預(yù)測結(jié)果為“相反”,我們將其映射為類別標(biāo)簽“contradiction”。利用Verbalizer到類別標(biāo)簽人工映射,PET實(shí)現(xiàn)了對(duì)文本分類任務(wù)的建模。在Fuzzy Verbalizer Mapping機(jī)制中,我們假設(shè)多個(gè)Verbalizer可能對(duì)某一個(gè)類別標(biāo)簽有映射關(guān)系,從而進(jìn)一步提升模型在小樣本學(xué)習(xí)過程中的泛化性。參考先前的例子,我們?cè)O(shè)計(jì)三組標(biāo)簽詞:相關(guān),無關(guān),相反/蘊(yùn)含,中性,矛盾/包含,中立,反向。訓(xùn)練時(shí)每一條樣本使用多組標(biāo)簽詞輸入,在推理時(shí)每個(gè)類別計(jì)算所有候選詞的預(yù)測概率并相加,最終選擇總概率最高的類別。如上述例子,若預(yù)測“相關(guān)”,“蘊(yùn)含”, “包含”的概率和大于預(yù)測“無關(guān)”,“中性”,“中立”或預(yù)測“相反”,“矛盾”,“反向”的概率,則預(yù)測結(jié)果為“entailment”。

這一機(jī)制在FewClue的多個(gè)任務(wù)中對(duì)預(yù)測精度提升有正面作用,并且一定程度上減輕人工選擇不同標(biāo)簽詞產(chǎn)生的波動(dòng)。此外,我們也考慮在小樣本學(xué)習(xí)階段引入無標(biāo)注的數(shù)據(jù)進(jìn)行Self-training,即依靠現(xiàn)有模型對(duì)無標(biāo)注數(shù)據(jù)進(jìn)行打標(biāo),實(shí)現(xiàn)模型的迭代優(yōu)化。

四 業(yè)務(wù)&產(chǎn)品

值得一提的是,基于機(jī)器學(xué)習(xí)平臺(tái)PAI平臺(tái),這項(xiàng)技術(shù)已在實(shí)際業(yè)務(wù)場景落地且有很好的表現(xiàn)。這些技術(shù)增強(qiáng)了達(dá)摩院云小蜜KBQA能力,使其具備快速冷啟動(dòng)、精準(zhǔn)問答的能力,并在政務(wù)、金融、通用線多個(gè)業(yè)務(wù)場景落地。在實(shí)際項(xiàng)目中,在少樣本情形下(20條),可以做到快速冷啟動(dòng),從而實(shí)現(xiàn)精準(zhǔn)問答。同時(shí),這些技術(shù)有望給阿里云上的機(jī)器學(xué)習(xí)算法賦予小樣本學(xué)習(xí)的能力,通過很少的數(shù)據(jù)標(biāo)注,就可以大大提升下游任務(wù)的效果。這意味著阿里云模型已具備低成本快速落地的實(shí)施能力,能高效且敏捷的賦能企業(yè)的業(yè)務(wù)。

基于PAI,阿里云希望構(gòu)建大規(guī)模AI端到端的能力,從底層芯片到分布式系統(tǒng),再到上層算法和數(shù)據(jù)的規(guī)模化,打造AI工程化集團(tuán)作戰(zhàn)的能力,服務(wù)于各行各業(yè)。目前,PAI平臺(tái)支持千億特征、萬億樣本規(guī)模加速訓(xùn)練,內(nèi)置200+成熟算法、以及圖像視覺、音視頻、文本等AI領(lǐng)域高質(zhì)量深度學(xué)習(xí)預(yù)訓(xùn)練模型50余個(gè),全面提升企業(yè)AI工程效率。在平臺(tái)能力基礎(chǔ)上,PAI平臺(tái)還提供了成熟的行業(yè)解決方案,成為眾多企業(yè)的優(yōu)選服務(wù),已經(jīng)在智能推薦、用戶增長、端側(cè)超分、自動(dòng)駕駛等眾多場景成熟商用。

作者 | 同潤、歸雨、熊兮

原文鏈接:http://click.aliyun.com/m/1000284316/

本文為阿里云原創(chuàng)內(nèi)容,未經(jīng)允許不得轉(zhuǎn)載。

以上就是關(guān)于pos機(jī)訓(xùn)練,知識(shí)融入預(yù)訓(xùn)練+小樣本學(xué)習(xí)的實(shí)戰(zhàn)解析的知識(shí),后面我們會(huì)繼續(xù)為大家整理關(guān)于pos機(jī)訓(xùn)練的知識(shí),希望能夠幫助到大家!

轉(zhuǎn)發(fā)請(qǐng)帶上網(wǎng)址:http://www.mxllmx.com/newsone/74139.html

你可能會(huì)喜歡:

版權(quán)聲明:本文內(nèi)容由互聯(lián)網(wǎng)用戶自發(fā)貢獻(xiàn),該文觀點(diǎn)僅代表作者本人。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如發(fā)現(xiàn)本站有涉嫌抄襲侵權(quán)/違法違規(guī)的內(nèi)容, 請(qǐng)發(fā)送郵件至 babsan@163.com 舉報(bào),一經(jīng)查實(shí),本站將立刻刪除。