2018年7月18日,自適應和智能計算公司賽靈思(Xilinx, Inc.)宣布完成對專注于神經網絡剪枝、深度壓縮技術及系統級優化的中國AI芯片公司深鑒科技的收購。
這是迄今為止第一家中國AI芯片初創公司與全球芯片領軍廠商的深度綁定。
深鑒科技CTO單羿在近日舉辦的賽靈思全球開發者大會上表示,公司此前本身在深度學習方面有一定的技術積累,用戶不需要寫底層的RTL,就可以通過提供的API接口,進行應用的開發,可以進一步降低開發者的難度,這是最適合客戶的開發模式。
賽靈思在客戶積累以及服務方面,有著豐富的經驗和能力,對于創業公司而言,一般是缺乏客戶的開發能力,以及后續的技術支持方面的能力。
因此對于深鑒而言,同賽靈思合作,可以彌補這一方面的劣勢,更快的將產品推廣給更廣范圍的用戶,省去教育用戶的開銷。
另外,賽靈思和深鑒科技雙方對于客戶的看法是一樣的,今天的AI的算法是一直在變化的,ASIC的做法并不適用,加之流片的成本也越來越高,周期較長,傳統的做法并不是適應這個變化極快的時代。
FPGA在靈活性方面有著不可比擬的優勢,目前的頻率是在數百兆HZ,未來也會根據需求以及技術的成熟,達到過GHZ的頻率;FPGA上也有著豐富的DSP資源,充分的互聯,接口眾多。這些特性都對應了這個AI算法快速迭代發展的時代。
因此,雙方的優勢和互補性使得彼此走到了一起。
深鑒提供全棧的解決方案,包括基本的檢測、追蹤、分割等算法,比如汽車檢測、行人檢測、交通標志牌識別的參考算法,免費給用戶。既有標準化的優化算法技巧,也給用戶定制化的可能。
這些方案是基于FPGA的部署,深鑒科技實際上做的就是DPU的設計,處理器的架構中,有自己的存儲訪問的Hardware、調度器、微體系結構等。有了這些之后,用戶使用CNN就會變得高效,有一定的可編程性。
一.
DNNDK降低AI startup門檻
為了方便用戶使用,深鑒科技開發了一套軟件的工具DNNDK(Deep Neural Network Development Kit,深度學習開發與部署全棧式解決方案)。
最新的版本可支持兩種賽靈思的方案,ZCU102和ZCU104。這個工具每月會定期的更新,方便用戶下載使用。
對于AI創業公司而言,能夠使其具備競爭力的,就是產品的差異化,而差異化是需要在軟件上不斷的訓練不同的模型。
訓練模型是需要依賴算法團隊的實力,很少有創業公司能夠兼顧模型精準和短小精悍。為了讓用戶無差異的使用相同的處理器平臺,提供了模型壓縮技術。
通過自動化工具,可以訓練模型,經過不長的時間,就可以得到一個精簡、輕量化的模型。深鑒科技的自動化模型壓縮工具,是基于硬件進行的,因此更適合硬件加速。
壓縮工具工作主要有兩個步驟,量化和剪枝,量化就是改變參數,從浮點表達變成定點表達,剪枝就是去掉無用的部分,比如一些連接和神經元。
分類網絡的壓縮結果,保證壓縮的精度變化不大。比如SSD+VGG壓縮能夠在保證網絡成倍數減小的同時,精度不發生太大變化,同時運行速度還會有提升。
這些技術不僅可以用于安防,同樣也可以用在自動駕駛中。
模型壓縮的下一步,可通過增強學習或者機器學習的方式,提升工具的自我進化,去掉人類因素的干擾;另外一方面,做更低bit的量化,這個量化技術是下一步模型壓縮中關鍵的技術。
二.
突破1Tops/天花板
對于AI處理器而言,算力大小是一個重要的指標,但如果應用到終端上的時候,單位功耗下的算力才是硬實力,尤其是汽車行業。
目前CNN卷積網絡處理器的天花板是1Tops/w,而無論FPGA、ASIC還是GPU,都徘徊在這個指標附近,如果要完成更復雜的工作,更精細化的處理,就必須要提升這個關鍵性指標。
單羿表示,因為這個天花板是在寬bit的量化性能下得到的,所以要改變這個值必然要換一種方式。
目前的解決方式有兩種,Sparsity和Low Precision,前者實際上是模型壓縮,將網絡的模型變小,后者是將參數的位寬變小,使得硬件在同樣的DSP下,能夠支持更多的乘法和加法的運算。
在Sparsity方面,深鑒團隊從算法、軟件、硬件方面分別進行了探索。這方面有不少的挑戰,比如隨機MEM的訪問和固定格式的計算,帶來計算的低效,非常挑戰體系結構的設計;
另外一方面就是在壓縮模型的同時進行稀疏,以及為了稀疏,需要做的一些索引。隨著稀疏的增加,花費的資源越多,最終會使得壓縮工作沒辦法進行。
Low Precision方面,2018年的時候,ISSCC已經開始嘗試一些更低bit,從原來的8bit已經延生到了1bit。
學術界之所以這樣做,是因為同樣功耗下,更低bit比更高bit的算力能提升一個數量級,模型大小的存儲量也會大大的降低。存儲量的降低意味著可以把更多的參數放到片上來進行,片上帶寬極高,latency也會短。而用FPGA做Low Precision的方式是比較恰當的。
深鑒科技此前的做法是,將FPGA中敏感的層,保留8bit,不敏感的層,用其它較低bit代替。當然這樣的處理方式也給處理器的設計帶來問題,因為dsp原來是支持8bit,現在卻要支持更多bit。
深鑒使用了2bit和6bit,3bit和5bit的搭配方式,適合與賽靈思FPGA的架構,使得量化過程中不同層可以使用不同的位寬,從而達到提升效率的目的。
通過以上兩種方式,處理器單位瓦數下的算力,就有可能提升。
三.
FPGA的減法
自動駕駛是當下一個火熱的應用,其需要進行目標檢測、分割、可行駛區域、以及行人車道線的識別等等,這些工作都是需要不同層網絡進行計算處理。但這些工作同時用FPGA來做,系統負擔會非常大。
為此,深鑒科技提出了一個通過多任務模型的訓練,得到單一網絡的方案,復用特征提取層的運算,把運算量最大的部分放到FPGA中的一個網絡中進行。
而不同任務中,不同層的計算才可能會進行多次,從而達到緩解FPGA處理器運算壓力的目的。
在系統級的優化方面,可以簡化攝像頭的圖像處理,傳統的攝像頭內部有ISP、編解碼等等,分屬不同芯片處理,而通過使用賽靈思的FPGA,則只需要一塊芯片既可以完成,內部不僅有DSP資源,同時還集成了第三方的ISP的庫,可搭載一個完整的系統。
-
FPGA
+關注
關注
1630文章
21781瀏覽量
604936 -
cnn
+關注
關注
3文章
353瀏覽量
22277
原文標題:Sparsity+Low Precision突破CNN天花板 | GGAI技術
文章出處:【微信號:ilove-ev,微信公眾號:高工智能汽車】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論