chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

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

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

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

深度學(xué)習(xí)模型轉(zhuǎn)成TensorRT引擎的流程

NVIDIA英偉達(dá)企業(yè)解決方案 ? 來源:NVIDIA英偉達(dá)企業(yè)解決方案 ? 作者:NVIDIA英偉達(dá)企業(yè)解 ? 2022-05-25 11:24 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

前面我們花了很多力氣在 TAO 上面訓(xùn)練模型,其最終目的就是要部署到推理設(shè)備上發(fā)揮功能。除了將模型訓(xùn)練過程進(jìn)行非常大幅度的簡(jiǎn)化,以及整合遷移學(xué)習(xí)等功能之外,TAO 還有一個(gè)非常重要的任務(wù),就是讓我們更輕松獲得 TensorRT 加速引擎。

將一般框架訓(xùn)練的模型轉(zhuǎn)換成 TensorRT 引擎的過程并不輕松,但是 TensorRT 所帶來的性能紅利又是如此吸引人,如果能避開麻煩又能享受成果,這是多么好的福利!

下圖是將一般模型轉(zhuǎn)成 TesnorRT 的標(biāo)準(zhǔn)步驟,在中間 “Builder” 右邊的環(huán)節(jié)是相對(duì)單純的,比較復(fù)雜的是 “Builder” 左邊的操作過程。

9d325b6e-db60-11ec-ba43-dac502259ad0.png

下圖就上圖 “NetworkDefinition” 比較深入的內(nèi)容,TensorRT 提供 Caffe、uff 與 ONNX 三種解析器,其中 Caffe 框架已淡出市場(chǎng)、uff 僅支持 TensorFlow 框架,其他的模型就需要透過 ONNX 交換格式進(jìn)行轉(zhuǎn)換。

9d87b744-db60-11ec-ba43-dac502259ad0.png

這里以 TensorRT 所提供的 YOLOv3 范例來做范例,在安裝 Jetpack 4.6 版本的 Jetson Nano 設(shè)備上進(jìn)行體驗(yàn),請(qǐng)進(jìn)入到 TesnorRT 的 YOLOv3 范例中:

cd  /usr/src/tensorrt/samples/python/yolov3_onnx

?

根據(jù)項(xiàng)目的 README.md 指示,我們需要先為工作環(huán)境添加依賴庫(kù),不過由于部分庫(kù)的版本關(guān)系,請(qǐng)先將 requirements.txt 的第 1、3 行進(jìn)行以下的修改:

numpy==1.19.4protobuf>=3.11.3onnx==1.10.1Pillow; python_version<"3.6"Pillow==8.1.2; python_version>="3.6"pycuda<2021.1

然后執(zhí)行以下指令進(jìn)行安裝:

python3 -m pip install -r requirements.txt

接下來需要先下載 download.yml 里面的三個(gè)文件,

wget https://pjreddie.com/media/files/yolov3.weights wget https://raw.githubusercontent.com/pjreddie/darknet/f86901f6177dfc6116360a13cc06ab680e0c86b0/cfg/yolov3.cfg wgethttps://github.com/pjreddie/darknet/raw/f86901f6177dfc6116360a13cc06ab680e0c86b0/data/dog.jpg

然后就能執(zhí)行以下指令,將 yolov3.weights 轉(zhuǎn)成 yolov3.onnx

./yolov3_to_onnx.py  -d  /usr/src/tensorrt

這個(gè)執(zhí)行并不復(fù)雜,是因?yàn)?TensorRT 已經(jīng)提供 yolov3_to_onnx.py 的 Python 代碼,但如果將代碼打開之后,就能感受到這 750+ 行代碼要處理的內(nèi)容是相當(dāng)復(fù)雜,必須對(duì) YOLOv3 的結(jié)構(gòu)與算法有足夠了解,包括解析 yolov3.cfg 的 788 行配置。想象一下,如果這個(gè)代碼需要自行開發(fā)的話,這個(gè)難度有多高!

接下去再用下面指令,將 yolov3.onnx 轉(zhuǎn)成 yolov3.trt 加速引擎:

./onnx_to_tensorrt.py  -d  /usr/src/tensorrt

以上是從一般神經(jīng)網(wǎng)絡(luò)模型轉(zhuǎn)成 TensorRT 加速引擎的標(biāo)準(zhǔn)步驟,這需要對(duì)所使用的神經(jīng)網(wǎng)絡(luò)的結(jié)構(gòu)層、數(shù)學(xué)公式、參數(shù)細(xì)節(jié)等等都有相當(dāng)足夠的了解,才有能力將模型先轉(zhuǎn)換成 ONNX 文件,這是技術(shù)門檻比較高的環(huán)節(jié)。

  • TAO 工具訓(xùn)練的模型轉(zhuǎn)成 TensorRT 引擎的工具

用 TAO 工具所訓(xùn)練、修剪并匯出的 .etlt 文件,可以跳過上述過程,直接在推理設(shè)備上轉(zhuǎn)換成 TensorRT 加速引擎,我們完全不需要了解神經(jīng)網(wǎng)絡(luò)的任何結(jié)構(gòu)與算法內(nèi)容,直接將 .etlt 文件復(fù)制到推理設(shè)備上,然后用 TAO 所提供的轉(zhuǎn)換工具進(jìn)行轉(zhuǎn)換就可以。

這里總共需要執(zhí)行三個(gè)步驟:

1、下載 tao-converter 工具,并調(diào)試環(huán)境:

請(qǐng)根據(jù)以下 Jetpack 版本,下載對(duì)應(yīng)的 tao-converter 工具:

Jetpack 4.4:https://developer.nvidia.com/cuda102-trt71-jp44-0 Jetpack 4.5:https://developer.nvidia.com/cuda110-cudnn80-trt72-0 Jetpack 4.6:https://developer.nvidia.com/jp46-20210820t231431z-001zip

下載壓縮文件后執(zhí)行解壓縮,就會(huì)生成 tao-converterREADME.txt 兩個(gè)文件,再根據(jù) README.txt 的指示執(zhí)行以下步驟:

(1)安裝 libssl-dev 庫(kù):

sudo  apt  install  libssl-dev

(2) 配置環(huán)境,請(qǐng)?jiān)?strong> ~/.bashrc 最后面添加兩行設(shè)置:

export TRT_LIB_PATH=/usr/lib/aarch64-linux-gnuexportTRT_INCLUDE_PATH=/usr/include/aarch64-linux-gnu

(3) 將 tao-convert 變成可執(zhí)行文件:

source ~/.bashrcchmod  +x  tao-convertersudocptao-converter/usr/local/bin

2、安裝 TensorRT 的 OSS (Open Source Software)

這是 TensorRT 的開源插件,項(xiàng)目在 https://github.com/NVIDIA/TensorRT,下面提供的安裝說明非常復(fù)雜,我們將繁瑣的步驟整理之后,就是下面的步驟:

export  ARCH=請(qǐng)根據(jù)設(shè)備進(jìn)行設(shè)置,例如Nano為53、NX為72、Xavier為62export  TRTVER=請(qǐng)根據(jù)系統(tǒng)的TensorRT版本,例如Jetpack 4.6為8.0.1git  clone  -b  $TRTVER  https://github.com/nvidia/TensorRT  TRToss cd  TRToss/git checkout  -b  $TRTVER  &&  git  submodule  update  --init  --recursivemkdir  -p  build  &&  cd  buildcmake .. -DGPU_ARCHS=$ARCH-DTRT_LIB_DIR=/usr/lib/aarch64-linux-gnu/-DCMAKE_C_COMPILER=/usr/bin/gcc-DTRT_BIN_DIR=`pwd`/out-DTRT_PLATFORM_ID=aarch64-DCUDA_VERSION=10.2make  nvinfer_plugin  -j$(nproc)sudomv/usr/lib/aarch64-linux-gnu/libnvinfer_plugin.so.8.0.1  /usr/lib/aarch64-linux-gnu/libnvinfer_plugin.so.8.0.1.baksudocplibnvinfer_plugin.so.8.0.1/usr/lib/aarch64-linux-gnu/libnvinfer_plugin.so.8.0.1

這樣就能開始用 tao-converter 來將 .etlt 文件轉(zhuǎn)換成 TensorRT 加速引擎了。

3、用 tao-converter 進(jìn)行轉(zhuǎn)換

(1)首先將 TAO 最終導(dǎo)出 (export) 的文件復(fù)制到 Jetson Nano 上,例如前面的實(shí)驗(yàn)中最終導(dǎo)出的文件 ssd_resnet18_epoch_080.etlt,

(2)在 Jetson Nano 上執(zhí)行 TAO 的 ssd.ipynb 最后所提供的轉(zhuǎn)換指令,如下:

%set_env KEY=tao converter  -k  $KEY -d  3,300,300     -o  NMS     -e  ssd_resnet18_epoch_080.trt   # 自己設(shè)定輸出名稱    -m  16     -t  fp16                       # 使用export時(shí)相同精度    -i  nchw ssd_resnet18_epoch_080.etlt

這樣就能生成在 Jetson Nano 上的 ssd_resnet18_epoch_080.trt 加速引擎文件,整個(gè)過程比傳統(tǒng)方式要簡(jiǎn)便許多。

原文標(biāo)題:NVIDIA Jetson Nano 2GB系列文章(64):將模型部署到Jetson設(shè)備

文章出處:【微信公眾號(hào):NVIDIA英偉達(dá)企業(yè)解決方案】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

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

    關(guān)注

    14

    文章

    5304

    瀏覽量

    106328
  • 深度學(xué)習(xí)
    +關(guān)注

    關(guān)注

    73

    文章

    5561

    瀏覽量

    122778
  • 模型訓(xùn)練
    +關(guān)注

    關(guān)注

    0

    文章

    20

    瀏覽量

    1455

原文標(biāo)題:NVIDIA Jetson Nano 2GB系列文章(64):將模型部署到Jetson設(shè)備

文章出處:【微信號(hào):NVIDIA-Enterprise,微信公眾號(hào):NVIDIA英偉達(dá)企業(yè)解決方案】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    聆思CSK6大模型語(yǔ)音開發(fā)板接入DeepSeek資料匯總(包含深度求索/火山引擎/硅基流動(dòng)華為昇騰滿血版)

    調(diào)用DeepSeek節(jié)點(diǎn),最終將大模型輸出的結(jié)果進(jìn)行語(yǔ)音合成實(shí)現(xiàn)端側(cè)播報(bào) 下載工程模板導(dǎo)入,配置參數(shù)后綁定開發(fā)板ID即可。 關(guān)鍵參數(shù)說明(以火山引擎版為例): HOST
    發(fā)表于 03-06 17:02

    在OpenVINO?工具套件的深度學(xué)習(xí)工作臺(tái)中無(wú)法導(dǎo)出INT8模型怎么解決?

    無(wú)法在 OpenVINO? 工具套件的深度學(xué)習(xí) (DL) 工作臺(tái)中導(dǎo)出 INT8 模型
    發(fā)表于 03-06 07:54

    深度學(xué)習(xí)模型的魯棒性優(yōu)化

    深度學(xué)習(xí)模型的魯棒性優(yōu)化是一個(gè)復(fù)雜但至關(guān)重要的任務(wù),它涉及多個(gè)方面的技術(shù)和策略。以下是一些關(guān)鍵的優(yōu)化方法: 一、數(shù)據(jù)預(yù)處理與增強(qiáng) 數(shù)據(jù)清洗 :去除數(shù)據(jù)中的噪聲和異常值,這是提高模型魯棒
    的頭像 發(fā)表于 11-11 10:25 ?1179次閱讀

    中科創(chuàng)達(dá)與火山引擎達(dá)成深度合作

    近日,中科創(chuàng)達(dá)與火山引擎在成都盛美利亞酒店隆重舉行深度合作簽署儀式。火山引擎汽車行業(yè)總經(jīng)理?xiàng)盍?、中科?chuàng)達(dá)執(zhí)行總裁常衡生見證簽約,火山引擎汽車出行戰(zhàn)略客戶總經(jīng)理梁民忞、中科創(chuàng)達(dá)副總裁兼
    的頭像 發(fā)表于 11-04 14:34 ?674次閱讀

    GPU深度學(xué)習(xí)應(yīng)用案例

    GPU在深度學(xué)習(xí)中的應(yīng)用廣泛且重要,以下是一些GPU深度學(xué)習(xí)應(yīng)用案例: 一、圖像識(shí)別 圖像識(shí)別是深度學(xué)習(xí)
    的頭像 發(fā)表于 10-27 11:13 ?1338次閱讀

    FPGA加速深度學(xué)習(xí)模型的案例

    FPGA(現(xiàn)場(chǎng)可編程門陣列)加速深度學(xué)習(xí)模型是當(dāng)前硬件加速領(lǐng)域的一個(gè)熱門研究方向。以下是一些FPGA加速深度學(xué)習(xí)
    的頭像 發(fā)表于 10-25 09:22 ?1212次閱讀

    AI大模型深度學(xué)習(xí)的關(guān)系

    AI大模型深度學(xué)習(xí)之間存在著密不可分的關(guān)系,它們互為促進(jìn),相輔相成。以下是對(duì)兩者關(guān)系的介紹: 一、深度學(xué)習(xí)是AI大
    的頭像 發(fā)表于 10-23 15:25 ?2874次閱讀

    FPGA做深度學(xué)習(xí)能走多遠(yuǎn)?

    并行計(jì)算的能力,可以在硬件層面并行處理大量數(shù)據(jù)。這種并行處理能力使得 FPGA 在執(zhí)行深度學(xué)習(xí)算法時(shí)速度遠(yuǎn)超傳統(tǒng)處理器,能夠提供更低的延遲和更高的吞吐量,從而加速模型訓(xùn)練和推理過程,滿足實(shí)時(shí)性要求較高
    發(fā)表于 09-27 20:53

    將amc1200 SPICE模型轉(zhuǎn)成PSPICE模型后 無(wú)法在ORCAD16.5中使用,為什么?

    我按TI提供之文件 [ 在PSpice中使用Spice模型 ]將amc1200之SPICE模型轉(zhuǎn)成PSPICE模型后卻無(wú)法在ORCAD16.5中使用,不知是否是SPICE轉(zhuǎn)換PSPI
    發(fā)表于 08-29 07:25

    【《大語(yǔ)言模型應(yīng)用指南》閱讀體驗(yàn)】+ 基礎(chǔ)知識(shí)學(xué)習(xí)

    今天來學(xué)習(xí)大語(yǔ)言模型在自然語(yǔ)言理解方面的原理以及問答回復(fù)實(shí)現(xiàn)。 主要是基于深度學(xué)習(xí)和自然語(yǔ)言處理技術(shù)。 大語(yǔ)言模型涉及以下幾個(gè)過程: 數(shù)據(jù)收
    發(fā)表于 08-02 11:03

    深度學(xué)習(xí)編譯器和推理引擎的區(qū)別

    深度學(xué)習(xí)編譯器和推理引擎在人工智能領(lǐng)域中都扮演著至關(guān)重要的角色,但它們各自的功能、應(yīng)用場(chǎng)景以及優(yōu)化目標(biāo)等方面存在顯著的差異。以下是對(duì)兩者區(qū)別的詳細(xì)探討。
    的頭像 發(fā)表于 07-17 18:12 ?1795次閱讀

    深度學(xué)習(xí)模型有哪些應(yīng)用場(chǎng)景

    深度學(xué)習(xí)模型作為人工智能領(lǐng)域的重要分支,已經(jīng)在多個(gè)應(yīng)用場(chǎng)景中展現(xiàn)出其巨大的潛力和價(jià)值。這些應(yīng)用不僅改變了我們的日常生活,還推動(dòng)了科技進(jìn)步和產(chǎn)業(yè)升級(jí)。以下將詳細(xì)探討深度
    的頭像 發(fā)表于 07-16 18:25 ?4070次閱讀

    深度神經(jīng)網(wǎng)絡(luò)模型量化的基本方法

    深度神經(jīng)網(wǎng)絡(luò)模型量化是深度學(xué)習(xí)領(lǐng)域中的一種重要優(yōu)化技術(shù),旨在通過減少模型參數(shù)的精度(即從高精度浮點(diǎn)數(shù)如32位浮點(diǎn)數(shù)FP32降低到低精度整數(shù)如
    的頭像 發(fā)表于 07-15 11:26 ?1320次閱讀

    深度學(xué)習(xí)模型量化方法

    深度學(xué)習(xí)模型量化是一種重要的模型輕量化技術(shù),旨在通過減少網(wǎng)絡(luò)參數(shù)的比特寬度來減小模型大小和加速推理過程,同時(shí)盡量保持
    的頭像 發(fā)表于 07-15 11:01 ?1099次閱讀
    <b class='flag-5'>深度</b><b class='flag-5'>學(xué)習(xí)</b><b class='flag-5'>模型</b>量化方法

    深度學(xué)習(xí)算法在嵌入式平臺(tái)上的部署

    隨著人工智能技術(shù)的飛速發(fā)展,深度學(xué)習(xí)算法在各個(gè)領(lǐng)域的應(yīng)用日益廣泛。然而,將深度學(xué)習(xí)算法部署到資源受限的嵌入式平臺(tái)上,仍然是一個(gè)具有挑戰(zhàn)性的任務(wù)。本文將從嵌入式平臺(tái)的特點(diǎn)、
    的頭像 發(fā)表于 07-15 10:03 ?3170次閱讀