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

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

大模型輕量化實踐路徑 之 瀾舟孟子預(yù)訓練模型

2022-07-29 15:07 作者:瀾舟孟子開源社區(qū)  | 我要投稿

在上周發(fā)布的《2022 年中回顧|一文看懂預(yù)訓練模型最新進展》中,瀾舟科技創(chuàng)始人兼 CEO?周明和瀾舟科技大模型技術(shù)負責人王宇龍分享了大模型技術(shù)發(fā)展背景和近期百花齊放的大模型及新應(yīng)用、新趨勢。本文繼續(xù)為大家深入介紹“大模型輕量化”趨勢以及瀾舟的 5 個實踐路徑。

以下內(nèi)容根據(jù)瀾舟科技算法研究員華菁云在「瀾舟 NLP 分享會」演講整理。全文約?4800 字,預(yù)計閱讀時長??6 分鐘。

為什么要訓練輕量化模型?

人們普遍認為,在相同網(wǎng)絡(luò)架構(gòu)和訓練方法下,模型層數(shù)增加、模型參數(shù)增加,能力就一定增強,實際上增強的幅度越來越小。大家都知道摩爾定律,硬件逐年價格下降 1.5 倍,運算能力提升 1.5 倍,但是實際上模型參數(shù)量每年增加至少 7 倍,硬件能力的提升顯然趕不上模型規(guī)模的增長。

如圖 1 右側(cè)所示,訓練一個大模型代價是巨大的,GPT-3 訓練需要 460 萬美金,此外,大模型落地部署的代價也極大,在工業(yè)界實際應(yīng)用中不得不考慮部署的成本。所以在摩爾定律逐漸走向終結(jié)的今天,模型輕量化是必須要考慮的。



圖 1


輕量化路徑

1. 語言學知識增強

使用語言學知識作為顯性的知識信號可以使得模型在預(yù)訓練的過程中獲取到更多的先驗信息,在同等參數(shù)量下,融入更多的語言學知識。?我們使用 SpaCy 對語料進行詞性標注(POS)和命名實體識別(NER),將識別的目標標簽作為預(yù)測目標用于訓練,讓模型在語言建模的同時,去計算 POS 與 NER 的預(yù)測損失與原始語言建模損失相加得到的最終損失。這個方法可以在各數(shù)據(jù)集上帶來一致的提升。

如圖 2 下半部分表格,大家可以看到孟子 Mengzi 模型對應(yīng)的分數(shù)的提升還是比較明顯的。



圖 2


此外,為了建模句子間的關(guān)系,我們結(jié)合了 ALBERT 提出的句子順序預(yù)測 SOP 任務(wù),發(fā)現(xiàn)也能帶來明顯的性能提升。而類似的下一句預(yù)測 NSP 任務(wù)在各項中文任務(wù)上的提升不太明顯(如圖 3 表格所示)。



圖 3


2. 訓練優(yōu)化技術(shù)

傳統(tǒng)基于掩碼的預(yù)訓練方法(Mask Language Model, MLM) 首先通過 ennoising 的方法,例如通過 mask 來構(gòu)建訓練樣本,然后訓練語言模型去還原被破壞的句子。由于通常采用隨機的破壞方法,樣本預(yù)測的難易度不同,模型在 denoising 訓練時的梯度更新強度與樣本難度之間缺乏一致性,可能會造成訓練不穩(wěn)定的問題。

此外,也會帶來一些假負例,即模型會還原出來與原始句子不同,而實際上也合法的句子。模型通常采用交叉熵訓練,這類樣本則都會被判斷為錯誤預(yù)測,導致訓練事實上是不準確的。



圖 4


那么針對以上兩個問題,我們探索了一些訓練校正策略。

第一個是評估 mask 對句子的破壞度?;镜募僭O(shè)是破壞程度越大,Loss 會越大,模型則要花更大的代價去更新梯度。

第二個是計算預(yù)測結(jié)果與原始句子之間句子級別的語義距離。盡管兩個句子形式上差異很大,但語義越近,Loss 則會更小,對 Token 級別的交叉熵是一個補充。



圖 5


我們在 BERT 和 ELECTRA 上分別進行了實驗驗證,發(fā)現(xiàn)這兩個方法能有效提升模型性能,并且有利于模型應(yīng)對同義詞替換之類的對抗攻擊,從而提升魯棒性。圖 6 ?表格是我們在英文權(quán)威測評榜單 GLUE 各項標準任務(wù)上進行了測評,可以看到,使用我們訓練優(yōu)化技術(shù)后模型可以在同等參數(shù)量下得到更高的均分。



圖 6


3. 模型壓縮

在預(yù)訓練模型越做越大的時代, 通過壓縮實現(xiàn)輕量化顯得至關(guān)重要,壓縮 pipeline 可以有效降低模型冗余度,壓縮后模型參數(shù)規(guī)模顯著降低,模型部署場景更加多元化。我們的輕量化技術(shù)結(jié)合了模型蒸餾、剪枝和量化,將大模型進行壓縮得到輕量化模型,顯著提升模型推理速度,改善用戶體驗。

3.1 蒸餾



圖 7


不同的落地業(yè)務(wù)(如:在線業(yè)務(wù),離線業(yè)務(wù)),對模型有不同尺寸需求。預(yù)訓練蒸餾能夠定制化出不同參數(shù)量的模型,滿足各式各樣的需求。



圖 8


受 MiniLM 的啟發(fā),我們使用 attention transfer 的方式蒸餾 teacher model,distill loss 設(shè)定為最后一層 attetion 的 query、key、value 矩陣的 KL 散度。另外,當 student model 的層數(shù)、維度都小很多時,先用一個維度小但層數(shù)和 teacher 一致的 assistant 蒸餾,之后再把 assistant 的知識傳遞給 student,這樣可以獲得更好的蒸餾效果。

實驗表明,使用上述 attention transfer 的方式蒸餾 mengzi-bert-large,相對其他蒸餾方法如 TinyBERT 等同尺寸的蒸餾模型來說效果更好。attention transfer 蒸餾方案可根據(jù)下游任務(wù)需求、客戶需求進行定制化蒸餾,滿足特定的 inference 需求。詳細的實驗對比數(shù)據(jù)參見圖 9,我們在中文權(quán)威測評榜單 CLUE 具有代表性的語義相似度、長文本分類、新聞(短文)分類、自然語言推理四個通用性的分類任務(wù)上,在同等模型規(guī)模下,孟子蒸餾模型的均分更高。



圖 9


3.2 剪枝和量化

非結(jié)構(gòu)化的剪枝技術(shù)雖能實現(xiàn)模型稀疏化,但因硬件等限制無法實現(xiàn)真正意義上的物理加速效果,**所以我們在模型剪枝與量化方面設(shè)計的模型壓縮方案,有效地融合了結(jié)構(gòu)化剪枝和量化技術(shù),能夠在兼顧模型效果的同時更進一步實現(xiàn)物理加速。

受 EarlyBERT 的啟發(fā),我們在模型的 pretrain 階段進行了 head 裁剪,可以使得預(yù)訓練總成本下降,且最終得到的預(yù)訓練模型的 inference 速度更快。

另外參考 ROSITA 的思路,在 finetune 階段可選擇性的進行結(jié)構(gòu)化剪枝,首先在深度上對層數(shù)進行裁剪,然后在寬度上對 head 和 hidden size、embedding size 進行裁剪,實現(xiàn)了模型參數(shù)量下降,inference 加速。

可以看到圖 10 表格中的實驗數(shù)據(jù),我們考慮到深度寬度的結(jié)構(gòu)化剪枝方案,對 bert-base 進行剪枝,可以在壓縮比 61% 的情況下,加速比達到 1.75,sst-2 任務(wù)上 acc 達到 92.1,相較于同等 size 為 66M 的其他模型而言,效果更好。


圖 10


在結(jié)構(gòu)化剪枝的同時,我們結(jié)合量化技術(shù)進一步實現(xiàn)推理速度的優(yōu)化,結(jié)果顯示在 4 核 ?CPU 設(shè)備上,結(jié)合量化+剪枝的方案可加速約 6 倍( 如圖 10 右下角柱狀圖所示)。而且瀾舟的剪枝量化相結(jié)合的方案可以提供更具適應(yīng)性的落地方案,可根據(jù)用戶的不同場景的需求快速構(gòu)建部署符合需求的模型。


4. 檢索增強

受 DeepMind 去年發(fā)布的 RETRO 啟發(fā),我們在預(yù)訓練模型基礎(chǔ)上增加了檢索增強的技術(shù)。RETRO 的主要思路是,除了使用這一個大規(guī)模預(yù)訓練語言模型掌握語料知識之外,還可以把知識從這個模型中解耦,獨立成一個單獨的檢索模塊,把這些知識放到一個數(shù)據(jù)庫里面。這項技術(shù)使更小規(guī)模模型達到大規(guī)模模型同等效果成為可能。并且,這也使得外部知識組件可實時更新,單獨優(yōu)化,彌補了預(yù)訓練模型語料總是滯后于真實世界的問題。

我們從 825G 的 pile 語料中采樣了 43G 語料數(shù)據(jù)。經(jīng)過 tokenizer 后得到 730w 個樣本,再經(jīng)過 chunk split,并通過模型得到 1.8 億 維度為 384 的 embedding,對齊 build faiss index。

我們在訓練模型的過程中,通過已構(gòu)建完成的索引庫,來檢索與當前語料相關(guān)的語料,然后訓練模型的 chunk cross attention,我們是在總共 12 層模型的第 6、9、12 層中加入 chunk cross attention 結(jié)構(gòu)。在使用模型進行 inference 時,我們實時使用 faiss 進行相關(guān)語料檢索。


圖 11


從圖 11 的表格中可以看到,在 wikitext103 數(shù)據(jù)集上,使用了 retrieval 的 gpt-neo 的 ppl 更低,模型效果更好。當然由于加入了 retrieval 的模塊,在 inference 時的耗時會相對更久,不過檢索速度的優(yōu)化空間還是比較大的。后續(xù)我們也會在檢索增強方面,做更多的探索。

5. 多任務(wù)

目前多任務(wù)也是比較受業(yè)界人士關(guān)注的一個方向。Prompt 可以有效緩解預(yù)訓練和微調(diào)兩階段任務(wù)鴻溝。通過多樣化的 Prompt 設(shè)計和多任務(wù)訓練,可以極大地提高在 few-shot、zero-shot 這些場景下的模型表現(xiàn),從而提高模型的生產(chǎn)效率,快速適應(yīng)新場景的需求。


圖 12



我們基于孟子 Mengzi-T5-base 模型訓練了多任務(wù)模型,共收集并整理 72 個開源數(shù)據(jù)集(不包括子集),目前在挑選出的 27 個任務(wù)上,構(gòu)造了 301 個 Prompt,共計約 359w 個樣本,任務(wù)類型包含了情感分類、新聞分類、摘要等任務(wù),每個任務(wù)對應(yīng)了十個左右的 Prompt。

下圖展示了孟子 Mengzi 多任務(wù)模型的 zero-shot 能力。


圖 13



在實體抽取、語義相似度、金融關(guān)系抽取、廣告文案生成、醫(yī)學領(lǐng)域意圖分析、評論情感分類、評論對象抽取、新聞分類等任務(wù)上的效果,孟子 Mengzi 模型的 zero-shot 總體效果是不錯,后續(xù)我們也將在多任務(wù)方向深入探索和實踐。

開源孟子 Mengzi 模型

上面提到的部分成果,我們已經(jīng)開源了給了社區(qū),大家可以自由下載體驗,項目地址:https://github.com/Langboat/Mengzi?,模型地址:https://huggingface.co/Langboat。

孟子輕量化模型研發(fā)的主要目標是“構(gòu)建同等規(guī)模下性能更強的模型”。?目前已經(jīng)開源的 4 個模型分別是:BERT-style 的語言理解模型、T5-style 文本生成模型、金融分析模型和多模態(tài)預(yù)訓練模型。孟子 Mengzi 模型采用通用接口、功能齊全、覆蓋任務(wù)廣,不僅可用于常規(guī)的語言理解和生成任務(wù),也可應(yīng)用于金融垂直領(lǐng)域和多模態(tài)場景中。



圖 14


從上圖可以看到,相對同等規(guī)模的模型,孟子 Mengzi 的?4 個模型針對下游任務(wù)的表現(xiàn)更加優(yōu)秀。金融預(yù)訓練模型比已有的通用模型,在若干金融 NLP 任務(wù)上有更好的效果。

這里重點講一下孟子 Mengzi 多模態(tài)模型。其實用一套模型解決圖片、文字的任務(wù),本質(zhì)上也是工業(yè)實踐層面的“輕量化”,可以節(jié)省模型生產(chǎn)和部署成本。?具體來說,孟子 Mengzi 多模態(tài)模型可以處理如下幾類任務(wù):

  • 圖片生成描述任務(wù):輸入為圖片,輸出為對該圖片的文字描述;

  • 文到圖的生成任務(wù):輸入為自然語言,輸出該文字描述對應(yīng)的圖像;

  • 人臉文字描述到人臉圖片的生成任務(wù):輸入為人臉相關(guān)的文本描述,輸出為對應(yīng)描述的圖片。


圖 15


圖 15 有一些示例,左邊是模型根據(jù)圖片輸出對應(yīng)的圖片描述,比如輸入一張辦公室的圖片,模型輸出了“一張白色的桌子,上面放著一臺筆記本電腦和一臺電腦”,這個描述比較貼切,而且相對來說比較細致。左下角是我站在公司窗邊隨手拍一張照片,輸出文本是“一條繁忙的城市街道,人們走在人行道上,汽車和摩托車在街道上”,也是一個相對比較細致的描述。

我們也可以通過文本讓模型生成一張?zhí)摌?gòu)的圖片,比如圖 15 中,輸入“T 恤衫 M 號”,模型就會生成一張 T 恤衫的圖片,或者說,這張圖片是模型虛構(gòu)的一些圖片的融合。圖 15 最右側(cè),大家能看到“一個黃色頭發(fā)的亞洲女性”、“陽光帥氣眼鏡短發(fā)型男”這種文字到人臉的生成,也是比較貼切的。

輕量化預(yù)訓練模型落地場景

孟子 Mengzi 不僅僅是追求模型本身的輕量化,也希望大家在具體場景中能夠靈活高效地部署。這里也為大家介紹一下輕量化預(yù)訓練模型具體落地場景。

1.垂直領(lǐng)域機器翻譯

在國際權(quán)威公開的測試集 BLEU 上,瀾舟機器翻譯在金融領(lǐng)域、汽車領(lǐng)域、工程領(lǐng)域以及通用領(lǐng)域的分數(shù)比肩幾個國際知名的機器翻譯引擎。在孟子預(yù)訓練模型基礎(chǔ)上,針對垂直領(lǐng)域進行微調(diào),大幅提升模型迭代速度,并且充分利用垂直領(lǐng)域中的知識,用少量雙語數(shù)據(jù)達到更好的翻譯效果。


圖 16


2. 智能輔助寫作

智能輔助寫作是和文本生成強相關(guān)的場景,孟子輕量化預(yù)訓練模型針對多種寫作場景進行微調(diào),可以讓模型快速具備生成不同題材內(nèi)容的能力,并能夠通過 Prompt 方式控制生成內(nèi)容,模型生產(chǎn)的周期大大下降。

AI 輔助撰寫文案、文學報告等,相比于人工撰寫可以節(jié)約人力成本和時間。假設(shè)人工撰寫需要 10 ~100 元/篇,AI 輔助寫作會讓成本降低到 1.5~3 元/篇,耗時方面 AI 輔助文案生成一般可控制在 5 秒以內(nèi),大大縮減了人力和時間。


圖 17


值得一提的是,在大模型技術(shù)誕生之前 AI 輔助寫作是無法做到“可控”續(xù)寫的,瀾舟的智能輔助寫作引擎支持可控的文本生成,用戶自主選擇標簽,比如風格、場景設(shè)定、品類熱詞等,由模型自動生成一段符合要求的文案。在智能輔助寫作場景,我們已經(jīng)與數(shù)說故事子公司容徽建立了深度的合作,未來也會通過瀾舟認知智能平臺對公眾提供標準的 SaaS 服務(wù),屆時大家可以在線上體驗。

3. 智能文檔的處理

預(yù)訓練模型的一個優(yōu)勢在于對沒有見過的樣本有多個角度泛化的能力。?基于孟子輕量化預(yù)訓練模型,我們可以快速實現(xiàn)多種針對文檔內(nèi)容的分析、處理算法,在一些新的領(lǐng)域只需要少量的標注數(shù)據(jù)進行微調(diào)即可適應(yīng)新場景的需求。相較于規(guī)則引擎需要專業(yè)的工程師花大量的時間總結(jié)經(jīng)驗寫規(guī)則,通過孟子輕量化模型預(yù)訓練技術(shù),用戶可以有效降低時間和人力成本。

如果進一步與 OCR 等多模態(tài)處理能力結(jié)合,用戶可以將進一步提升文檔處理能力。下圖右側(cè)是一頁房屋買賣合同。相比原規(guī)則系統(tǒng),孟子模型在綜合得分 F1 score 上更優(yōu)。在實際應(yīng)用場景中,用戶體驗更好(注:F1 = 2(precision · recall) / (precision + recall) )。


圖 18



總結(jié)

本次演講總結(jié)了瀾舟輕量化技術(shù)實踐的 5 種路徑,包括語言學知識增強、訓練優(yōu)化技術(shù)、模型壓縮(蒸餾、剪枝和量化)、檢索增強、多任務(wù),并分享了瀾舟孟子輕量化預(yù)訓練模型在垂直領(lǐng)域機器翻譯、智能輔助寫作、智能文檔處理場景中的應(yīng)用。未來我們將繼續(xù)在輕量化技術(shù)各方向上持續(xù)探索,歡迎 NLP 領(lǐng)域相關(guān)學者、工程師提出建議,一起討論。

瀾舟 NLP 分享會(Langboat NLP Meetup)是由瀾舟科技發(fā)起的面向自然語言處理(NLP)領(lǐng)域從業(yè)者的系列活動,期望為關(guān)注 NLP 技術(shù)的學者、工程師打造一個開放的技術(shù)分享平臺,推動行業(yè)交流。

第一期分享會于 2022 年 7 月 16 日舉辦,主題為《認知智能時代,大模型輕量化技術(shù)與應(yīng)用》,邀請了來自微軟研究院、清華大學、同花順的專家一起探討前沿技術(shù)和實踐,累計近 1400 位觀眾收看了本期直播,錯過直播的小伙伴可以通過 B 站“瀾舟孟子開源社區(qū)”、微信視頻號“瀾舟科技”觀看回放視頻。


大模型輕量化實踐路徑 之 瀾舟孟子預(yù)訓練模型的評論 (共 條)

分享到微博請遵守國家法律
许昌市| 黑水县| 萍乡市| 榆中县| 海安县| 安徽省| 双辽市| 梅河口市| 林甸县| 偏关县| 乌拉特前旗| 尚义县| 陇川县| 连云港市| 兴宁市| 安达市| 县级市| 长岛县| 凤庆县| 大余县| 屯昌县| 二手房| 乌拉特前旗| 大石桥市| 安多县| 宁都县| 瑞安市| 洛隆县| 海宁市| 肇源县| 武川县| 建昌县| 巧家县| 密山市| 阿拉善右旗| 巨野县| 都兰县| 任丘市| 滨海县| 朝阳市| 班玛县|