一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

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

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

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

【技術(shù)干貨】教你如何基于華為昇騰CANN架構(gòu)快速實現(xiàn)模型推理應(yīng)用

英碼科技 ? 來源:英碼科技 ? 作者:英碼科技 ? 2024-03-08 08:36 ? 次閱讀

昇騰的AI全軟件棧平臺、開源框架、CANN、MindSpore、MindX 等工具,可以讓開發(fā)者實現(xiàn)「統(tǒng)一端邊云,全端自動部署」,開啟了機器學(xué)習(xí)開發(fā)的新時代,一直被人們寄予厚望。但正因為資源極其豐富,浩如星辰,想要快速尋找,到摸索清楚其中的原理,并最終結(jié)合自己手上的項目實現(xiàn)應(yīng)用部署,人力成本、時間成本將增加不少,不利于快速推進項目。

現(xiàn)在~好消息來了! 經(jīng)過英碼科技工程師們的認真梳理,本篇文章,我們以英碼科技EA500I邊緣計算盒子為例,為大家介紹在昇騰CANN架構(gòu)下,基于PyTorch框架的ResNet50模型,以及基于YOLOV7網(wǎng)絡(luò)模型如何快速實現(xiàn)模型推理應(yīng)用。

CANN架構(gòu)介紹

異構(gòu)計算架構(gòu)CANN(Compute Architecture for Neural Networks)是華為針對AI場景推出的異構(gòu)計算架構(gòu),向上支持多種AI框架,包括MindSpore、PyTorch、TensorFlow等,向下服務(wù)AI處理器編程,發(fā)揮承上啟下的關(guān)鍵作用,是提升昇騰AI處理器計算效率的關(guān)鍵平臺。同時針對多樣化應(yīng)用場景,提供多層次編程接口,支持用戶快速構(gòu)建基于昇騰平臺的AI應(yīng)用和業(yè)務(wù)。

01

樣例1介紹(ResNet50模型)

▍基于PyTorch框架的ResNet50模型,對*.jpg圖片分類,輸出各圖片所屬分類的編號、名稱。

樣例的理流程如下圖所示:

dfe64976-dce3-11ee-b759-92fbcf53809c.jpg 1 ? 樣例下載 ?

命令行方式下載(下載時間較長,需稍作等待)。

# 開發(fā)環(huán)境,非root用戶命令行中執(zhí)行以下命令下載源碼倉。

cd ${HOME}

git clone https://gitee.com/ascend/samples.git

?

注:如果需要切換到其它tag版本,以v0.9.0為例,可執(zhí)行以下命令。

git check outv0.9.0

樣例的代碼目錄說明如下:

dfea4c24-dce3-11ee-b759-92fbcf53809c.png

2 準備環(huán)境

(1)安裝CANN軟件

最新版本的CANN軟件安裝指南請戳→安裝指南

注:英碼科技EA500I智能工作站系統(tǒng)環(huán)境中已適配該軟件,無需另行下載安裝。

(2)設(shè)置環(huán)境變量

注:“$HOME/Ascend”請?zhí)鎿Q“Ascend-cann-toolkit”包的實際安裝路徑。

# 設(shè)置CANN依賴的基礎(chǔ)環(huán)境變量

. ${HOME}/Ascend/ascend-toolkit/set_env.sh

#如果用戶環(huán)境存在多個python3版本,則指定使用python3.7.5版本

exportPATH=/usr/local/python3.7.5/bin:$PATH

#設(shè)置python3.7.5庫文件路徑

exportLD_LIBRARY_PATH=/usr/local/python3.7.5/lib:$LD_LIBRARY_PATH

# 配置程序編譯依賴的頭文件與庫文件路徑

export DDK_PATH=$HOME/Ascend/ascend-toolkit/latest

export NPU_HOST_LIB=$DDK_PATH/runtime/lib64/stub

(3)安裝OpenCV

執(zhí)行以下命令安裝opencv ,須確保是3.x版本;

sudo apt-get installlibopencv-dev

3 樣例運行

(1)獲取PyTorch框架的ResNet50模型(*.onnx),并轉(zhuǎn)換為昇騰AI處理器能識別的模型(*.om)

注:此處以昇騰310 AI處理器為 例,針對其它昇騰AI處理器的模型轉(zhuǎn)換,需修改atc命令中的-- soc_version參數(shù)值。

# 為方便下載,這里直接給出原始模型下載及模型轉(zhuǎn)換命令,可以直接拷貝執(zhí)行。

cd $HOME/samples/inference/modelInference/sampleResnetQuickStart/

cpp/model wgethttps://obs-9be7.obs.cn-east- 2.myhuaweicloud.com/003_Atc_Models/resnet50/resnet50.onnx

atc --model=resnet50.onnx--framework=5 --output=resnet50 --

input_shape="actual_input_1:1,3,224,224" --soc_version=Ascend310

atc命令中各參數(shù)的解釋如下,詳細約束說明請參見《ATC模型轉(zhuǎn)換指南》。

--model :ResNet-50網(wǎng)絡(luò)的模型文件的路徑

--framework:原始框架類型。5表示ONNX。

--output:resnet50.om模型文件的路徑。請注意,記錄保存該om模型文件的路徑,后續(xù)開發(fā)應(yīng)用時需要使用。

--input_shape:模型輸入數(shù)據(jù)的shape。

--soc_version:昇騰AI處理器的版本。

說明:如果無法確定當(dāng)前設(shè)備的soc_version,則在安裝驅(qū)動包的服務(wù)器執(zhí)行npu-smi info 命令進行查詢,在查詢到的“Name“前增加Ascend信息,例如“Name“對應(yīng)取值為_xxxyy_ , 實際配置的soc_version值為Ascend_xxxyy_。

(2)獲取測試圖片數(shù)據(jù)

請從以下鏈接獲取該樣例的測試圖片dog1_ 1024_683.jpg,放在data目錄下。

cd $HOME/samples/inference/modelInference/

sampleResnetQuickStart/cpp/data wget

https://obs-9be7.obs.cn-east- 2.myhuaweicloud.com/models/aclsample/dog1_1024_683.jpg

注:若需更換測試圖片,則需自行準備測試圖片,并將測試圖片放到data錄下。

(3)編譯樣例源碼

執(zhí)行以下命令編譯樣例源碼:

cd $HOME/samples/inference/modelInference/

sampleResnetQuickStart/

cpp/scripts bash sample_build.sh

(4)運行樣例

執(zhí)行以下腳本運行樣例:

bash sample_run.sh

執(zhí)行成功后,在屏幕上的關(guān)鍵提示信息示例如下,提示信息中的label表示類別標識、conf表示該分類的最大置信度,class表示所屬類別。這些值可能會根據(jù)版本、環(huán)境有所不同,請以實際情況為準:

[INFO] The sample starts to run

out_dog1_1024_683.jpg

label:162 conf:0.902209 class:beagle

[INFO] Theprogram runs successfully

4 代碼邏輯詳解(C&C++語言)

樣例中的接口調(diào)用流程如下圖所示:

dffa7360-dce3-11ee-b759-92fbcf53809c.png

在此樣例基礎(chǔ)上:

若想要更換測試圖片,只需自行準備好新的jpg圖片并存放到樣例的data目錄下,圖片數(shù)據(jù)預(yù)處理時會自 動從該目錄下讀取圖片數(shù)據(jù)、再縮放至模型所需的大小。

若想要更換模型,則需關(guān)注以下修改點:

1.準備模型:需自行準備好原始模型并存放到樣例的model目錄下,再參考《ATC模型轉(zhuǎn)換指南》轉(zhuǎn)換模型;

2. 加載模型:在aclmdlLoadFromFile接口處加載轉(zhuǎn)換后的模型;

3. 準備模型輸入/輸出數(shù)據(jù)結(jié)構(gòu):根據(jù)新模型的輸入、輸出個數(shù)準備;

4. 獲取推理結(jié)果&后處理:根據(jù)新模型的輸出數(shù)據(jù)進行后處理。

須知:一般來說,更換其它圖片分類模型(例如resnet50- >resnet101) ,由于同類模型的輸入、輸出類 似,在此樣例基礎(chǔ)上改動較小,但如果更換為其它類型的模型(例如目標檢測模型),由于不同類型模型的輸入、輸出差別較大,在此樣例基礎(chǔ)上數(shù)據(jù)預(yù)處理、模型輸入&輸出準備以及數(shù)據(jù)后處理等改動很大,建議在Ascend Sample倉先找到目標檢測類的樣例,再基于目標檢測樣例修改。

02

樣例2介紹(YOLOV7模型)

以YOLOV7網(wǎng)絡(luò)模型為例,使能Acllite對圖片進行預(yù)處理,并通過模型轉(zhuǎn)換使能靜態(tài)AIPP功能,使能AIPP功能后,YUV420SP_U8格式圖片轉(zhuǎn)化為RGB,然后減均值和歸一化操作,并將該信息固化到轉(zhuǎn)換后的離線模型中,對YOLOV7網(wǎng)絡(luò)執(zhí)行推理,對圖片進行物體檢測和分類,并給出標定框和類別置信度。

樣例輸入:圖片。

樣例輸出:圖片物體檢測,并且在圖片上給出物體標注框,類別以及置信度。 1 獲取源碼包

可以使用以下兩種方式下載,請選擇其中一種進行源碼準備。

命令行方式下載(下載時間較長,但步驟簡單):

# 開發(fā)環(huán)境,非root用戶命令行中執(zhí)行以下命令下載源碼倉。

cd ${HOME}

git clone https://gitee.com/ascend/samples.git

注:如果需要切換到其它tag版本,以v0.5.0為例,可執(zhí)行以下命令。

git checkoutv0.5.0 壓縮包方式下載(下載時間較短,但步驟稍微復(fù)雜)。

注:如果需要下載其它版本代碼,請先請根據(jù)前置條件說明進行samples倉分支切換。 # 1. samples倉右上角選擇【克隆/下載】下拉框并選擇【下載ZIP】。

# 2. 將ZIP包上傳到開發(fā)環(huán)境中的普通用戶家目錄中, 【例如:${HOME}/ascend-samples- master.zip】。

# 3. 開發(fā)環(huán)境中,執(zhí)行以下命令,解壓zip包。

cd ${HOME}

unzip ascend-samples-master.zip

2 第三方依賴安裝 設(shè)置環(huán)境變量,配置程序編譯依賴的頭文件,庫文件路徑?!?HOME/Ascend”請?zhí)鎿Q“Ascend-cann-toolkit”包的實際安裝路徑。 export DDK_PATH=$HOME/Ascend/ascend-toolkit/latest

export NPU_HOST_LIB=$DDK_PATH/runtime/lib64/stub

export THIRDPART_PATH=${DDK_PATH}/thirdpart

export LD_LIBRARY_PATH=${THIRDPART_PATH}/lib:$LD_LIBRARY_PATH

創(chuàng)建THIRDPART_PATH路徑:

mkdir-p${THIRDPART_PATH}

acllite

注:源碼安裝ffmpeg主要是為了acllite庫的安裝 執(zhí)行以下命令安裝x264 # 下載x264

cd ${HOME}

git clonehttps://code.videolan.org/videolan/x264.git

cdx264

# 安裝x264

./configure --enable-shared --disable-asm

make

sudomakeinstall

sudo cp /usr/local/lib/libx264.so.164 /lib 執(zhí)行以下命令安裝ffmpeg:

# 下載ffmpeg

cd ${HOME}

wge thttp://www.ffmpeg.org/releases/ffmpeg-4.1.3.tar.gz --no-check-certificatetar-zxvfffmpeg-4.1.3.tar.gz

cdffmpeg-4.1.3

# 安裝ffmpeg

./configure --enable-shared --enable-pic --enable-static--disable-x86asm--enable-libx264 --enable-gpl--prefix=${THIRDPART_PATH}

make-j8

make install

執(zhí)行以下命令安裝acllite: cd ${HOME}/samples/inference/acllite/cplusplus

make

make install

安裝opencv

執(zhí)行以下命令安裝opencv(注:須確保是3.x版本)

sudo apt-get installlibopencv-dev

3 樣例運行

(1)數(shù)據(jù)準備

請從以下鏈接獲取該樣例的輸入圖片,放在data目錄下。

cd $HOME/samples/inference/modelInference/sampleYOLOV7/data

wgethttps://obs-9be7.obs.cn-east-

2.myhuaweicloud.com/models/aclsample/dog1_1024_683.jpg (2)ATC模型轉(zhuǎn)換 將YOLOV7原始模型轉(zhuǎn)換為適配昇騰310處理器的離線模型(*.om文件),放在model路徑下。 #為了方便下載,在這里直接給出原始模型下載及模型轉(zhuǎn)換命令,可以直接拷貝執(zhí)行。 cd $HOME/samples/inference/modelInference/ sampleYOLOV7/model

wgethttps://obs-9be7.obs.cn-east-

2.myhuaweicloud.com/003_Atc_Models/yolov7/yolov7x.onnx

wgethttps://obs-9be7.obs.cn-east-

2.myhuaweicloud.com/003_Atc_Models/yolov7/aipp.cfg

atc--model=yolov7x.onnx--framework=5 --output=yolov7x --

input_shape="images:1,3,640,640" --soc_version=Ascend310 --

insert_op_conf=aipp.cfg 樣例編譯

執(zhí)行以下命令,執(zhí)行編譯腳本,開始樣例編譯。 cd $HOME/samples/inference/modelInference/ sampleYOLOV7/scripts

bash sample_build.sh 樣例運行

執(zhí)行運行腳本,開始樣例運行。 bash sample_run.s

(3)樣例結(jié)果展示

運行完成后,會在樣例工程的out目錄下生成推理后的圖片,顯示對比結(jié)果如下所示。

結(jié)語

以上內(nèi)容詳細介紹了在昇騰CANN架構(gòu)下,基于PyTorch框架的ResNet50模型,以及基于YOLOV7網(wǎng)絡(luò)模型如何快速實現(xiàn)模型推理應(yīng)用的主要流程,尤其方便已購買英碼科技EA500I邊緣計算盒子的開發(fā)者朋友們快速實現(xiàn)推理應(yīng)用。

下期將會繼續(xù)更新關(guān)于昇騰開發(fā)工具的其他詳細使用教程,歡迎關(guān)注!

# end

e016cc18-dce3-11ee-b759-92fbcf53809c.png ? ?

關(guān)于英碼科技

廣州英碼信息科技有限公司成立于2006年,是一家致力提供“云-邊-端”協(xié)同的AIoT產(chǎn)品與細分場景解決方案的人工智能企業(yè)。

英碼旗下的“深元”AI產(chǎn)品體系,打造了一個以高、中、低多層次算力硬件為基礎(chǔ),算法自訓(xùn)練和生態(tài)整合為驅(qū)動,AI賦能平臺為支撐,工具鏈為輔助的全棧式AI應(yīng)用服務(wù)架構(gòu),打通場景需求-算法-硬件集成-業(yè)務(wù)平臺對接-項目交付的全鏈條,為客戶提供算法、算力雙重自定義的產(chǎn)品和服務(wù),推動AI和邊緣計算在細分場景的廣泛應(yīng)用。

英碼的AIoT產(chǎn)品以及定制服務(wù)面向智慧城市、智慧交通、智慧金融、智慧校園、智慧應(yīng)急、智慧園區(qū)等不同行業(yè)和細分場景,為客戶提供全方位的軟硬件支撐和產(chǎn)品自定義能力。

英碼科技的以“感知萬物,智算賦能”為核心理念,軟硬結(jié)合全面賦能千行百業(yè)智能化轉(zhuǎn)型,構(gòu)建無所不及的智能世界。

審核編輯 黃宇

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

    關(guān)注

    216

    文章

    34909

    瀏覽量

    254645
  • AI
    AI
    +關(guān)注

    關(guān)注

    87

    文章

    33554

    瀏覽量

    274263
  • 架構(gòu)
    +關(guān)注

    關(guān)注

    1

    文章

    525

    瀏覽量

    25805
  • pytorch
    +關(guān)注

    關(guān)注

    2

    文章

    808

    瀏覽量

    13686
收藏 人收藏

    評論

    相關(guān)推薦

    華為人工智能伙伴峰會成功舉行

    近日,在華為中國合作伙伴大會期間,人工智能伙伴峰會在深圳正式召開。會上,華為計算業(yè)務(wù)總裁
    的頭像 發(fā)表于 04-01 15:38 ?470次閱讀

    大華股份亮相華為中國合作伙伴大會2025 星漢×推動行業(yè)創(chuàng)新發(fā)展

    以“因聚而生 眾智有為”為主題的“華為中國合作伙伴大會2025”在深圳國際會展中心舉辦。作為華為的生態(tài)合作伙伴,大華股份受邀出席峰會,亮相多展區(qū)并攜手
    的頭像 發(fā)表于 03-25 17:43 ?906次閱讀
    大華股份亮相<b class='flag-5'>華為</b>中國合作伙伴大會2025 星漢×<b class='flag-5'>昇</b><b class='flag-5'>騰</b>推動行業(yè)創(chuàng)新發(fā)展

    DeepSeek在上的模型部署的常見問題及解決方案

    2024年12月26日,DeepSeek-V3橫空出世,以其卓越性能備受矚目。該模型發(fā)布即支持,用戶可在硬件和MindIE
    的頭像 發(fā)表于 03-25 16:53 ?573次閱讀
    DeepSeek在<b class='flag-5'>昇</b><b class='flag-5'>騰</b>上的<b class='flag-5'>模型</b>部署的常見問題及解決方案

    創(chuàng)思遠達與合作推動AI PC應(yīng)用創(chuàng)新

    近日,端側(cè)智能領(lǐng)域創(chuàng)新者創(chuàng)思遠達攜手,基于算力平臺正式發(fā)布一系列AIPC應(yīng)用。雙方深度融合了
    的頭像 發(fā)表于 03-25 10:22 ?378次閱讀

    潤和軟件將持續(xù)深化“+DeepSeek”技術(shù)路線

    (以下簡稱“潤和軟件”)作為生態(tài)核心伙伴受邀出席,人工智能研究院AI總工朱凱分享了基于“ + openEuler + OpenHarmony + DeepSeek”的全場景云-
    的頭像 發(fā)表于 03-08 09:39 ?520次閱讀

    中軟國際發(fā)布基于計算架構(gòu)的“DeepSeek社保基金監(jiān)管大模型一體機”解決方案

    ? ? ? 為了提升社?;鸨O(jiān)管效能,推動社保基金管理的智能化、科學(xué)化、精準化,中軟國際正式推出“DeepSeek社?;鸨O(jiān)管大模型一體機”解決方案。該方案基于計算架構(gòu),深度融合D
    的頭像 發(fā)表于 03-06 19:19 ?783次閱讀
    中軟國際發(fā)布基于<b class='flag-5'>昇</b><b class='flag-5'>騰</b>計算<b class='flag-5'>架構(gòu)</b>的“DeepSeek社?;鸨O(jiān)管大<b class='flag-5'>模型</b>一體機”解決方案

    推理服務(wù)器+DeepSeek大模型 技術(shù)培訓(xùn)在圖為科技成功舉辦

    2月17日,華為政企業(yè)務(wù)團隊受邀蒞臨圖為科技深圳總部,并成功舉辦了一場聚焦于《推理服務(wù)器+DeepSeek大模型》的專業(yè)知識培訓(xùn)。 此次
    的頭像 發(fā)表于 02-26 17:38 ?444次閱讀
    <b class='flag-5'>昇</b><b class='flag-5'>騰</b><b class='flag-5'>推理</b>服務(wù)器+DeepSeek大<b class='flag-5'>模型</b> <b class='flag-5'>技術(shù)</b>培訓(xùn)在圖為科技成功舉辦

    華為推出DeepSeek大模型一體機

    DeepSeek大模型的橫空出世,讓AI正以前所未有的速度重塑各行各業(yè)的發(fā)展格局。DeepSeek一體機深度融合騰高性能算力底座與DeepSeek全系列大
    的頭像 發(fā)表于 02-18 09:56 ?1718次閱讀

    迅龍軟件出席華為APN伙伴大會,獲APN鉆石伙伴授牌及兩項大獎

    2025年2月15日,華為APN伙伴大會在深圳順利舉辦。本次大會匯聚來自能源、交通、制造、教育等各行各業(yè)的APN合作伙伴,共同探討A
    的頭像 發(fā)表于 02-17 17:04 ?701次閱讀
    迅龍軟件出席<b class='flag-5'>華為</b><b class='flag-5'>昇</b><b class='flag-5'>騰</b>APN伙伴大會,獲<b class='flag-5'>昇</b><b class='flag-5'>騰</b>APN鉆石伙伴授牌及兩項大獎

    喜訊 英碼科技受邀出席華為APN伙伴大會,正式成為「鉆石部件伙伴」,喜獲多個重磅獎項!

    2025年2月15日,華為APN伙伴大會在深圳順利舉辦。英碼科技以戰(zhàn)略級合作伙伴身份喜獲雙重殊榮——榮登 「鉆石部件伙伴」 行列,并
    的頭像 發(fā)表于 02-17 16:32 ?373次閱讀
    喜訊 英碼科技受邀出席<b class='flag-5'>華為</b><b class='flag-5'>昇</b><b class='flag-5'>騰</b>APN伙伴大會,正式成為「<b class='flag-5'>昇</b><b class='flag-5'>騰</b>鉆石部件伙伴」,喜獲多個重磅獎項!

    谷東科技民航維修智能決策大模型榮獲華為技術(shù)認證

    經(jīng)過華為專業(yè)評測,谷東科技民航維修智能決策大模型1.0成功與華為Atlas 800T A2訓(xùn)練服務(wù)器完成并通過了相互兼容性測試認證,正式榮獲華為
    的頭像 發(fā)表于 09-30 15:22 ?680次閱讀

    思原生,助力智譜打造自主創(chuàng)新大模型體系!

    自從全面啟動原生開發(fā),越來越多的生態(tài)伙伴選擇,大模型生態(tài)從“應(yīng)用遷移”走向“原生開發(fā)”,充分依托
    的頭像 發(fā)表于 08-20 18:29 ?648次閱讀
    <b class='flag-5'>昇</b><b class='flag-5'>騰</b>與<b class='flag-5'>昇</b>思原生,助力智譜打造自主創(chuàng)新大<b class='flag-5'>模型</b>體系!

    華為AI云服務(wù)可適配100多個大模型

    在近日舉辦的華為開發(fā)者大會2024上,華為常務(wù)董事、華為云CEO張平安向全球開發(fā)者們宣布了一項重大進展——華為
    的頭像 發(fā)表于 06-24 10:49 ?1060次閱讀

    如何基于OrangePi?AIpro開發(fā)AI推理應(yīng)

    。通過CANN軟件棧的AI編程接口,可滿足大多數(shù)AI算法原型驗證、推理應(yīng)用開發(fā)的需求。AscendCL(AscendComputingLanguage,
    的頭像 發(fā)表于 06-04 14:23 ?777次閱讀
    如何基于OrangePi?AIpro開發(fā)AI<b class='flag-5'>推理應(yīng)</b>用

    華為發(fā)布會大模型翻車?社區(qū)回應(yīng)!

    針對網(wǎng)傳華為發(fā)布會大模型生成圖片疑人工操控的消息,社區(qū)回應(yīng):5月10日,在鯤鵬騰開發(fā)者大會的一場
    的頭像 發(fā)表于 05-16 14:14 ?971次閱讀
    <b class='flag-5'>華為</b>發(fā)布會大<b class='flag-5'>模型</b>翻車?<b class='flag-5'>昇</b><b class='flag-5'>騰</b>社區(qū)回應(yīng)!