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

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

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

如何在英特爾獨(dú)立顯卡上訓(xùn)練TensorFlow模型的全流程

英特爾物聯(lián)網(wǎng) ? 來源:英特爾物聯(lián)網(wǎng) ? 2023-01-12 15:32 ? 次閱讀

本文將基于蝰蛇峽谷(Serpent Canyon) 詳細(xì)介紹如何在英特爾獨(dú)立顯卡上訓(xùn)練 TensorFlow 模型的全流程。

1.1 英特爾 銳炫 獨(dú)立顯卡簡介

38200bf4-9244-11ed-bfe3-dac502259ad0.png

英特爾 銳炫 顯卡基于 Xe-HPG 微架構(gòu),Xe HPG GPU 中的每個 Xe 內(nèi)核都配置了一組 256 位矢量引擎,旨在加速傳統(tǒng)圖形和計算工作負(fù)載,以及新的 1024 位矩陣引擎或 Xe 矩陣擴(kuò)展,旨在加速人工智能工作負(fù)載。

1.2 蝰蛇峽谷簡介

389abb60-9244-11ed-bfe3-dac502259ad0.png

蝰蛇峽谷(Serpent Canyon) 是一款性能強(qiáng)勁,并且體積小巧的高性能迷你主機(jī),搭載全新一代混合架構(gòu)的第 12 代智能英特爾 酷睿 處理器,并且內(nèi)置了英特爾 銳炫 A770M 獨(dú)立顯卡。

搭建訓(xùn)練 TensorFlow 模型的開發(fā)環(huán)境

Windows 版本要求

訓(xùn)練 TensorFlow 所依賴的軟件包 TensorFlow-DirectML-Plugin 包要求:

Windows 10的版本≥1709

Windows 11的版本≥21H2

用“Windows logo 鍵+ R鍵”啟動“運(yùn)行”窗口,然后輸入命令“winver”可以查得Windows版本。

38cefb50-9244-11ed-bfe3-dac502259ad0.png

下載并安裝最新的英特爾顯卡驅(qū)動

到英特爾官網(wǎng)下載并安裝最新的英特爾顯卡驅(qū)動。驅(qū)動下載鏈接:

https://www.intel.cn/content/www/cn/zh/download/726609/intel-arc-iris-xe-graphics-whql-windows.html

下載并安裝Anaconda

下載并安裝 Python 虛擬環(huán)境和軟件包管理工具Anaconda:

https://www.anaconda.com/

安裝完畢后,用下面的命令創(chuàng)建并激活虛擬環(huán)境tf2_a770:

conda create --name tf2_a770 python=3.9
conda activate tf2_a770

向右滑動查看完整代碼

安裝TensorFlow2

在虛擬環(huán)境 tf2_a770 中安裝 TensorFlow 2.10。需要注意的是:tensorflow-directml-plugin軟件包當(dāng)前只支持TensorFlow 2.10。

pip install tensorflow-cpu==2.10

向右滑動查看完整代碼

安裝 tensorflow-directml-plugin

在虛擬環(huán)境 tf2_a770 中安裝 tensorflow-directml-plugin,這是一個在 Windows 平臺上的機(jī)器學(xué)習(xí)訓(xùn)練加速軟件包。

 // @brief 加載推理數(shù)據(jù)
    // @param input_node_name 輸入節(jié)點(diǎn)名
    // @param input_data 輸入數(shù)據(jù)數(shù)組
    public void load_input_data(string input_node_name, float[] input_data) {
      ptr = NativeMethods.load_input_data(ptr, input_node_name, ref input_data[0]);
    }
    // @brief 加載圖片推理數(shù)據(jù)
    // @param input_node_name 輸入節(jié)點(diǎn)名
    // @param image_data 圖片矩陣
    // @param image_size 圖片矩陣長度
    public void load_input_data(string input_node_name, byte[] image_data, ulong image_size, int type) {
      ptr = NativeMethods.load_image_input_data(ptr, input_node_name, ref image_data[0], image_size, type);
    }

向右滑動查看完整代碼

到此,在 Windows 平臺上用英特爾獨(dú)立顯卡訓(xùn)練 TensorFlow 模型的開發(fā)環(huán)境配置完畢。

在英特爾獨(dú)立顯卡上訓(xùn)練 TensorFlow 模型

下載并解壓 flower 數(shù)據(jù)集

用下載器(例如,迅雷)下載并解壓 flower 數(shù)據(jù)集,下載鏈接:

https://storage.googleapis.com/download.tensorflow.org/example_images/flower_photos.tgz

38e7ba50-9244-11ed-bfe3-dac502259ad0.png

下載訓(xùn)練代碼啟動訓(xùn)練

請下載 tf2_training_on_A770.py 并放入 flower_photos 同一個文件夾下運(yùn)行。鏈接:

https://gitee.com/ppov-nuc/training_on_intel_GPU/blob/main/tf2_training_on_A770.py

from pathlib import Path
import tensorflow as tf
data_dir = Path("flower_photos")
image_count = len(list(data_dir.glob('*/*.jpg')))
print("Number of image files:", image_count)
# 導(dǎo)入Flower數(shù)據(jù)集
train_ds = tf.keras.utils.image_dataset_from_directory(data_dir, validation_split=0.2,
 subset="training", seed=123, image_size=(180, 180), batch_size=32)
val_ds = tf.keras.utils.image_dataset_from_directory(data_dir, validation_split=0.2, subset="validation", seed=123, image_size=(180, 180), batch_size=32)
# 啟動預(yù)取和數(shù)據(jù)緩存
train_ds = train_ds.cache().shuffle(1000).prefetch(buffer_size=tf.data.AUTOTUNE)
val_ds = val_ds.cache().prefetch(buffer_size=tf.data.AUTOTUNE)
# 創(chuàng)建模型
model = tf.keras.Sequential([
 tf.keras.layers.Rescaling(1./255),
 tf.keras.layers.Conv2D(16, 3, padding='same', activation='relu'),
 tf.keras.layers.MaxPooling2D(),
 tf.keras.layers.Conv2D(32, 3, padding='same', activation='relu'),
 tf.keras.layers.MaxPooling2D(),
 tf.keras.layers.Conv2D(64, 3, padding='same', activation='relu'),
 tf.keras.layers.MaxPooling2D(),
 tf.keras.layers.Dropout(0.2),
 tf.keras.layers.Flatten(),
 tf.keras.layers.Dense(128, activation='relu'),
 tf.keras.layers.Dense(5)
])
# 編譯模型
model.compile(optimizer='adam',
 loss=tf.keras.losses.SparseCategoricalCrossentropy(from_logits=True),
 metrics=['accuracy'])
#訓(xùn)練模型
model.fit(train_ds,validation_data=val_ds,epochs=20)

向右滑動查看完整代碼

390bbbd0-9244-11ed-bfe3-dac502259ad0.png

總結(jié)

英特爾獨(dú)立顯卡支持 TensorFlow 模型訓(xùn)練。下一篇文章,我們將介紹在英特爾獨(dú)立顯卡上訓(xùn)練 PyTorch 模型。

審核編輯 :李倩

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

    關(guān)注

    60

    文章

    9814

    瀏覽量

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

    關(guān)注

    1

    文章

    3054

    瀏覽量

    48569
  • tensorflow
    +關(guān)注

    關(guān)注

    13

    文章

    328

    瀏覽量

    60444

原文標(biāo)題:在英特爾獨(dú)立顯卡上訓(xùn)練TensorFlow模型 | 開發(fā)者實戰(zhàn)

文章出處:【微信號:英特爾物聯(lián)網(wǎng),微信公眾號:英特爾物聯(lián)網(wǎng)】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    英特爾IT的發(fā)展現(xiàn)狀和創(chuàng)新動向

    AI大模型的爆發(fā),客觀給IT的發(fā)展帶來了巨大的機(jī)會。作為把IT發(fā)展上升為戰(zhàn)略高度的英特爾,自然在推動IT發(fā)展中注入了強(qiáng)勁動力。英特爾IT不僅專注于創(chuàng)新、AI和優(yōu)化,以及
    的頭像 發(fā)表于 08-16 15:22 ?440次閱讀

    支持140億參數(shù)AI模型,229TOPS!英特爾重磅發(fā)布第一代車載獨(dú)立顯卡

    英特爾院士、英特爾公司副總裁、汽車事業(yè)部總經(jīng)理Jack Weast指出,在今年的CES,英特爾發(fā)布了第一代AI增強(qiáng)型軟件定義車載SoC。8月8日,
    的頭像 發(fā)表于 08-12 09:07 ?8420次閱讀
    支持140億參數(shù)AI<b class='flag-5'>模型</b>,229TOPS!<b class='flag-5'>英特爾</b>重磅發(fā)布第一代車載<b class='flag-5'>獨(dú)立</b><b class='flag-5'>顯卡</b>

    英特爾發(fā)布第一代車載銳炫獨(dú)立顯卡

    英特爾震撼發(fā)布其第一代車載英特爾銳炫獨(dú)立顯卡,標(biāo)志著智能座艙技術(shù)邁入全新階段。這款顯卡平臺算力高達(dá)229TOPS,不僅支持多達(dá)8塊
    的頭像 發(fā)表于 08-09 14:54 ?433次閱讀

    英特爾正式推出第一代車載獨(dú)立顯卡

    8月8日,英特爾公司正式推出首款英特爾銳炫?車載獨(dú)立顯卡(dGPU),以重塑汽車行業(yè)格局。這一全新產(chǎn)品將賦能汽車廠商打造下一代車載體驗,以滿足并超越當(dāng)前消費(fèi)者對汽車內(nèi)部配備更多屏幕、獲
    的頭像 發(fā)表于 08-09 09:27 ?6145次閱讀
    <b class='flag-5'>英特爾</b>正式推出第一代車載<b class='flag-5'>獨(dú)立</b><b class='flag-5'>顯卡</b>

    tensorflow簡單的模型訓(xùn)練

    在本文中,我們將詳細(xì)介紹如何使用TensorFlow進(jìn)行簡單的模型訓(xùn)練。TensorFlow是一個開源的機(jī)器學(xué)習(xí)庫,廣泛用于各種機(jī)器學(xué)習(xí)任務(wù),包括圖像識別、自然語言處理等。我們將從安裝
    的頭像 發(fā)表于 07-05 09:38 ?409次閱讀

    何在TensorFlow中構(gòu)建并訓(xùn)練CNN模型

    TensorFlow中構(gòu)建并訓(xùn)練一個卷積神經(jīng)網(wǎng)絡(luò)(CNN)模型是一個涉及多個步驟的過程,包括數(shù)據(jù)預(yù)處理、模型設(shè)計、編譯、訓(xùn)練以及評估。下面
    的頭像 發(fā)表于 07-04 11:47 ?576次閱讀

    網(wǎng)友成功在Arm架構(gòu)平臺運(yùn)行英特爾銳炫A750顯卡

    值得注意的是,英特爾獨(dú)立顯卡源于核心顯卡,因此在長期使用的“i915”Linux系統(tǒng)內(nèi)核驅(qū)動中,積累了許多與x86架構(gòu)緊密相關(guān)的特性。
    的頭像 發(fā)表于 05-13 15:54 ?478次閱讀

    華擎推出AI QuickSet軟件,支持英特爾銳炫Arc A系列顯卡

    今日,華擎宣布將AI QuickSet軟件工具擴(kuò)展至英特爾銳炫Arc A系列顯卡,使其能夠便捷地安裝Stable Diffusion web UI OpenVINO,結(jié)合英特爾OpenVINO套件,充分發(fā)揮Arc
    的頭像 發(fā)表于 05-11 10:58 ?567次閱讀

    已有超過500款A(yù)I模型英特爾酷睿Ultra處理器上得以優(yōu)化運(yùn)行

    近日,英特爾宣布在全新英特爾 酷睿 Ultra處理器,有超過500款A(yù)I模型得以優(yōu)化運(yùn)行。
    的頭像 發(fā)表于 05-11 09:31 ?615次閱讀

    英特爾下代銳炫ARC顯卡明年或難問世?

    據(jù)了解,英特爾 ARC 銳炫系列 DG3 獨(dú)立顯卡將使用 Xe2-HPG 架構(gòu),代號為 Battlemage,旨在替代 2022 年發(fā)布的 Alchemist 系列 DG2 獨(dú)立
    的頭像 發(fā)表于 05-06 16:57 ?732次閱讀

    英特爾旗下FPGA公司Altera正式亮相

    日前,英特爾 FPGA Vision線上直播中發(fā)布,將英特爾編程解決方案事業(yè)部 (PSG) 作為獨(dú)立的FPGA公司——Altera。
    的頭像 發(fā)表于 03-18 14:11 ?453次閱讀

    m3芯片相當(dāng)于英特爾幾代cpu m3芯片相當(dāng)于英特爾什么顯卡

    m3芯片相當(dāng)于英特爾幾代cpu 關(guān)于m3芯片相當(dāng)于英特爾幾代cpu的問題,實際并沒有一個準(zhǔn)確的答案,因為不同的芯片制造商與英特爾的CPU產(chǎn)品線在性能、架構(gòu)和用途等方面都存在一定的差異
    的頭像 發(fā)表于 03-11 18:13 ?1.2w次閱讀

    英偉達(dá)顯卡英特爾顯卡哪個好

    英偉達(dá)(NVIDIA)和英特爾(Intel)在顯卡領(lǐng)域都有各自的優(yōu)勢和特點(diǎn),具體哪個更好取決于您的需求和預(yù)算。
    的頭像 發(fā)表于 03-01 17:26 ?6647次閱讀

    英特爾模型適配,大語言模型已成功部署于CPU

    他進(jìn)一步指出,英特爾作為芯片制造商,始終致力于對“合適尺寸”模型的全面適配。面對大模型領(lǐng)域激烈的市場競爭,每個季度大約有4-5款新模型上市,一旦發(fā)現(xiàn)任何新的
    的頭像 發(fā)表于 12-11 15:41 ?999次閱讀

    #高通 #英特爾 #Elite 高通X Elite芯片或終結(jié)蘋果、英特爾的芯片王朝

    高通英特爾蘋果
    深圳市浮思特科技有限公司
    發(fā)布于 :2023年10月27日 16:46:07