大規(guī)模語(yǔ)言模型,微信版,來(lái)了!
并且甫一登場(chǎng),就沒(méi)藏著掖著:
論文、API 接口、在線試玩網(wǎng)站…… 一條龍全都齊備。
續(xù)寫(xiě)文本、閱讀理解等常規(guī)任務(wù)就不說(shuō)了,這個(gè)名叫 WeLM 的 AI,竟然直接讓我和李白跨時(shí)空聊起了杜甫:
我:現(xiàn)在有一首關(guān)于你的歌,其中一句歌詞是「要是能重來(lái),我要選李白」,請(qǐng)問(wèn)你自己有什么看法?
李白:我要選杜甫。
這還不算完,WeLM 甚至還治好了我不會(huì)聊天的毛病,分分鐘教會(huì)我如何高情商說(shuō)話。
這么一個(gè) AI,參數(shù)量不算大,目前處于百億水平。
但值得關(guān)注的是,實(shí)驗(yàn)結(jié)果顯示,它在 18 個(gè)中文語(yǔ)言任務(wù)里,效果堪比參數(shù)量是其 25 倍的模型。
是不是有點(diǎn)手癢想上手一試了?先奉上鏈接,咱們?cè)僮屑?xì)說(shuō)說(shuō),這波微信是怎么做到的。
體驗(yàn)鏈接:https://welm.weixin.qq.com/ docs / playground/
API 接口:https://welm.weixin.qq.com/ docs / api/
論文地址:https://arxiv.org/ abs / 2209.10372
「學(xué)富五車(chē)」的大模型
微信語(yǔ)言大模型 WeLM,全名 Well-Read Language Model,也就是「學(xué)富五車(chē)的語(yǔ)言模型」。
在翻譯任務(wù)上,WeLM 不光可以做到基本的,甚至三語(yǔ)夾雜也難不倒它。
在文本續(xù)寫(xiě)任務(wù)上,只需給出開(kāi)頭就能生成適應(yīng)不同風(fēng)格的文本。
這種多語(yǔ)言、多任務(wù)能力是怎么做到的?
其實(shí) WeLM 與著名的 GPT-3 是同類(lèi),都是自回歸解碼器結(jié)構(gòu),微信團(tuán)隊(duì)選擇這種結(jié)構(gòu)就是看中其在海量數(shù)據(jù)中掌握無(wú)窮范式的能力。
在具體實(shí)現(xiàn)方法上,WeLM 還有兩項(xiàng)特色。
一是采用 RoPE 相對(duì)位置編碼,與傳統(tǒng)的固定位置編碼相比能更好處理長(zhǎng)文本,比如理解整篇文章甚至整本書(shū)。
二是使用 62k 個(gè) token 的 SentencePiece 并保留其中的空格和 Tab,這樣更有利于下游任務(wù)。
使用這些方法,WeLM 總共設(shè)計(jì)了從 13 億到 100 億參數(shù)的三個(gè)版本,可按需調(diào)用。
其中 100 億參數(shù)的滿血版 WeLM 在 14 項(xiàng)中文任務(wù)中整體表現(xiàn)超過(guò)同大小的模型,甚至在零樣本任務(wù)上超過(guò)比它大 25 倍的模型。
這其中最大的秘訣就是精心準(zhǔn)備的高質(zhì)量訓(xùn)練數(shù)據(jù)上充分訓(xùn)練,也就是「學(xué)富五車(chē)」的含義所在。
高質(zhì)量訓(xùn)練數(shù)據(jù)包括從 Common Crawl 下載的近兩年中文網(wǎng)頁(yè)、大量書(shū)籍、新聞、論壇數(shù)據(jù)和學(xué)術(shù)論文。
收集到的數(shù)據(jù)總量超過(guò) 10TB,其中包含 750G 英文數(shù)據(jù),中文中夾雜的英日韓語(yǔ)為了語(yǔ)義連貫也全部保留。
不過(guò)這還不算完,需要經(jīng)過(guò)清洗、去重等一系列步驟才能算得上是高質(zhì)量數(shù)據(jù)。
首先是去除噪聲和臟數(shù)據(jù),結(jié)合使用規(guī)則和模型檢測(cè)后,超過(guò) 87% 的數(shù)據(jù)被過(guò)濾。
再利用 SimHash 算法去重,進(jìn)一步過(guò)濾掉 40% 的數(shù)據(jù)。
接下來(lái)要去除一切和測(cè)評(píng)相關(guān)的數(shù)據(jù),保證公平性,以 17-gram 為檢測(cè)重復(fù)粒度再次過(guò)濾了 0.15% 的數(shù)據(jù)。
一系列處理后留下的數(shù)據(jù)量為 262B tokens,最后再對(duì)這些數(shù)據(jù)進(jìn)行不同比重的采樣,使數(shù)據(jù)平滑分布在各個(gè)話題上。
對(duì)于預(yù)訓(xùn)練,團(tuán)隊(duì)認(rèn)為當(dāng)今多數(shù)大模型的訓(xùn)練都不夠充分,WeLM 100 億參數(shù)版的訓(xùn)練量基本與 1750 億的 GPT-3 相當(dāng)(300B tokens),在 128 張 A100 上訓(xùn)練用了大概 24 天時(shí)間。
為了保證訓(xùn)練效率,WeLM 在訓(xùn)練過(guò)程中還使用了完全可原地復(fù)現(xiàn)的形式,不管發(fā)生任何問(wèn)題都能從最近的 checkpoint 恢復(fù)。
自 1750 億參數(shù)的 GPT-3 之后,語(yǔ)言模型規(guī)模越來(lái)越大,到今年谷歌的 PaLM 已經(jīng)達(dá)到 5400 億,中文大模型同樣有這個(gè)趨勢(shì)。
可以看出微信團(tuán)隊(duì)選擇了另一條路線,以高質(zhì)量訓(xùn)練數(shù)據(jù)和高效訓(xùn)練做到「四兩撥千斤」的效果。
到這一步 WeLM 已經(jīng)有了不錯(cuò)的表現(xiàn),不過(guò)接下來(lái)這個(gè)步驟再次將其零樣本泛化能力提到新的高度。
研究團(tuán)隊(duì)針對(duì) 76 個(gè)數(shù)據(jù)集各人工撰寫(xiě) 10-20 個(gè) Prompt,將原任務(wù)中的文本關(guān)系的標(biāo)簽和輸入信息轉(zhuǎn)化成流暢通順的自然語(yǔ)言形式,更符合自回歸語(yǔ)言模型的訓(xùn)練形式。
使用這些 Prompt 對(duì)模型微調(diào)后,相當(dāng)于讓模型學(xué)會(huì)了面對(duì)多樣的 Prompt 該做什么。如果遇到相似 Prompt 形式的全新任務(wù),也可以有更穩(wěn)定的表現(xiàn)。
實(shí)驗(yàn)證明,在全量數(shù)據(jù)上微調(diào)后的模型在新的 NLP 任務(wù)上具備更優(yōu)秀的零樣本遷移能力,同時(shí)也使得微調(diào)變?yōu)橐豁?xiàng)一勞永逸的工作。
最后,研究團(tuán)隊(duì)還測(cè)試了 WeLM 的三個(gè)額外能力。
通過(guò)提供示例,WeLM 可以對(duì)自己的決策作出解釋,不過(guò)這種能力不太穩(wěn)定,還需要進(jìn)一步探索。
通過(guò)簡(jiǎn)單提問(wèn),WeLM 可以對(duì)結(jié)果進(jìn)行自我糾正和檢查能力,為后續(xù)提高性能提供了可能方向。
WeLM 還表現(xiàn)出一定的記憶能力,如果輸入內(nèi)容完美匹配前文,即使內(nèi)容很長(zhǎng)、出現(xiàn)頻次很低,模型依然可以準(zhǔn)確的生成剩下的部分。
最后再來(lái)總結(jié)一下,WeLM 精通中文的同時(shí)掌握英日韓等多種外語(yǔ)、可以通過(guò)少樣本或零樣本學(xué)習(xí)執(zhí)行全新任務(wù),同時(shí)以合理尺寸做到與 25 倍參數(shù)量的模型相媲美使用成本較低,總之就是奔著實(shí)用性和大規(guī)模落地去的。
同步開(kāi)放在線體驗(yàn)與 API,也是希望有想法的開(kāi)發(fā)者能方便的用起來(lái),讓 WeLM 大模型真正實(shí)用的工具。
WeLM 怎么用
具體來(lái)說(shuō),WeLM 線上 Demo 目前釋出的功能包括:對(duì)話-采訪、閱讀理解、翻譯、改寫(xiě)、續(xù)寫(xiě)以及自由任務(wù)。
在正式開(kāi)始跟 WeLM 玩耍之前,記得要先給模型扔一段簡(jiǎn)單的「范文」,也就是「prompt」。
在線網(wǎng)站會(huì)給出一些默認(rèn)的 prompt,你也可以自行修改設(shè)計(jì)。需要遵循的設(shè)計(jì)原則是:
第一,描述清楚;第二,例子具備代表性(多個(gè)例子更好)。
以文本分類(lèi)任務(wù)為例,prompt 應(yīng)該長(zhǎng)這樣:
其中的技巧包括,首先,把分類(lèi)任務(wù)用自然語(yǔ)言清晰地表達(dá)出來(lái),在上面這個(gè)示例中,「微博」即為輸入,「類(lèi)別」即為輸出。
其次,在第一句的指令型描述中,需要把可能的分類(lèi)結(jié)果都列出來(lái)。
最后,如果效果不佳,可以嘗試加入更多例子,讓 WeLM 更清楚你到底想要做怎樣的任務(wù)。
另外,正如前文所說(shuō),WeLM 擁有零樣本學(xué)習(xí)能力。
所以直接把它當(dāng)作問(wèn)答搜索引擎來(lái)用,也不是不行(手動(dòng)狗頭)。
如果你還想得到更多樣化的生成結(jié)果,token 數(shù)量、temperature 等參數(shù)均可調(diào)整。
更重要的一點(diǎn)是,WeLM 已開(kāi)放 API 接口 。也就是說(shuō),如果身為開(kāi)發(fā)者的你想在自己的 App 里用上這個(gè)大模型,填寫(xiě)調(diào)查問(wèn)卷注冊(cè)即可。
One More Thing
說(shuō)起來(lái),這樣的大模型要是真的落地應(yīng)用了,媽媽豈不是再也不用擔(dān)心我因?yàn)椴粫?huì)聊天而母胎 solo ?
比如說(shuō)……
你還有什么有趣的腦洞?大膽招呼起來(lái)~
本文來(lái)自微信公眾號(hào):量子位 (ID:QbitAI),作者:魚(yú)羊 夢(mèng)晨
廣告聲明:文內(nèi)含有的對(duì)外跳轉(zhuǎn)鏈接(包括不限于超鏈接、二維碼、口令等形式),用于傳遞更多信息,節(jié)省甄選時(shí)間,結(jié)果僅供參考,IT之家所有文章均包含本聲明。