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

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

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

大語言模型(LLM)預(yù)訓(xùn)練數(shù)據(jù)集調(diào)研分析

智能感知與物聯(lián)網(wǎng)技術(shù)研究所 ? 來源:未知 ? 2023-09-19 10:00 ? 次閱讀

大語言模型涉及數(shù)據(jù)的通常有有多個(gè)階段(Aligning language models to follow instructions [1]):pre-train、sft(supervised finetune)、rlhf(optional). State of GPT:大神 Andrej 揭秘 OpenAI 大模型原理和訓(xùn)練過程。

wKgZomUKEIKAbs69AAZcfztKYP4114.png

supervised finetune 一般在 base model 訓(xùn)練完成后,使用 instruction 以及其他高質(zhì)量的私域數(shù)據(jù)集來提升 LLM 在特定領(lǐng)域的性能;而 rlhf 是 openAI 用來讓model 對(duì)齊人類價(jià)值觀的一種強(qiáng)大技術(shù);pre-training dataset 是大模型在訓(xùn)練時(shí)真正喂給 model 的數(shù)據(jù),從很多 paper 能看到一些觀點(diǎn)比如:1. 提高預(yù)訓(xùn)練數(shù)據(jù)的質(zhì)量能讓大模型的性能表現(xiàn)更好;2. LLM 要想要更加強(qiáng)大,除了繼續(xù)加大模型參數(shù)量之外,給模型準(zhǔn)備更多成比例的更大量的高質(zhì)量數(shù)據(jù)也很關(guān)鍵。

經(jīng)過初步調(diào)研發(fā)現(xiàn)在英文世界的大模型,預(yù)訓(xùn)練數(shù)據(jù)都來自互聯(lián)網(wǎng)爬取的全網(wǎng)數(shù)據(jù),在英文世界有 Common crawl 這樣的組織來維護(hù)這類全網(wǎng)爬蟲數(shù)據(jù)集;也有 huggingface 這種非常好的社區(qū),組織起 NLP 領(lǐng)域的模型 datasets 分享。

而在中文世界,似乎沒有特別公開的大規(guī)模語料數(shù)據(jù)集,huggingface、github 上也沒有找到特別多組織的很有體系的中文語料數(shù)據(jù)集。另一方面,近期中國國內(nèi)公布的一些大模型,也主要以評(píng)估分結(jié)果作為輸出,很少有針對(duì) pre-training 數(shù)據(jù)展開詳細(xì)介紹的信息。

本文旨在總結(jié)一些開源的英文大模型的 pre-training dataset,通過分析 gpt3、llama、falcon 等開源 LLM 的 paper 上提到的 dataset 部分邏輯,以及深入調(diào)研一些比如 C4、The Pile、RefinedWeb 數(shù)據(jù)集,希望能總結(jié)一些規(guī)律,給期望了解 pre-train 數(shù)據(jù)集對(duì) LLM 最終效果有何影響的人能有更加直觀的認(rèn)知。

wKgZomUKEIOAAAbVAAAl6LOgh3c783.png

先來看看業(yè)界大模型的公開dataset資料

先分別簡單總結(jié)一下 GPT-3、llama、falcon 的 paper 里 dataset 部分的描述。然后我們重點(diǎn)展開 falcon 模型的 dataset refinedWeb,這是因?yàn)?falcon-40B 在 2023-07 這個(gè)時(shí)間點(diǎn)打榜到了 huggingface 的第一名,且 falcon 論文中著重提到了他們的 pre-train dataset:tiiuae/falcon-refinedweb。Datasets at Hugging Face [2],是公開的 paper 中講 pre-train 講的比較詳細(xì)的一篇,且 falcon 聲稱是數(shù)據(jù)讓他們的 model 效果這么好,那我們就展開了解一下。

wKgZomUKEIOANMK2AAN5iYK3EQg520.png

1.1 先看openai的GPT系列

GPT3: Language Models are Few-Shot Learners [3] (GPT3 paper)

wKgZomUKEIOAPnO4AAEvDyJ-Fgs094.png

GPT4: (GPT-4 [4]) 就沒有再公開 pre-training 的 dataset 了

GPT3 的 paper 是 2020 年 5 月發(fā)布的,大概是 3 年前。使用的 pre-training dataset 在目前看來也比較簡單,主要來源就是 web 數(shù)據(jù)、書、維基百科這 3 個(gè),不能算很豐富。尤其沒有包含很多垂直 industry 的數(shù)據(jù)。但在 3 年前用這些數(shù)據(jù)來驗(yàn)證模型的性能隨模型大小變化的趨勢(shì),以及做常識(shí)性評(píng)估邏輯是非常合適了。

很多人都說 openAI 的核心競爭力之一就在數(shù)據(jù),但很遺憾 GPT4 的 paper 中確實(shí)沒有再公開當(dāng)前的數(shù)據(jù)細(xì)節(jié)了。這么看 elon musk 噴 openAI 變成了closeAI 好像也有點(diǎn)道理。哈哈哈 。。

這里引用一堆廢紙:GPT 模型成功的背后用到了哪些以數(shù)據(jù)為中心人工智能(Data-centric AI)技術(shù)?[5] 文章總結(jié)的 openAI GPT 系列數(shù)據(jù)變化圖。

GPT3 的數(shù)據(jù)加工主要有 filter & deduplication:

wKgZomUKEIWAdyAYAAjOQfQH7sw937.png

filter:

用 WebText(Papers with Code - WebText Dataset [6]、openwebtext [7])作為高質(zhì)量數(shù)據(jù)集訓(xùn)練了一個(gè)分類器。使用分類器去過濾 Common crawl 的 documents。filter 時(shí)使用了一個(gè)公式,會(huì)使用 document_score。會(huì)有一個(gè) α 參數(shù),他能把大部分不符合要求的數(shù)據(jù)過濾掉同時(shí)保留一部分質(zhì)量不高的數(shù)據(jù)。文章里居然也說到這樣做能提高性能。

deduplication:

使用fuzzy deduplicate做去重。提到了使用spark的minHashLSH實(shí)現(xiàn)來做hash。

Question1:為什么 LLM 的 pre-training dataset 要這么關(guān)注 deduplication 呢?

Answer1:

“Deduplicating Training Data Makes Language Models Better”.Katherine Lee et al. ACL 2022.[8]

minHash:

是一個(gè)對(duì)比文檔相似度的技術(shù)。wikipedia 給出的 minhash 中 K 個(gè) hash function 的錯(cuò)誤率為:。這里關(guān)鍵注意 GPT3 使用了 10 hashes。錯(cuò)誤率還是相對(duì)比較高的。后面也關(guān)注下其他 LLM 的這個(gè)取值。wKgZomUKEIWAZEzJAAZF6lamggI785.png

▲ wikipedia 上 minHash 中 k 個(gè) hash 帶來的錯(cuò)誤率


數(shù)據(jù)量:

300Billion token.

1.2 facebook llama & llama2

###updated at 20230719###

facebook 發(fā)布了 llama2 版本:https://ai.meta.com/research/publications/llama-2-open-foundation-and-fine-tuned-chat-models/wKgZomUKEIaADeT8AATMbrlIcmA147.png

pre-trainning 數(shù)據(jù)的主亮點(diǎn):

  1. 使用了 2trillion tokens,相比 llama1 的 1.4T token 提高了 40%

  2. llama2 并沒有使用 facebook 的自己產(chǎn)品的數(shù)據(jù)

  3. 在做 filter 時(shí)干掉了包含 private personal information 多的數(shù)據(jù)。

其他亮點(diǎn):

提供了pre-train數(shù)據(jù)的一些insight分析,比如下圖,感興趣還是自己看paper吧。

wKgZomUKEIeALMtmAAlr9V9NIoc426.png

###end of updated at 20230719###

LLaMA: Open and Efficient Foundation Language Models

https://arxiv.org/abs/2302.13971

llama 整體的 pre-training dataset與GPT3 相比,多的部分有:


1. 使用了更豐富的數(shù)據(jù)源。比如 Github,ArXiv ,StackExchange 等??傮w占比有 10%。這些高質(zhì)量的數(shù)據(jù)源里有核心代碼、高質(zhì)量論文、高質(zhì)量問答數(shù)據(jù)。這些高質(zhì)量數(shù)據(jù)對(duì) LLM suppose 是有很大的幫助。

Question2:不同數(shù)據(jù)源的比例對(duì) LLM 的最終 performance 有影響么?

2.還是用了C4這個(gè)數(shù)據(jù)集。類似于WebText。

wKgZomUKEIeAEGcrAAERN8FiYr0739.png

再看看 filter、deduplication 的細(xì)節(jié)

wKgZomUKEIiAAHqpAA2SfFm0jhw627.png

llama 針對(duì) common crawl 的處理

  1. 在行級(jí)別做了 deduplication,llama paper 沒有講具體細(xì)節(jié),但在 ccnet paper 有講(CCNet: Extracting High Quality Monolingual Datasets from Web Crawl Data [9])后續(xù)專門展開講一下。

  2. 使用了 fastText 做文本語言分類,刪掉非英語。

  3. 使用了 ngram 做低質(zhì)量 filter。

  4. 訓(xùn)練了一個(gè) model,把網(wǎng)頁分成被 wikipedia 引用和普通網(wǎng)頁,這里主要也是區(qū)分質(zhì)量。

數(shù)據(jù)量:

1.4T token.

1.3 facebook CCNet pipeline分析

原始論文:

https://arxiv.org/abs/1911.00359

CCNet 是 facebook 開發(fā)的針對(duì) common crawl 的一系列數(shù)據(jù) ETL pipeline。

wKgZomUKEIiAb6LdAAY_x_pwEjU721.png

▲ ccNet pipeline

deduplication:

wKgZomUKEIiAMTG2AAEJTH4SFNk262.png▲ dedup-1

wKgZomUKEImAcsxOAAE2kQf0Vj4571.png

▲dedup-2

ccnet 的亮點(diǎn):

  1. 提出了針對(duì) raw common crawl data,要先做 dedup 在做語言分類鑒別,最終效果更好,尤其對(duì)小語種。

  2. 在對(duì) common crawl 做 filter 時(shí),使用了數(shù)據(jù)分級(jí),并沒有把 tail 數(shù)據(jù)全刪掉。他分了 head middle tail,分級(jí)是使用另外訓(xùn)練的 model 來做的,比如head:先使用了 wikipedia 的數(shù)據(jù)來訓(xùn)練出model,然后看每一個(gè) paragraph 的數(shù)據(jù)過這個(gè) model 算出來 perplexity score 高的就算 head。

  3. 有按照不同語種分類,包含了小語種數(shù)據(jù)。

wKgZomUKEImAcifdAAHu3IJ8YU4297.png

ccnet 的待提升:

  1. facebook 的 deduplication 并沒有使用 minhash,而是直接采用的 SHA-1 做傳統(tǒng)的 hash 去重。

  2. 沒有更多 line 級(jí)別的嚴(yán)格 filter。
wKgZomUKEImABdpuAAAuhh9-KLM672.png

來自迪拜的falcon以及其refinedweb數(shù)據(jù)集

本文下面重點(diǎn)調(diào)研下 falcon,falcon 是 dubai 的一家研究機(jī)構(gòu)訓(xùn)練的 LLM,他不但開源了自己的 7B,40B 版本的模型,還著重開源了他的 pre-training dataset [10]。本文詳細(xì)展開看一看。

論文原文:

https://arxiv.org/pdf/2306.01116.pdf

2.1 重要論點(diǎn):只用web數(shù)據(jù)做預(yù)訓(xùn)練,LLM效果也能很好

僅使用互聯(lián)網(wǎng)的 web 數(shù)據(jù),把filter 和 deduplicate做好,也能訓(xùn)練處性能比使用精加工的數(shù)據(jù)集訓(xùn)練出來的 state-of-the-art 模型。我覺得這個(gè)論點(diǎn)挺猛的,這給了很多 LLM 創(chuàng)業(yè)團(tuán)隊(duì)打了很大的雞血,即使起步晚一點(diǎn),沒有特別多的數(shù)據(jù)積累,似乎在大模型質(zhì)量上也不一定會(huì)落后。

wKgZomUKEIqAPLXbAAbQdMUMvHI680.png

美中不足的是,完整版本的 refinedWeb 數(shù)據(jù)集有 5Trillion tokens,但 falcon 在 huggingface 開源的版本只有 600billion tokens,是用在訓(xùn)練 1.3B/7B 參數(shù)的模型上的,而不是 40B 最大的模型。在開源的時(shí)候,也保留自己的一部分核心競爭力。重點(diǎn)看看他們的數(shù)據(jù)清洗邏輯,可能對(duì)從業(yè)者處理中文互聯(lián)網(wǎng)有幫助。

wKgZomUKEIqAb58lAAPiT8hn4Kw652.pngwKgZomUKEIqAaE63AASZ6R84L6k811.png▲ RefinedWeb 在 Web 數(shù)據(jù)的 filter、deduplication 上做了很重的工作。

NSFW :Not Safe/Suitable For Work

2.2 RefinedWeb詳細(xì)加工過程

加工總原則


1. Scale first|規(guī)模第一

這個(gè)數(shù)據(jù)集是為了加工 40B~200B 參數(shù)的 LLM 設(shè)計(jì)的,因此需要 trillion 級(jí)別的 tokens。因此重點(diǎn)放在從 commoncrawl 的原始數(shù)據(jù)加工上準(zhǔn)備數(shù)據(jù),而不是耗費(fèi)大量人力去處理垂直領(lǐng)域的數(shù)據(jù)集。

2. Strict deduplication|嚴(yán)格去重。

同時(shí)使用了 exact 和 fuzzy 去重,比其他論文報(bào)告的刪除率更高。

3. Neutral filtering|中性過濾

也使用了基于模型的語言鑒定,使用了很多啟發(fā)式的規(guī)則,后面會(huì)詳細(xì)介紹。這一切都是為了避免 pre-training 數(shù)據(jù)當(dāng)中包含 biased 數(shù)據(jù)。

總體流程

下圖為總體數(shù)據(jù)清晰 pipeline,包含了每一步刪除的文本數(shù)量,下面分步驟詳細(xì)展開講

wKgZomUKEIuAKfULAALWUiahkJI464.png

▲ falcon datapipeline 及每一步保留的數(shù)據(jù)量

wKgZomUKEIuANnebAAM5M7GCtnw243.png

▲falcon pipeline 里每一步操作背后的基本思想

2.3 URL filtering

在重度去重、過濾等任務(wù)之前,先對(duì)整體做了基于 URL 的過濾。主要目標(biāo)是過濾掉一些欺詐、成人網(wǎng)站。這里有兩個(gè)基本規(guī)則:1)一個(gè) 4.6M 個(gè)域名的黑名單 2)URL 分,基于內(nèi)容中單詞的嚴(yán)格打分。falcon 發(fā)現(xiàn)單單基于一些 common 的黑名單還是會(huì)犯假陽性錯(cuò)誤,比如過濾掉很多 popular 的博客平臺(tái)和好的的文化網(wǎng)站。然后很多基于單詞規(guī)則的規(guī)則數(shù)據(jù)集加工邏輯(比如 C4)會(huì)很容易把一些醫(yī)學(xué)、法律類的網(wǎng)頁給 block 了。

falcon 的 URL filtering 專注于找到可能對(duì)用戶有害的成人內(nèi)容相關(guān)的域名,或者包含了很多非結(jié)構(gòu)化內(nèi)容的域名,比如類似百度網(wǎng)盤這種存文件的。首先,在 4.6M 個(gè)黑名單中的域名,直接顯示的 ban 了;然后,構(gòu)建了一個(gè) URL 打分體系,基于使用匹配一系列精選單詞。這些精選單詞列表是手工維護(hù)的,也是使用 ToxicBERT 標(biāo)注出來的 toxicity 單詞。

url 打分部分提到的分級(jí)操作很精細(xì):

Strict 級(jí)別:子單詞匹配

URL 包含的內(nèi)容中,單詞里哪怕 substring 里匹配上了也會(huì)被直接過濾。比如很多欺詐網(wǎng)站會(huì)用很多特殊表情放在很多命中黑名單的單詞中間來 hack 整個(gè)單詞級(jí)別的過濾。

Hard級(jí)別:整個(gè)單詞匹配

整個(gè)單詞命中才會(huì)被過濾

Soft級(jí)別:單詞匹配

至少 2 個(gè)單詞 match 才會(huì)過濾,這里的規(guī)則我覺得是可以調(diào)整的。soft 級(jí)別包含了一些單詞是受懷疑的單詞,單個(gè)單詞并不一定有足夠的理由是有害的,但是多個(gè)懷疑的詞同時(shí)出現(xiàn)才會(huì)有害。這讓我們能保留一些醫(yī)學(xué)、法律方面的內(nèi)容不會(huì)被過濾掉。比如(e.g., 但一個(gè)單詞 dick)。

wKgZomUKEIyAP6VHAARaO6YK9uI343.png

2.4 Text extraction

只想抽取網(wǎng)頁的主要內(nèi)容,把 menu,header,footer,以及廣告都給去掉。其他論文發(fā)現(xiàn) trafilatura 是最好的非商用 library 去從做這件事。然后把 doc 內(nèi)容中的 url 都刪掉。

2.5 Language identification

使用了 CCNet 中使用到的 fastText 來做文本的語言分類,這個(gè)是 document 粒度的。他使用了字符 n-gram 模型,這個(gè)模型使用 Wikipedia 數(shù)據(jù)訓(xùn)練出來,支持 176 中語言。我們把主語言低于 0.65 分的文檔直接刪掉了。

falcon 只 focus 在英語上,經(jīng)過這一步處理后的數(shù)據(jù)叫 RW-RAW。

整個(gè) refinedweb 數(shù)據(jù)處理 pipeline 是可以應(yīng)用在其他語言上的,但從 common crawl 的數(shù)據(jù)分布看,中文數(shù)據(jù)是明顯不符合中文的人口分布的。中國應(yīng)該是世界第二大語言,但 common crawl 里中文的數(shù)據(jù)只排第 6.. 我覺得這就是說做中文的 LLM 以及相關(guān)的語料數(shù)據(jù)整理,做得好肯定還得靠我們中國人自己(吾輩加油)

wKgZomUKEIyAQAbmAAcntzVaIQY981.png

2.6 Filtering: document-wise and line-wise

Repetition removal.

因?yàn)榕老x的錯(cuò)誤或者低質(zhì)量的數(shù)據(jù)源存在,網(wǎng)頁包含重復(fù)內(nèi)容也很常見,這肯定對(duì) LLM 不好。我們肯定可以在 deduplication 階段處理,但在更早的文檔級(jí)別去做些處理是更輕量級(jí)的。我們刪掉了大量的存在 line、paragraph、ngram能識(shí)別出來的重復(fù)的文檔。

Document-wise filtering.

及其生成的垃圾文檔占比也不低。他們往往使用了不少特殊關(guān)鍵字、無聊文檔等,這些都不適合用來訓(xùn)練 LLM。

這里有個(gè)好玩的問題:幾年后當(dāng) LLM 產(chǎn)生的內(nèi)容充斥整個(gè)互聯(lián)網(wǎng)時(shí),又該怎么去過濾取舍 LLM 的 pre-trainning 數(shù)據(jù)呢?可以關(guān)注下這個(gè)話題:如果以后全網(wǎng)都是 AI 生成的質(zhì)量不高的內(nèi)容這些 AI 大模型再用這些數(shù)據(jù)訓(xùn)練那么這些大模型會(huì)不會(huì)越來越差?[11]

主要參考了 Rae et al.(2021)paper 里的一些質(zhì)量過濾啟發(fā)邏輯。他們主要 focus 在刪掉一些異常值比如:總體文本長度,符號(hào)和單詞比例,以及一些用于鑒定文檔是真正自然語言的一些標(biāo)準(zhǔn)。我們注意到這些過濾器應(yīng)該是在語言級(jí)別去使用的,這些過濾器從英語直接遷移到其他語言,會(huì)有過擬合的現(xiàn)象。

這里值得詳細(xì)展開去看看 Rae et al.(2021)paper

Line-wise filter.

盡管在使用 trafilatura 庫后已經(jīng)有了不錯(cuò)的效果提升,很多網(wǎng)頁文檔還是遺留下來了一些不太符合預(yù)期的 line,比如社交網(wǎng)絡(luò)的 likes 啊,點(diǎn)贊,反對(duì)按鈕之類的。鑒于此,我們開發(fā)了一個(gè) line 級(jí)別的矯正 filter,目標(biāo)就是去糾正這些不符合預(yù)期的 line。如果這些矯正器刪除了一個(gè) doc 里大于 5% 的內(nèi)容,我們就把整個(gè) doc 刪掉。

falcon 開發(fā)了一個(gè) line 級(jí)別的 filter 策略,手工檢查行級(jí)別數(shù)據(jù):

  • 如果主要由大寫字母組成(刪掉)

  • 如果只有數(shù)字組成(刪掉)

  • 如果是點(diǎn)贊、反對(duì)等這些東西(刪掉);

  • 如果一行只有一個(gè)單詞(刪掉);

  • 如果內(nèi)容很短(≤ 10 words),且匹配到一些 pattern(持續(xù)更新):

    • – 在這行的開始;

    • – 在這行的結(jié)束(e.g. 閱讀更多.....);

最終,如果被標(biāo)記 line 的單詞量超過了整個(gè)文檔的 5%,整個(gè) doc 都刪掉。我們是通過人工檢查數(shù)據(jù)發(fā)現(xiàn)的這些邏輯,在處理不同語言的預(yù)料時(shí),也需要有個(gè)性化的做更多特殊處理。

在經(jīng)歷了 URL filter、text extraction、language identification、以及 doc/line級(jí)別的 filter 之后,common crawl 整體上只剩下了 23% 的數(shù)據(jù)。

wKgZomUKEI2AC3ScAAI6kZoPpAc659.png

整個(gè) filter 過程后,common crawl 剩下 23% 的數(shù)據(jù)

2.7 Deduplication: fuzzy, exact, and across dumps

Fuzzy deduplication|模糊去重

falcon 做模糊去重也使用了 minhash,但 falcon 使用了 9000 個(gè) hash function。這相比與 GPT3 的 10 個(gè) hash function 會(huì)帶來巨大的精度提升,但也帶來了計(jì)算量的巨大消耗。文中說到如果使用不夠激進(jìn)的設(shè)置,比如類似 The Pile 數(shù)據(jù)集使用的 10 個(gè) hash function,會(huì)帶來很低的去重比率和更差的模型性能。falcon 使用 minhash 去在 web 語料中大范圍的找到近似的重復(fù)文檔。這項(xiàng)技術(shù)讓我們能鑒別出通過精確去重方法鑒別不出來的長度比較小的重復(fù)內(nèi)容(比如比 50 個(gè) token 還要小的內(nèi)容)。

開始先從對(duì)內(nèi)容進(jìn)行規(guī)范化處理做起:刪掉標(biāo)點(diǎn)符號(hào),把文本全部做小寫處理,NFD 正則化,口音都會(huì)被刪掉,空格都會(huì)被標(biāo)準(zhǔn)化處理。然后使用 GPT2 的 tokenizer 做了分詞,以及為每個(gè) doc 獲取了單獨(dú)的 n-grams。然后就用標(biāo)準(zhǔn)的 minhash 做重復(fù)度檢查。最終在所有的 bucket 當(dāng)中,如果 doc A and B 在一個(gè) bucket 相似,B and C 在另一個(gè) bucket 相似,則 A-B-C 就變成了一個(gè) cluster。最后在 cluster 當(dāng)中隨機(jī)挑一個(gè)保留下來。

Exact deduplication|精確去重

使用 substring 在句子級(jí)別,而不是文檔級(jí)別去,找到 token-by-token 的字符串匹配。如果連續(xù)超過 50 個(gè) token 是相同的,就做刪除處理。這樣抽取子字符串去做 match 后的刪除內(nèi)容做會(huì)改變文檔內(nèi)容,因此還實(shí)驗(yàn)了刪掉整個(gè) doc 或者針對(duì)這些內(nèi)容做 loss-masking 處理,而不是直接刪掉他們,但這些嘗試似乎沒有給 LLM 的訓(xùn)練帶來明顯的性能增長。

falcon 使用了 Lee et al.(2022)論文中的 EXACTSUBSTR 實(shí)現(xiàn)去做精確文本匹配。精確去重作用在 minhash 的模糊去重后的數(shù)據(jù)上,進(jìn)一步減少了近 40% 的數(shù)據(jù)量。EXACTSUBSTR 會(huì)找到跨 doc 的長子字符串,是通過字符粒度逐個(gè)檢查實(shí)現(xiàn)的。這些子字符串可能比較小沒有占到 doc 的足夠大的部分,以至于沒有在 minhash 的模糊去重階段被去掉,或者因?yàn)?minhash 的相似度檢查就是沒有找出來。

在精確去重中,文中還提到了發(fā)現(xiàn) duplication span 后的幾種策略:


? EXACTSUBSTR-CUT|把 span 直接刪了:比如不到 20 個(gè) token 的

? EXACTSUBSTR-MASK|給 span 加上 musk

? EXACTSUBSTR-DROPPARTIAL:如果重復(fù)部分超過 doc 的 20%,直接把 doc 刪了

? EXACTSUBSTR-DROPANY:只要發(fā)現(xiàn)有 duplicate 的 span,整個(gè) doc 都刪了

EXACTSUBSTR-CUT 把中間的 span 刪了可能會(huì)導(dǎo)致 doc 內(nèi)語義的不連貫;EXACTSUBSTRMASK 不會(huì)有前者的問題;EXACTSUBSTR-DROP 在文檔很大時(shí),可能還會(huì)保留 duplicate 的內(nèi)容,而 EXACTSUBSTR-DROPANY 就是更加激進(jìn)的做法了。

URL deduplication|URL去重

因?yàn)橛?jì)算量的限制,在整個(gè) RW-Filtered 數(shù)據(jù)集粒度直接做全局去重是不可能的。因此,把 CommonCrawl 分成 100 份,在每一份數(shù)據(jù)中做去重。大部分的重復(fù)都其實(shí)是能在這些分片內(nèi)的去重完成的,但是我們也發(fā)現(xiàn)了在分片之間會(huì)有顯著的一些 overlap,這是因?yàn)榕老x對(duì)部分 URL 訪問爬取了多次。因此,又保留了在分片內(nèi)發(fā)現(xiàn)過的做過去重操作的 URL 清單,在后續(xù)的每個(gè)分片上看到都直接做刪除處理。

wKgZomUKEI2ADHZRAAAtJ0fTuoM208.png

精加工數(shù)據(jù)集調(diào)研:WebText、The Pile 、C4 的調(diào)研分析

3.1 WebText

WebTextDataset Replication:https://openwebtext2.readthedocs.io/en/latest/replication/wKgZomUKEI2AOos6AAIKoV05lhQ251.png

▲ WebText數(shù)據(jù)集的

數(shù)據(jù)集特殊點(diǎn):

  1. 做 filter 時(shí)使用了 Reddit score

  2. 數(shù)據(jù)集和加工數(shù)據(jù)的代碼完全開源,目前 eleutherAI 也在實(shí)現(xiàn)openwebtext2

評(píng)價(jià):

感覺 webText 比較局限,reddit 相關(guān)并不能 cover 很多內(nèi)容。目前(202307)&未來并不適合作為大模型的 common crawl 數(shù)據(jù)基礎(chǔ)。

3.2 The Pile

原論文:

https://arxiv.org/abs/2101.00027

The Pile 是 EleutherAI(EleutherAI)這個(gè)組織精加工的專門為 NLP 大模型訓(xùn)練用的數(shù)據(jù)集。

EleutherAI is a non-profit AI research lab that focuses on interpretability and alignment of large models.

wKgZomUKEI2AAM54AAQ6alDtvpw043.png

在處理 common crawl 的互聯(lián)網(wǎng)數(shù)據(jù)時(shí),有提到使用 well-designed extraciton 和 filter。

More Effective Boilerplate Removal-the GoldMiner Algorithm [13] 用到了這篇論文的方法。

wKgZomUKEI6AH4ZnAAN6sFpVPI8064.png

評(píng)價(jià):

  1. 數(shù)據(jù)種類很豐富,涵蓋了非常多垂類的高質(zhì)量數(shù)據(jù)。

  2. 但總體數(shù)據(jù) token 量比較小,尤其處理 common crawl 部分。

3.3 C4

C4 是 google 針對(duì) common crawl 數(shù)據(jù)進(jìn)行精加工數(shù)據(jù)集:

https://www.tensorflow.org/datasets/catalog/c4

數(shù)據(jù)集特殊點(diǎn):

1. 最初只能使用 google cloud 的 beam 代碼做加工。

2. 而后有一些開源實(shí)現(xiàn)。比如:c4 · Datasets at Hugging Face [14],C4 Dataset Script[15]

評(píng)價(jià):

個(gè)人沒有詳細(xì)看開源版本的 C4 加工邏輯,github repo 的文檔里加工邏輯寫的也不夠清晰。使用時(shí)相對(duì)比較黑盒子。

wKgZomUKEI6AKHkbAAAr2pbNr48947.png

個(gè)人思考

falcon 的 refinedWeb paper [16] 是一篇把基于爬蟲爬取數(shù)據(jù)的處理講的這么詳細(xì)的 paper 之一,后續(xù)我會(huì)再精讀 The Pile,C4 等其他數(shù)據(jù)集,總結(jié)出更多的爬蟲爬取的網(wǎng)頁數(shù)據(jù)的 pre-training data 處理方法。

在對(duì) LLM dataset 調(diào)研的過程中,我發(fā)現(xiàn)中文的 NLP 大型語料真的很少,除開沒有 common crawl 這樣大型公立的互聯(lián)網(wǎng)數(shù)據(jù)之外,也缺乏人工整理的高精 curated dataset,在 github 和 huggingface 都很少看到。

github 里搜索 chinese corpus 最高的兩個(gè) repo,也都很久沒有更新了。https://github.com/brightmart/nlp_chinese_corpushttps://github.com/SophonPlus/ChineseNlpCorpus

不過隨著中國搞 LLM 的玩家越來越多,以及整個(gè)基于 LLM 的垂類應(yīng)用越來越多,更多的人也在基于 base model 做 finetune,各個(gè)公司其實(shí)都會(huì)越來越重視整理自己的垂直語料庫,希望大家未來長期都能慢慢把一些沒有那么高壁壘的數(shù)據(jù)貢獻(xiàn)在 github、huggingface,或者參考 falcon 的方式,貢獻(xiàn)自己語料庫當(dāng)中的一部分。

我也建議搞中文的 LLM 廠家不要只分享打榜結(jié)果,如果打榜效果好的話可以適當(dāng)放出一些 insight,比如用了什么數(shù)據(jù),怎么處理數(shù)據(jù)的,尤其是高??蒲斜尘暗难芯繖C(jī)構(gòu)可以更多的做公立性質(zhì)的貢獻(xiàn)。

wKgZomUKEI6ARvhkAAAC0jQz1zo163.jpg

參考文獻(xiàn)

wKgZomUKEI6ARvhkAAAC0jQz1zo163.jpg ?

[1] https://openai.com/research/instruction-following

[2] https://huggingface.co/datasets/tiiuae/falcon-refinedweb

[3] https://arxiv.org/abs/2005.14165

[4] https://openai.com/research/gpt-4

[5] https://zhuanlan.zhihu.com/p/617057227

[6] https://paperswithcode.com/dataset/webtext

[7] https://huggingface.co/datasets/openwebtext

[8] https://arxiv.org/abs/2107.06499

[9] https://arxiv.org/abs/1911.00359

[10] https://huggingface.co/datasets/tiiuae/falcon-refinedweb

[11] https://www.zhihu.com/question/608053796

[12] https://github.com/EleutherAI/openwebtext2

[13] https://www.scielo.org.mx/scielo.php?script=sci_arttext&pid=S1870-90442013000200011

[14] https://huggingface.co/datasets/c4

[15] https://github.com/shjwudp/c4-dataset-script

[16] https://arxiv.org/pdf/2306.01116.pdf


原文標(biāo)題:大語言模型(LLM)預(yù)訓(xùn)練數(shù)據(jù)集調(diào)研分析

文章出處:【微信公眾號(hào):智能感知與物聯(lián)網(wǎng)技術(shù)研究所】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。


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

原文標(biāo)題:大語言模型(LLM)預(yù)訓(xùn)練數(shù)據(jù)集調(diào)研分析

文章出處:【微信號(hào):tyutcsplab,微信公眾號(hào):智能感知與物聯(lián)網(wǎng)技術(shù)研究所】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    什么是大模型、大模型是怎么訓(xùn)練出來的及大模型作用

    ,基礎(chǔ)模型。 ? 大模型是一個(gè)簡稱,完整的叫法,應(yīng)該是“人工智能預(yù)訓(xùn)練模型”。預(yù)
    的頭像 發(fā)表于 11-25 09:29 ?1439次閱讀
    什么是大<b class='flag-5'>模型</b>、大<b class='flag-5'>模型</b>是怎么<b class='flag-5'>訓(xùn)練</b>出來的及大<b class='flag-5'>模型</b>作用

    如何訓(xùn)練自己的LLM模型

    訓(xùn)練自己的大型語言模型LLM)是一個(gè)復(fù)雜且資源密集的過程,涉及到大量的數(shù)據(jù)、計(jì)算資源和專業(yè)知識(shí)。以下是
    的頭像 發(fā)表于 11-08 09:30 ?549次閱讀

    LLM和傳統(tǒng)機(jī)器學(xué)習(xí)的區(qū)別

    訓(xùn)練方法 LLM預(yù)訓(xùn)練和微調(diào): LLM通常采用預(yù)訓(xùn)練
    的頭像 發(fā)表于 11-08 09:25 ?459次閱讀

    AI大模型訓(xùn)練數(shù)據(jù)來源分析

    AI大模型訓(xùn)練數(shù)據(jù)來源廣泛且多元化,這些數(shù)據(jù)源對(duì)于構(gòu)建和優(yōu)化AI模型至關(guān)重要。以下是對(duì)AI大模型
    的頭像 發(fā)表于 10-23 15:32 ?632次閱讀

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

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

    LLM預(yù)訓(xùn)練的基本概念、基本原理和主要優(yōu)勢(shì)

    在人工智能和自然語言處理(NLP)領(lǐng)域,大型語言模型(Large Language Model,簡稱LLM)的興起極大地推動(dòng)了技術(shù)的進(jìn)步和應(yīng)用的發(fā)展。
    的頭像 發(fā)表于 07-10 11:03 ?1077次閱讀

    llm模型訓(xùn)練一般用什么系統(tǒng)

    LLM(Large Language Model,大型語言模型)是近年來在自然語言處理領(lǐng)域取得顯著成果的一種深度學(xué)習(xí)模型。它通常需要大量的計(jì)
    的頭像 發(fā)表于 07-09 10:02 ?416次閱讀

    llm模型有哪些格式

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

    llm模型和chatGPT的區(qū)別

    基于Transformer架構(gòu)的預(yù)訓(xùn)練語言模型,它可以生成連貫、自然的文本。ChatGPT使用GPT模型作為基礎(chǔ),通過微調(diào)和
    的頭像 發(fā)表于 07-09 09:55 ?1077次閱讀

    預(yù)訓(xùn)練模型的基本原理和應(yīng)用

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

    語言模型(LLM)快速理解

    自2022年,ChatGPT發(fā)布之后,大語言模型(LargeLanguageModel),簡稱LLM掀起了一波狂潮。作為學(xué)習(xí)理解LLM的開始,先來整體理解一下大
    的頭像 發(fā)表于 06-04 08:27 ?984次閱讀
    大<b class='flag-5'>語言</b><b class='flag-5'>模型</b>(<b class='flag-5'>LLM</b>)快速理解

    了解大型語言模型 (LLM) 領(lǐng)域中的25個(gè)關(guān)鍵術(shù)語

    1.LLM(大語言模型)大型語言模型(LLMs)是先進(jìn)的人工智能系統(tǒng),經(jīng)過大量文本數(shù)據(jù)
    的頭像 發(fā)表于 05-10 08:27 ?1263次閱讀
    了解大型<b class='flag-5'>語言</b><b class='flag-5'>模型</b> (<b class='flag-5'>LLM</b>) 領(lǐng)域中的25個(gè)關(guān)鍵術(shù)語

    【大語言模型:原理與工程實(shí)踐】大語言模型預(yù)訓(xùn)練

    數(shù)據(jù)格式的轉(zhuǎn)換、數(shù)據(jù)字段的匹配和整合等。通過數(shù)據(jù)級(jí)凈化,可以進(jìn)一步提高數(shù)據(jù)的質(zhì)量和可用性,為后續(xù)的數(shù)據(jù)分析和建模提供更有價(jià)值的
    發(fā)表于 05-07 17:10

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

    處理各種自然語言任務(wù)時(shí)都表現(xiàn)出了驚人的能力。這促使一個(gè)新的研究方向誕生——基于Transformer 的預(yù)訓(xùn)練語言模型。這類
    發(fā)表于 05-05 12:17

    2023年大語言模型(LLM)全面調(diào)研:原理、進(jìn)展、領(lǐng)跑者、挑戰(zhàn)、趨勢(shì)

    大型語言模型(LLM)是基于人工智能的先進(jìn)模型,經(jīng)過訓(xùn)練,它可以密切反映人類自然交流的方式處理和生成人類
    的頭像 發(fā)表于 01-03 16:05 ?1177次閱讀
    2023年大<b class='flag-5'>語言</b><b class='flag-5'>模型</b>(<b class='flag-5'>LLM</b>)全面<b class='flag-5'>調(diào)研</b>:原理、進(jìn)展、領(lǐng)跑者、挑戰(zhàn)、趨勢(shì)