技術層面,目前人工智能正向終端側邁進,在此基礎上,異構解決方案與軟件的緊密結合也正成為技術發展的主流。Qualcomm作為低功耗、高性能應用處理技術領域的領軍企業,提供了面向人工智能的最大商用終端側移動平臺之一。公司已擴展產品方案,支持采用其平臺的合作伙伴生態系統,利用人工智能去提供令人驚嘆的用戶體驗。鑒于此,Qualcomm在MWC期間宣布推出人工智能引擎AI Engine。該人工智能引擎AI Engine由多個硬件與軟件組成,能夠加速終端側人工智能用戶體驗在部分Qualcomm驍龍移動平臺上的實現。
人工智能為什么向終端側邁進?——傳統而言,很多對神經網絡的訓練和推理都是在云端或者基于服務器完成。而過去幾年,隨著移動處理器性能的不斷提升,對數據隱私保護的更高要求,以及連接技術的不斷演進所能帶來的完整可靠性,整個模式有了很大變化,很多人工智能的推理工作,比如模式匹配、建模檢測、分類、識別、檢測等逐漸從云端轉移到了終端側,這對于保護數據隱私、提升性能和整體可靠性有極大裨益。也就是說,未來,終端將成為人工智能的重要入口,包括智能手機、筆記本電腦、頭顯設備、物聯網終端和汽車系統等。
Qualcomm人工智能引擎AI Engine“軟硬兼施”
Qualcomm人工智能引擎AI Engine即為在驍龍移動平臺上加速終端側人工智能用戶體驗實現的硬件與軟件組件的集合。其中關鍵組件包括——硬件:Hexagon向量處理器、Adreno GPU和Kryo CPU的人工智能優化組合;以及一套軟件工具和庫:驍龍神經處理SDK、Android NN和Hexagon NN;上述所有共同支持開發者與OEM廠商,輕松實現和加速驍龍內核上的人工智能處理。
為了將人工智能推理從云端遷移到移動終端上,Qualcomm充分利用了多核異構計算核心Hexagon向量處理器、Adreno GPU視覺處理子系統和Kryo CPU的驍龍可編程架構。事實上,高效運行的終端側人工智能是一個涉及多方面的問題,僅靠單顆人工智能內核無法以最佳方式解決。與之相反的是,因為不同人工智能應用場景的功耗和對運算資源的需求各不相同,所以需要可編程的異構計算。Qualcomm的異構計算方案為開發者提供了更廣泛的選擇,面向不同類型的功能、基于不同類型的數據、在不同的計算精度水平上,可支持大量卷積或循環神經網絡。異構計算核心(如驍龍的CPU、GPU和向量處理器)具備了開發者、OEM廠商以及獨立軟件開發商(ISV)所需的諸多優勢,讓他們可通過精確控制或Qualcomm開發的預優化人工智能庫加速其應用實現。
硬件:多核異構計算核心
• HEXAGON向量處理器
Qualcomm Hexagon向量處理器是向量處理器子系統中的加速引擎,支持處理8位定點運算。相較于GPU或CPU,涉及向量數學的應用工作負載通常更適合在驍龍的向量處理器上運行。
• ADRENO GPU
具有龐大的并行數據集、需要大量的向量數學,尤其是對浮點精度有要求的應用工作負載,都非常適宜在驍龍的Adreno GPU上運行。通過最新的Adreno GPU對16位浮點精度的人工智能工作負載進行的優化,可提供更佳的能效表現,使其成為如計算機視覺物體分類、視頻風格轉換、場景檢測和游戲等人工智能應用的理想選擇。
• KRYO CPU
神經網絡模型通常以32位浮點(高精度)在云端完成訓練。它也可以在終端側的CPU上實現類似運行,但其代價太大,需要終端在性能和功耗上作出一些犧牲。驍龍845中在Kryo CPU上優化了對8位定點精度的支持,幫助支持包含較大內核、相對較少向量處理、非規則性數據結構和/或復雜流程控制的應用。
總的來說,在驍龍平臺上加速人工智能最高效的解決方案是將人工智能工作負載分配到CPU、GPU和向量處理器上。這為開發者提供了實現人工智能用戶體驗的多種靈活選擇。
軟件
AI Engine的第二個組成部分是軟件和工具。在處理AI應用時,軟件和工具無疑更加重要。硬件是一個加速的平臺,而在軟件層面開發者能夠實現大量的創新,打造最新的AI應用。Qualcomm人工智能引擎AI Engine的核心軟件構架包括:驍龍神經處理SDK、隨Google Android Oreo發布的Android NN API以及Hexagon Neutral Network(NN)庫。其中,驍龍神經處理引擎可幫助開發者節省在驍龍終端上優化已訓練好的神經網絡運行的性能的時間和工作量,Hexagon NN庫讓開發者可以直接將人工智能算法在Hexagon向量處理器上運行。為基礎性的機器學習模塊提供了優化的部署,并顯著加速諸如卷積、池化和激活等人工智能運行。
廣泛生態系統支持,推動AI應用發展
面對當今智能終端帶來的大量人工智能特性及應用,終端側人工智能需要多個硬件架構、軟件工具及框架來滿足開發者的需求以及性能門檻。目前全球多家領先的OEM廠商、開發者以及云供應商等生態系統廠商已采用或宣布支持Qualcomm人工智能引擎AI Engine,以優化和加速人工智能應用。
在今年的MWC期間,Qualcomm與包括商湯科技SenseTime、曠視科技Face++以及騰訊在內的多家中國企業分別展示了利用Qualcomm人工智能引擎AI Engine組件實現的AI應用。
實時視頻風格轉換
Qualcomm與商湯科技合作展示了實時視頻風格轉換。該應用能實時將攝像頭采集到的普通視頻,通過模型處理成特定風格化后的效果視頻。商湯科技領先的人工智能算法和Qualcomm人工智能引擎AI Engine所支持的強勁處理性能,可保證風格化之后的視頻色彩更加豐富,細節更加明顯,充滿層次感與立體感,同時保證轉換后視頻的實時性和流暢性。
由商湯科技人工智能技術與Qualcomm人工智能引擎AI Engine支持的實時視頻風格轉換應用
3D-Animoji
Qualcomm與曠視科技Face++聯合展示了面向智能手機的人工智能應用——3D Animoji。得益于Qualcomm人工智能引擎AI Engine的支持,曠視的算法可以在驍龍移動平臺上實現更快的處理速度,并在極低功耗的情況下實現復雜的場景感知計算,完成實時3D人臉建模和面部表情肌追蹤等工作。
Qualcomm與曠視科技Face++聯合展示了面向智能手機的人工智能應用——3D Animoji
騰訊手機QQ“高能舞室”
Qualcomm與騰訊展示了騰訊手機QQ應用程序中名為“高能舞室”的交互特性。在Android端的手機QQ中,采用了人工智能引擎AI Engine組件以加速該特性的幀率。
Qualcomm與騰訊展示騰訊手機QQ“高能舞室”特性
目前,Qualcomm驍龍845、驍龍835、驍龍820、驍龍660,以及最新推出的驍龍700系列移動平臺都將支持該人工智能引擎AI Engine,其中,驍龍845將支持最頂尖的終端側人工智能處理。驍龍845是Qualcomm的第三代人工智能移動平臺。與前代SoC相比,驍龍845帶來了近三倍的人工智能整體性能提升——將移動終端改變為絕佳的個人助手;簡化圖片與視頻的拍攝;提升VR游戲體驗,并讓語音交互更加自然。
現在,多家智能手機廠商已利用驍龍移動平臺上的人工智能引擎AI Engine,加速其終端上的人工智能應用,包括小米、一加、vivo、OPPO、摩托羅拉、華碩、中興通訊、努比亞、錘子以及黑鯊,其中部分廠商正計劃采用人工智能引擎AI Engine,在其未來的旗艦驍龍智能手機上優化人工智能應用。
除了商湯科技和曠視,其他多家領先的人工智能軟件開發企業也為驍龍移動平臺帶來專屬的用例優化。虹軟為驍龍客戶提供單攝和雙攝算法,并積極開發人工智能用戶體驗。創通聯達針對人工智能視覺用例和終端提供完整的解決方案。Uncanny Vision針對人、車輛、以及車牌檢測和識別提供優化模型。這些企業以及其他更多公司都將利用Qualcomm人工智能引擎AI Engine組件,加速實現其人工智能模型的性能與用戶體驗。
此外,Qualcomm還和百度基于DuerOS共同發展終端側的關鍵詞檢測和自然語言處理技術,為云端服務提供補充。同時,Qualcomm與Google在AI領域保持著長期的密切合作,自驍龍820移動平臺開始,雙方就攜手實現了TensorFlow面向移動終端的優化,驍龍移動平臺也由此成為首款支持TensorFlow的商用移動SoC。目前,Qualcomm正基于Facebook的Caffe2框架對多款Facebook應用,尤其是AR領域的應用進行優化。Qualcomm與微軟、亞馬遜也正利用ONNX交換格式進行合作,共同探索終端側人工智能與云端人工智能的結合。