NVIDIA 在 2019 年 NVIDIA GPU 技術(shù)大會 (GTC) 上宣布推出Jetson Nano開發(fā)者套件,這是一款售價 99 美元的計算機,現(xiàn)已面向嵌入式設(shè)計師、研究人員和 DIY 制造商提供,在緊湊、易于使用的平臺中提供現(xiàn)代 AI 的強大功能完全的軟件可編程性。Jetson Nano 通過四核 64 位 ARM CPU 和 128 核集成 NVIDIA GPU 提供 472 GFLOPS 的計算性能。它還包括采用高效、低功耗封裝的 4GB LPDDR4 內(nèi)存,具有 5W/10W 電源模式和 5V DC 輸入,如圖 1 所示。
新發(fā)布的JetPack 4.2 SDK為基于 Ubuntu 18.04 的 Jetson Nano 提供了完整的桌面 Linux 環(huán)境,具有加速圖形,支持 NVIDIA CUDA Toolkit 10.0,以及 cuDNN 7.3 和 TensorRT 5 等庫。SDK 還包括本地安裝流行的能力TensorFlow、PyTorch、Caffe、Keras 和 MXNet 等開源機器學(xué)習(xí) (ML) 框架,以及 OpenCV 和 ROS 等計算機視覺和機器人開發(fā)框架。
與這些框架和 NVIDIA 領(lǐng)先的 AI 平臺的完全兼容性使得將基于 AI 的推理工作負載部署到 Jetson 比以往任何時候都更加容易。Jetson Nano 為各種復(fù)雜的深度神經(jīng)網(wǎng)絡(luò) (DNN) 模型帶來實時計算機視覺和推理。這些功能支持多傳感器自主機器人、具有智能邊緣分析的物聯(lián)網(wǎng)設(shè)備和先進的人工智能系統(tǒng)。甚至遷移學(xué)習(xí)也可以使用 ML 框架在 Jetson Nano 上本地重新訓(xùn)練網(wǎng)絡(luò)。
Jetson Nano 開發(fā)套件的尺寸僅為 80x100mm,具有四個高速 USB 3.0 端口、MIPI CSI-2 攝像頭連接器、HDMI 2.0 和 DisplayPort 1.3、千兆以太網(wǎng)、M.2 Key-E 模塊、MicroSD 卡插槽、和 40 針 GPIO 接頭。端口和 GPIO 接頭開箱即用,可與各種流行的外圍設(shè)備、傳感器和即用型項目配合使用,例如NVIDIA 在 GitHub 上開源的 3D 打印深度學(xué)習(xí)JetBot 。
開發(fā)套件從可移動的 MicroSD 卡啟動,該卡可以通過任何帶有 SD 卡適配器的 PC 進行格式化和映像。該開發(fā)套件可通過 Micro USB 端口或 5V DC 筒形插孔適配器方便地供電。攝像頭連接器與經(jīng)濟實惠的 MIPI CSI 傳感器兼容,包括基于 8MP IMX219 的模塊,可從 Jetson 生態(tài)系統(tǒng)合作伙伴處獲得。還支持 Raspberry Pi 攝像頭模塊 v2,其中包括 JetPack 中的驅(qū)動程序支持。表 1 顯示了關(guān)鍵規(guī)格。
該開發(fā)套件圍繞 260 針 SODIMM 式系統(tǒng)級模塊 (SoM) 構(gòu)建,如圖 2 所示。SoM 包含處理器、內(nèi)存和電源管理電路。Jetson Nano 計算模塊尺寸為 45x70mm,將于 2019 年 6 月開始發(fā)貨,售價為 129 美元(以 1000 單位為單位),供嵌入式設(shè)計人員集成到生產(chǎn)系統(tǒng)中。量產(chǎn)計算模塊將包括 16GB eMMC 板載存儲和增強型 I/O,帶有 PCIe Gen2 x4/x2/x1、MIPI DSI、附加 GPIO 和 12 個 MIPI CSI-2 通道,用于連接多達三個 x4 攝像頭或四個攝像頭在 x4/x2 配置中。Jetson 的統(tǒng)一內(nèi)存子系統(tǒng)在 CPU、GPU 和多媒體引擎之間共享,提供精簡的 ZeroCopy 傳感器攝取和高效的處理管道。
深度學(xué)習(xí)推理基準(zhǔn)
Jetson Nano 可以運行各種高級網(wǎng)絡(luò),包括流行 ML 框架的完整原生版本,如 TensorFlow、PyTorch、Caffe/Caffe2、Keras、MXNet 等。這些網(wǎng)絡(luò)可用于構(gòu)建自主機器和復(fù)雜的人工智能系統(tǒng),通過實現(xiàn)強大的功能,如圖像識別、對象檢測和定位、姿勢估計、語義分割、視頻增強和智能分析。
圖 3 顯示了來自在線可用模型的推理基準(zhǔn)測試的結(jié)果。有關(guān)在Jetson Nano 上運行這些基準(zhǔn)測試的說明,請參閱此處。推理使用批量大小 1 和 FP16 精度,使用 JetPack 4.2 中包含的 NVIDIA 的TensorRT加速器庫。Jetson Nano 在很多場景下都獲得了實時性能,并且能夠處理多個高清視頻流。
圖 3. 使用 Jetson Nano 和 TensorRT 的各種深度學(xué)習(xí)推理網(wǎng)絡(luò)的性能,使用 FP16 精度和批量大小 1
表 2 提供了完整結(jié)果,包括 Raspberry Pi 3、英特爾神經(jīng)計算棒 2 和 Google Edge TPU Coral 開發(fā)板等其他平臺的性能:
由于內(nèi)存容量有限、網(wǎng)絡(luò)層不受支持或硬件/軟件限制,DNR(未運行)結(jié)果頻繁出現(xiàn)。固定功能神經(jīng)網(wǎng)絡(luò)加速器通常支持相對狹窄的用例集,硬件支持專用層操作,需要網(wǎng)絡(luò)權(quán)重和激活以適應(yīng)有限的片上緩存,以避免顯著的數(shù)據(jù)傳輸損失。它們可能會依靠主機 CPU 來運行硬件不支持的層,并且可能依賴于支持框架的縮減子集(例如 TFLite)的模型編譯器。
Jetson Nano 靈活的軟件和完整的框架支持、內(nèi)存容量和統(tǒng)一的內(nèi)存子系統(tǒng),使其能夠以全高清分辨率運行無數(shù)不同的網(wǎng)絡(luò),包括同時在多個傳感器流上的可變批量大小。這些基準(zhǔn)代表了流行網(wǎng)絡(luò)的樣本,但用戶可以將各種模型和自定義架構(gòu)部署到具有加速性能的 Jetson Nano。Jetson Nano 不僅限于 DNN 推理。其 CUDA 架構(gòu)可用于計算機視覺和數(shù)字信號處理 (DSP),使用包括 FFT、BLAS 和 LAPACK 操作在內(nèi)的算法以及用戶定義的 CUDA 內(nèi)核。
多流視頻分析
Jetson Nano 可實時處理多達 8 個高清全動態(tài)視頻流,并可部署為網(wǎng)絡(luò)視頻錄像機 (NVR)、智能攝像機和物聯(lián)網(wǎng)網(wǎng)關(guān)的低功耗邊緣智能視頻分析平臺。NVIDIA 的DeepStream SDK使用 ZeroCopy 和 TensorRT 優(yōu)化端到端推理管道,以在邊緣和本地服務(wù)器上實現(xiàn)終極性能。下面的視頻展示了 Jetson Nano 同時在八個 1080p30 流上執(zhí)行對象檢測,同時基于 ResNet 的模型以全分辨率和每秒 500 兆像素 (MP/s) 的吞吐量運行。
圖 4 中的框圖顯示了一個示例 NVR 架構(gòu),該架構(gòu)使用 Jetson Nano 通過深度學(xué)習(xí)分析通過千兆以太網(wǎng)攝取和處理多達 8 個數(shù)字流。該系統(tǒng)可以解碼 500 MP/s 的 H.264/H.265 和編碼 250 MP/s 的 H.264/H.265 視頻。
圖 4. 具有 Jetson Nano 和 8x 高清攝像頭輸入的參考 NVR 系統(tǒng)架構(gòu)
計劃在 2019 年第二季度發(fā)布對 Jetson Nano 的 DeepStream SDK 支持。請加入DeepStream 開發(fā)人員計劃以接收有關(guān)即將發(fā)布的版本的通知。
噴氣機器人
NVIDIAJetBot是一個新的開源自主機器人套件,它提供了所有軟件和硬件計劃,以低于 250 美元的價格構(gòu)建一個人工智能驅(qū)動的深度學(xué)習(xí)機器人。硬件材料包括 Jetson Nano、IMX219 8MP 攝像頭、3D 打印機箱、電池組、電機、I2C 電機驅(qū)動器和配件。
該項目通過 Jupyter 筆記本為您提供易于學(xué)習(xí)的示例,介紹如何編寫 Python 代碼來控制電機、訓(xùn)練 JetBot 檢測障礙物、跟蹤人和家庭物體等物體,以及訓(xùn)練 JetBot 跟蹤地板周圍的路徑。通過擴展代碼和使用 AI 框架,可以為 JetBot 創(chuàng)建新功能。
JetBot也有可用的ROS 節(jié)點,為那些希望集成基于 ROS 的應(yīng)用程序和功能(如 SLAM 和高級路徑規(guī)劃)的人支持 ROS Melodic。包含 JetBot ROS 節(jié)點的 GitHub 存儲庫還包括 Gazebo 3D 機器人模擬器模型,允許在虛擬環(huán)境中開發(fā)和測試新的 AI 行為,然后再部署到機器人上。Gazebo 模擬器生成合成相機數(shù)據(jù)并在 Jetson Nano 上運行。
你好人工智能世界
Hello AI World提供了一種很好的方式來開始使用 Jetson 并體驗 AI 的力量。只需幾個小時,您就可以在帶有 JetPack SDK 和 NVIDIA TensorRT 的 Jetson Nano 開發(fā)人員套件上啟動并運行一組深度學(xué)習(xí)推理演示,用于實時圖像分類和對象檢測(使用預(yù)訓(xùn)練模型)。本教程側(cè)重于與計算機視覺相關(guān)的網(wǎng)絡(luò),包括實時攝像頭的使用。您還可以使用 C++ 編寫自己的易于理解的識別程序??捎玫纳疃葘W(xué)習(xí) ROS 節(jié)點將這些識別、檢測和分割推理功能與ROS集成用于集成到先進的機器人系統(tǒng)和平臺中。這些實時推理節(jié)點可以輕松放入現(xiàn)有的 ROS 應(yīng)用程序中。
想要嘗試訓(xùn)練自己的模型的開發(fā)人員可以遵循完整的“兩天演示”教程,該教程涵蓋了圖像分類、對象檢測和語義分割模型的重新訓(xùn)練和自定義遷移學(xué)習(xí)。遷移學(xué)習(xí)微調(diào)特定數(shù)據(jù)集的模型權(quán)重,避免從頭開始訓(xùn)練模型。遷移學(xué)習(xí)在連接了 NVIDIA 離散 GPU 的 PC 或云實例上執(zhí)行最為有效,因為訓(xùn)練需要比推理更多的計算資源和時間。
然而,由于 Jetson Nano 可以運行 TensorFlow、PyTorch 和 Caffe 等完整的訓(xùn)練框架,它還可以為那些可能無法使用另一臺專用訓(xùn)練機并愿意等待更長時間等待結(jié)果的人使用遷移學(xué)習(xí)進行重新訓(xùn)練。表 3 突出顯示了使用 PyTorch 使用 Jetson Nano 在 200,000 張圖像、22.5GB 的 ImageNet 子集上訓(xùn)練 Alexnet 和 ResNet-18 從兩天到演示教程的遷移學(xué)習(xí)的一些初步結(jié)果:
每個 epoch 的時間是完全通過 200K 圖像的訓(xùn)練數(shù)據(jù)集所需的時間。分類網(wǎng)絡(luò)可能只需要 2-5 個 epoch 即可獲得可用結(jié)果,生產(chǎn)模型應(yīng)在離散 GPU 系統(tǒng)上進行更多 epoch 的訓(xùn)練,直到達到最大準(zhǔn)確度。但是,Jetson Nano 通過讓網(wǎng)絡(luò)在一夜之間重新訓(xùn)練,使您能夠在低成本平臺上試驗深度學(xué)習(xí)和 AI。并非所有自定義數(shù)據(jù)集都可能與此處使用的 22.5GB 示例一樣大。因此,圖像/秒表示 Jetson Nano 的訓(xùn)練性能,每個 epoch 的時間隨數(shù)據(jù)集的大小、訓(xùn)練批次大小和網(wǎng)絡(luò)復(fù)雜度而縮放。其他模型也可以通過增加訓(xùn)練時間在 Jetson Nano 上重新訓(xùn)練。
面向所有人的人工智能
Jetson Nano 的計算性能、緊湊的占用空間和靈活性為開發(fā)人員創(chuàng)建人工智能驅(qū)動的設(shè)備和嵌入式系統(tǒng)帶來了無限的可能性。
關(guān)于作者
Dustin 是 NVIDIA Jetson 團隊的一名開發(fā)人員推廣員。Dustin 擁有機器人技術(shù)和嵌入式系統(tǒng)方面的背景,喜歡在社區(qū)中提供幫助并與 Jetson 合作開展項目。
審核編輯:郭婷
-
NVIDIA
+關(guān)注
關(guān)注
14文章
5075瀏覽量
103559 -
gpu
+關(guān)注
關(guān)注
28文章
4768瀏覽量
129242 -
計算機
+關(guān)注
關(guān)注
19文章
7534瀏覽量
88484
發(fā)布評論請先 登錄
相關(guān)推薦
評論