18video性欧美19sex,欧美高清videosddfsexhd,性少妇videosexfreexxx片中国,激情五月激情综合五月看花,亚洲人成网77777色在线播放

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

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

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

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

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

掃碼添加小助手

加入工程師交流群

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

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

  • 一般深度學習模型轉(zhuǎn)成 TensorRT 引擎的流程

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

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

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

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

這里以 TensorRT 所提供的 YOLOv3 范例來做范例,在安裝 Jetpack 4.6 版本的 Jetson Nano 設備上進行體驗,請進入到 TesnorRT 的 YOLOv3 范例中:

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

?

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

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í)行以下指令進行安裝:

python3 -m pip install -r requirements.txt

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

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

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

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

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

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

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

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

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

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

請根據(jù)以下 Jetpack 版本,下載對應的 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í)行解壓縮,就會生成 tao-converterREADME.txt 兩個文件,再根據(jù) README.txt 的指示執(zhí)行以下步驟:

(1)安裝 libssl-dev 庫:

sudo  apt  install  libssl-dev

(2) 配置環(huán)境,請在 ~/.bashrc 最后面添加兩行設置:

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 的開源插件,項目在 https://github.com/NVIDIA/TensorRT,下面提供的安裝說明非常復雜,我們將繁瑣的步驟整理之后,就是下面的步驟:

export  ARCH=請根據(jù)設備進行設置,例如Nano為53、NX為72、Xavier為62export  TRTVER=請根據(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 進行轉(zhuǎn)換

(1)首先將 TAO 最終導出 (export) 的文件復制到 Jetson Nano 上,例如前面的實驗中最終導出的文件 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   # 自己設定輸出名稱    -m  16     -t  fp16                       # 使用export時相同精度    -i  nchw ssd_resnet18_epoch_080.etlt

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

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

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

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

    關注

    14

    文章

    5442

    瀏覽量

    108535
  • 深度學習
    +關注

    關注

    73

    文章

    5587

    瀏覽量

    123737
  • 模型訓練
    +關注

    關注

    0

    文章

    20

    瀏覽量

    1508

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

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

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

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    自動駕駛中Transformer大模型會取代深度學習嗎?

    [首發(fā)于智駕最前沿微信公眾號]近年來,隨著ChatGPT、Claude、文心一言等大語言模型在生成文本、對話交互等領域的驚艷表現(xiàn),“Transformer架構是否正在取代傳統(tǒng)深度學習”這一話題一直被
    的頭像 發(fā)表于 08-13 09:15 ?3788次閱讀
    自動駕駛中Transformer大<b class='flag-5'>模型</b>會取代<b class='flag-5'>深度</b><b class='flag-5'>學習</b>嗎?

    RK3128 Android 7.1 進入深度休眠流程分析

    RK3128 Android 7.1 進入深度休眠流程分析RK3128是瑞芯微電子推出的一款低功耗四核Cortex-A7處理器,運行Android 7.1系統(tǒng)時進入深度休眠(Deep Sleep
    發(fā)表于 07-22 10:45

    信而泰×DeepSeek:AI推理引擎驅(qū)動網(wǎng)絡智能診斷邁向 “自愈”時代

    DeepSeek-R1:強大的AI推理引擎底座DeepSeek是由杭州深度求索人工智能基礎技術研究有限公司開發(fā)的新一代AI大模型。其核心優(yōu)勢在于強大的推理引擎能力,融合了自然語言處理(
    發(fā)表于 07-16 15:29

    寧暢與與百度文心大模型展開深度技術合作

    近日,百度正式開源文心大模型4.5系列模型。作為文心開源合作伙伴,寧暢在模型開源首日即實現(xiàn)即刻部署,做到“開源即接入、發(fā)布即可用”。據(jù)悉,文心4.5開源系列全部基于飛槳深度
    的頭像 發(fā)表于 07-07 16:26 ?495次閱讀

    如何使用Docker部署大模型

    隨著深度學習和大模型的快速發(fā)展,如何高效地部署這些模型成為了一個重要的挑戰(zhàn)。Docker 作為一種輕量級的容器化技術,能夠?qū)?b class='flag-5'>模型及其依賴環(huán)境
    的頭像 發(fā)表于 05-24 16:39 ?681次閱讀

    模型時代的深度學習框架

    作者:算力魔方創(chuàng)始人/英特爾創(chuàng)新大使劉力 在 CNN時代 ,AI模型的參數(shù)規(guī)模都在百萬級別,僅需在單張消費類顯卡上即可完成訓練。例如,以業(yè)界知名的CNN模型: ResNet50 為例,模型參數(shù)
    的頭像 發(fā)表于 04-25 11:43 ?509次閱讀
    大<b class='flag-5'>模型</b>時代的<b class='flag-5'>深度</b><b class='flag-5'>學習</b>框架

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

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

    在OpenVINO?工具套件的深度學習工作臺中無法導出INT8模型怎么解決?

    無法在 OpenVINO? 工具套件的深度學習 (DL) 工作臺中導出 INT8 模型
    發(fā)表于 03-06 07:54

    Flexus X 實例 ultralytics 模型 yolov10 深度學習 AI 部署與應用

    前言: ???深度學習新紀元,828 B2B 企業(yè)節(jié) Flexus X 實例特惠!想要高效訓練 YOLOv10 模型,實現(xiàn)精準圖像識別?Flexus X 以卓越算力,助您輕松駕馭大規(guī)模數(shù)據(jù)集,加速
    的頭像 發(fā)表于 12-24 12:24 ?1076次閱讀
    Flexus X 實例 ultralytics <b class='flag-5'>模型</b> yolov10 <b class='flag-5'>深度</b><b class='flag-5'>學習</b> AI 部署與應用

    NPU在深度學習中的應用

    隨著人工智能技術的飛速發(fā)展,深度學習作為其核心驅(qū)動力之一,已經(jīng)在眾多領域展現(xiàn)出了巨大的潛力和價值。NPU(Neural Processing Unit,神經(jīng)網(wǎng)絡處理單元)是專門為深度學習
    的頭像 發(fā)表于 11-14 15:17 ?2588次閱讀

    pcie在深度學習中的應用

    深度學習模型通常需要大量的數(shù)據(jù)和強大的計算能力來訓練。傳統(tǒng)的CPU計算資源有限,難以滿足深度學習的需求。因此,GPU(圖形處理單元)和TPU
    的頭像 發(fā)表于 11-13 10:39 ?1688次閱讀

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

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

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

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

    GPU深度學習應用案例

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

    FPGA加速深度學習模型的案例

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