當前位置:
首頁 > 最新 > AI跑分靠譜嗎?端側AI評判體系與誤區科普

AI跑分靠譜嗎?端側AI評判體系與誤區科普

60年來,人工智慧起起落落。最近十幾年,在IT巨頭的巨額投入下,終於看到了開花結果的未來。5月的高通人工智慧創新論壇中,高通中國區董事長孟樸表示預計到2021年人工智慧衍生的商業價值將達到3.3萬億美元。

這是什麼概念呢?如果把人工智慧衍生產業當做是一個國家的話,這個3.3萬億已經能超過英國(3.2萬億)成為世界第五經濟體了。普華永道甚至預估,人工智慧到2030年會帶來16萬億美元的GDP增長,比2017年的中國GDP還多了2萬億。

而智能手機將會是最普及的人工智慧平台,並直接影響人類生活方方面面。除了很早就開始布局的高通,近年來蘋果、華為海思、聯發科等移動SoC廠商都開始了移動終端側人工智慧的探索。

最近甚至還和傳統的CPU/GPU一樣,出現了移動端的AI的benchmark跑分測試。但大眾不但對AI本身知之甚少,而且還存在很多對於AI和AI測試的誤區,所以我們這次將會從高到低,為大家梳理一下端側AI的一些科普和誤區。


首先,我們從「AI人工智慧、機器學習和深度學習」這幾個逐級遞進的概念開始說起。人工智慧的目的是要讓計算機有類似人類的推理、知識、規劃、學習、交流、感知等能力,主要有「模式識別、機器學習、數據挖掘、智能演算法」4個技術分支,當中對普通用戶影響最大的是機器學習。

機器學習,顧名思義就是讓計算機自行學習創建模型和演算法。近年在計算機視覺和自然語言處理領域都效果卓著的深度學習,就是其中一種讓計算機創建模型的方法。其通過模擬神經元,對數據高級抽象,完成核心的訓練(training)和推理(inferencing)過程。

「訓練」是用大量數據輸入到現有的演算法模型,讓計算機從數據中調整各種參數來優化演算法模型。而「推理」就是使用訓練出來的模型就能對未知數據進行判斷和預測。大家偶爾聽到的「深度神經網路、卷積神經網路、深度置信、遞歸神經網路、前饋神經網路,什麼決策樹、特徵工程和流水線模型」,都是深度學習當中的模型和框架。

那其實深度學習能幹什麼呢?舉個例子,給演算法模型「喂」一堆食物的照片後,這個調整訓練出來的模型就能識別出食物的照片。給「阿爾法狗」的演算法模型喂一堆棋譜,隨後就是我們之前看到的人機棋戰了。

當年深度學習突破時,人類突然就發現了一個新世界。嚴格來說, 是發現了通往新世界的捷徑。近年來科技巨頭的巨額投入、模型框架的提升和計算力的暴漲,讓人工智慧在圖像、人臉識別、語義分析等強人工智慧領域都取得了階段性的成果,並已經被廣泛應用在日常的網路和移動端產品中。

基本上現在雲端服務和旗艦手機,甚至安防設備上經常能看到的強弱人工智慧應用,都是加入了深度學習技術的產品。日常公共領域的人臉取款、人臉付款、機器車牌識別和移動追蹤就不說了。

從近年開始普及的相機自動場景識別、物體識別/分類、拍照增強、相冊人臉查找和分類、縮略圖的超解析,到識別條形碼、筆跡轉換等圖像領域,再到Siri/Google Assistant/微軟小娜等語音助手的喚醒、語音分析和翻譯軟體等自然語言處理應用,都是些以前想都不敢想,但現在卻非常實用的AI功能。


現在看回去,手機等移動設備已經是非常重要的本地深度學習載體。類似自動駕駛,終端側的使用狀況複雜、聯網質量無法保障、對實時性要求很高,不適合全靠雲端處理。而且終端側如果能「就地」對原始數據進行處理,就能大幅減輕傳輸、存儲和雲端的壓力,並能有效保護隱私。

所以能遇見的未來,由雲端負責訓練和優化模型,隨後再雲端或終端側執行和堆理模型的「雲端+終端」形式,是最受關注的人工智慧形式之一。但最開始搞深度學習的,都是雲端高性能的伺服器或強大的GPU,根本沒有移動端的事。

其一是因為大量的數據訓練需要龐大的算力,其二是神經網路演算法模型,和傳統軟體需要的軟硬體要求有本質的分別。直到高通第一代配備人工智慧的產品驍龍820面世之前,民用移動端根本沒有能跑神經網路的產品。當然,其實現在很多第三方的深度學習程序,也無法用移動產品直接跑起來,或者效率都很低。

現在英偉達、Google、Facebook等巨頭雲端AI打得不可開交。而終端側這邊,有CEVA、Synopsys這種傳統DSP IP廠,也有Cadence這種可定製處理器,ARM在新構架中也有相關的支持,上年的蘋果A11仿生處理器、帶NPU的華為麒麟,盯準的都是端側AI。

但暫時跑得最遠的是高通,其在近3代的旗艦驍龍平台產品上對人工智慧的重視和投入,在加上其壓倒性的移動平台佔有率,讓其在端側人工智慧成為一道高牆。


AI和深度學習的發展迅速而且前景廣闊,湧入了大量的研究機構和公司,競爭產品層出不窮,這自然就少不了正面甚至跨平台的比較。正如CPU和GPU走過的路一樣,為了衡量不同產品的性能高低,AI領域近年也開始出現benchmark基準測試,也就是我們熟知的「跑分」。

除了國外由大牛多如繁星的MLPerf外,在2017年10月的中國人工智慧產業發展聯盟(AIIA)也正式啟動了人工智慧晶元Benchmark項目。而移動端,最近比較熱門的是蘇黎世聯邦理工學院推出,跑在安卓端的AI基準測試AI Benchmark。

基準測試,類似在給學生出考試題,試卷需要由橫跨最常用的應用領域的試題組成,並為不同的考題賦予不同的分數權重以得出最後的總分,從而產生最公平、最有代表性的結果,以此衡量各種處理器的性能高低。

基準測試的核心是測試項目的選取和測試權重的確定。類似相機領域的DxOMark,好的基準測試除了能避開冗餘設計和測試,也要求設立者要對行業未來具有足夠的洞察力,能幫助設計者探索邊界和極端情況,反映和引導行業向正確的方向發展。

但AI深度學習,涉及到了模型訓練、數據推理等多個複雜步驟,且深度學習本身的「捷徑」性質,這領域是理論嚴重落後於實踐的黑箱,業界對AI benchmark還處在討論的早期階段,現在的AI基準測試也有很多的不足和爭議之處。

針對深度學習核心的訓練和推理兩個環節,有著不同的評判體系。好消息是模型訓練這邊,雖然MLPerf的綜合評分依舊比較難定奪,但已經是比較有公信力,比較統一的測試基準,剩下的主要是細節的優化。但壞消息是,在對於主要負責推理過程的終端側AI,基準測試的設立還困難重重。

首先是如何確定指標和權重?即便拋開優化程度、硬體構架等若干問題,延遲、帶寬、能耗都要考慮,各種神經網路模型都有不同參數,不同設備在不同參數下有不同的輸出曲線。如何在不同級別的設備中橫向參考?(就像移動端和PC端的CPU、GPU跑分都還沒能統一比較)?

而雲端和端側的應用又可以分為不同類別,還有各自的特點。是否需要針對不同的應用來搞不同的基準測試?這些子項目如何分配權重,能否統一到一個相對公正客觀,有代表性的數值上?這些都是應用領域的差異性和實現選擇的多樣性直接導致的難題。AI基準測試的工作量之巨,讓很多業者都覺得短期很難有統一的基準測試出現。


現在過頭來看AI Benchmark這種早期的移動端AI測試,其結構還是和Geekbench 4這種移動端CPU測試很像。在AI Benchmark中,使用了MobileNet -V1、InceptionV3、Resnet - V1等在內的9種神經網路模型進行測試。具體項目包含2個物體識別分類、2個超解析度,其餘是人臉識別、圖像去模糊、語義圖像分割、圖片增強和內存極限測試。

首先最明顯的是測試項目偏少,僅有9個子項目。作為對比GeekBench中即便是佔比只有45%的整數測試,其都有13個子項目測試;其次是選取的測試模型的參數、壓力、精度要求同樣太單一。這樣的測試覆蓋面和精度,不要說AI測試,涵蓋面和複雜度還不如CPU測試。

畢竟現階段AI的研究和應用實在是太廣,即便是雲端大型的CPU、GPU、TPU不同的構架都未能分出高下。高通人工智慧引擎AI Engine是為了在驍龍移動平台上加速終端側人工智慧用戶體驗實現的硬體與軟體組件的集合。

其中關鍵組件包括——硬體:Hexagon向量處理器、Adreno GPU和Kryo CPU的人工智慧優化組合;以及一套軟體工具和庫:驍龍神經處理SDK、Android NN和Hexagon NN;上述所有旨在共同支持開發者與OEM廠商,輕鬆實現和加速驍龍內核上的人工智慧處理。

目前全球多家領先的OEM廠商、開發者以及雲供應商等生態系統廠商已採用或宣布支持高通人工智慧引擎AI Engine,以優化和加速人工智慧應用。所以移動端這邊,僅靠現有的簡單測試,就想測試出高通這種「CPU+GPU+DSP非同步構架」和麒麟NPU等後來產品的實際AI性能差距,未免有點太兒戲了。

雖然項目和比重還未達成共識,但評判AI性能的標準早就有共識了。在移動端,涉及了「性能、功耗、晶元面積和準確率」這4個核心。它們分別對應實際的響應速度、功耗控制、成本控制和用戶體驗。當放在這4個維度的評判體系下,不單單AI測試跑分還有不少的問題和改進空間。連部分有獨立NPU的產品,都有很多實用性上的改進空間。

這裡最明顯的矛盾是,現在很多AI場景還不成熟,使用率有限,如果像部分產品那樣直接使用獨立NPU,除了會巨大的晶元面積導致成本提升外,還有功耗和發熱上的影響,投入和產出完全不成正比。在性能、功耗、晶元面積和準確率這4大基準下,平衡最好的依舊是高通這邊專項優化的異構路線。

第二個誤區,是測試中對深度學習結果的精確率要求。在AI Benchmark中,2個圖像識別測試的精確度要求分別只有60-80%,但在靠近用戶的端側應用,無論是手寫識別還是高頻的圖像識別和分類,無論是部分測試還是實際產品,這樣準確率都明顯無法符合使用要求。

關於精確度的問題,高通在之前5月的人工智慧創新論壇中,罕見地展示了自己和競爭對手在ResNet50和Inception-V3這兩個主要用來進行圖像識別模型的精確度和速度對比。在高通中高端的驍龍660/710中,其準確率和性能都比對手要高,有明顯是個優化和設定上的取向差別。在直接面向終端用戶的AI,除了速度外,識別手寫或人臉/物體識別結果的成功率,都會直接影響用戶體驗和後續使用率。

最後一個誤區,源自於AI基準測試完全無法衡量AI生態。AI晶元和通用性的CPU不同,AI軟體的運行效率和開發商的優化和支持度直接關聯,而且AI落地最終是由開發商來完成的。市場佔有率低或者周邊生態不完整的AI平台,發展越到後期,其體驗差距會越發明顯。

移動終端側AI平台的硬體之爭,最後一大部分都會是應用生態和配合度之間的對比,這也是高通如此積極和各領域開發商合作的原因。已知的高通合作夥伴,除了Facebook Caffe2、Google TensorFlow、Microsoft Azure這些上游的深度學習語言和框架外,5月的高通AI Day活動中還出現了騰訊高能舞室、曠視科技Face++、商湯科技、百度DuerOS等眾多應用廠商的身影。

帶獨立NPU的SoC產品,在部分AI基準測試中雖然拿到了超高的分數。但這是忽略功耗、精確率、成本以及移動端AI基準測試設計不完善的共同結果,對實際使用價值的意義不大。

相反,看著很低調的高通,經過3代驍龍布局的異構AI路線,在功耗和精確率上要均衡很多,高通驍龍845移動平台就是高通第3代驍龍布局很重要的一環。而其在出貨量、技術儲備和生態搭建過程中的角色定義,還在繼續加固其地位。在端側AI,高通依舊還跑在很前面,這是我們需要理清的現狀。


喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 ZAEKE知客 的精彩文章:

Android平板都要涼透了,但三星還是準備出新品
vivo展出了自己的3D攝像技術,不過不是你們所想的「結構光」

TAG:ZAEKE知客 |