91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

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

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

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

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

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

掃碼添加小助手

加入工程師交流群

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

模型不夠開放?有人自己上手搞免費開源版。

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

都是通過復刻的方式,讓原本不夠open的大模型,變成人人可用。

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

還有人覺得模型太大,個人玩家很難承受起天價成本。

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

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

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

而在這兩天,他們又來了一波上新:

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

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

要知道,Hugging Face作為當下最流行的AI庫之一,提供了超過5萬個AI模型的實現(xiàn),是許多AI玩家訓練大模型的首選。

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

并且在訓練效果上也有提升。

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

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

對于使用8張GPU的并行訓練,僅需在啟動命令中添加-nprocs 8就能實現(xiàn)。

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

這波下來,可以說是把個人AI玩家需要考慮的成本、效率、實操問題,都拿捏住了~

無需修改代碼邏輯

光說不練假把式。

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

OPT,全稱為Open Pretrained Transformer。

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

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

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

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

主要分為兩個步驟:

  • 添加配置文件

  • 運行啟動

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

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

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

每個策略的優(yōu)點不同、適應的情況也不一樣。

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

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

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

對于普通用戶來說,使用auto策略是最便捷的。

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

 
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))            

第二步,是在配置文件準備好后,插入幾行代碼來啟動新功能。

首先,通過一行代碼,使用配置文件來啟動Colossal-AI。

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


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

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

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

在這里,使用的是Hugging Face提供的OPTForCausalLM模型以及預訓練權(quán)重,在Wikitext數(shù)據(jù)集上進行微調(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            )

接下來,只需要調(diào)用colossalai.initialize,便可將配置文件里定義的異構(gòu)內(nèi)存功能統(tǒ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)

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

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

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

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

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

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

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

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

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

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

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

怎么也比買高端顯卡劃算多了。

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

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

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

方法雖復雜,但上手卻還是非常“傻瓜操作”,只需簡單聲明,就能自動實現(xiàn)。

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


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

Colossal-AI還能做什么?

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

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

換算一下,在預訓練GPT-3等超大AI模型上,節(jié)省的費用可以達到數(shù)百萬元。

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

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

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

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

好嘛,這次更新就來了。

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

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

審核編輯 :李倩


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

    關(guān)注

    3

    文章

    4228

    瀏覽量

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

    關(guān)注

    1

    文章

    3764

    瀏覽量

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

    關(guān)注

    30

    文章

    4971

    瀏覽量

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

    關(guān)注

    2

    文章

    3668

    瀏覽量

    5198

原文標題:1塊GPU+幾行代碼,大模型訓練提速40%!無縫支持HuggingFace,來自國產(chǎn)開源項目?

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

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

掃碼添加小助手

加入工程師交流群

    評論

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

    訓練到推理:大模型算力需求的新拐點已至

    在大模型產(chǎn)業(yè)發(fā)展的早期階段,行業(yè)焦點主要集中在大模型訓練所需的算力投入。一個萬億參數(shù)大模型訓練可能需要數(shù)千張GPU芯片連續(xù)運行數(shù)月,
    的頭像 發(fā)表于 02-05 16:07 ?880次閱讀
    從<b class='flag-5'>訓練</b>到推理:大<b class='flag-5'>模型</b>算力需求的新拐點已至

    低成本儀表放大器AD622:特性、應用與設(shè)計要點

    Devices公司的AD622低成本儀表放大器。這款放大器具有諸多優(yōu)秀特性,能滿足多種應用需求,下面我們就來深入了解一下。 文件下載: AD622.pdf 一、AD622的特性亮點 1. 易用性與低成本 AD622使用起來非常方便,
    的頭像 發(fā)表于 01-16 09:20 ?302次閱讀

    低成本AI邊緣計算盒子DIY:基于迅為RK3568和開源模型,輕松玩轉(zhuǎn)智能識別

    低成本AI邊緣計算盒子DIY:基于迅為RK3568和開源模型,輕松玩轉(zhuǎn)智能識別
    的頭像 發(fā)表于 11-12 13:42 ?1806次閱讀
    <b class='flag-5'>低成本</b>AI邊緣計算盒子DIY:基于迅為RK3568和開源<b class='flag-5'>模型</b>,輕松玩轉(zhuǎn)智能識別

    LLM安全新威脅:為什么幾百個毒樣本就能破壞整個模型

    本文轉(zhuǎn)自:DeepHubIMBA作者:DhanushKumar數(shù)據(jù)投毒,也叫模型投毒或訓練數(shù)據(jù)后門攻擊,本質(zhì)上是在LLM的訓練、微調(diào)或檢索階段偷偷塞入精心構(gòu)造的惡意數(shù)據(jù)。一旦
    的頭像 發(fā)表于 10-29 11:06 ?616次閱讀
    LLM安全新威脅:為什么幾百個毒樣本<b class='flag-5'>就能</b>破壞整個<b class='flag-5'>模型</b>

    MEMS組合導航如何實現(xiàn)低成本?

    低成本,同時保障核心性能的呢? 關(guān)鍵轉(zhuǎn)變:從“硬件堆料”到“算法賦能” 傳統(tǒng)方案依賴于本身價格極高的慣性器件來保證性能。而ER-GNSS/MINS-05的思路是: · 采用經(jīng)過市場驗證的低成本MEMS傳感器作為基礎(chǔ)。 · 通過強大的系統(tǒng)級溫度補償和智能算法,
    的頭像 發(fā)表于 10-23 15:30 ?416次閱讀
    MEMS組合導航如何<b class='flag-5'>實現(xiàn)</b>超<b class='flag-5'>低成本</b>?

    在Ubuntu20.04系統(tǒng)中訓練神經(jīng)網(wǎng)絡(luò)模型的一些經(jīng)驗

    本帖欲分享在Ubuntu20.04系統(tǒng)中訓練神經(jīng)網(wǎng)絡(luò)模型的一些經(jīng)驗。我們采用jupyter notebook作為開發(fā)IDE,以TensorFlow2為訓練框架,目標是訓練一個手寫數(shù)字識
    發(fā)表于 10-22 07:03

    AI智能大模型,你身邊的最好用的辦公提效小能手

    幾十億到數(shù)萬億; 任務(wù)廣:一次訓練可以支持多個任務(wù),具備通用能力; 適應快:只需少量樣例,就能遷移到新任務(wù)中(Few-shot、Zero-shot)。 訊維AI智能大模型
    的頭像 發(fā)表于 09-30 10:59 ?342次閱讀

    車載電器EMC整改:如何低成本實現(xiàn)高性能抗干擾

    南柯電子|車載電器EMC整改:如何低成本實現(xiàn)高性能抗干擾
    的頭像 發(fā)表于 09-09 09:57 ?736次閱讀

    知乎開源“智能預渲染框架” 幾行代碼實現(xiàn)鴻蒙應用頁面“秒開”

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

    基于大規(guī)模人類操作數(shù)據(jù)預訓練的VLA模型H-RDT

    /AR頭顯和3D視覺技術(shù)的顯著進步,當前只需低成本即可采集大量帶有精確人手關(guān)節(jié)標注的第一人稱人類操作視頻。
    的頭像 發(fā)表于 08-21 09:56 ?1120次閱讀
    基于大規(guī)模人類操作數(shù)據(jù)預<b class='flag-5'>訓練</b>的VLA<b class='flag-5'>模型</b>H-RDT

    騰視科技大模型一體機解決方案:低成本私有化落地,重塑行業(yè)智能應用新格局

    當大模型進入 “深水區(qū)”,私有化與低成本已成為企業(yè)選型的核心考量。騰視科技大模型一體機解決方案,用技術(shù)創(chuàng)新打破 “安全與成本不可兼得” 的困境,讓各行業(yè)都能輕松擁抱智能時代。以
    的頭像 發(fā)表于 08-07 11:06 ?1930次閱讀
    騰視科技大<b class='flag-5'>模型</b>一體機解決方案:<b class='flag-5'>低成本</b>私有化落地,重塑行業(yè)智能應用新格局

    Cognizant加速AI模型企業(yè)級開發(fā)

    全新解決方案旨在幫助企業(yè)快速且大規(guī)模地構(gòu)建、微調(diào)和實施AI模型。 Cognizant 憑借其作為數(shù)據(jù)與AI模型訓練合作伙伴的深厚經(jīng)驗,繼服務(wù)于部分領(lǐng)先的數(shù)字原生企業(yè)后
    的頭像 發(fā)表于 07-31 17:25 ?726次閱讀

    make sence成的XML文件能上傳到自助訓練模型上嗎?

    make sence成的XML文件能上傳到自助訓練模型上嗎
    發(fā)表于 06-23 07:38

    閃存破局“內(nèi)存焦慮”,AI微調(diào)訓練增加閃存消耗

    電子發(fā)燒友網(wǎng)報道(文/黃晶晶)面對蓬勃發(fā)展的AI,在MemoryS 2025上,群聯(lián)電子執(zhí)行長潘健成表示,面對AI服務(wù)器成本太高、數(shù)據(jù)上云端不安全等挑戰(zhàn),在地端的AI微調(diào)訓練對于解決問題而言是必須
    的頭像 發(fā)表于 03-26 09:28 ?3313次閱讀
    閃存破局“內(nèi)存焦慮”,AI<b class='flag-5'>微調(diào)訓練</b>增加閃存消耗

    請問如何在imx8mplus上部署和運行YOLOv5訓練模型?

    我正在從事 imx8mplus yocto 項目。我已經(jīng)在自定義數(shù)據(jù)集上的 YOLOv5 上訓練了對象檢測模型。它在 ubuntu 電腦上運行良好?,F(xiàn)在我想在我的 imx8mplus 板上運行該模型
    發(fā)表于 03-25 07:23