嵌入式人工智能的兩大挑戰(zhàn)
計(jì)算資源有限?,F(xiàn)在做人工智能,都需要使用深度學(xué)習(xí)做視覺處理、語音識別和自然語言處理。而神經(jīng)網(wǎng)絡(luò)參數(shù)一般都比較龐大,層數(shù)達(dá)到幾百層的網(wǎng)絡(luò)已經(jīng)不是少數(shù),需要消耗大量內(nèi)存,如何優(yōu)化網(wǎng)絡(luò)數(shù)據(jù)量,而又不損失數(shù)據(jù)精度,是嵌入式人工智能的重要挑戰(zhàn)之一。
計(jì)算能力有限。嵌入式平臺的計(jì)算能力也無法與傳統(tǒng)PC的計(jì)算能力相比,比如深度學(xué)習(xí)中常用的卷積神經(jīng)網(wǎng)絡(luò)(CNN),它能夠解決圖像處理的大部分問題。但是卷積部分的計(jì)算時(shí)間占據(jù)了所有計(jì)算時(shí)間的70%以上。所以如何優(yōu)化計(jì)算能力也是亟待解決的問題。
嵌入式人工智能平臺
如何應(yīng)對嵌入式人工智能的挑戰(zhàn)?NVIDIA公司給出了答案。在最近的一些國際知名的硬創(chuàng)活動(dòng)中,我們可以看到很多精彩的AI機(jī)器人和無人機(jī)案例,都應(yīng)用了深度學(xué)習(xí)技術(shù)。而他們背后都有一個(gè)共同點(diǎn)——NVIDIA Jetson TX1
Jetson TX1是NVIDIA第二代嵌入式平臺開發(fā)者套件,雖然只有信用卡大小,但Jetson TX1 GPU模塊的浮點(diǎn)運(yùn)算能力卻達(dá)到1 Teraflops。這臺 AI 超級計(jì)算機(jī)采用 NVIDIA Maxwell™ 架構(gòu)、256 顆 NVIDIA CUDA® 核心 和 64 位 CPU,4GB LPDDR4 RAM 內(nèi)存(每秒帶寬速度達(dá)25.6Gbps)、16GB本地存儲模塊、802.11 2×2 ac Wi-Fi解決方案以及1Gbps以太網(wǎng)端口,同時(shí)還配備面向視覺計(jì)算的Jetson TX1開發(fā)者套件。
因?yàn)橥耆С諧UDA和cuDNN的接口,所以可以很方便地把PC上訓(xùn)練的深度神經(jīng)網(wǎng)絡(luò)移植到Tegra X1的嵌入式平臺上。除此之外,TX1還可以提供豐富的硬件接口,方便接入各種硬件設(shè)備,包括攝像頭、各種傳感器等。NVIDIA還為Jetson提供了強(qiáng)大的軟件工具包,詳見下圖:
NVIDIA Jetson TX1應(yīng)用實(shí)例
來自香港浸會(huì)大學(xué)計(jì)算機(jī)系趙開勇博士基于Jetson TX1針對卷積計(jì)算做了一些性能上的優(yōu)化,包括讓CPU、GPU和內(nèi)存在最高頻率中運(yùn)行,實(shí)現(xiàn)CPU、GPU和內(nèi)存協(xié)同調(diào)度。通過優(yōu)化GPU的并行計(jì)算,達(dá)到空間換時(shí)間的目的。
NVIDIA的GPU內(nèi)存訪問的一個(gè)特性,連續(xù)合并訪問,可以很好地利用硬件的帶寬。從架構(gòu)來看,優(yōu)化IO訪問,即使核心數(shù)目沒增加多少,架構(gòu)也沒太大變化,只是在幾個(gè)計(jì)算流處理器中間增加緩存,就能提高很大的性能。下圖是經(jīng)典的GPU內(nèi)存架構(gòu)與線程模型。
Intelligent Flying Machines (IFM) 是一家數(shù)據(jù)分析公司,該公司利用計(jì)算機(jī)視覺和機(jī)器人來自動(dòng)完成倉庫數(shù)據(jù)捕捉。
NVIDIA TrailNet深度神經(jīng)網(wǎng)絡(luò)的Iris+無人機(jī),在電腦視覺(Computer Vision)和深度學(xué)習(xí)(Deep Learning)技術(shù)的輔助下,順利穿越森林小徑。
JetsonTX1儼然成了無數(shù)硬件創(chuàng)客眼中的最炫裝備。且目前TX2也已經(jīng)推出,除了支持 Jetson TX1 模塊的所有功能,還可以支持更大型、更復(fù)雜的深度神經(jīng)網(wǎng)絡(luò)計(jì)算,無疑更能讓硬件創(chuàng)客們?yōu)橹矍耙涣痢?br />
文字編輯:紫菜君
圖片視頻:網(wǎng)絡(luò)