作者:
黃明明英特爾創(chuàng)新大使
李翊瑋英特爾開(kāi)發(fā)者技術(shù)推廣經(jīng)理
1背景
在以往的實(shí)踐中,當(dāng)我們針對(duì) ultralytics 的 YOLO 模型開(kāi)展訓(xùn)練工作時(shí),可供選擇的計(jì)算設(shè)備通常局限于 CPU、mps 以及 cuda 這幾種。然而,自 PyTorch2.5 版本發(fā)布之后,情況有了新的變化,PyTorch2.5正式開(kāi)始支持英特爾顯卡,也就是說(shuō),此后我們能夠借助英特爾 銳炫 顯卡來(lái)進(jìn)行模型訓(xùn)練了。
具體而言,PyTorch2.5 版本能夠在不同的操作系統(tǒng)及對(duì)應(yīng)的英特爾顯卡系列上提供支持。在 Linux 系統(tǒng)下,它支持 英特爾 數(shù)據(jù)中心 GPU Max 系列;在 Windows 系統(tǒng)下,則支持英特爾銳炫系列。倘若您想要嘗試通過(guò)不同的方式來(lái)利用英特爾顯卡進(jìn)行相關(guān)操作,可以參考網(wǎng)址來(lái)安裝 GPU 驅(qū)動(dòng)。
接下來(lái),本文將會(huì)選用基于英特爾酷睿 Ultra 7 185H 的AI PC在 Windows 平臺(tái)展開(kāi)具體的演示與應(yīng)用,以便讓大家更為直觀地了解相關(guān)的操作流程與實(shí)際效果。
2安裝驅(qū)動(dòng)
Linux
如果你正在使用 Linux 操作系統(tǒng),并且希望充分發(fā)揮英特爾獨(dú)立顯卡的性能優(yōu)勢(shì),那么安裝正確的 GPU 驅(qū)動(dòng)程序至關(guān)重要。在這個(gè)過(guò)程中,你可以參考網(wǎng)址https://dgpu-docs.intel.com/driver/client/overview.html,該網(wǎng)站提供了詳細(xì)且全面的指導(dǎo),能夠幫助你順利完成 GPU 驅(qū)動(dòng)的安裝。
Windows
在使用英特爾顯卡的過(guò)程中,若你購(gòu)買的是正版系統(tǒng)并且使用的是默認(rèn)的 Windows 系統(tǒng),通常情況下,系統(tǒng)會(huì)默認(rèn)安裝英特爾 銳炫控制面板。這一控制面板為用戶提供了便捷的圖形設(shè)置和管理功能,使用戶能夠根據(jù)自身需求對(duì)顯卡進(jìn)行個(gè)性化的調(diào)整。
然而,若你發(fā)現(xiàn)系統(tǒng)中并未安裝英特爾 銳炫控制面板,也無(wú)需擔(dān)憂,你可以前往英特爾官方支持網(wǎng)站進(jìn)行下載。英特爾為用戶提供了豐富的支持資源,其中包括針對(duì)顯卡相關(guān)問(wèn)題的詳細(xì)解決方案和各類實(shí)用工具的下載鏈接。你可以訪問(wèn)網(wǎng)址,在該頁(yè)面中,你能夠找到與英特爾圖形產(chǎn)品支持相關(guān)的各類信息,涵蓋了眾多英特爾處理器系列、顯卡產(chǎn)品以及相關(guān)技術(shù)和解決方案。通過(guò)瀏覽該頁(yè)面,你可以獲取到更為全面的產(chǎn)品支持信息,有助于你深入了解英特爾圖形產(chǎn)品的特性和功能。
另外,對(duì)于如何在 Windows 10 和 Windows 11 系統(tǒng)中安裝英特爾圖形驅(qū)動(dòng)程序,你可以參考網(wǎng)址https://www.intel.com/content/www/us/en/support/articles/000005629/graphics/processor-graphics.html。該頁(yè)面詳細(xì)介紹了兩種安裝方法,推薦的方法是使用英特爾 驅(qū)動(dòng)程序與支持助手(Intel Driver & Support Assistant)自動(dòng)檢測(cè)并安裝驅(qū)動(dòng)程序。你只需下載該助手,它將為你智能識(shí)別系統(tǒng)所需的驅(qū)動(dòng)程序并完成安裝過(guò)程,更多信息可查看英特爾 驅(qū)動(dòng)程序與支持助手常見(jiàn)問(wèn)題解答(FAQ)。
PyTorch安裝
安裝Pytorch就比較簡(jiǎn)單了,首先建立一個(gè)虛擬的Python環(huán)境,然后:
$pip install --pre torch torchvision torchaudio --index-url https://download.pytorch.org/whl/nightly/xpu
注意:--index-url https://download.pytorch.org/whl/nightly/xpu請(qǐng)務(wù)必加上,如不加上可能安裝的是非XPU版本。
驗(yàn)證:
import torch
若提示 “******xpu.dll 找不到”,先檢查安裝是否完整,回顧有無(wú)遺漏、報(bào)錯(cuò)或中斷情況,確認(rèn)依賴組件是否安裝到位。同時(shí)排查網(wǎng)絡(luò)是否被劫持,可換網(wǎng)絡(luò)環(huán)境或用檢測(cè)工具查看。
若存在問(wèn)題,要重新下載安裝。在此之前,刪除 pip 的緩存,清理舊文件與錯(cuò)誤記錄,保障后續(xù)下載完整無(wú)誤,順利完成安裝,恢復(fù)程序正常運(yùn)行。
$pip uninstall torch $pip uninstall torchaudio $pip uninstall torchvision $pip install --pre torch torchvision torchaudio --index-url https://download.pytorch.org/whl/nightly/xpu
確認(rèn)XPU是否可以使用:
torch.xpu.is_available() True
3使用XPU進(jìn)行模型訓(xùn)練
之前在英特爾主機(jī)上展開(kāi)模型訓(xùn)練,執(zhí)行相應(yīng)代碼就能開(kāi)啟流程,可因未引入CUDA,僅靠 CPU 運(yùn)算,訓(xùn)練耗時(shí)長(zhǎng)得令人咋舌。就拿筆者實(shí)操來(lái)說(shuō),以往用 CPU 訓(xùn)練,滿滿六個(gè)小時(shí)才跑完一輪,效率極低。
好在如今情況大變樣,同樣的訓(xùn)練任務(wù),用AI PC內(nèi)置的英特爾銳炫 graphics耗時(shí)銳減,現(xiàn)在只需一個(gè)半小時(shí)即可完成,效率提升顯著。
model = YOLO("yolo11s.pt") # load a pretrained model (recommended for training) # Train the model results = model.train(data="yolo.yaml", epochs=100, imgsz=640)
依據(jù)官方文檔指引,在利用相關(guān)工具開(kāi)展訓(xùn)練工作時(shí),倘若要啟用除默認(rèn)設(shè)備之外的其他設(shè)備,操作流程原本十分便捷,僅需在 train 方法里精準(zhǔn)傳入對(duì)應(yīng)的 device 參數(shù),便能輕松達(dá)成設(shè)備切換,適配多樣化的硬件資源,實(shí)現(xiàn)訓(xùn)練效能的優(yōu)化提升。
然而,就當(dāng)前情況而言,ultralytics 官方框架尚未提供對(duì) XPU 的原生支持,這無(wú)疑給我們借助 XPU 強(qiáng)大算力來(lái)加速訓(xùn)練進(jìn)程設(shè)置了一道障礙。若執(zhí)意要在訓(xùn)練流程中啟用 XPU,那就不得不對(duì)源代碼進(jìn)行深度剖析與針對(duì)性修改,這一過(guò)程既考驗(yàn)技術(shù)功底,又伴隨著代碼穩(wěn)定性、兼容性等諸多潛在風(fēng)險(xiǎn)。
但值得慶幸的是,即便受限于Ultralytics官方對(duì) XPU 支持的暫缺現(xiàn)狀,我們?nèi)杂凶兺ㄖ?。可以繞開(kāi)復(fù)雜的源代碼改動(dòng),轉(zhuǎn)而在外層通過(guò)合理設(shè)置訓(xùn)練設(shè)備的方式,巧妙引導(dǎo)訓(xùn)練任務(wù)適配期望的硬件設(shè)備,以此確保訓(xùn)練工作能夠在符合自身硬件條件與算力訴求的環(huán)境下高效、平穩(wěn)開(kāi)展。
if __name__ == '__main__': freeze_support() # Load a model model = YOLO("yolo11s.pt") # load a pretrained model (recommended for training) and transfer weights device_str = "xpu:0" device = torch.device(device_str) model = model.to(device) # Train the model results = model.train(data="switch.yaml", epochs=100, imgsz=640)
4總結(jié)
本文圍繞深度學(xué)習(xí)模型訓(xùn)練效率提升與硬件資源優(yōu)化利用這一核心主題,聚焦于英特爾AI PC系列平臺(tái),深入闡述了從傳統(tǒng) CPU 訓(xùn)練模式向 XPU 賦能訓(xùn)練模式的轉(zhuǎn)型歷程,尤其以 YOLO 模型訓(xùn)練作為典型范例展開(kāi)剖析。
過(guò)往依賴 CPU 開(kāi)展 YOLO模型訓(xùn)練時(shí),受限于 CPU 單核處理能力與串行運(yùn)算機(jī)制,訓(xùn)練周期冗長(zhǎng),硬件資源利用率也處于較低水平,極大制約了模型迭代優(yōu)化的速度。而隨著 英特爾AI PC系列平臺(tái)搭載的 XPU 技術(shù)登場(chǎng),局面得以徹底扭轉(zhuǎn)。文中詳述了如何借助這一先進(jìn)平臺(tái),將訓(xùn)練算力基石從 CPU 平穩(wěn)遷移至 XPU,充分釋放 XPU 兼具的多元處理單元協(xié)同優(yōu)勢(shì)與高效并行計(jì)算效能。在這一轉(zhuǎn)變過(guò)程中,訓(xùn)練時(shí)間得到了大幅度壓縮,原本漫長(zhǎng)的訓(xùn)練時(shí)長(zhǎng)銳減,效率實(shí)現(xiàn)數(shù)倍乃至數(shù)十倍的躍升,讓模型訓(xùn)練從耗時(shí) “長(zhǎng)跑” 變?yōu)楦咝?“沖刺”。
更為關(guān)鍵的是,這種基于 XPU 的訓(xùn)練革新絕非僅惠及 YOLO 模型。立足長(zhǎng)遠(yuǎn),憑借 XPU 卓越的架構(gòu)設(shè)計(jì)與強(qiáng)勁算力支撐,后續(xù)眾多依托 torch 框架構(gòu)建的模型及前沿技術(shù),均可無(wú)縫接入并深度運(yùn)用其強(qiáng)大能力。無(wú)論是復(fù)雜的圖像識(shí)別、語(yǔ)義分割,還是自然語(yǔ)言處理領(lǐng)域的深度神經(jīng)網(wǎng)絡(luò)模型,XPU 都將成為它們加速迭代、突破性能瓶頸的 “強(qiáng)效催化劑”,真正達(dá)成對(duì)深度學(xué)習(xí)技術(shù)全方位的加速賦能,推動(dòng)整個(gè)領(lǐng)域朝著更高效、更智能的方向闊步邁進(jìn)。
-
英特爾
+關(guān)注
關(guān)注
61文章
9949瀏覽量
171692 -
Linux
+關(guān)注
關(guān)注
87文章
11292瀏覽量
209322 -
WINDOWS
+關(guān)注
關(guān)注
3文章
3541瀏覽量
88619 -
AI
+關(guān)注
關(guān)注
87文章
30728瀏覽量
268880 -
模型
+關(guān)注
關(guān)注
1文章
3226瀏覽量
48806
原文標(biāo)題:開(kāi)發(fā)者實(shí)戰(zhàn)|使用英特爾 AI PC 為 YOLO 模型訓(xùn)練加速
文章出處:【微信號(hào):英特爾物聯(lián)網(wǎng),微信公眾號(hào):英特爾物聯(lián)網(wǎng)】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論