機器學習(ML)和人工智能(AI)是當前科技領域最熱門的話題,這兩項技術都在通過對于底層的優化改良進而影響人們的生活,而下一次工業革命很有可能由人工智能點燃。而普通大眾對于AI的認識源于智能手機中內置的AI引擎。特別是我們已經見識過了AI引擎在使用手機過程中帶來的提升,如:AI一鍵換天、AI提升語音轉文字效率。
當手機AI性能發展到切實能夠影響使用體驗的時候,AI也成了衡量手機芯片性能的一部分,AI跑分軟件應運而生。用戶必然會好奇AI跑分軟件如何實現對于手機AI性能的衡量?今天我們就來解釋什么是AI、AI跑分軟件是如何評判手機AI性能的。
01 手機上的AI到底是什么?
所謂AI,指的是人工智能,如果將范圍縮小到硬件層面,就是指模擬人類大腦結構的人工神經網絡。說白了,就是模擬人的神經結構和功能的數學模型或計算模型,通過大量的人工神經元(數學函數)聯結進行計算。不同于傳統邏輯推理,基于大量數據統計的人工神經網絡具有一定的判斷力,在語音識別和圖像識別上特別有優勢。
單層神經元網絡
人工神經網絡需要大量的數據訓練,它在識別圖片的訓練過程中會根據一些特征來記憶并識別物體。如人工神經網絡會因為形狀、顏色等特征來識別圖片中的人臉、貓咪或者建筑。這有些類似人類在幼年時期,根據動物的特征來做出“這不是馬,是鹿”的判斷。
人工神經網絡最有價值的地方是通過對于數據的歸類和分割,從而“推理”出智能化結果。AI“推理”是人類向整套AI系統提供數據并“訓練”AI以后的結果。用戶端最終呈現的AI是經過訓練后的AI“推理”后的結果。同理,智能手機中的AI引擎最主要的作用是AI“推理”,進而為用戶提供定制化的使用效果。
需要注意的是,AI運算與傳統運算的區別在于,傳統運算是需要按照人為算法得到最終的函數結果,AI運算的過程更為開放,會根據用戶輸入的數據信息依靠人工神經元對數據信息進行識別判斷。因此,手機AI的評判更為復雜、繁瑣。
02 手機AI跑分軟件的測試標準是什么?
為了讓用戶對手機AI性能有更清晰準確的認識,目前市面上已經出現了一些AI跑分軟件,來幫助用戶認識到不同機型的AI性能差異。
目前主流AI跑分軟件主要衡量的是面向移動端圖像分類的ResNet-34和Inception-V3、面向單一目標檢測和移動視覺的Mobilenet-SSD,以及面向圖像語義分割的Google DeepLab-v3等。
ResNet-34主要用來測試手機AI識別圖片的概率高低與用時,來判斷手機AI的性能。Inception-V3也是類似的評分機制。這兩項是綜合評判手機基本的AI性能。剩下的兩項則是考察手機單項AI性能指標。
Mobilenet-SSD
Mobilenet-SSD是一種目標檢測算法。特點是速度快、精度高,“目標檢測”的意義就是讓AI尋找圖像中的物體,并指出他們在圖像中的位置與種類,這種算法拍攝一次可檢測圖像中的多個對象。
Google DeepLab-V3+
Google DeepLab-V3+原理示意圖
Google DeepLab-V3+是谷歌開源語義分割模型,它可以實現對于物體的建模。簡單來說,這一項是檢測手機AI的圖像處理能力。
總結來說,ResNet-34和Inception-V3是考察手機芯片的基礎AI能力,Mobilenet-SSD是讓AI尋找圖像中物體的位置與種類,Google DeepLab-V3+則是考驗手機AI的“摳圖”能力。
03 市面主流AI軟件成績該如何理解?
手機上的AI測試軟件在建立測試標準后需要做兩件事:其一,適配智能手機所在芯片平臺的SDK(軟件開發工具包);其二,支持AI計算深度學習模型中的兩種常用數據格式INT8和FP16的運算。這里提及了相對專業的名詞,我們先來解釋下做這兩項的含義。
適配智能手機所在芯片平臺的SDK
SDK是“Software Development Kit”的縮寫,中文譯為“軟件開發工具包”,SDK是AI提供商為了開發者更方便實現AI功能而準備的開發者工具。AI測試軟件支持AI SDK的意義在于更便捷、更準確測得實際的AI性能。
高通的AI SDK命名為SNPE
其中,高通的SDK命名為SNPE、聯發科的SDK命名為NeuroPilot、海思的SDK命名為HiAI.。..。.AI測試軟件支持的SDK越多,越容易建立統一的AI測試基準。
支持INT8和FP16的運算
INT8和FP16是AI計算深度學習模型中的兩種常用數據格式。
INT8指的是8bits表示的數字,代表的是整數運算。INT8運算優勢在于計算速度快,可以通過減少計算與內存帶寬來提升能耗,可以讓手機在AI運算中更為省電,缺點是計算精度略差。FP16指的是16 bits表示的數字,代表的是浮點運算。FP16運算的優勢在于更高的計算精度,缺點是對于手機電量要求高、硬件需求高、多數消費類應用使用不到該級別精度。
INT8和FP16沒有完全的優劣之分,手機端的AI往往會根據實際場景的不同來綜合考慮選擇。雖然FP16能提供比較高的精度,但其能效比略差,不適合在手機這種電池容量有限的設備上運行。而INT8不僅具備能效的優勢,其運算的效率和精度也在不斷提升。
了解這些后我們再來盤點下市面主流的AI測試軟件:AIMark(魯大師開發)、AITuTu(安兔兔開發)和ETH AI Benchmark(即蘇黎世AI跑分應用)。
AIMark
AIMark
AIMark的開發商為魯大師,測試手機芯片AI性能的基準分為ResNet-34、Inception-V3、Mobilenet-SSD和DeepLab-V3+四大類模型。其中AIMark的分值取決于手機AI處理數據集和執行特定目標識別的效率。
開發商魯大師表示AIMark與ARM、高通,海思、聯發科、三星等AI核心SoC產品供應商進行了測試與調整,實現了對于主流手機AI SDK的支持。同時,魯大師根據實際消費端的AI使用現狀,將可以滿足主流消費應用INT8運算權重占比略高。
上圖是AIMark測試中熱門手機芯片AI性能匯總。其中三星Galaxy S20 Pro和一加8的AI跑分遠超其他終端,這得益于兩款手機采用的驍龍865內置了比前代平臺更強大的第五代高通人工智能引擎AI Engine。我們來具體看下驍龍865的AI算力來源。
驍龍865的AI算力來源于第五代Qualcomm人工智能引擎AI Engine。第五代AI引擎則由Kryo 585 CPU+Adreno 650 GPU+Hexagon 698張量加速器構成,每一部分都有各自的運算專長,系統會根據實際負載將需求分配到CPU、GPU和張量加速器上。高通第五代AI Engine的AI算力達到了15 TOPS,保證高性能與低功耗兼備,滿足移動端的使用需求。
高通第五代AI Engine所提供的15 TOPS的算力與AIMark的實際跑分相符,也證明了高通AI算力提升所言非虛。
此外,在AIMark中我們不難發現一個非常有趣的結果:同樣采用驍龍855平臺的三星Galaxy Note10的AI跑分要遠高于Pixel 4 XL。這是因為兩款手機在實現AI能力上采用了不同的SDK,Pixel 4 XL實現AI算力的方式是接入谷歌為安卓系統準備的Android神經網絡API(Android NN API),軟件的不同最終導致了兩款手機實際AI性能上的差異。
而是否搭配高通的AI SDK所帶來的差距,在高通865上的第五代AI引擎上體現得會更加明顯,這是因為高通為其第五代AI引擎進行了定制優化。專為第五代AI引擎準備的SDK可以讓AI應用開發者快速簡單地調用高通第五代AI引擎的最大性能。
此外,高通還為第五代AI引擎準備了一種深度學習帶寬壓縮的技術,將數據量壓縮一半,降低了運算能耗。針對處理AI任務時消耗電能的問題,高通開發了一項全新的技術——深度學習帶寬壓縮。這還是一項完全無損的壓縮技術,被壓縮的所有數據精度不會有任何損失。
同時,采用高通865的手機往往會使用最新的LPDDR5高帶寬內存相互配合,因此采用驍龍865的手機登頂AIMark也是情理之中。
AITuTu
AITuTu的開發商是安兔兔。AITuTu測試手機芯片AI性能的基準測試為Inception-V3和Mobilenet-SSD。同時開發商安兔兔表示,AITuTu通過各廠商提供的SDK將原始神經網絡轉化為廠商所支持的神經網絡,再通過圖片分類、對象識別測試項對處理器AI性能做評定。
AITuTu
AITuTu實現了對于主流手機芯片平臺如高通、聯發科、海思、三星的SDK支持,測試標準較為統一。同時,AITuTu的AI測試中INT8運算權重略高。
AITuTu的測試結果顯示,搭載驍龍865的設備在AI性能上遙遙領先。
ETH AI Benchmark
ETH AI Benchmark,即蘇黎世AI跑分應用。目前蘇黎世AI跑分應用有v3和v4兩個版本,這兩個版本的跑分會有些許差異。ETH AI Benchmark這款軟件對于手機AI性能的測試包括對象識別、人臉識別、圖像去模糊等9大測試項,根據手機AI識別的速度、準確率和內存要求,最終得出一個體現手機AI性能的分數。
ETH AI Benchmark
需要注意的是,ETH AI Benchmark和上述兩個平臺測試有差異。首先是ETH AI Benchmark不支持手機芯片平臺的AI SDK,ETH AI Benchmark支持的是谷歌為安卓準備的TensorFlow Lite(TFLite)和Android神經網絡API(Android NN API)兩套接口。這會影響到實際的AI測試結果。
這是因為Android神經網絡API(Android NN API)在使用驍龍芯片的廠商中使用率很低。有數據顯示,高通平臺中使用高通SDK的比例高達94%,而使用Android神經網絡API的比例約為1%。ETH AI Benchmark不支持芯片廠商SDK意味著芯片平臺難以發揮全部的AI性能,最終結果和使用結果存在偏差。
ETH AI Benchmark v3測試權重,FP16最高
另外,ETH AI Benchmark的FP16運算加權更高,占到了48%,INT8代表的整數運算占比為24%,這也會影響到最終AI測試分數。我們首先看下ETH AI Benchmark v3版的數據。
ETH AI Benchmark v3測試數據
ETH AI Benchmark v3的測試情況與AIMark和AITuTu不同:麒麟990 5G領先于驍龍865。這是因為而麒麟990 5G在AI浮點運算方面有專屬的AI處理器,因此分數排名有所不同。
我們再來看下ETH AI Benchmark v4版的測試數據:其結果與v3版有所不同,麒麟990 5G的領先幅度較小。
表格中數字為平均初始化時間(單位為毫秒),數值越低越好
三款主流的AI測試軟件的測試結果來看,高通865內置的第五代AI引擎在INT8代表的整數運算方面有優勢,并通過INT8 AI精度帶來包括語音轉文字、語音助手等推薦引擎、相機圖像識別與處理等優質的體驗。
04 總結
手機AI性能的發展非常迅速,而如何確立評判手機AI性能的基準也成了很難的事情,不過當前主流的三款AI測試軟件在一定程度上給我們以啟發。AIMark和AITuTu的測試結果取決于INT8性能,而ETH AI Benchmark看中FP16性能。INT8和FP16并無優劣之分,但INT8運算因為具備更好的能效比,且INT8的AI模型效率和精度也在不斷提升,因此更適合移動端使用。
責任編輯:pj
-
AI
+關注
關注
87文章
31491瀏覽量
269991 -
人工智能
+關注
關注
1796文章
47642瀏覽量
239784 -
機器學習
+關注
關注
66文章
8438瀏覽量
132957
發布評論請先 登錄
相關推薦
評論