What's micro batch ?

Micro Batch 是深度學(xué)習(xí)中常用的一個概念臣缀,特別是在處理大模型的訓(xùn)練和推理時泻帮。它指的是將一個大的批次(batch) 進一步劃分為多個較小的批次來處理。這種策略可以用于提升硬件利用率脂倦、優(yōu)化內(nèi)存使用或適應(yīng)特定的硬件限制元莫。

Micro Batch 的定義

在訓(xùn)練或推理中,數(shù)據(jù)通常會以批量(batch) 的形式喂給模型火欧。一個batch 包含多個樣本茎截,比如一組句子或者圖像。
Micro batch 是將一個大批量 (global batch) 切分成若干較小的批次榆浓,分別依次送入模型中進行計算陡鹃,

  • Global Batch Size : 整體的批次大小(e.g. : 128)
  • Micro Batch Size : 切分后的每個小批次的大小 (e.g. : 16)
    示例 : 如果 global batch size = 128, 而 micro batch size = 16, 那么整個批次會被分成 8 個 micro batches, 每個包含 16 個樣本杉适。

2. Micro Batch 的用途

(1) 訓(xùn)練階段

  • 顯存優(yōu)化:
    • 處理大模型時,如果一次性加載整個 batch 所需要的顯存太大片习,切分成 micro batches 可以逐步處理蹬叭,減少顯存占用.
    • 通過 梯度累積 (Gradient Accumulation), 每次處理一個 micro batch 的梯度,最后在所有 micro batches 的梯度累加后再更新模型參數(shù)孽查。
  • 硬件限制適配:
    • 當(dāng) GPU 的顯存容量不足以支持大 batch 時盲再,通過 micro batch 的方式可以讓訓(xùn)練依然在較小的 GPU 上進行瓣铣。

(2) 推理階段

  • 動態(tài)批處理 (Dynamic Batching) :
    • 推理任務(wù)中,多個請求可能是并發(fā)的梦碗,但每個請求的數(shù)據(jù)量可能不一致蓖救。通過 micro batch 將它們動態(tài)合并,能高效地利用硬件資源斩例。
    • for example:一個 LLM 的推理服務(wù)器可能需要同時處理多個輸入从橘,將這些輸入組成一個 micro batch 來提高吞吐量。
  • 流水線并行優(yōu)化 :
    • miro batch 可以幫助流水線并行 (Pipeline Parallelism) 更好的調(diào)度計算資源,例如讓每個模型 slice 都在不同的 micro batches 上并行計算牺勾。

3. Micro Batch 的優(yōu)勢

1. 顯存效率:
  • 通過切分大的 batch阵漏,減少顯存需求翻具,適配資源有限的硬件裆泳。
2. 吞吐量提升:
  • 在推理中柠硕,通過 micro batch 動態(tài)組合多個請求,可以顯著提升模型的吞吐量
3. 靈活性:
  • 可以適配不規(guī)則的輸入數(shù)據(jù)( for example 長度不一的序列)

4. Micro Batch 的注意事項

1. 梯度累積(在訓(xùn)練中):
  • 如果切分成 micro batches闻葵,需要在最后累積梯度后統(tǒng)一更新參數(shù)癣丧,否則效果等同于降低 batch size。
2. 批次內(nèi)數(shù)據(jù)依賴 (inference) :
  • micro batch slice 可能導(dǎo)致數(shù)據(jù)的上下文丟失 (e.g. 序列生成任務(wù)中)厢钧,需要保證切片后每個 micro batch 的數(shù)據(jù)仍然是獨立的早直。
3. 通訊開銷
  • 在多 GPU 場景中憎夷,如果每一個 micro batch 都需要與其他 GPU 通信,會帶來額外的通信開銷

5. 應(yīng)用場景

  • 大模型訓(xùn)練 :分布式訓(xùn)練中祥得,通過 micro batch 和 梯度累積來減少顯存的占用蒋得。
  • 大模型推理 :LLM 的推理框架 (e.g. Hugging Face 、vLLM) 常用 micro batching 來提高請求的吞吐量饮焦。
  • 混合并行 : 結(jié)合數(shù)據(jù)并行窍侧、模型并行和流水線并行時,micro batch 常用于更高效的任務(wù)分配硼啤。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末斧账,一起剝皮案震驚了整個濱河市煞肾,隨后出現(xiàn)的幾起案子籍救,更是在濱河造成了極大的恐慌渠抹,老刑警劉巖,帶你破解...
    沈念sama閱讀 222,590評論 6 517
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件耸黑,死亡現(xiàn)場離奇詭異篮幢,居然都是意外死亡,警方通過查閱死者的電腦和手機三椿,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 95,157評論 3 399
  • 文/潘曉璐 我一進店門搜锰,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人焊傅,你說我怎么就攤上這事狐胎。” “怎么了握巢?”我有些...
    開封第一講書人閱讀 169,301評論 0 362
  • 文/不壞的土叔 我叫張陵暴浦,是天一觀的道長晓锻。 經(jīng)常有香客問我,道長砚哆,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 60,078評論 1 300
  • 正文 為了忘掉前任,我火速辦了婚禮灿里,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘儒拂。我一直安慰自己色鸳,他們只是感情好,可當(dāng)我...
    茶點故事閱讀 69,082評論 6 398
  • 文/花漫 我一把揭開白布蒜哀。 她就那樣靜靜地躺著吏砂,像睡著了一般。 火紅的嫁衣襯著肌膚如雪淀歇。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 52,682評論 1 312
  • 那天,我揣著相機與錄音缀匕,去河邊找鬼。 笑死岳链,一個胖子當(dāng)著我的面吹牛劲件,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播苗分,決...
    沈念sama閱讀 41,155評論 3 422
  • 文/蒼蘭香墨 我猛地睜開眼牵辣,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了择浊?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 40,098評論 0 277
  • 序言:老撾萬榮一對情侶失蹤投剥,失蹤者是張志新(化名)和其女友劉穎担孔,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體啄育,經(jīng)...
    沈念sama閱讀 46,638評論 1 319
  • 正文 獨居荒郊野嶺守林人離奇死亡拌消,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,701評論 3 342
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了浮毯。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片泰鸡。...
    茶點故事閱讀 40,852評論 1 353
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖饰迹,靈堂內(nèi)的尸體忽然破棺而出啊鸭,到底是詐尸還是另有隱情匿值,我是刑警寧澤赠制,帶...
    沈念sama閱讀 36,520評論 5 351
  • 正文 年R本政府宣布钟些,位于F島的核電站,受9級特大地震影響政恍,放射性物質(zhì)發(fā)生泄漏达传。R本人自食惡果不足惜迫筑,卻給世界環(huán)境...
    茶點故事閱讀 42,181評論 3 335
  • 文/蒙蒙 一脯燃、第九天 我趴在偏房一處隱蔽的房頂上張望曲伊。 院中可真熱鬧,春花似錦、人聲如沸岛蚤。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,674評論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽硅堆。三九已至贿讹,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間民褂,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,788評論 1 274
  • 我被黑心中介騙來泰國打工面殖, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留哭廉,地道東北人。 一個月前我還...
    沈念sama閱讀 49,279評論 3 379
  • 正文 我出身青樓,卻偏偏與公主長得像街立,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子赎离,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 45,851評論 2 361

推薦閱讀更多精彩內(nèi)容