「NE100」是超星未來基于自研計(jì)算芯片「驚蟄R1」和全流程開發(fā)工具鏈「魯班」打造的智能計(jì)算平臺開發(fā)套件,包括完備的推理環(huán)境。其中魯班工具鏈以 docker 形式提供,完整包括剪枝、量化、編譯工具以及相應(yīng)實(shí)例。NE100 配套完整,開箱即用,無需繁瑣的安裝過程。
下面以目標(biāo)檢測模型 YOLOv5 為例,展示部署過程。
注:開發(fā)環(huán)境為Linux 系統(tǒng)的 PC 或服務(wù)器,神經(jīng)網(wǎng)絡(luò)需要導(dǎo)出為 ONNX 格式文件。
可通過標(biāo)準(zhǔn)命令加載工具鏈 docker 文件:
gunzip -c nova_development_kit.tar.gz | sudo docker load
參考用戶手冊中示例腳本啟動(dòng)容器,進(jìn)入開發(fā)環(huán)境。
基于原始模型導(dǎo)出 ONNX 文件時(shí),請確保網(wǎng)絡(luò)已經(jīng)處于推理模式,并且計(jì)算圖的輸入節(jié)點(diǎn)為首個(gè) CONV 算子的輸入(格式[1,C,H,W]),輸出節(jié)點(diǎn)為最后一個(gè)(組)CONV 算子的輸出,詳細(xì)信息請參考用戶手冊。
#1模型量化與編譯
1個(gè)API,5行代碼,輕松完成
量化工具以 ONNX 文件和部分圖片為輸入,將神經(jīng)網(wǎng)絡(luò)從 FP32 量化為 INT8 精度,目前支持 PTQ 與 QAT 功能。僅需在代碼中將量化和編譯工具導(dǎo)入并通過 API 調(diào)用,即可對 ONNX 模型完成量化和編譯,分別只需要1個(gè) API 和5行代碼。詳細(xì)的 API 說明請參考用戶手冊。
1. 導(dǎo)入量化工具
from nquantizer import run_quantizer
2. 調(diào)用量化工具
quant_model = run_quantizer(
onnx_model,
dataloader=val_loader,
num_batches=200,
output_dir=work_dir + "/quantizer_output",
input_vars=input_vars,
3. 導(dǎo)入編譯工具
from ncompiler import run_compiler
4. 調(diào)用編譯工具
run_compiler(
input_dir=work_dir + "/quantizer_output",
output_dir=work_dir + "/compiler_output",
enable_simulator=True,
enable_profiler=True,
)
編譯后 compiler_output 目錄中的 npu.param(模型結(jié)構(gòu)描述文件)和 npu.bin(模型權(quán)重文件)是 NE100 部署時(shí)所需要的文件。

#2模型部署
接口簡潔,功能豐富,快速調(diào)用NPU
為了實(shí)現(xiàn) 驚蟄R1 芯片多核 NPU 的簡單高效推理與應(yīng)用開發(fā),超星未來基于 NCNN 推理框架增量開發(fā)運(yùn)行時(shí),并提供高性能加速庫,滿足異構(gòu)推理的端到端優(yōu)化需求。
運(yùn)行時(shí)特別設(shè)計(jì)了 npumat, npunet 和 npuextractor 等組件,功能如下:
npumat:提供NPU使用的數(shù)據(jù)排布格式HWC,提高數(shù)據(jù)存儲讀取性能
npunet:提供模型不變信息的基礎(chǔ)數(shù)據(jù)結(jié)構(gòu),支持核心綁定、優(yōu)先級調(diào)度、數(shù)據(jù)導(dǎo)出、性能監(jiān)測等功能
npuextractor:提供NPU推理所需的set_input, get_output, get_time、extract等基本功能
YOLOv5 推理中前后處理部分與主流平臺上的代碼一致,應(yīng)用遷移時(shí)僅需更換 NPU 的推理代碼,包括:
1. 初始化幀數(shù)據(jù)結(jié)構(gòu)

2. 加載網(wǎng)絡(luò)結(jié)構(gòu)描述文件與網(wǎng)絡(luò)權(quán)重文件,并且配置核心綁定、數(shù)據(jù)導(dǎo)出及性能監(jiān)測等功能

3. 基于加載的模型文件和前處理后的幀數(shù)據(jù)進(jìn)行推理,提取結(jié)果用于后處理

#3模型推理
架構(gòu)高效,能耗出色,助力AI應(yīng)用落地
推理代碼經(jīng)過編譯后運(yùn)行,即可得到如下推理結(jié)果:

得益于超星未來自研平湖架構(gòu)的高效設(shè)計(jì),YOLOv5 等主流網(wǎng)絡(luò)的算力利用率均超過 70%,同時(shí)芯片整體功耗可控制在 8W 左右,有效支持各類邊緣端 AI 應(yīng)用部署。
-
神經(jīng)網(wǎng)絡(luò)
+關(guān)注
關(guān)注
42文章
4811瀏覽量
103074 -
模型
+關(guān)注
關(guān)注
1文章
3500瀏覽量
50147 -
目標(biāo)檢測
+關(guān)注
關(guān)注
0文章
223瀏覽量
15949
原文標(biāo)題:超星未來 NE100 開箱體驗(yàn),15分鐘部署目標(biāo)檢測模型
文章出處:【微信號:NOVAUTO,微信公眾號:超星未來】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
AI模型部署邊緣設(shè)備的奇妙之旅:目標(biāo)檢測模型
【小e物聯(lián)網(wǎng)試用體驗(yàn)】+ 超清開箱體驗(yàn)
【NanoPi NEO試用體驗(yàn)】開箱體驗(yàn)
【VEML6040環(huán)境顏色檢測試用體驗(yàn)】一、開箱體驗(yàn),驚喜有余
15分鐘充滿快充移動(dòng)電源---未來的潛力有多大?
在Arm虛擬硬件上部署PP-PicoDet模型
在Arm虛擬硬件上部署PP-PicoDet模型的設(shè)計(jì)方案
高通公布新型快速充電技術(shù),15分鐘內(nèi)將4500mAh電池充滿100%
目標(biāo)檢測模型和Objectness的知識
如何在移動(dòng)設(shè)備上訓(xùn)練和部署自定義目標(biāo)檢測模型
YOLOX目標(biāo)檢測模型的推理部署
AI愛克斯開發(fā)板上使用OpenVINO加速YOLOv8目標(biāo)檢測模型

評論