一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

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

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

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

用PaddleNLP為GPT-2模型制作FineWeb二進(jìn)制預(yù)訓(xùn)練數(shù)據(jù)集

jf_23871869 ? 來源:jf_23871869 ? 作者:jf_23871869 ? 2025-03-21 18:24 ? 次閱讀

作者:算力魔方創(chuàng)始人/英特爾創(chuàng)新大使劉力

《用PaddleNLP在4060單卡上實(shí)踐大模型預(yù)訓(xùn)練技術(shù)》發(fā)布后收到讀者熱烈反響,很多讀者要求進(jìn)一步講解更多的技術(shù)細(xì)節(jié)。本文主要針對(duì)大語言模型的預(yù)訓(xùn)練流程,使用PaddleNLP將FineWeb數(shù)據(jù)集中文本形式的數(shù)據(jù),經(jīng)過分詞化(Tokenize),轉(zhuǎn)換為大語言模型能直接使用的二進(jìn)制數(shù)據(jù),以便提升訓(xùn)練效果。

ChatGPT發(fā)布后,當(dāng)代大語言模型(LLM)的訓(xùn)練流程基本遵循OpenAI提出的”預(yù)訓(xùn)練+后訓(xùn)練”的訓(xùn)練范式。

預(yù)訓(xùn)練:將海量知識(shí)通過無監(jiān)督學(xué)習(xí)的方式壓縮到大語言模型的權(quán)重中,使其具備基本的通用能力,能預(yù)測(cè)下一個(gè)分詞。預(yù)訓(xùn)練得到的模型叫基礎(chǔ)大模型。

后訓(xùn)練:通過監(jiān)督微調(diào)(SFT)和強(qiáng)化學(xué)習(xí)(RL)等方式,讓大模型按人類專家的方式輸出知識(shí),使其具備專業(yè)能力。

一,PaddleNLP簡(jiǎn)介


PaddleNLP是一款基于飛槳深度學(xué)習(xí)框架的大語言模型(LLM)開發(fā)套件,支持在多種硬件上進(jìn)行高效的大模型訓(xùn)練、無損壓縮以及高性能推理。PaddleNLP 具備簡(jiǎn)單易用和性能極致的特點(diǎn),致力于助力開發(fā)者實(shí)現(xiàn)高效的大模型產(chǎn)業(yè)級(jí)應(yīng)用。

wKgZPGfcAnGAZJZbAAB0V6tIGJQ893.png

Github: https://github.com/PaddlePaddle/PaddleNLP


使用PaddleNLP實(shí)現(xiàn)訓(xùn)練文本分詞化僅需三行代碼,如下所示:

# 導(dǎo)入PaddleNLP庫中的GPTTokenizer類
from paddlenlp.transformers import GPTTokenizer
# 使用預(yù)訓(xùn)練的"gpt2-en"模型初始化GPTTokenizer,并設(shè)置bos_token為空字符串
tokenizer = GPTTokenizer.from_pretrained("gpt2-en", bos_token="")
# 打印使用tokenizer對(duì)字符串"Hello, world!"進(jìn)行編碼后的結(jié)果
print(tokenizer.encode("Hello, world!"))

進(jìn)入:

https://tiktokenizer.vercel.app/?model=gpt2


可以對(duì)比PaddleNLP的GPTTokenzier對(duì)“Hello,World!”的分詞結(jié)果。

二,F(xiàn)ineWeb簡(jiǎn)介


FineWeb是由Hugging Face團(tuán)隊(duì)于2024年推出的超大規(guī)模語言模型預(yù)訓(xùn)練數(shù)據(jù)集。作為目前最大的開源預(yù)訓(xùn)練數(shù)據(jù)集之一,F(xiàn)ineWeb數(shù)據(jù)集包含來自 CommonCrawl 的超過 15T 經(jīng)過清理和重復(fù)數(shù)據(jù)刪除的英文網(wǎng)絡(luò)數(shù)據(jù)。其高質(zhì)量的數(shù)據(jù),有助于大語言模型穩(wěn)定平穩(wěn)的完成預(yù)訓(xùn)練,而不會(huì)發(fā)生由重復(fù)低質(zhì)數(shù)據(jù)引發(fā)的Loss Spike。

Link: https://huggingface.co/datasets/HuggingFaceFW/fineweb

本文使用FineWeb數(shù)據(jù)集的sample-10BT子集作為GPT-2的預(yù)訓(xùn)練數(shù)據(jù)集。

三,開發(fā)環(huán)境準(zhǔn)備


本文的開發(fā)環(huán)境依賴PaddlePaddle、PaddleNLP、datasets和tqdm。

首先,請(qǐng)安裝PaddlePaddle框架:

pip install paddlepaddle


然后,安裝其它依賴項(xiàng):

pip install paddlenlp datasets tqdm


四,代碼實(shí)現(xiàn)


用PaddleNLP將FineWeb數(shù)據(jù)集進(jìn)行分詞化處理,然后轉(zhuǎn)換為大語言模型能直接使用的二進(jìn)制數(shù)據(jù)的關(guān)鍵步驟有:

1.從HuggingFace Hub加載fineweb數(shù)據(jù)集的10B樣本子集;

2.使用train_test_split按比例分割訓(xùn)練集和驗(yàn)證集;

3.對(duì)每個(gè)文本進(jìn)行編碼,添加結(jié)束符eot_token,返回ids和len;

4.為訓(xùn)練集和驗(yàn)證集分別創(chuàng)建.bin文件,使用np.memmap高效寫入。

關(guān)鍵代碼如下所示:

wKgZPGfcAsWAHLv_AACNkvpFFuo041.png

完整范例代碼請(qǐng)參見:

https://aistudio.baidu.com/projectdetail/8798975


運(yùn)行成功后,可以得到如下兩個(gè)文件:

wKgZPGfcAtCALsZgAAA-5MiqMvw838.png

五,總結(jié)


PaddleNLP好學(xué)易用,借助PaddleNLP的GPTTokenizer很容易實(shí)現(xiàn)FineWeb數(shù)據(jù)集的分詞化,并轉(zhuǎn)換為方便大模型預(yù)訓(xùn)練的二進(jìn)制數(shù)據(jù)!

如果你有更好的文章,歡迎投稿!

稿件接收郵箱:nami.liu@pasuntech.com

更多精彩內(nèi)容請(qǐng)關(guān)注“算力魔方?”!

審核編輯 黃宇

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

    關(guān)注

    2

    文章

    803

    瀏覽量

    42057
  • 數(shù)據(jù)集
    +關(guān)注

    關(guān)注

    4

    文章

    1221

    瀏覽量

    25197
  • GPT
    GPT
    +關(guān)注

    關(guān)注

    0

    文章

    368

    瀏覽量

    15864
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    PaddleNLP在4060單卡上實(shí)踐大模型預(yù)訓(xùn)練技術(shù)

    手把手教您如何在單張消費(fèi)級(jí)顯卡上,利用PaddleNLP實(shí)踐OpenAI的GPT-2模型預(yù)訓(xùn)練GPT
    的頭像 發(fā)表于 02-19 16:10 ?719次閱讀
    <b class='flag-5'>用</b><b class='flag-5'>PaddleNLP</b>在4060單卡上實(shí)踐大<b class='flag-5'>模型</b><b class='flag-5'>預(yù)</b><b class='flag-5'>訓(xùn)練</b>技術(shù)

    偏移二進(jìn)制二進(jìn)制補(bǔ)碼如何和實(shí)際數(shù)據(jù)對(duì)應(yīng),如何轉(zhuǎn)換?

    偏移二進(jìn)制二進(jìn)制補(bǔ)碼如何和實(shí)際數(shù)據(jù)對(duì)應(yīng),如何轉(zhuǎn)換,請(qǐng)哪位高手解惑
    發(fā)表于 01-16 06:01

    TLC2543的輸出結(jié)果應(yīng)為帶符號(hào)二進(jìn)制格式的數(shù)據(jù),現(xiàn)在輸出的結(jié)果不帶符號(hào)的二進(jìn)制數(shù),這是因?yàn)槭裁丛颍?/a>

    DSP采用模擬SPI總線的方式和TLC2543進(jìn)行通信,采用AIN0,AIN1,AIN2,TLC2543的輸出數(shù)據(jù)格式16位,高位在前,帶符號(hào)二進(jìn)制數(shù)。
    發(fā)表于 12-27 07:46

    hex格式和二進(jìn)制的區(qū)別

    HEX格式和二進(jìn)制在多個(gè)方面存在顯著的區(qū)別。以下是對(duì)這兩者的對(duì)比: 一、定義與表示方式 HEX格式 : HEX,全稱為Intel HEX,是一種用于存儲(chǔ)和傳輸數(shù)據(jù)到嵌入式系統(tǒng)(如單片機(jī))的文件格式
    的頭像 發(fā)表于 11-18 15:24 ?1368次閱讀

    在線二進(jìn)制編碼器:數(shù)據(jù)轉(zhuǎn)換的快捷通道

    在數(shù)字時(shí)代,數(shù)據(jù)的快速轉(zhuǎn)換與處理至關(guān)重要。二進(jìn)制編碼,作為計(jì)算機(jī)內(nèi)部數(shù)據(jù)表示的基礎(chǔ),將信息轉(zhuǎn)化為0和1的序列,數(shù)字世界構(gòu)建了溝通的橋梁。然而,對(duì)于非專業(yè)用戶來說,手動(dòng)進(jìn)行
    的頭像 發(fā)表于 11-15 09:01 ?1478次閱讀

    base64字符串轉(zhuǎn)換為二進(jìn)制文件

    一些編程知識(shí)。以下是將Base64字符串轉(zhuǎn)換為二進(jìn)制文件的一般步驟,以及一個(gè)簡(jiǎn)單的Python示例代碼。 步驟: 獲取Base64字符串 :首先,你需要有一個(gè)Base64編碼的字符串。 解碼Base64字符串 :使用編程語言提供的庫函數(shù)將Base64字符串解碼
    的頭像 發(fā)表于 11-10 10:55 ?2530次閱讀

    二進(jìn)制編碼器在自動(dòng)化領(lǐng)域的作用

    二進(jìn)制編碼器是一種將二進(jìn)制信號(hào)轉(zhuǎn)換為數(shù)字信號(hào)的電子設(shè)備,廣泛應(yīng)用于自動(dòng)化領(lǐng)域。 一、二進(jìn)制編碼器的工作原理 二進(jìn)制編碼器是一種將二進(jìn)制信號(hào)轉(zhuǎn)
    的頭像 發(fā)表于 11-06 09:53 ?752次閱讀

    二進(jìn)制編碼器的種類及特點(diǎn)

    處理多個(gè)輸入信號(hào),并根據(jù)輸入信號(hào)的優(yōu)先級(jí)輸出一個(gè)二進(jìn)制編碼。如果多個(gè)輸入同時(shí)高電平,它將輸出最高優(yōu)先級(jí)的輸入對(duì)應(yīng)的編碼。 應(yīng)用 :常用于鍵盤掃描、中斷優(yōu)先級(jí)處理等場(chǎng)景。 二進(jìn)制到十進(jìn)制
    的頭像 發(fā)表于 11-06 09:47 ?1083次閱讀

    二進(jìn)制編碼器應(yīng)用場(chǎng)景 二進(jìn)制編碼器與模擬編碼器比較

    編碼器是將信息從一種形式或格式轉(zhuǎn)換為另一種形式的設(shè)備。在數(shù)字和模擬系統(tǒng)中,編碼器扮演著至關(guān)重要的角色。二進(jìn)制編碼器和模擬編碼器是兩種常見的編碼器類型,它們?cè)诓煌膽?yīng)用場(chǎng)景中有著各自的優(yōu)勢(shì)和局
    的頭像 發(fā)表于 11-06 09:45 ?984次閱讀

    二進(jìn)制編碼器工作原理 如何選擇二進(jìn)制編碼器

    編碼器通常有多個(gè)輸入端(通常2的n次方個(gè),其中n是編碼器的位數(shù)),和一個(gè)或多個(gè)輸出端。每個(gè)輸入端對(duì)應(yīng)一個(gè)二進(jìn)制位,而輸出端則表示輸入的二進(jìn)制值。 優(yōu)先編碼器 : 優(yōu)先編碼器是一種特殊
    的頭像 發(fā)表于 11-06 09:44 ?1914次閱讀

    二進(jìn)制處理中的一些技巧

    二進(jìn)制和十進(jìn)制的處理中,有時(shí)候一些小技巧是很有用的。 1、把十進(jìn)制數(shù)轉(zhuǎn)換成二進(jìn)制數(shù) (1)在MATLAB中有一個(gè)函數(shù)dec2b
    的頭像 發(fā)表于 07-05 11:51 ?806次閱讀

    進(jìn)制和4位二進(jìn)制計(jì)數(shù)器數(shù)據(jù)

    電子發(fā)燒友網(wǎng)站提供《十進(jìn)制和4位二進(jìn)制計(jì)數(shù)器數(shù)據(jù)表.pdf》資料免費(fèi)下載
    發(fā)表于 05-31 09:32 ?1次下載
    十<b class='flag-5'>進(jìn)制</b>和4位<b class='flag-5'>二進(jìn)制</b>計(jì)數(shù)器<b class='flag-5'>數(shù)據(jù)</b>表

    二進(jìn)制串行計(jì)數(shù)器工作原理是什么?

    在數(shù)字電路設(shè)計(jì)中,計(jì)數(shù)器是一種非常關(guān)鍵的組件,用于測(cè)量時(shí)間、計(jì)數(shù)事件或跟蹤狀態(tài)變化等。其中,二進(jìn)制串行計(jì)數(shù)器作為一種常用的計(jì)數(shù)器類型,在多種應(yīng)用場(chǎng)景中都發(fā)揮著重要作用。本文將對(duì)二進(jìn)制串行計(jì)數(shù)器
    的頭像 發(fā)表于 05-28 15:52 ?1237次閱讀

    雙4位十進(jìn)制二進(jìn)制計(jì)數(shù)器數(shù)據(jù)

    電子發(fā)燒友網(wǎng)站提供《雙4位十進(jìn)制二進(jìn)制計(jì)數(shù)器數(shù)據(jù)表.pdf》資料免費(fèi)下載
    發(fā)表于 05-13 11:12 ?0次下載
    雙4位十<b class='flag-5'>進(jìn)制</b>和<b class='flag-5'>二進(jìn)制</b>計(jì)數(shù)器<b class='flag-5'>數(shù)據(jù)</b>表

    同步4位十進(jìn)制二進(jìn)制計(jì)數(shù)器數(shù)據(jù)

    電子發(fā)燒友網(wǎng)站提供《同步4位十進(jìn)制二進(jìn)制計(jì)數(shù)器數(shù)據(jù)表.pdf》資料免費(fèi)下載
    發(fā)表于 05-09 11:29 ?3次下載
    同步4位十<b class='flag-5'>進(jìn)制</b>和<b class='flag-5'>二進(jìn)制</b>計(jì)數(shù)器<b class='flag-5'>數(shù)據(jù)</b>表