chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

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

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

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

只需添加幾行代碼,就能實(shí)現(xiàn)大模型的低成本訓(xùn)練和微調(diào)

iotmag ? 來(lái)源:物聯(lián)網(wǎng)技術(shù) ? 作者:物聯(lián)網(wǎng)技術(shù) ? 2022-07-14 14:15 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

不得不說(shuō),為了讓更多人能用上大模型,技術(shù)圈真是各出奇招!

模型不夠開(kāi)放?有人自己上手搞免費(fèi)開(kāi)源版。

比如最近風(fēng)靡全網(wǎng)的DALL·E Mini,Meta開(kāi)放的OPT-175B(Open Pretrained Transformer)。

都是通過(guò)復(fù)刻的方式,讓原本不夠open的大模型,變成人人可用

2bd08cd0-033c-11ed-ba43-dac502259ad0.png

還有人覺(jué)得模型太大,個(gè)人玩家很難承受起天價(jià)成本。

所以提出異構(gòu)內(nèi)存、并行計(jì)算等方法,讓大模型訓(xùn)練加速又降本。

比如開(kāi)源項(xiàng)目Colossal-AI,前不久剛實(shí)現(xiàn)了讓一塊英偉達(dá)3090就能單挑180億參數(shù)大模型。

2be23674-033c-11ed-ba43-dac502259ad0.png

而在這兩天,他們又來(lái)了一波上新:

無(wú)縫支持Hugging Face社區(qū)模型,只需添加幾行代碼,就能實(shí)現(xiàn)大模型的低成本訓(xùn)練和微調(diào)。

2bf8b2aa-033c-11ed-ba43-dac502259ad0.png

要知道,Hugging Face作為當(dāng)下最流行的AI庫(kù)之一,提供了超過(guò)5萬(wàn)個(gè)AI模型的實(shí)現(xiàn),是許多AI玩家訓(xùn)練大模型的首選。

而Colossal-AI這波操作,是讓公開(kāi)模型的訓(xùn)練微調(diào)變得更加切實(shí)可行。

并且在訓(xùn)練效果上也有提升。

單張GPU上,相比于微軟的DeepSpeed,使用Colossal-AI的自動(dòng)優(yōu)化策略,最快能實(shí)現(xiàn)40%的加速。

而PyTorch等傳統(tǒng)深度學(xué)習(xí)框架,在單張GPU上已經(jīng)無(wú)法運(yùn)行如此大的模型。

對(duì)于使用8張GPU的并行訓(xùn)練,僅需在啟動(dòng)命令中添加-nprocs 8就能實(shí)現(xiàn)。

2c08a782-033c-11ed-ba43-dac502259ad0.jpg

這波下來(lái),可以說(shuō)是把個(gè)人AI玩家需要考慮的成本、效率、實(shí)操問(wèn)題,都拿捏住了~

無(wú)需修改代碼邏輯

光說(shuō)不練假把式。

下面就以O(shè)PT為例,詳細(xì)展開(kāi)看看Colossal-AI的新功能到底怎么用。

OPT,全稱(chēng)為Open Pretrained Transformer。

它由Meta AI發(fā)布,對(duì)標(biāo)GPT-3,最大參數(shù)量可達(dá)1750億。

最大特點(diǎn)就是,GPT-3沒(méi)有公開(kāi)模型權(quán)重,而OPT開(kāi)源了所有代碼及權(quán)重。

因此,每一位開(kāi)發(fā)者都能在此基礎(chǔ)上開(kāi)發(fā)個(gè)性化的下游任務(wù)。

下面的舉例,就是根據(jù)OPT提供的預(yù)訓(xùn)練權(quán)重,進(jìn)行因果語(yǔ)言模型(Casual Language Modelling)的微調(diào)。

主要分為兩個(gè)步驟:

  • 添加配置文件

  • 運(yùn)行啟動(dòng)

第一步,是根據(jù)想進(jìn)行的任務(wù)添加配置文件。

比如在一張GPU上,以異構(gòu)訓(xùn)練為例,只需在配置文件里加上相關(guān)配置項(xiàng),并不需要更改代碼的訓(xùn)練邏輯。

比如,tensor_placement_policy決定了異構(gòu)訓(xùn)練的策略,參數(shù)可以為CUDA、CPU及auto。

每個(gè)策略的優(yōu)點(diǎn)不同、適應(yīng)的情況也不一樣。

CUDA:將全部模型參數(shù)都放置于GPU上,適合不offload時(shí)仍然能進(jìn)行訓(xùn)練的傳統(tǒng)場(chǎng)景。

CPU:將模型參數(shù)都放置在CPU內(nèi)存中,僅在GPU顯存中保留當(dāng)前參與計(jì)算的權(quán)重,適合超大模型的訓(xùn)練。

auto:根據(jù)實(shí)時(shí)的內(nèi)存信息,自動(dòng)決定保留在GPU顯存中的參數(shù)量,這樣能最大化利用GPU顯存,同時(shí)減少CPU-GPU之間的數(shù)據(jù)傳輸。

對(duì)于普通用戶(hù)來(lái)說(shuō),使用auto策略是最便捷的。

這樣可以由Colossal-AI自動(dòng)化地實(shí)時(shí)動(dòng)態(tài)選擇最佳異構(gòu)策略,最大化計(jì)算效率。

 
from colossalai.zero.shard_utils import TensorShardStrategy
zero = dict(model_config=dict(shard_strategy=TensorShardStrategy(),                              tensor_placement_policy="auto"),            optimizer_config=dict(gpu_margin_mem_ratio=0.8))            

第二步,是在配置文件準(zhǔn)備好后,插入幾行代碼來(lái)啟動(dòng)新功能。

首先,通過(guò)一行代碼,使用配置文件來(lái)啟動(dòng)Colossal-AI。

Colossal-AI會(huì)自動(dòng)初始化分布式環(huán)境,讀取相關(guān)配置,然后將配置里的功能自動(dòng)注入到模型及優(yōu)化器等組件中。


colossalai.launch_from_torch(config='./configs/colossalai_zero.py')

然后,還是像往常一樣定義數(shù)據(jù)集、模型、優(yōu)化器、損失函數(shù)等。

比如直接使用原生PyTorch代碼,在定義模型時(shí),只需將模型放置于ZeroInitContext下初始化即可。

在這里,使用的是Hugging Face提供的OPTForCausalLM模型以及預(yù)訓(xùn)練權(quán)重,在Wikitext數(shù)據(jù)集上進(jìn)行微調(diào)。


with ZeroInitContext(target_device=torch.cuda.current_device(),                     shard_strategy=shard_strategy,                    shard_param=True):    model = OPTForCausalLM.from_pretrained(                'facebook/opt-1.3b'                config=config            )

接下來(lái),只需要調(diào)用colossalai.initialize,便可將配置文件里定義的異構(gòu)內(nèi)存功能統(tǒng)一注入到訓(xùn)練引擎中,即可啟動(dòng)相應(yīng)功能。


engine, train_dataloader, eval_dataloader, lr_scheduler = colossalai.initialize(model=model,                                                                               optimizer=optimizer,                                                                               criterion=criterion,                                                                               train_dataloader=train_dataloader,                                                                               test_dataloader=eval_dataloader,                                                                               lr_scheduler=lr_scheduler)

還是得靠GPU+CPU異構(gòu)

而能夠讓用戶(hù)實(shí)現(xiàn)如上“傻瓜式”操作的關(guān)鍵,還是AI系統(tǒng)本身要足夠聰明。

發(fā)揮核心作用的是Colossal-AI系統(tǒng)的高效異構(gòu)內(nèi)存管理子系統(tǒng)Gemini。

它就像是系統(tǒng)內(nèi)的一個(gè)總管,在收集好計(jì)算所需的信息后,動(dòng)態(tài)分配CPU、GPU的內(nèi)存使用。

具體工作原理,就是在前面幾個(gè)step進(jìn)行預(yù)熱,收集PyTorch動(dòng)態(tài)計(jì)算圖中的內(nèi)存消耗信息。

在預(yù)熱結(jié)束后,計(jì)算一個(gè)算子前,利用收集的內(nèi)存使用記錄,Gemini將預(yù)留出這個(gè)算子在計(jì)算設(shè)備上所需的峰值內(nèi)存,并同時(shí)從GPU顯存移動(dòng)一些模型張量到CPU內(nèi)存。

2c12ffac-033c-11ed-ba43-dac502259ad0.png

Gemini內(nèi)置的內(nèi)存管理器給每個(gè)張量都標(biāo)記一個(gè)狀態(tài)信息,包括HOLD、COMPUTE、FREE等。

然后,根據(jù)動(dòng)態(tài)查詢(xún)到的內(nèi)存使用情況,不斷動(dòng)態(tài)轉(zhuǎn)換張量狀態(tài)、調(diào)整張量位置。

帶來(lái)的直接好處,就是能在硬件非常有限的情況下,最大化模型容量和平衡訓(xùn)練速度。

要知道,業(yè)界主流方法ZeRO (Zero Reduency Optimizer),盡管也利用CPU+GPU異構(gòu)內(nèi)存的方法,但是由于是靜態(tài)劃分,還是會(huì)引起系統(tǒng)崩潰、不必要通信量等問(wèn)題。

而且,使用動(dòng)態(tài)異構(gòu)CPU+GPU內(nèi)存的辦法,還能用加內(nèi)存條的辦法來(lái)擴(kuò)充內(nèi)存。

怎么也比買(mǎi)高端顯卡劃算多了。

目前,使用Colossal-AI的方法,RTX 2060 6GB普通游戲本能訓(xùn)練15億參數(shù)模型;RTX 3090 24GB主機(jī)直接單挑180億參數(shù)大模型;Tesla V100 32GB連240億參數(shù)都能拿下。

除了最大化利用內(nèi)存外,Colossal-AI還使用分布式并行的方法,讓訓(xùn)練速度不斷提升。

它提出同時(shí)使用數(shù)據(jù)并行、流水并行、2.5維張量并行等復(fù)雜并行策略。

方法雖復(fù)雜,但上手卻還是非?!吧倒喜僮鳌保恍韬?jiǎn)單聲明,就能自動(dòng)實(shí)現(xiàn)。

無(wú)需像其他系統(tǒng)和框架侵入代碼,手動(dòng)處理復(fù)雜的底層邏輯。


parallel = dict(    pipeline=2,    tensor=dict(mode='2.5d', depth = 1, size=4))

Colossal-AI還能做什么?

實(shí)際上,自開(kāi)源以來(lái),Colossal-AI已經(jīng)多次在GitHub及Papers With Code熱榜位列世界第一,在技術(shù)圈小有名氣。

除了如上提到的用單張GPU訓(xùn)練大模型外,Colossal-AI在擴(kuò)展至數(shù)十張甚至數(shù)百?gòu)圙PU的大規(guī)模并行場(chǎng)景時(shí),相比于英偉達(dá)Megatron-LM等現(xiàn)有系統(tǒng),性能可以翻倍,使用資源可以降低至其十分之一之下。

換算一下,在預(yù)訓(xùn)練GPT-3等超大AI模型上,節(jié)省的費(fèi)用可以達(dá)到數(shù)百萬(wàn)元。

2c330bbc-033c-11ed-ba43-dac502259ad0.png

據(jù)透露,Colossal-AI相關(guān)的解決方案已經(jīng)被自動(dòng)駕駛、云計(jì)算、零售、醫(yī)藥、芯片等行業(yè)的知名廠(chǎng)商用上了。

與此同時(shí),他們也非常注重開(kāi)源社區(qū)建設(shè),提供中文教程、開(kāi)放用戶(hù)社群論壇,根據(jù)大家的需求反饋不斷更新迭代。

比如我們發(fā)現(xiàn),之前有粉絲留言詢(xún)問(wèn),Colossal-AI能否直接加載Hugging Face上的一些模型?

好嘛,這次更新就來(lái)了。

2c3f0c46-033c-11ed-ba43-dac502259ad0.png

所以,對(duì)于大模型訓(xùn)練,你覺(jué)得現(xiàn)在還有哪些難點(diǎn)亟需解決呢?

審核編輯 :李倩


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

    關(guān)注

    3

    文章

    3880

    瀏覽量

    45227
  • 模型
    +關(guān)注

    關(guān)注

    1

    文章

    3611

    瀏覽量

    51435
  • 代碼
    +關(guān)注

    關(guān)注

    30

    文章

    4922

    瀏覽量

    72253
  • 大模型
    +關(guān)注

    關(guān)注

    2

    文章

    3351

    瀏覽量

    4724

原文標(biāo)題:1塊GPU+幾行代碼,大模型訓(xùn)練提速40%!無(wú)縫支持HuggingFace,來(lái)自國(guó)產(chǎn)開(kāi)源項(xiàng)目?

文章出處:【微信號(hào):iotmag,微信公眾號(hào):iotmag】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    知乎開(kāi)源“智能預(yù)渲染框架” 幾行代碼實(shí)現(xiàn)鴻蒙應(yīng)用頁(yè)面“秒開(kāi)”

    ,交互延遲等核心痛點(diǎn),通過(guò)智能預(yù)測(cè)用戶(hù)瀏覽目標(biāo)進(jìn)行提前渲染,只需幾行代碼即可顯著提升復(fù)雜頁(yè)面的加載性能,實(shí)現(xiàn)“頁(yè)面秒開(kāi)”的高效體驗(yàn),為鴻蒙開(kāi)發(fā)者帶來(lái)開(kāi)發(fā)效率和用戶(hù)體驗(yàn)的雙重飛躍。 隨著
    的頭像 發(fā)表于 08-29 14:32 ?378次閱讀
    知乎開(kāi)源“智能預(yù)渲染框架” <b class='flag-5'>幾行</b><b class='flag-5'>代碼</b><b class='flag-5'>實(shí)現(xiàn)</b>鴻蒙應(yīng)用頁(yè)面“秒開(kāi)”

    使用OpenVINO?訓(xùn)練擴(kuò)展對(duì)水平文本檢測(cè)模型進(jìn)行微調(diào),收到錯(cuò)誤信息是怎么回事?

    已針對(duì)水平文本檢測(cè)模型運(yùn)行OpenVINO?訓(xùn)練擴(kuò)展中的 微調(diào) 步驟,并收到錯(cuò)誤消息: RuntimeError: Failed to find annotation files
    發(fā)表于 03-05 06:48

    讓大模型訓(xùn)練更高效,奇異摩爾用互聯(lián)創(chuàng)新方案定義下一代AI計(jì)算

    訓(xùn)練成本,使得企業(yè)能夠以低成本實(shí)現(xiàn)高性能AI大模型訓(xùn)練;在推理端,DeepSeek加速了AI應(yīng)用從訓(xùn)
    的頭像 發(fā)表于 02-18 09:19 ?1710次閱讀
    讓大<b class='flag-5'>模型</b><b class='flag-5'>訓(xùn)練</b>更高效,奇異摩爾用互聯(lián)創(chuàng)新方案定義下一代AI計(jì)算

    阿里巴巴Qwen大模型助力開(kāi)發(fā)低成本DeepSeek替代方案

    近日,阿里巴巴的開(kāi)源Qwen2.5模型在AI領(lǐng)域再次展現(xiàn)其強(qiáng)大實(shí)力,為斯坦福大學(xué)與伯克利大學(xué)的研究人員提供了低成本的AI訓(xùn)練解決方案。借助這一技術(shù),兩所知名學(xué)府的研究團(tuán)隊(duì)成功開(kāi)發(fā)出價(jià)格低于50美元
    的頭像 發(fā)表于 02-12 13:42 ?1172次閱讀

    Qwen大模型助力開(kāi)發(fā)低成本AI推理方案

    的S1推理模型和伯克利的TinyZero模型,均是基于阿里巴巴的Qwen2.5-32b-Instruct模型進(jìn)行訓(xùn)練的。這一技術(shù)的運(yùn)用,使得兩款模型
    的頭像 發(fā)表于 02-12 09:19 ?899次閱讀

    【「基于大模型的RAG應(yīng)用開(kāi)發(fā)與優(yōu)化」閱讀體驗(yàn)】+大模型微調(diào)技術(shù)解讀

    微調(diào):通過(guò)在預(yù)訓(xùn)練模型中插入適配器模塊來(lái)適應(yīng)特定任務(wù),既保留了原始模型的性能,又能快速適應(yīng)新任務(wù)。Prefix-Tuning:通過(guò)在輸入序列的前面
    發(fā)表于 01-14 16:51

    模型訓(xùn)練框架(五)之Accelerate

    輕松切換不同的并行策略,同時(shí)它還支持混合精度訓(xùn)練,可以進(jìn)一步提升訓(xùn)練效率。 1. 導(dǎo)入 Accelerate只需添加四行代碼,即可在任何分布
    的頭像 發(fā)表于 01-14 14:24 ?1533次閱讀

    英偉達(dá)推出基石世界模型Cosmos,解決智駕與機(jī)器人具身智能訓(xùn)練數(shù)據(jù)問(wèn)題

    。Cosmos 世界基礎(chǔ)模型(WFM)使開(kāi)發(fā)者能夠輕松生成大量基于物理學(xué)的逼真合成數(shù)據(jù),以用于訓(xùn)練和評(píng)估其現(xiàn)有的模型。開(kāi)發(fā)者還可以通過(guò)微調(diào) Cosmos WFM 構(gòu)建自定義
    的頭像 發(fā)表于 01-14 11:04 ?1842次閱讀
    英偉達(dá)推出基石世界<b class='flag-5'>模型</b>Cosmos,解決智駕與機(jī)器人具身智能<b class='flag-5'>訓(xùn)練</b>數(shù)據(jù)問(wèn)題

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

    本文通俗簡(jiǎn)單地介紹了什么是大模型、大模型是怎么訓(xùn)練出來(lái)的和大模型的作用。 ? 什么是大模型模型
    的頭像 發(fā)表于 11-25 09:29 ?1.5w次閱讀
    什么是大<b class='flag-5'>模型</b>、大<b class='flag-5'>模型</b>是怎么<b class='flag-5'>訓(xùn)練</b>出來(lái)的及大<b class='flag-5'>模型</b>作用

    使用ReMEmbR實(shí)現(xiàn)機(jī)器人推理與行動(dòng)能力

    、對(duì)其進(jìn)行推理并以結(jié)構(gòu)化的格式返回輸出結(jié)果。由于經(jīng)過(guò)大量預(yù)訓(xùn)練,只需要為這些模型提供新的提示或進(jìn)行參數(shù)高效微調(diào),它們就能輕松適應(yīng)不同的視覺(jué)相
    的頭像 發(fā)表于 11-19 15:37 ?1230次閱讀
    使用ReMEmbR<b class='flag-5'>實(shí)現(xiàn)</b>機(jī)器人推理與行動(dòng)能力

    從零開(kāi)始訓(xùn)練一個(gè)大語(yǔ)言模型需要投資多少錢(qián)?

    關(guān)于訓(xùn)練技巧和模型評(píng)估的文章,但很少有直接告訴你如何估算訓(xùn)練時(shí)間和成本的。前面分享了一些關(guān)于大模型/本地知識(shí)庫(kù)的安裝部署方法,無(wú)需編寫(xiě)
    的頭像 發(fā)表于 11-08 14:15 ?1166次閱讀
    從零開(kāi)始<b class='flag-5'>訓(xùn)練</b>一個(gè)大語(yǔ)言<b class='flag-5'>模型</b>需要投資多少錢(qián)?

    使用bq4845實(shí)現(xiàn)低成本RTC/NVSRAM子系統(tǒng)

    電子發(fā)燒友網(wǎng)站提供《使用bq4845實(shí)現(xiàn)低成本RTC/NVSRAM子系統(tǒng).pdf》資料免費(fèi)下載
    發(fā)表于 10-24 09:47 ?0次下載
    使用bq4845<b class='flag-5'>實(shí)現(xiàn)</b><b class='flag-5'>低成本</b>RTC/NVSRAM子系統(tǒng)

    使用bq4845實(shí)現(xiàn)低成本RTC/NVSRAM子系統(tǒng)

    電子發(fā)燒友網(wǎng)站提供《使用bq4845實(shí)現(xiàn)低成本RTC/NVSRAM子系統(tǒng).pdf》資料免費(fèi)下載
    發(fā)表于 10-24 09:46 ?0次下載
    使用bq4845<b class='flag-5'>實(shí)現(xiàn)</b><b class='flag-5'>低成本</b>RTC/NVSRAM子系統(tǒng)

    中國(guó)AI企業(yè)創(chuàng)新降低成本打造競(jìng)爭(zhēng)力模型

    在中國(guó),面對(duì)美國(guó)實(shí)施的芯片限制以及相較于西方企業(yè)更為有限的預(yù)算,人工智能(AI)公司正積極尋求降低成本的方法,以開(kāi)發(fā)出具有市場(chǎng)競(jìng)爭(zhēng)力的模型。初創(chuàng)公司如01.ai(零一萬(wàn)物)和DeepSeek(深度求索)等,通過(guò)聚焦小數(shù)據(jù)集進(jìn)行AI模型
    的頭像 發(fā)表于 10-22 14:56 ?1300次閱讀

    使用MSP430 MCU實(shí)現(xiàn)低成本語(yǔ)音

    電子發(fā)燒友網(wǎng)站提供《使用MSP430 MCU實(shí)現(xiàn)低成本語(yǔ)音.pdf》資料免費(fèi)下載
    發(fā)表于 10-21 10:02 ?0次下載
    使用MSP430 MCU<b class='flag-5'>實(shí)現(xiàn)</b><b class='flag-5'>低成本</b>語(yǔ)音