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

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

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

使用NVIDIA開源模型實(shí)現(xiàn)更快的訓(xùn)練和推理

星星科技指導(dǎo)員 ? 來源:NVIDIA ? 作者:Alexandre Milesi ? 2022-04-20 15:58 ? 次閱讀

SE(3)-Transformers 是在NeurIPS 2020上推出的多功能圖形神經(jīng)網(wǎng)絡(luò)。 NVIDIA 剛剛發(fā)布了一款開源優(yōu)化實(shí)現(xiàn),它使用的內(nèi)存比基線正式實(shí)施少9倍,速度比基線正式實(shí)施快21倍。

SE(3)-Transformer 在處理幾何對(duì)稱性問題時(shí)非常有用,如小分子處理、蛋白質(zhì)精制或點(diǎn)云應(yīng)用。它們可以是更大的藥物發(fā)現(xiàn)模型的一部分,如RoseTTAFold和此 AlphaFold2 的復(fù)制。它們也可以用作點(diǎn)云分類和分子性質(zhì)預(yù)測的獨(dú)立網(wǎng)絡(luò)(圖 1 )。

pYYBAGJfvUKAcxmPAAE4jmo8Pmc186.png

圖 1 用于分子性質(zhì)預(yù)測的典型 SE ( 3 ) – transformer 的結(jié)構(gòu)。

在/PyTorch/DrugDiscovery/SE3Transformer存儲(chǔ)庫中, NVIDIA 提供了在QM9 數(shù)據(jù)集上為分子性質(zhì)預(yù)測任務(wù)訓(xùn)練優(yōu)化模型的方法。 QM9 數(shù)據(jù)集包含超過 10 萬個(gè)有機(jī)小分子和相關(guān)的量子化學(xué)性質(zhì)。

訓(xùn)練吞吐量提高 21 倍

與基線實(shí)施相比, NVIDIA 實(shí)現(xiàn)提供了更快的訓(xùn)練和推理。該實(shí)現(xiàn)對(duì) SE(3)-Transformers 的核心組件,即張量場網(wǎng)絡(luò)( TFN )以及圖形中的自我注意機(jī)制進(jìn)行了優(yōu)化。

考慮到注意力層超參數(shù)的某些條件得到滿足,這些優(yōu)化大多采取操作融合的形式。

由于這些,與基線實(shí)施相比,訓(xùn)練吞吐量增加了 21 倍,利用了最近 GPU NVIDIA 上的張量核。

poYBAGJfvUSAGrvvAAA_pAADmac256.png

圖 2 A100 GPU 上的訓(xùn)練吞吐量。批次大小為 100 的 QM9 數(shù)據(jù)集。

此外, NVIDIA 實(shí)現(xiàn)允許使用多個(gè) GPU 以數(shù)據(jù)并行方式訓(xùn)練模型,充分利用 DGX A100 ( 8x A100 80GB )的計(jì)算能力。

把所有東西放在一起,在 NVIDIA DGX A100 上, SE(3)-Transformer現(xiàn)在可以在 QM9 數(shù)據(jù)集上在 27 分鐘內(nèi)進(jìn)行訓(xùn)練。作為比較,原始論文的作者指出,培訓(xùn)在硬件上花費(fèi)了 2 。 5 天( NVIDIA GeForce GTX 1080 Ti )。

更快的培訓(xùn)使您能夠在搜索最佳體系結(jié)構(gòu)的過程中快速迭代。隨著內(nèi)存使用率的降低,您現(xiàn)在可以訓(xùn)練具有更多注意層或隱藏通道的更大模型,并向模型提供更大的輸入。

內(nèi)存占用率降低 9 倍

SE(3)-Transformer 是已知的記憶重模型,這意味著喂養(yǎng)大輸入,如大蛋白質(zhì)或許多分批小分子是一項(xiàng)挑戰(zhàn)。對(duì)于 GPU 內(nèi)存有限的用戶來說,這是一個(gè)瓶頸。

這一點(diǎn)在DeepLearningExamples上的 NVIDIA 實(shí)現(xiàn)中已經(jīng)改變。圖 3 顯示,由于 NVIDIA 優(yōu)化和對(duì)混合精度的支持,與基線實(shí)現(xiàn)相比,訓(xùn)練內(nèi)存使用減少了 9 倍。

pYYBAGJfvUSAJlq7AAAyUas0Vkk109.png

圖 3 SE ( 3 ) – transformer s 的基線實(shí)現(xiàn)和 NVIDIA 實(shí)現(xiàn)之間的訓(xùn)練峰值內(nèi)存消耗比較。在 QM9 數(shù)據(jù)集上每批使用 100 個(gè)分子。 V100 32-GB GPU 。

除了對(duì)單精度和混合精度進(jìn)行改進(jìn)外,還提供了低內(nèi)存模式。啟用此標(biāo)志后,模型在 TF32 ( NVIDIA 安培體系結(jié)構(gòu))或 FP16 ( NVIDIA 安培體系結(jié)構(gòu)、 NVIDIA 圖靈體系結(jié)構(gòu)和 NVIDIA 伏特體系結(jié)構(gòu))精度上運(yùn)行,模型將切換到以吞吐量換取額外內(nèi)存節(jié)省的模式。

實(shí)際上,在具有 V100 32-GB GPU 的 QM9 數(shù)據(jù)集上,基線實(shí)現(xiàn)可以在內(nèi)存耗盡之前擴(kuò)展到 100 的批大小。 NVIDIA 實(shí)現(xiàn)每批最多可容納 1000 個(gè)分子(混合精度,低內(nèi)存模式)。

對(duì)于處理以氨基酸殘基為節(jié)點(diǎn)的蛋白質(zhì)的研究人員來說,這意味著你可以輸入更長的序列并增加每個(gè)殘基的感受野。

SE(3)-Transformers 優(yōu)化

與基線相比, NVIDIA 實(shí)現(xiàn)提供了一些優(yōu)化。

融合鍵與值計(jì)算

在“自我注意”層中,將計(jì)算關(guān)鍵幀、查詢和值張量。查詢是圖形節(jié)點(diǎn)特征,是輸入特征的線性投影。另一方面,鍵和值是圖形邊緣特征。它們是使用 TFN 層計(jì)算的。這是 SE(3)-Transformer 中大多數(shù)計(jì)算發(fā)生的地方,也是大多數(shù)參數(shù)存在的地方。

基線實(shí)現(xiàn)使用兩個(gè)獨(dú)立的 TFN 層來計(jì)算鍵和值。在 NVIDIA 實(shí)現(xiàn)中,這些被融合在一個(gè) TFN 中,通道數(shù)量增加了一倍。這將啟動(dòng)的小型 CUDA 內(nèi)核數(shù)量減少一半,并更好地利用 GPU 并行性。徑向輪廓是 TFN 內(nèi)部完全連接的網(wǎng)絡(luò),也與此優(yōu)化融合。概覽如圖 4 所示。

poYBAGJfvUWAMrW0AABoHVJXxEs672.png

圖 4 NVIDIA 實(shí)現(xiàn)中的鍵、查詢和值計(jì)算。鍵和值一起計(jì)算,然后沿通道維度分塊。

TFN 合并

SE(3)-Transformer 內(nèi)部的功能除了其通道數(shù)量外,還有一個(gè)degreed,它是一個(gè)正整數(shù)。程度特征d有維度2d+1. TFN 接受不同程度的特征,使用張量積組合它們,并輸出不同程度的特征。

對(duì)于輸入為 4 度、輸出為 4 度的圖層,將考慮所有度的組合:理論上,必須計(jì)算 4 × 4 = 16 個(gè)子圖層。

這些子層稱為成對(duì) TFN 卷積。圖 5 顯示了所涉及的子層的概述,以及每個(gè)子層的輸入和輸出維度。對(duì)給定輸出度(列)的貢獻(xiàn)相加,以獲得最終特征。

pYYBAGJfvUaARF2GAAFMcAG5jOI476.png

圖 5 TFN 層中涉及的成對(duì)卷積,輸入為 4 度,輸出為 4 度。

NVIDIA 在滿足 TFN 層上的某些條件時(shí),提供多級(jí)融合以加速這些卷積。通過創(chuàng)建尺寸為 16 倍的形狀,熔合層可以更有效地使用張量核。以下是應(yīng)用熔合卷積的三種情況:

輸出功能具有相同數(shù)量的通道

輸入功能具有相同數(shù)量的通道

這兩種情況都是正確的

第一種情況是,所有輸出特征具有相同數(shù)量的通道,并且輸出度數(shù)的范圍從 0 到最大度數(shù)。在這種情況下,使用輸出融合特征的融合卷積。該融合層用于 SE(3)-Transformers 的第一個(gè) TFN 層。

pYYBAGJfvUeAILrMAAC_JHUK2b0720.png

圖 6 每個(gè)輸出度的部分熔融 TFN 。

第二種情況是,所有輸入特征具有相同數(shù)量的通道,并且輸入度數(shù)的范圍從 0 到最大度數(shù)。在這種情況下,使用對(duì)融合輸入特征進(jìn)行操作的融合卷積。該融合層用于 SE(3)-Transformers 的最后一層 TFN 。

poYBAGJfvUiAZ-WtAADEV4igJyM069.png

圖 7 每個(gè)輸入度的部分熔融 TFN 。

在最后一種情況下,當(dāng)兩個(gè)條件都滿足時(shí),使用完全融合的卷積。這些卷積作為輸入融合特征,輸出融合特征。這意味著每個(gè) TFN 層只需要一個(gè)子層。內(nèi)部 TFN 層使用此融合級(jí)別。

pYYBAGJfvUiAY4E7AAB8ctJYwlM494.png

圖 8 全熔合 TFN

基預(yù)計(jì)算

除了輸入節(jié)點(diǎn)特性外, TFN 還需要基矩陣作為輸入。每個(gè)圖邊都有一組矩陣,這些矩陣取決于目標(biāo)節(jié)點(diǎn)和源節(jié)點(diǎn)之間的相對(duì)位置。

在基線實(shí)現(xiàn)中,這些矩陣在前向傳遞開始時(shí)計(jì)算,并在所有 TFN 層中共享。它們依賴于球形 h ARM ,計(jì)算起來可能很昂貴。由于輸入圖不會(huì)隨著 QM9 數(shù)據(jù)集而改變(沒有數(shù)據(jù)擴(kuò)充,沒有迭代位置細(xì)化),這就引入了跨時(shí)代的冗余計(jì)算。

NVIDIA 實(shí)現(xiàn)提供了在培訓(xùn)開始時(shí)預(yù)計(jì)算這些基礎(chǔ)的選項(xiàng)。整個(gè)數(shù)據(jù)集迭代一次,基緩存在 RAM 中。前向傳遞開始時(shí)的計(jì)算基數(shù)過程被更快的 CPU 到 GPU 內(nèi)存拷貝所取代。

關(guān)于作者

Alexandre Milesi 是 NVIDIA 的深度學(xué)習(xí)算法工程師。他擁有法國 UTC 的機(jī)器學(xué)習(xí)碩士學(xué)位,以及法國索邦大學(xué)的機(jī)器人和多智能體系統(tǒng)碩士學(xué)位。在加入 NVIDIA 之前, Alexandre 是伯克利實(shí)驗(yàn)室的附屬研究員,使用深度強(qiáng)化學(xué)習(xí)解決電子 CTR ical 網(wǎng)格問題。在 NVIDIA ,他的工作集中于藥物發(fā)現(xiàn)和計(jì)算機(jī)視覺的 DL 算法,包括等變圖神經(jīng)網(wǎng)絡(luò)。

審核編輯:郭婷

聲明:本文內(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)投訴
  • NVIDIA
    +關(guān)注

    關(guān)注

    14

    文章

    4817

    瀏覽量

    102644
  • 機(jī)器學(xué)習(xí)

    關(guān)注

    66

    文章

    8323

    瀏覽量

    132190
  • 深度學(xué)習(xí)
    +關(guān)注

    關(guān)注

    73

    文章

    5439

    瀏覽量

    120798
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    NVIDIA助力提供多樣、靈活的模型選擇

    在本案例中,Dify 以模型中立以及開源生態(tài)的優(yōu)勢(shì),為廣大 AI 創(chuàng)新者提供豐富的模型選擇。其集成的 NVIDIAAPI Catalog、NVIDIA NIM和Triton
    的頭像 發(fā)表于 09-09 09:19 ?379次閱讀

    NVIDIA Nemotron-4 340B模型幫助開發(fā)者生成合成訓(xùn)練數(shù)據(jù)

    Nemotron-4 340B 是針對(duì) NVIDIA NeMo 和 NVIDIA TensorRT-LLM 優(yōu)化的模型系列,該系列包含最先進(jìn)的指導(dǎo)和獎(jiǎng)勵(lì)模型,以及一個(gè)用于生成式 AI
    的頭像 發(fā)表于 09-06 14:59 ?216次閱讀
    <b class='flag-5'>NVIDIA</b> Nemotron-4 340B<b class='flag-5'>模型</b>幫助開發(fā)者生成合成<b class='flag-5'>訓(xùn)練</b>數(shù)據(jù)

    魔搭社區(qū)借助NVIDIA TensorRT-LLM提升LLM推理效率

    “魔搭社區(qū)是中國最具影響力的模型開源社區(qū),致力給開發(fā)者提供模型即服務(wù)的體驗(yàn)。魔搭社區(qū)利用NVIDIA TensorRT-LLM,大大提高了大語言模型
    的頭像 發(fā)表于 08-23 15:48 ?307次閱讀

    英偉達(dá)推出全新NVIDIA AI Foundry服務(wù)和NVIDIA NIM推理微服務(wù)

    NVIDIA 宣布推出全新 NVIDIA AI Foundry 服務(wù)和 NVIDIA NIM 推理微服務(wù),與同樣剛推出的 Llama 3.1 系列
    的頭像 發(fā)表于 07-25 09:48 ?611次閱讀

    英偉達(dá)推出AI模型推理服務(wù)NVIDIA NIM

    英偉達(dá)近日宣布推出一項(xiàng)革命性的AI模型推理服務(wù)——NVIDIA NIM。這項(xiàng)服務(wù)將極大地簡化AI模型部署過程,為全球的2800萬英偉達(dá)開發(fā)者提供前所未有的便利。
    的頭像 發(fā)表于 06-04 09:15 ?580次閱讀

    摩爾線程和滴普科技完成大模型訓(xùn)練推理適配

    近日,摩爾線程與滴普科技宣布了一項(xiàng)重要合作成果。摩爾線程的夸娥(KUAE)千卡智算集群與滴普科技的企業(yè)大模型Deepexi已完成訓(xùn)練推理適配,共同實(shí)現(xiàn)了700億參數(shù)LLaMA2大語言
    的頭像 發(fā)表于 05-30 10:14 ?452次閱讀

    NVIDIA與Google DeepMind合作推動(dòng)大語言模型創(chuàng)新

    支持 NVIDIA NIM 推理微服務(wù)的谷歌最新開源模型 PaliGemma 首次亮相。
    的頭像 發(fā)表于 05-16 09:44 ?406次閱讀

    NVIDIA加速微軟最新的Phi-3 Mini開源語言模型

    NVIDIA 宣布使用 NVIDIA TensorRT-LLM 加速微軟最新的 Phi-3 Mini 開源語言模型。TensorRT-LLM 是一個(gè)
    的頭像 發(fā)表于 04-28 10:36 ?445次閱讀

    李彥宏:開源模型將逐漸滯后,文心大模型提升訓(xùn)練推理效率

    李彥宏解釋道,百度自研的基礎(chǔ)模型——文心 4.0,能夠根據(jù)需求塑造出適應(yīng)各類場景的微型版模型,并支持精細(xì)調(diào)整以及后預(yù)訓(xùn)練。相較于直接使用開源模型
    的頭像 發(fā)表于 04-16 14:37 ?376次閱讀

    基于NVIDIA Megatron Core的MOE LLM實(shí)現(xiàn)訓(xùn)練優(yōu)化

    本文將分享阿里云人工智能平臺(tái) PAI 團(tuán)隊(duì)與 NVIDIA Megatron-Core 團(tuán)隊(duì)在 MoE (Mixture of Experts) 大語言模型(LLM)實(shí)現(xiàn)訓(xùn)練優(yōu)化上的
    的頭像 發(fā)表于 03-22 09:50 ?649次閱讀
    基于<b class='flag-5'>NVIDIA</b> Megatron Core的MOE LLM<b class='flag-5'>實(shí)現(xiàn)</b>和<b class='flag-5'>訓(xùn)練</b>優(yōu)化

    混合專家模型 (MoE)核心組件和訓(xùn)練方法介紹

    ) 的 Transformer 模型開源人工智能社區(qū)引起了廣泛關(guān)注。在本篇博文中,我們將深入探討 MoEs 的核心組件、訓(xùn)練方法,以及在推理過程中需要考量的各種因素。 讓我們開始吧!
    的頭像 發(fā)表于 01-13 09:37 ?1111次閱讀
    混合專家<b class='flag-5'>模型</b> (MoE)核心組件和<b class='flag-5'>訓(xùn)練</b>方法介紹

    基于YOLOv8實(shí)現(xiàn)自定義姿態(tài)評(píng)估模型訓(xùn)練

    Hello大家好,今天給大家分享一下如何基于YOLOv8姿態(tài)評(píng)估模型,實(shí)現(xiàn)在自定義數(shù)據(jù)集上,完成自定義姿態(tài)評(píng)估模型訓(xùn)練推理。
    的頭像 發(fā)表于 12-25 11:29 ?2634次閱讀
    基于YOLOv8<b class='flag-5'>實(shí)現(xiàn)</b>自定義姿態(tài)評(píng)估<b class='flag-5'>模型</b><b class='flag-5'>訓(xùn)練</b>

    NVIDIA 為部分大型亞馬遜 Titan 基礎(chǔ)模型提供訓(xùn)練支持

    本文將介紹亞馬遜如何使用 NVIDIA NeMo 框架、GPU 以及亞馬遜云科技的 EFA 來訓(xùn)練其 最大的新一代大語言模型(LLM)。 大語言模型的一切都很龐大——巨型
    的頭像 發(fā)表于 11-29 21:15 ?483次閱讀
    <b class='flag-5'>NVIDIA</b> 為部分大型亞馬遜 Titan 基礎(chǔ)<b class='flag-5'>模型</b>提供<b class='flag-5'>訓(xùn)練</b>支持

    現(xiàn)已公開發(fā)布!歡迎使用 NVIDIA TensorRT-LLM 優(yōu)化大語言模型推理

    NVIDIA 于 2023 年 10 月 19 日公開發(fā)布 TensorRT-LLM ,可在 NVIDIA GPU 上加速和優(yōu)化最新的大語言模型(Large Language Models)的
    的頭像 發(fā)表于 10-27 20:05 ?893次閱讀
    現(xiàn)已公開發(fā)布!歡迎使用 <b class='flag-5'>NVIDIA</b> TensorRT-LLM 優(yōu)化大語言<b class='flag-5'>模型</b><b class='flag-5'>推理</b>

    周四研討會(huì)預(yù)告 | 注冊(cè)報(bào)名 NVIDIA AI Inference Day - 大模型推理線上研討會(huì)

    由 CSDN 舉辦的 NVIDIA AI Inference Day - 大模型推理線上研討會(huì),將幫助您了解 NVIDIA 開源大型語言
    的頭像 發(fā)表于 10-26 09:05 ?311次閱讀