從FP32到BF16,再到混合精度的全景解析

筆者做過目標檢測模型、超分模型以及擴散生成模型。其中最常使用的是單精度FP32、半精度FP16、BF16
雙精度"FP64"就不說了,不太會用到。

#1. 單精度、半精度和混合精度

單精度(FP32)、半精度(FP16)和混合精度(FP32+FP16) 是常見的浮點數計算格式,在深度學習模型的訓練與推理中都有涉及。
它們在計算效率、顯存占用和數值穩定性上有顯著差異。以下是它們的核心區別對比:

精度類型位數顯存占用&生成效果生成速度用途
FP3232-bit🌟🌟🌟🌟最高🌟最慢預訓練
FP1616-bit🌟🌟🌟🌟🌟微調訓練、推理
BF1616-bit🌟🌟🌟🌟🌟微調訓練、推理
混合精度FP16+FP32🌟🌟🌟🌟🌟微調訓練、推理
FP8 (E4M3)8-bit🌟最低🌟🌟🌟🌟最快邊緣設備推理
FP8 (E5M2)8-bit🌟最低🌟🌟🌟🌟最快邊緣設備推理

注:推理即圖像生成。


#2. BF16(Brain Float16)是什么?

簡單的說,「BF16」的顯存占用與「FP16」相近,但穩定性與訓練效果更好。所以在訓練時建議用「BF16」替代「FP16」。

「BF16」由 Google Brain 提出,保留與 FP32 相同的指數位數(8 位指數),僅降低小數位數(從FP32的23 位縮減到7位)。雖然BF16點小數部分精度低于 FP16的10位,但這部分對深度學習影響較小,可以暫時忽略。


#3. 混合精度(FP16 + FP32)是什么?

混合精度會同時使用 FP16 和 FP32,關鍵部分(如梯度更新)保留 FP32。

筆者一般會直接使用自動混合精度(AMP),即讓程序自己選擇精度,一般來講模型權重會保存為FP32,前向與反向傳播用FP16。


#4. FP8的簡單了解

實際中很少使用FP8,因為它們的生成效果幾乎是最差的(不管INT8),基本只會用于邊緣設備(如RV1126等)。所以只需簡單了解:

  • E5M2(5 位指數,2 位小數):動態范圍大,適合梯度計算(訓練)。
  • E4M3(4 位指數,3 位小數):精度稍高,適合前向傳播(生成)。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/77141.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/77141.shtml
英文地址,請注明出處:http://en.pswp.cn/web/77141.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Hot100方法及易錯點總結2

本文旨在記錄做hot100時遇到的問題及易錯點 五、234.回文鏈表141.環形鏈表 六、142. 環形鏈表II21.合并兩個有序鏈表2.兩數相加19.刪除鏈表的倒數第n個節點 七、24.兩兩交換鏈表中的節點25.K個一組翻轉鏈表(坑點很多,必須多做幾遍)138.隨機鏈表的復制148.排序鏈表 N…

不在同一個局域網的遠程桌面連接怎么設置?本地內網計算機讓其他網絡遠程訪問6種常用方法

遠程桌面是一種重要的技術,它允許用戶通過網絡遠程訪問和控制另一臺計算機的桌面界面。但是,當被控制端和控制端不在同一個局域網內時,就需要進行一些額外的配置。本文將詳細介紹在不同局域網下設置遠程桌面的步驟,以幫助讀者順利…

天機學堂day10作業,完善兌換優惠券功能

UserCouponServiceImpl /*** 兌換碼兌換優惠券* param code*/TransactionalOverridepublic void exchangeCoupon(String code) {//1、校驗code是否為空if (StringUtils.isBlank(code)) {throw new BadRequestException("非法參數!");}//2、解析兌換碼&…

JAVA工程師面試題(七)

1、遞歸實現1,1,2,3,5,8,….第30個數是多少&#xff1f; public static int Foo(int i) { if (i < 0) return 0; else if(i > 0 && i < 2) return 1; else return Foo(i -1) Foo(i - 2); }…

Qt基礎009(HTTP編程和QJSON)

文章目錄 軟件開發網絡架構BS架構/CS架構 HTTP基本概念QT的HTTP編程JSON數據概述QT生成JSON數據QT解析JSON數據 軟件開發網絡架構 BS架構/CS架構 ? 在計算機網絡和軟件開發中&#xff0c;CS架構&#xff08;Client-Server Architecture&#xff0c;客戶端-服務器架構&#x…

高精度電流檢測革命:同軸分流器的創新應用與技術演進

一、精密測量原理與結構創新 基于電磁場分布重構技術的新型同軸分流器&#xff0c;突破了傳統電流測量的物理限制。該器件采用三維環形電阻矩陣結構&#xff0c;通過多層級導電環的精密排列&#xff0c;實現了電流路徑的渦流自補償。區別于常規分流器的平板式設計&#xff0c;其…

【使用層次序列構建二叉樹(數據結構C)】

使用層次序列構建二叉樹&#xff08;C語言實現&#xff09; 在數據結構學習過程中&#xff0c;二叉樹的構建方式通常有遞歸建樹&#xff08;前序/中序&#xff09;和層次建樹&#xff08;廣度優先&#xff09;兩種。本文將介紹一種基于輔助隊列實現的層次建樹方法&#xff0c;并…

設置Rocky Linux盒蓋不休眠的3個簡單步驟

在 Rocky linux&#xff08;和其他基于 RHEL 的發行版&#xff09;中&#xff0c;當你關閉筆記本電腦的蓋子時&#xff0c;默認行為通常是使系統休眠。如果你想更改這一行為&#xff0c;例如&#xff0c;使系統在關閉蓋子時只是鎖定&#xff0c;你可以按照以下步驟操作&#xf…

WPF的發展歷程

文章目錄 WPF的發展歷程引言起源與背景&#xff08;2001-2006&#xff09;從Avalon到WPF設計目標與創新理念 WPF核心技術特點與架構基礎架構與渲染模型關鍵技術特點MVVM架構模式 WPF在現代Windows開發中的地位與前景當前市場定位與其他微軟UI技術的關系未來發展前景 社區貢獻與…

【器件專題1——IGBT第1講】IGBT:電力電子領域的 “萬能開關”,如何撐起新能源時代?

一、IGBT 是什么&#xff1f;重新認識這個 “低調的電力心臟” 你可能沒聽過 IGBT&#xff0c;但一定用過它驅動的設備&#xff1a;家里的變頻空調、路上的電動汽車、屋頂的光伏逆變器&#xff0c;甚至高鐵和電網的核心部件里&#xff0c;都藏著這個 “電力電子開關的瑞士軍刀”…

新聞速遞丨Altair 與 Databricks 達成合作,加速數據驅動型創新

NEWS Altair 近日宣布與數據和人工智能公司 Databricks 達成戰略合作&#xff0c;通過新一代數據統一化、圖譜驅動智能和企業級人工智能&#xff08;AI&#xff09;技術賦能雙方客戶。 此次合作整合了兩大平臺的核心優勢&#xff0c;將 Altair RapidMiner 平臺的強大功能&…

c++11 :智能指針

目錄 一 為什么需要智能指針&#xff1f; 二 智能指針的使用及原理 1. RAII 2. auto_ptr 3. unique_ptr 4. shared_ptr 5. weak_ptr 三 內存泄漏 1.什么是內存泄漏&#xff0c;內存泄漏的危害 2. 如何避免內存泄漏&#xff1f; 一 為什么需要智能指針&#xff1f; …

大模型在直腸癌預測及治療方案制定中的應用研究

目錄 一、引言 1.1 研究背景與意義 1.2 研究目的 1.3 研究方法與創新點 二、大模型技術概述 2.1 大模型的基本原理 2.2 常見大模型類型及特點 2.3 在醫療領域的應用進展 三、直腸癌預測相關數據收集與處理 3.1 數據來源 3.2 數據清洗與預處理 3.3 特征工程 四、大…

VRRP與防火墻雙機熱備實驗

目錄 實驗一&#xff1a;VRRP負載均衡與故障切換 實驗拓撲?編輯一、實驗配置步驟 1. 基礎網絡配置 2. VRRP雙組配置 二、關鍵驗證命令 1. 查看VRRP狀態 2. 路由表驗證 三、流量分析 正常負載均衡場景&#xff1a; 故障切換驗證&#xff1a; 實驗二&#xff1a;防火…

OpenCV中的SIFT特征提取

文章目錄 引言一、SIFT算法概述二、OpenCV中的SIFT實現2.1 基本使用2.1.1 導入庫2.1.2 圖片預處理2.1.3 創建SIFT檢測器2.1.4 檢測關鍵點并計算描述符2.1.5 檢測關鍵點并計算描述符并對關鍵點可視化2.1.6 印關鍵點和描述符的形狀信息 2.2 參數調優 三、SIFT的優缺點分析3.1 優點…

【信息系統項目管理師】高分論文:論成本管理與采購管理(信用管理系統)

更多內容請見: 備考信息系統項目管理師-專欄介紹和目錄 文章目錄 論文1、規劃成本管理2、成本估算3、成本預算4、成本控制論文 2019年1月,我作為項目經理參與了 XX基金管理有限公司信用管理系統項目。該項目成 本1000萬,建設期為1年。通過該項目,XX基金管理有限公司在信用…

從邊緣到云端,如何通過時序數據庫 TDengine 實現數據的全局洞

在當今數字化轉型加速的背景下&#xff0c;海量的數據生成和實時處理需求已成為企業面臨的關鍵挑戰。無論是物聯網設備、工業自動化系統&#xff0c;還是智能城市的各類傳感器&#xff0c;數據的采集、傳輸與分析效率&#xff0c;直接影響企業的決策與運營。為此&#xff0c;TD…

Axure全局變量的含義與基礎應用

親愛的小伙伴,在您瀏覽之前,煩請關注一下,在此深表感謝! Axure產品經理精品視頻課已登錄CSDN可點擊學習https://edu.csdn.net/course/detail/40420 課程主題:全局變量 主要內容:全局變量含義、基礎應用 應用場景:元件賦值 案例展示: 案例視頻:

題目 3320: 藍橋杯2025年第十六屆省賽真題-產值調整

題目 3320: 藍橋杯2025年第十六屆省賽真題-產值調整 時間限制: 2s 內存限制: 192MB 提交: 549 解決: 122 題目描述 偏遠的小鎮上&#xff0c;三兄弟共同經營著一家小型礦業公司 “兄弟礦業”。公司旗下有三座礦山&#xff1a;金礦、銀礦和銅礦&#xff0c;它們的初始產值分別用…

常見緩存淘汰算法(LRU、LFU、FIFO)的區別與實現

一、前言 緩存淘汰算法主要用于在內存資源有限的情況下&#xff0c;優化緩存空間的使用效率。以確保緩存系統在容量不足時能夠智能地選擇需要移除的數據。 二、LRU&#xff08;Least Recently Used&#xff09; 核心思想&#xff1a;淘汰最久未被訪問的數據。實現方式&#x…