機器學習(Machine Learning, ML)是一門多領(lǐng)域交叉學科,涉及概率論、統(tǒng)計學、逼近論、凸分析、算法復雜度理論等多門學科。專門研究計算機怎樣模擬或?qū)崿F(xiàn)人類的學習行為,以獲取新的知識或技能,重新組織已有的知識結(jié)構(gòu)使之不斷改善自身的性能。
機器學習是在VR/AR之后最被業(yè)界看好的技術(shù),幾乎所有的業(yè)界巨頭都有涉足。
在硬件領(lǐng)域,英特爾Xeon Phi家族與英偉達Tesla P/K系列,分別是X86和GPU陣營的機器學習芯片代表。
軟件領(lǐng)域的微軟、Google、facebook等巨頭也早就在自家產(chǎn)品中加入機器學習,當中的Google甚至也定制了神經(jīng)網(wǎng)絡(luò)專用的TPU(張量處理單元)和英偉達的硬拼。
雖然Google和facebook這種廠商很早就把機器學習的成功應用在自家的搜索、圖片和視頻相關(guān)業(yè)務(wù)上。但不可否認,此前的機器學習無論是技術(shù)還是設(shè)備門檻,對于普通用戶,甚至很多軟硬件開發(fā)者來說,依舊是非常高大上和陌生的高科技。
這一切,得等到高通在驍龍計算平臺上加入機器學習相關(guān)的軟硬件支持之后才開始有所轉(zhuǎn)變。高通作為受眾最廣的移動領(lǐng)域上游廠商,其在消費級產(chǎn)品上加入機器學習支持,這個理念不但超前,而且還很可能是里程碑式的。
起起落落60載,機器學習為何物?
人工智能學科在20世紀40年代誕生,第一個游戲AI在1951年出現(xiàn),但其實只是個可以下西洋棋的程序。1956年達特茅斯會議后的數(shù)年,是人工智能的大發(fā)現(xiàn)時代,那時候的計算機已經(jīng)可以證明幾何定理、學習和使用英語了。
60年間,人工智能的發(fā)展重點經(jīng)過從“推理”到“知識”再到“學習”為主導的變遷,分別代表了程序、暴力窮盡和神經(jīng)網(wǎng)絡(luò)等不同時代的人中只能方案。而提到人工智能就必須要提到機器學習和深度學習。
與傳統(tǒng)的有明確目標的程序不同,機器學習具備自行創(chuàng)建模型和算法的能力,其是通過大量數(shù)據(jù)讓計算機從數(shù)據(jù)中自動分析和改善算法模型,從而對未知數(shù)據(jù)進行預測的過程。機器學習早已被廣泛應用于數(shù)據(jù)挖掘、計算機視覺、自然語言處理、手寫識別、生物特征識別、搜索引擎、DNA測序等領(lǐng)域。
實現(xiàn)計算機自動創(chuàng)建并修正模型和算法的方案有很多種,而深度學習則是近年來名聲最大、應用最廣的分支。深度學習通過模擬生物大腦神經(jīng)元的神經(jīng)網(wǎng)絡(luò)架構(gòu),對數(shù)據(jù)進行進行高層抽象。
Siri/Google Assistant/微軟小娜等語音助手、剛開始爆發(fā)的智能音箱、Prisma線上自動修圖、手機云相冊的人臉識別和篩選等,這些以前看起來很神奇的功能,都是深度學習的直接結(jié)果。
計算機慢慢地開始可以表現(xiàn)得像人類,甚至代替人類做簡單的腦力工作了。換個淺顯一點的角度看,機器學習正在把語音和圖像,這些以前計算機無法理解和使用的數(shù)據(jù)轉(zhuǎn)換為實用功能了。
高通初見成果的十年耕耘
和其他巨頭一樣,高通很早就進入了人工智能領(lǐng)域。10年前,真正的智能手機誕生之初,高通就開始了人工智能的基礎(chǔ)研究,隨后高通投資并和Brain Corp合作,專注于生物真實性的脈沖神經(jīng)網(wǎng)絡(luò)的研究。
2013年,高通研究人工神經(jīng)處理構(gòu)架并通過深度學習進行人臉識別的研究。2014年,高通收購了Euvison并于次年的MWC上展示了照片分類和手寫識別技術(shù)。
在深度學習大熱的2016年,高通和Google兩個巨頭在機器學習上合作,驍龍平臺對Google的TensorFlow機器學習語言做了適配和相互優(yōu)化。同年,高通推出了NPE(Neural Processing Engine神經(jīng)處理引擎)深度學習軟件開發(fā)包SDK。
2017年,高通宣布支持Facebook的 Caffe2開源深度學習框架,隨后高通收購了從阿姆斯特丹大學(UvA)分拆的人工智能公司Scyfer。
此外,高通也是最早大規(guī)模應用深度學習成果的廠商。高通的最早落地的人工智能項目是2013年的Zeroth處理器和Zeroth認知計算平臺,其核心正是深度學習。
在早期試驗性質(zhì)的驍龍Rover、驍龍Cargo等機器人上,高通通過深度卷積神經(jīng)網(wǎng)絡(luò),實現(xiàn)了人臉識別和視覺避障等功能,在與Planet GmBH的合作中則實現(xiàn)了OCR手寫識別。
最早從機器學習中受益的移動攝影領(lǐng)域,早在2015年就開始大規(guī)模應用機器學習的成果。當年安卓旗艦開始搭載的各種情景模式相機、OCR識別文本和筆跡的能力,用的正是就高通驍龍系列處理器的開放接口。
而更上一階的Google,在自家手機系列上的HDR+技術(shù),正是通過高通的Hexagon DSP,使用Halide語言提供的深度學習能力進行圖形處理加速。
和以前的處理器構(gòu)架、傳感器、指紋、曲面屏等單一的技術(shù)突破不同,深度學習幾乎可以強化所有和算法有關(guān)的部分。而高通今年的驍龍835,可以說是史上機器學習成果最集中的一代移動計算平臺,經(jīng)過了大量認知訓練的機器學習算法和應用,被用于對續(xù)航、相機、安全、連接和VR/AR的優(yōu)化上。
影像方面,機器學習優(yōu)化了驍龍平臺對場景模式的分類能力,在HDR、夜景等算法判斷以及多幀合成的過程中,機器學習用于幫助手機識別場景和物體邊緣,提供更好的銳化和降噪效果,這些都是傳統(tǒng)算法和硬件都無法提供的可能性。
而在即將全面爆發(fā)的雙攝領(lǐng)域,無論是黑白雙攝的畫面數(shù)據(jù)合成和優(yōu)化,長短焦雙攝的平滑變焦、大量的后期降噪和銳化算法、還是背景虛化所需的物體邊緣識別和摳圖算法,都少不了深度學習。
在更偏向后期的圖像增強領(lǐng)域,驍龍835的機器學習可以根據(jù)現(xiàn)有的數(shù)據(jù),以及從其他類似圖像訓練出來的算法進行推斷,對圖像進行重建或填充圖像中缺失的部分,以此提升多幀合成的后期降噪和去鬼影效果。
配合Hexagon 682 DSP,驍龍835上追蹤速度和精度更高的面部檢測和人臉識別,可以用于改善自動對焦性能或進行人像美化,甚至是在視頻拍攝過程中的使用人工智能完成追焦任務(wù)。
在Google和蘋果剛加入戰(zhàn)局的虛擬現(xiàn)實/增強現(xiàn)實領(lǐng)域,其重點是用戶物理位置的感知定位和高速的畫面渲染。機器學習在驍龍835上被用于整合攝像頭和傳感器數(shù)據(jù),高通的視覺慣性測距(VIO)頭部運動跟蹤系統(tǒng),在處理攝像頭的30 FPS的畫面外,還需要以高達800-1000Hz的頻率處理加速度計和陀螺儀在6自由度(6-DOF)的數(shù)據(jù)。
在驍龍835的異構(gòu)計算系統(tǒng)中,這個工作交給了Hexagon 682 DSP處理,以提供比CPU高4倍的性能和更低的耗電,而畫面渲染則交給了性能提升高達 25% 的 Adreno 540 。機器學習甚至還會預測下一個畫面,讓GPU精確調(diào)整當前內(nèi)容。
在視覺之外的自然語言處理上,大規(guī)模神經(jīng)網(wǎng)咯訓練出來的算法很早之前就能做到實時的語音轉(zhuǎn)文字,而驍龍835上運用的深度神經(jīng)網(wǎng)絡(luò),被用來學習如何更好地理解語音指令和問題,通過將其轉(zhuǎn)化為合適的指令,而且DSP可以做到比以前更低的功耗、響應更快的全天候語音待命。
在驍龍835上,高通整合了SecureMSM的軟硬件并引入了Haven安全平臺,以提升生物識別與終端認證的安全性。讓驍龍835成為首個支持全部生物識別方案的計算平臺,在幾年前就開始用機器學習的Sense ID 3D指紋識別和聲紋信息的生物識別之外,驍龍835可以使用安全攝像頭實現(xiàn)基于眼球、面部,甚至虹膜的識別。
機器學習的預測能力也被加入到大家已經(jīng)習以為常的通話上,在驍龍835上除了環(huán)境聲音檢測和消除,還能對聲音模式進行預測和判斷。
命運式的差異:高通的移動終端機器學習
機器學習需要進行大量的數(shù)據(jù)訓練,以前的移動設(shè)備根本不具備神經(jīng)網(wǎng)絡(luò)模擬的硬件電路和運算能力,所以現(xiàn)階段大部分廠商的機器學習都是基于大型的CPU/GPU集群,然后通過云端與移動連接,從而提供計算機視覺、語音助手等深度學習功能。
這就是為什么智能語音助手一但斷網(wǎng)就基本殘廢,以及相冊應用中的人臉識別和分類功能,只能在照片上傳云端之后才能使用的原因。
而高通在通訊和移動血統(tǒng)上的差異,讓其在機器學習的出發(fā)點和立意上,就注定和其他芯片廠商完全不同,并提出了截然不同的思路——移動終端的機器學習。
高通定義了NPU(Neural Processing Unit,神經(jīng)處理單元)并改用其執(zhí)行深度學習任務(wù)后,其目標是讓智能手機、汽車、無人機、機器人等數(shù)十億移動設(shè)備,都能實現(xiàn)一定程度的人工智能。
更出乎業(yè)界預料的是,高通在去年的驍龍820、今年的驍龍835和驍龍660等計算平臺上就加入了大量深度學習的支持(而業(yè)界下一個跟進的Kirin 970得等到2017年底才會量產(chǎn))。
驍龍835還加入NPE神經(jīng)網(wǎng)絡(luò)技術(shù)支持,支持卷積和循環(huán)神經(jīng)網(wǎng)絡(luò)加速,廠商可以定制神經(jīng)網(wǎng)絡(luò)層,高通也以極高的速度引入了Caffe、CudaConvNet、Google TensorFlow和facebook 的Caffe 2等深度學習語言和框架的支持。
當中的關(guān)鍵是高通的異構(gòu)計算概念和近年來規(guī)模和性能暴漲的Hexagon DSP。其內(nèi)置的HVX(Hexagon向量擴展)專門用于圖像和視頻處理、虛擬現(xiàn)實和機器視覺等應用,其還借用了大量來自高級CPU內(nèi)核的概念,讓驍龍平臺的DSP成為了移動端性能最強、功能最廣的DSP。
Hexagon 682在機器學習方面的的性能達到CPU的8倍,但卻比CPU省電25倍。驍龍和NPE所帶來的重要優(yōu)勢是,開發(fā)者和OEM廠商能夠基于應用的功能和性能要求,自行在Kryo 280 CPU、Adreno 540 GPU和Hexagon DSP 及其Hexagon Vector eXentions(HVX)中,選擇最高效的異構(gòu)化核心運行模型。
高通的移動化機器學習理念雖然非常大膽,但確注定是未來的其中一個形態(tài)。無論是在無人駕駛、計算機視覺識別,還是自然語言處理等機器學習,移動端在即時響應、可靠性、隱私保護等很多優(yōu)勢,都是現(xiàn)有的云端模式所無法提供的。
此外,移動端是最重要的圖像和聲音數(shù)據(jù)源,在最靠近數(shù)據(jù)源的位置處理,除了高效利用網(wǎng)絡(luò)帶寬外,還是對云端處理的重要補充。
高通對機器學習的方案和態(tài)度,和英特爾、英偉達等傳統(tǒng)硬件廠商截然不同。把機器學習功能加入到自家的消費級旗艦驍龍835上,這就足以在人工智能史上留下濃墨重彩的一筆了。
驍龍系列是地球上應用最廣泛的計算平臺之一,在這上面加入機器學習支持,變相等于為數(shù)十億的移動終端設(shè)備加入深度學習支持,讓移動設(shè)備變成移動的人工智能平臺,極大地降低了機器學習的軟硬件門檻,為全世界的應用開發(fā)商和開發(fā)者打開了新世界的大門。
大量以前只能在服務(wù)器端部署的深度學習算法,都可以交給移動終端完成。在速度、安全和實時性上的巨大提升,讓本地的計算機視覺、真正的個人語音助理、AR增強現(xiàn)實等都將成為可能。
總結(jié)
機器學習雖然聽起來高大上,但本質(zhì)還是運行在特定電路上的算法。寫算法的人類是有邊界的,但我們創(chuàng)造了在算法和模型上都超越人類的機器。人類的發(fā)展史,就是制造比自身更強的工具為人類代勞的歷史。在機器學習這件事上,本質(zhì)也和以前一樣,只是以前工具代替的是人力勞動,而機器學習代替的是人類腦力勞動。
移動化浪潮之后,社會從PC為主導的信息時代過渡到智能時代,而機器學習將會是下一個拐點。其與以前在處理器、傳感器、用戶界面等方面的單點突破不同,作為讓驍龍835在攝影、VR/AR、語音檢測、安全性等多方面,以超越摩爾定律的速度暴漲的功臣,機器學習幾乎可以用在幾乎所有和算法相關(guān)的領(lǐng)域。
高通10年前就開始研究和布局的人工智能,從早期人臉識別和OCR領(lǐng)域的初露鋒芒,到在驍龍835上的多點突破,再到移動端機器學習的支持和布局,都領(lǐng)先了移動市場一大截。但高通囊括了智能手機、VR/AR、智能穿戴、智能家居、無人機、無人駕駛等多個領(lǐng)域,數(shù)十億設(shè)備的萬物升級,才剛剛開始。