6月20日,“神威太湖之光”成為全球最強超級計算機。但是,這只是這一天祖國科技技術大躍進的一小份。6月20日,南京大學的基于新型鋁鈦化合金屬技術的輕質高可塑性高溫材料論文發表于《自然》雜志,性能領先國際先進水平一個數量級。6月20日中星微的嵌入式經網絡處理器(NPU)“星光智能一號”也正式發布。而在此前,該產品已經實現在智能安防領域的商業化應用。本文,大屏君想談的是后者,即NPU。因為這個與我們的大屏應用距離最近。
NPU這是一個新名詞,需要科普一下。NPU即是以神經網絡算法和結構為核心的并行處理器。其具有學習、聯想、記憶和模式識別的物理結構,核心運算是向量乘法,善于處理實時并行大數據,并行大數據的處理效率是同等功耗下傳統CPU的百倍乃至更高。同時,這種處理器也是對傳統馮諾依曼架構的顛覆。
在視頻領域,NPU的應用是怎樣的呢?大屏君有一個簡單的比喻:我們電腦的GPU是把一些邏輯信息轉化成畫面,渲染出來;NPU的目的則相反——他是把視頻畫面,盡量轉化成可以直接被機器理解的邏輯信息。
那么問題來了:為什么智能安防需要這樣一個新CPU呢?(準確講應該叫做NPU)。大屏君覺得這是一個很好的命題。
大屏君數過我們辦公大樓的監控探頭個數,一層一層下來好幾百,但是保安就那幾個。如果沒有千眼觀音菩薩的功力,這些探頭的真正意義也就在于:有了犯罪,可能提供一些線索。而如果視頻存儲能力不足,例如只存儲了7天的視頻,那么此前第8天的犯罪信息就沒有了。
我們電影節目中,有很多這樣的橋段:持槍歹徒進入銀行,銀行女職員企圖按報警器被制止,警察調用視頻監控準備破案,但是歹徒都帶了頭套,監控畫面失去意義,或者干脆安防存儲系統已經被破壞,失去了所有數據。而如果這是智能安防體系,那么當持有武器和蒙面的歹徒進入銀行一個探頭視野的時候,安防系統就會自動報警,且銀行內的各個區域會啟動安全隔離和屏蔽裝置——歹徒進得來,摸不到錢,也可能抓不到人質,而且反身想跑:大門自己鎖上了。
以上這個假設案例能成功的前提是:第一個探頭第一時間,知道歹徒來了。原始的解決方案是,找一個人24小時不眨眼的盯著第一個探頭的畫面——不能眨眼或者打瞌睡,那樣歹徒就有可乘之機。但是,這顯然不符合成本規律。
另一個技術方案則是智能探頭。即攝像機探頭能夠主動識別視頻中的信息,尤其是學習型、模糊化的識別違規信息,并按照預設等級觸發警報動作。智能安防系統可以做到:可疑情況識別報警,預防犯罪;犯罪進行中報警,實時抓捕;更多數據信息,尤其是有效元信息的長期存儲——這些元信息占據存儲空間的量,只有視頻的幾十分之一,甚至幾百分之一,進而保持監控系統的長期信息有效。
不過實現以上這種智能探頭功能,不是一件簡單的事情:視頻內容分析和處理,并與特定但不具體的違規信息匹配(為何說這些違規信息不具體呢?因為,如持刀歹徒,刀的性狀各式各樣,難以提前預知,違規信息組只能給出一個模糊模型)需要強大的運算支持。這是這個系統的核心要求:極低成本下,能夠有效即時的高速識別價值信息。或者說,安防進入智能時代的核心前提就是有足夠強大的終端信息處理能力。
大家還記得今年3月份,谷歌圍棋人工智能AlphaGo(阿爾法狗)大戰韓國圍棋高手李世石的事情嗎?這個圍棋算法就是典型的學習型、模糊算法,是高并行概率計算的神經網絡。那個阿爾法狗的“人工智能”很厲害,水平非常高。但是,對于安防監控的攝像頭,這個人工智能系統的“硬件”體積異常巨大——無法嵌入到安防探頭里面去。同時,這套系統的造價也很昂貴,也是安防探頭所不能承受的。
這是現有IT技術的瓶頸:即傳統的CPU和軟件不是不能實現學習型的智慧算法和功能,而是需要極高的成本——包括設備體積、耗電量、采購價格等等。AlphaGo背后是幾十臺超級計算機和服務集群,下一盤棋要花費3000美金電費。
那么,對比而言,另一個技術路線則是專門的嵌入式神經算法處理器,即NPU技術。只有手指肚大小、耗電量相當于一個LED燈泡(攝像頭都有數個紅外照明燈)的NPU方案,就成了智能安防的最好選擇。
在應用了NPU技術的攝像頭中,不僅記錄實時畫面,更會有效的分析并記錄視頻中的“元信息”。例如,人員著裝特征、車牌號碼、左轉右轉等等。這些元信息和視頻流一起傳回中央系統,供警報選擇程序調用,同時也能供后期數據挖掘使用。或者這些元信息也可以直接在探頭端觸發高階報警動作,如上文假設中的搶銀行案例。
通過大屏君的分析,各位可以看到:安防智能與否差別非常大。而安防進入智能時代的核心前提就是有足夠強大的終端信息處理能力——谷歌阿爾法狗的能力雖然強大,卻不可能用在攝像頭上,這就是NPU的價值所在。未來的安防系統一定是智能化的。即,面對未來安防系統少則數十個、多則(如天網系統)千百萬單位計算的探頭規模和海量數據,沒有NPU智能系統,這些巨大投入的價值都會大打折扣。反之,NPU智能探頭則是安防價值倍增器。
NPU如何做到這一點的呢?答案在于仿生模擬。例如,大屏君和老熟人在馬路上碰到,多長時間能認出自己的朋友呢?答案是“馬上就行”。而如果換成傳統計算機處理,則需要人臉識別計算幾秒鐘,如果這個老朋友帶了眼鏡,那么問題就會變得更復雜(眼鏡會影響面部特征)——雖然,眼鏡不會影響大屏君對老朋友的認識。這種“人”“機”差別就是人腦神經網絡處理,與傳統計算機邏輯鏈路處理的效率差異:算1+1=2,人趕不上PC;但是計算模糊和學習模型,PC在人腦面前就是“渣渣”。
NPU的特點就是以神經元網絡為模型,開發嶄新的、專門用于某類大型并行數據的計算單元,它采用“數據驅動并行計算”模式,極大地提升了計算能力與功耗的比例,特別擅長處理視頻、圖像類的海量多媒體數據。NPU為視頻監控等應用帶來的價值是:低成本、高效率、即時性,以及低功耗、小體積。
當然,嵌入式神經網絡處理器NPU的用途不止安防一個:但凡需要高效率、高性能、大數據并行處理、即時計算的領域,NPU都可以大有可為。例如無人駕駛系統——日本汽車產業協會的報告稱,最晚2030年所有新車都會配備無人駕駛系統。無人駕駛汽車需要實時識別周邊的視頻信息,NPU技術可以提供高效、即時、可靠且低成本的解決方案。
類似的例子非常多,這些例子總體上可以叫做“機器知覺”——即不再是簡單的傳遞攝像頭前前的信息,而是對這些信息給出知識性的分析和結論。所以,大屏君說NPU這類神經網絡芯片是未來物聯網系統、智慧社會的核心之一。中星微電子星光一號雖然只采用了卷積神經網路(CNN)技術,在其應用上、性能上的瓶頸依然很明顯,但是不積跬步何以至千里,何況作為專用機器視覺產品,星光一號還有經濟成本優勢。
所以,大屏君堅信“我們一天天好起來,敵人一天天爛下去”。只需加以時日,中國創新、中國創造必將還你一個星辰大海。