
深度學(xué)習是機器學(xué)習的一個(gè)分支,它基于試圖使用包含復雜結構或由多重非線(xiàn)性變換構成的多個(gè)處理層對數據進(jìn)行高層抽象的一系列算法。卷積神經(jīng)網(wǎng)絡(luò )是目前深度學(xué)習領(lǐng)域最為廣泛使用的深度學(xué)習結構,卷積神經(jīng)網(wǎng)絡(luò )由一個(gè)或多個(gè)卷積層和頂端的全連接層(對應經(jīng)典的神經(jīng)網(wǎng)絡(luò ))組成,同時(shí)也包括關(guān)聯(lián)權重和池化層。自深度學(xué)習出現以來(lái),它已成為很多領(lǐng)域,尤其是在計算機視覺(jué)和語(yǔ)音識別中,成為各種領(lǐng)先系統的一部分。在通用的用于檢驗的數據集,例如語(yǔ)音識別中的TIMIT和圖像識別中的ImageNet,Cifar10上的實(shí)驗證明,深度學(xué)習能夠大幅度提高識別的精度。深度學(xué)習算法也是最先在某些識別任務(wù)上達到和人類(lèi)表現具備同等競爭力的算法,例如人臉識別領(lǐng)域使用廣泛的測試集LFW,基于深度學(xué)習的算法基本都能達到99.5以上的性能,這已經(jīng)超過(guò)了人類(lèi)的得分。
深度學(xué)習給智能安防帶來(lái)機遇的同時(shí),也帶來(lái)了挑戰。硬件的進(jìn)步是深度學(xué)習獲得關(guān)注的重要因素,高性能圖形處理器的出現極大地提高了數值和矩陣運算的速度,使得機器學(xué)習算法的運行時(shí)間得到了顯著(zhù)的縮短。這些高性能圖像處理器目前最廣泛使用的是英偉達生產(chǎn)的支持CUDA計算的一系列高端顯卡,這些顯卡通常功耗都過(guò)百瓦,價(jià)格也從數千到上萬(wàn)不等。而對應的前端設備上的嵌入式處理芯片必須滿(mǎn)足嚴格的功耗、成本約束,目前數字攝像頭中使用的處理芯片功耗通常在瓦級,價(jià)格在幾十元人民幣量級,顯然這兩者之間存在巨大的鴻溝。這要求安防廠(chǎng)商從傳統的智能攝像頭向前后端復合的智能安防系統思路轉變。筆者認為未來(lái)智能安防系統的發(fā)展將會(huì )分為兩個(gè)階段。
第一個(gè)階段是由前端智能攝像頭和后端智能分析服務(wù)器共同構成,利用后端基于深度學(xué)習的分析服務(wù)器來(lái)提升目前智能安防系統的性能。一個(gè)簡(jiǎn)便易行的前后端協(xié)作方式是前端負責尋找可能剛興趣的關(guān)鍵幀并發(fā)送到后端,后端負責對該幀進(jìn)行深入分析,判斷是否發(fā)生了感興趣的事件。
目前我們在智能安防中的需求中實(shí)際上有相當一部分是不需要對視頻進(jìn)行分析的,通過(guò)單幅圖像進(jìn)行分析就可以完成,只是傳統圖像算法不足夠強大,必須依賴(lài)連續視頻才能抽取需要的信息。比如廣場(chǎng)人員密度分析,如果是人工進(jìn)行分析,只需要單張圖片就可以判斷當前畫(huà)面中的人員密度,是否達到預警的條件,而不需要對連續視頻進(jìn)行分析。但是許多做這方面工作的傳統算法通常都依賴(lài)于對連續視頻的處理,需要通過(guò)連續視頻做一些前景提取的工作。由于依賴(lài)連續視頻,這些算法還很容易受到環(huán)境光照變化的影響。在深度學(xué)習出現以后,基于卷積神經(jīng)網(wǎng)絡(luò )設計的算法通常都是針對單張圖片進(jìn)行的,并且在人員密度分析上精確度大幅度上升。雖然基于深度學(xué)習的算法可以?xún)H僅依靠單張圖片就可以分析,但是如果我們不加區分的每幀或是間隔數幀持續傳回截圖,對網(wǎng)絡(luò )帶寬和后端處理能力都會(huì )造成很大的負擔。我們可以要求前端設備通過(guò)對連續視頻的分析僅僅負責尋找場(chǎng)景內大量前景目標時(shí),進(jìn)行截圖并發(fā)送到后端,由后端來(lái)分析該幀內的人員分布密度,這樣可以在前端充分利用連續視頻的信息,降低系統對網(wǎng)絡(luò )帶寬和后端處理能力的需求。
在構建類(lèi)似系統的硬件平臺方面,目前國內前端數字攝像頭主流芯片為海思和德州電器兩家廠(chǎng)商生產(chǎn),這兩家廠(chǎng)商的部分芯片都支持用戶(hù)進(jìn)行智能圖像處理算法的開(kāi)發(fā),只是方案略有不同。海思通過(guò)SOC內置的IVE硬件智能算法加速引擎來(lái)支持傳統智能算法的設計,該加速引擎可以支持一些在傳統計算機算法中常用的算子,開(kāi)發(fā)人員通過(guò)調用這些算子來(lái)構成應用級算法。而德州電器的達芬奇系列處理器則通過(guò)ARM和DSP的異構多核策略來(lái)提供對算法設計的支持,圖像處理算法主要運行SOC內集成的高性能DSP上。這些芯片雖然無(wú)法執行復雜的深度學(xué)習算法,但是用來(lái)執行一些針對連續視頻處理的相對簡(jiǎn)單的算法,例如前景提取、人臉檢測等,性能是足夠的。所以目前基于現有的成熟芯片開(kāi)發(fā)具備一定智能的前端數字攝像頭是有很成熟方案的,由于是成熟芯片,所以成本也可控。后端設備采用基于英偉達顯卡的服務(wù)器即可,面向深度學(xué)習的各類(lèi)軟件框架也比較成熟,所以當前階段構建基于前后端混合的智能安防系統在軟硬件條件上都是具備的,可以迅速完成產(chǎn)品研發(fā)投入市場(chǎng)。
第二階段是隨著(zhù)專(zhuān)用卷積神經(jīng)網(wǎng)絡(luò )加速器硬件的發(fā)展,在功耗、成本都滿(mǎn)足需求的前提下,將深度學(xué)習算法直接運行在前端設備上。目前已經(jīng)有可以支持一定規模卷積神經(jīng)網(wǎng)絡(luò )的嵌入式處理芯片,最著(zhù)名的是英偉達發(fā)布的TegraK1和X1。這兩塊芯片性能強大,同時(shí)成本高昂,并且兩者由于功耗和成本的限制,在執行深度學(xué)習算法時(shí)與桌面顯卡相比性?xún)r(jià)比非常低。例如X1只有256個(gè)CUDA核心,GTX1060則具備1280個(gè)CUDA核心,并且前者為MAXWELL架構頻率為1000MHZ,后者為PASCAL架構頻率高達1708MHZ,再考慮兩者在存儲容量、速度上的顯著(zhù)差距,兩者的性能差距是相當大的,但是X1主芯片的售價(jià)就超過(guò)200美元,GTX10603G顯存版本的零售價(jià)只要大約1500人民幣。
除了Tegra這類(lèi)具備通用計算加速單元的芯片之外,其他還有一些初創(chuàng )企業(yè)在開(kāi)發(fā)完全針對深度學(xué)習的芯片,例如國內創(chuàng )投圈知名的寒武紀。寒武紀開(kāi)發(fā)的芯片在硬件結構設計上,從存儲到計算單元的設計,完全針對卷積神經(jīng)網(wǎng)絡(luò )的需求進(jìn)行,從而最大程度的提升在執行這類(lèi)應用時(shí)芯片的能效比,據目前透露的數據在保持低功耗的前提下,性能可以比當前的主流顯卡高一個(gè)數量級。Intel收購的深度學(xué)習芯片公司Nervana也推出了在性能上與當前主流顯卡有量級提升的深度學(xué)習芯片,相信Intel收購以后在生態(tài)、資本方面給予的大力支持,可以促進(jìn)深度學(xué)習專(zhuān)用加速芯片更快的進(jìn)入市場(chǎng)。
隨著(zhù)未來(lái)硬件平臺的持續發(fā)展和逐漸成熟,在功耗、成本、性能都滿(mǎn)足要求的前提下,將整個(gè)人工智能算法全部都放在前端設備上仍然是最終的方向。在前端直接執行可以使得整個(gè)人工智能算法獲得最完整的輸入數據,而不是僅僅局限于由于前端較為簡(jiǎn)單的智能分析算法獲得的單張圖片或是部分特征,從而獲得更好的智能分析效果。