當前主流的AI技術是Hiton、Lecun、Bengio等學者帶來的深度學習,深度學習自誕生以來正在改變著很多行業,如安防、金融和物聯網等。深度學習的興起有海量數據和大算力兩個支撐點。早期算力支撐主要由GPU提供,GPU具有支持高并行計算、訪存速度快和浮點運算能力強等優點,比較符合深度學習的計算要求。但GPU設計的初衷是加速3D圖形處理的通用芯片,并不是針對深度學習設計的,其計算功耗比(每瓦功耗的算力)這一指標并不突出。
如果把目光聚焦到端AI,GPU計算功耗比低的弱點就更明顯了。端AI應用的特點就是只做神經網絡前向計算,不做反向傳播,對運行時存儲的要求不高,GPU顯存大的優勢體現不出來。穿戴式設備因為體積小等原因,對功耗非常敏感,同時由于要與人互動,穿戴式設備一般要求能實時運行神經網絡模型。盡管網絡模型可以裁剪,但為了保證模型的性能下降在可接受的范圍,裁剪后的模型計算量仍然會比較大,這就要求端AI芯片有較強的算力。為了提高運行神經網絡模型的計算功耗比,專用的端AI芯片就應運而生了。由于專用的AI芯片在一開始設計時就針對神經網絡計算加速做優化,其性能提升往往能夠突破摩爾定律,每隔18~24個月性能可提升5倍甚至更多。
當前主流端AI芯片有DSP形態和NPU形態兩種。Intel movidius myraid2、高通Hexagon DSP都屬于DSP形態的AI芯片。DSP的優勢是工藝成熟,成本較低,每瓦功耗的算力可達100Gflops。華為麒麟970/980芯片、蘋果A12芯片等則集成了NPU支持端AI計算,每瓦功耗算力可達500G-1T flops。NPU的計算功耗比相對DSP有較大的優勢,是端AI芯片發展的趨勢。Intel Movidius myraidX已經集成了NPU,相比myraid2每瓦功耗的算力提升了5倍以上。高通預計也將在2019年推出集成NPU的AI芯片。
當前,AI芯片算力提升的一個瓶頸是存儲墻問題。在傳統的馮諾伊曼架構下,計算單元和存儲單元是分離的,深度學習模型運行時需要把數據從DDR內存搬移到計算單元內部存儲里。數據搬移需要的功耗在整個計算中占非常大的比重,而且數據搬移的效率不會因為摩爾定律的發展而提高,這被稱之為"存儲墻"。當前解決"存儲墻"問題的一個主要方案是3D堆疊技術,即在處理器周圍堆疊更多的存儲器件。
對用戶來說,擁有一款端AI芯片還只是第一步,怎樣在AI芯片上做應用開發才是關鍵。AI芯片公司通過提供專門的工具使得芯片對端AI應用開發透明。Intel提供OpenVINO工具包,高通提供NPE引擎,華為提供HiAI移動計算平臺,都是為了支持用戶無感地部署、運行神經網絡模型,將AI芯片算力轉化為生產力。業界領先的AR眼鏡公司亮亮視野也推出了自己的Laffe框架,幫助用戶用Movidius VPU的AI算力實現自己的價值。
二、穿戴式安防產品形態及應用場景
當前穿戴式安防產品主要有AR眼鏡、執法記錄儀等。執法記錄儀可對執法過程進行動態或靜態的數字化記錄,同時維護執法人員和執法對象合法權益,目前已經比較成熟,形成了GA/T947-2015單警執法視音頻記錄儀行業標準。AR眼鏡是近年出現的新型穿戴式安防產品,與普通的執法記錄儀不同,AR眼鏡帶有端AI芯片和顯示設備,可依托AI與執法者進行交互。
除了執法記錄,穿戴式安防產品的應用場景主要是人臉抓拍,在這方面AR眼鏡具備獨特優勢。執法記錄儀配備端AI芯片后也具有人臉抓拍能力,但執法記錄儀難以支持人機交互,對抓拍效果執法人員幾乎無法干涉,抓拍效果較差。AR眼鏡抓拍人臉時天然處于第一視角,符合人的使用習慣,抓拍人臉效果最佳。雖然固定攝像頭抓拍人臉技術比較成熟,但顯然不具備AR眼鏡的移動性優勢。
AR眼鏡在安防方面的應用場景還有人臉識別、車牌識別等。執法人員佩戴AR眼鏡進行人臉識別一個優勢是可以要求執法對象配合,這點固定攝像頭無法做到。人臉識別算法經過數十年的演化已經取得超越人類識別能力的成果,但非配合式人臉識別仍是有待解決的難題。AR眼鏡人臉識別主要對接公安??趲旌驮谔訋?,在治安卡口、巡街、大型活動安保方面應用前景廣泛。AR眼鏡識別車牌具有靈活性,執法人員隨時可以檢查車牌所屬車輛狀況,反饋信息顯示在屏幕上,這也是不具備交互能力的固定攝像頭和執法記錄儀難以企及的。
2018年春運期間,鄭州鐵路警方在全國鐵路率先使用人像比對警務眼鏡,通過人像識別,高效地篩查出旅客中的網上在逃和冒用他人身份證件的違法行為人。
圖1 亮亮視野推出的AR眼鏡
三、人臉抓拍、人臉識別技術在端AI芯片上的應用
人臉抓拍涉及的是人臉檢測、人臉選優技術。在深度學習流行之前,人臉檢測的巔峰是Viola-Jones算法,實時性非常好,準確性尚可,目前已經被收錄到OpenCV。這一算法的三要素是:Haar-like特征、Adaboost分類器和Cascade級聯分類器。深度學習時代人臉檢測算法層出不窮,代表性的有MTCNN、SSH、S3FD、PyramidBox和DSFD等。MTCNN將人臉檢測任務和人臉關鍵點檢測任務聯合,具有速度快、準確性較高的特點,同時附帶輸出5個人臉關鍵點,已經是端AI芯片上人臉檢測算法的標配。除了MTCNN,主流的人臉檢測算法都是從目標檢測算法演化過來的,其中基于SSD(Single Shot Multibox Detector)的最多。盡管SSD在計算量和性能之間trade-off做得不錯,直接在端AI芯片上應用基于SSD的人臉檢測算法仍是困難的任務,還要輔以神經網絡壓縮或者直接使用輕量級骨干網絡。知名的輕量級骨干網絡有shufflenet、mobilenet等,都是人工設計的。隨著AutoML技術的發展,通過自動化的方法設計輕量網絡也逐漸走上舞臺。神經網絡壓縮技術主要有剪枝和知識蒸餾。目前的剪枝壓縮技術已經可以做到計算量減半準確率不受影響。知識蒸餾是教師網絡將部分知識遷移到輕量的學生網絡,從而達到壓縮神經網絡計算量的目的。此外,進行模型權重量化也是將人臉檢測算法在端AI芯片上落地應用的捷徑,當前端AI芯片一般都支持16-bit、8-bit量化。
人臉選優的目的是選擇符合人臉識別要求的人臉圖像。當前的人臉識別技術條件下識別側臉和模糊人臉仍是很困難的,因此要求把側臉和模糊人臉能夠過濾掉。側臉過濾有兩種策略,一種是訓練人臉檢測模型時將側臉作為副樣本,另一種是估計人臉的姿態。為了在端AI芯片上落地,估計人臉的姿態的算法模型計算量也不能太大。穿戴式設備產生的模糊一般有兩種:對焦模糊和運動模糊。在端AI芯片上判斷人臉圖像是否模糊是一個挑戰,從實時性上考慮可以采用傳統的非深度學習算法。
人臉識別算法一般運行在云端,但隨著端AI芯片算力的提升以及1:10萬級以下的人臉識別場景的挖掘,人臉算法開始下移到AI芯片。這種方案的好處有以下兩點: 1.人臉識別的速度大幅提升。云端進行人臉識別的方案一般要耗時1-2秒,但在終端進行人臉識別只需幾百毫秒。
2.人臉識別的方案成本降低。云端進行人臉識別需要配置較高的服務器,占用更大的網絡帶寬,成本較高,而在終端進行人臉識別效率高。
適合人臉安防應用的獨立AI芯片主要有以下幾種:
1.Intel movidius myraid系列芯片,在算力和功耗之間平衡得最好,最新的MyraidX芯片算力已達1Tflops。老款Myraid2芯片采用VPU進行加速,最新的MyraidX芯片則同時集成了VPU和NPU,其中NPU支持通過專門的硬件單元對卷積、pooling等算子進行加速。借助OpenVINO的支持,movidius芯片可敏捷地部署caffe、tensorflow、pytorch等主流深度學習框架訓,支持SSD、YOLO等目標檢測算法。亮亮視野AR眼鏡采用movidius芯片提供AI算力。
2.華為海思Hi3559A,支持caffe模型部署運行。借助海思在安防行業的沉淀,Hi3559A芯片在視頻編碼方面極具競爭力,支持int8量化,算力高達0.6Tflops,在功耗方面與movidius芯片相當。
3.Inuitive NU4000,功耗較低,SLAM支持得較好,支持獨特的12-bit量化,在深度學習方面能力也與movidius相近,支持SSD、YOLO等檢測算法。
4.深鑒科技AI芯片,特色是自主研發的深度壓縮技術與深度學習處理器DPU(Deep Learning Processing Unit),擁有從算法到軟硬件的完整解決方案,但功耗較高。
四、端AI在穿戴式安防產品中應用展望
未來隨著端AI芯片和安防相關算法的不斷進步,會有更多的安防場景用到端AI芯片。隨著技術發展,在端AI芯片方面,打破存儲墻方向可能會有大的進展,一個候選的技術方案是存算一體化,即通過相變、阻變等新型存儲器件的模擬計算功能來實現神經網絡的計算,整個計算過程都是在存儲里面實現,比起現在的馮諾伊曼架構功耗更低、算力更強。存算一體化是受人腦工作方式啟發的,人腦的計算和存儲是不分的,不需要數據搬移。此外,用光學輔助做卷積計算也是提升端AI芯片計算功耗比的候選技術方案。
穿戴式安防產品會有更多的安防應用場景落地:
1.人臉識別技術不斷提升,非配合式、無感的人臉識別日益成熟,依托端AI芯片的算力,最終穿戴式安防產品可以像科幻電影里描述的一樣實時、不受限地識別人。
2.穿戴式安防產品的移動攝像頭與固定的監控攝像頭聯動,結合城市安防大數據,更精細地規劃出城市中人出現的軌跡。
3.依靠端AI的算力,穿戴式安防產品可根據所感知到的對象自動切換到不同的安防應用場景,如身份證、駕駛證、人臉、車輛信息、步態識別等,成為移動安防的入口。
評論