人工智能的蓬勃發(fā)展離不開(kāi)云計(jì)算所帶來(lái)的強(qiáng)大算力,然而隨著物聯(lián)網(wǎng)以及硬件的快速發(fā)展,邊緣計(jì)算正受到越來(lái)越多的關(guān)注。未來(lái),智能邊緣計(jì)算將與智能云計(jì)算互為補(bǔ)充,創(chuàng)造一個(gè)嶄新的智能新世界。本文中,微軟亞洲研究院系統(tǒng)與網(wǎng)絡(luò)研究組首席研究員劉云新將為大家介紹智能邊緣計(jì)算的發(fā)展與最新研究方向。
智能邊緣計(jì)算的興起
近年來(lái),邊緣計(jì)算(Edge Computing)在學(xué)術(shù)界和工業(yè)界都成為了一個(gè)熱門(mén)話題。
事實(shí)上,邊緣計(jì)算是相對(duì)于云計(jì)算(Cloud Computing)而言的。
在云計(jì)算中,所有的計(jì)算和存儲(chǔ)資源都集中在云上,也就是數(shù)據(jù)中心(Datacenter)里;在終端設(shè)備上產(chǎn)生的數(shù)據(jù)通過(guò)網(wǎng)絡(luò)傳輸?shù)皆粕?,?jì)算任務(wù)和數(shù)據(jù)處理都在云上進(jìn)行。而在邊緣計(jì)算中,計(jì)算和存儲(chǔ)資源被部署到邊緣上(邊緣服務(wù)器或者終端設(shè)備),可以就近對(duì)本地的數(shù)據(jù)進(jìn)行處理,無(wú)需把數(shù)據(jù)傳輸?shù)竭h(yuǎn)端的云上,從而避免網(wǎng)絡(luò)傳輸帶來(lái)的延遲。
雖然邊緣計(jì)算成為廣受關(guān)注的熱門(mén)話題的時(shí)間并不久,但邊緣計(jì)算的概念并不新。
早在2008年,微軟研究院的 Victor Bahl 博士邀請(qǐng)了學(xué)術(shù)界和工業(yè)界的知名學(xué)者,包括卡內(nèi)基·梅隆大學(xué)的 Mahadev Satyanarayanan 教授、AT&T 實(shí)驗(yàn)室的 Ramón Cáceres博士、蘭卡斯特大學(xué)(Lancaster University, U.K.)的Nigel Davies教授、英特爾研究院(Intel Research)的 Roy Want 博士等,一起探討云計(jì)算的未來(lái)時(shí) [1],就提出了基于 Cloudlet 的邊緣計(jì)算的概念;
并于次年在 IEEE Pervasive Computing 期刊上發(fā)表了廣為人知的名為 “The Case for VM-based Cloudlets in Mobile Computing”的文章 [2]。
此后,越來(lái)越多的研究人員開(kāi)始關(guān)注邊緣計(jì)算。
值得一提的是,2016年,首屆專注于邊緣計(jì)算的學(xué)術(shù)會(huì)議 The First IEEE/ACM Symposium on Edge Computing 在美國(guó)華盛頓特區(qū)召開(kāi) [3]。
目前,邊緣計(jì)算已成為相關(guān)頂級(jí)學(xué)術(shù)會(huì)議(比如MobiCom)的重要專題之一。
在工業(yè)界,2017年微軟公司 CEO 薩提亞·納德拉就將邊緣計(jì)算和云計(jì)算并列成為全公司的戰(zhàn)略之一。
之后,各大云計(jì)算公司和運(yùn)營(yíng)商都紛紛推出了自己的邊緣計(jì)算服務(wù);邊緣計(jì)算相關(guān)的創(chuàng)業(yè)公司更是不斷涌現(xiàn)。
在人工智能時(shí)代,邊緣計(jì)算不僅僅只是計(jì)算,更是智能+計(jì)算,我們稱之為智能邊緣計(jì)算(Intelligent Edge Computing)。
計(jì)算模式的輪回:在集中式和分布式之間的搖擺
唯物辯證法指出,事物的發(fā)展總是曲折、循環(huán)往復(fù),并在波浪中不斷前進(jìn)的。
計(jì)算模式(Computing Paradigm)也不例外。
如圖1所示,如果我們回顧計(jì)算模式的發(fā)展歷史,就會(huì)發(fā)現(xiàn)一個(gè)簡(jiǎn)單的規(guī)律:
計(jì)算模式是在集中式計(jì)算和分布式計(jì)算之間不斷搖擺,往復(fù)式發(fā)展前進(jìn)的。
在大型機(jī)(Mainframe)時(shí)代,計(jì)算資源稀缺,很多人共享一臺(tái)主機(jī),計(jì)算是集中式的;到了個(gè)人計(jì)算(Personal Computing)時(shí)代,硬件變得小型化,價(jià)格低廉,人們可以擁有自己的個(gè)人設(shè)備,計(jì)算成為了分布式的;在云計(jì)算時(shí)代,通過(guò)高速網(wǎng)絡(luò),人們可以共享云上的海量的計(jì)算和存儲(chǔ)資源,計(jì)算模式又回到集中式的。
此時(shí),人工智能蓬勃發(fā)展,云上提供的眾多智能服務(wù)帶來(lái)了智能云計(jì)算。
而隨著邊緣計(jì)算的出現(xiàn),計(jì)算模式再一次成為分布式的?,F(xiàn)在,我們不僅有智能云,還有智能邊緣。
智能邊緣計(jì)算的出現(xiàn)當(dāng)然不僅僅是滿足表面上的簡(jiǎn)單規(guī)律,背后有其必然性和強(qiáng)大的驅(qū)動(dòng)力,是計(jì)算機(jī)軟硬件和新應(yīng)用新需求不斷發(fā)展的必然結(jié)果。
首先,隨著物聯(lián)網(wǎng)特別是智能物聯(lián)網(wǎng)(AIoT)的發(fā)展,各種新型智能設(shè)備不斷涌現(xiàn),產(chǎn)生了海量的數(shù)據(jù)。比如,監(jiān)控?cái)z像頭已經(jīng)無(wú)處不在(據(jù)統(tǒng)計(jì),在倫敦每14個(gè)人就有一個(gè)監(jiān)控?cái)z像頭 [4]),每天產(chǎn)生大量的視頻數(shù)據(jù)。而每輛自動(dòng)駕駛汽車每天更是會(huì)產(chǎn)生多達(dá)5TB的數(shù)據(jù)。把所有這些數(shù)據(jù)都傳輸?shù)皆粕线M(jìn)行處理是今天的云和網(wǎng)絡(luò)無(wú)法承受的。
其次,新的場(chǎng)景和應(yīng)用需要對(duì)數(shù)據(jù)在本地進(jìn)行處理。比如,自動(dòng)駕駛和工業(yè)自動(dòng)化對(duì)數(shù)據(jù)處理的實(shí)時(shí)性有很高的要求。數(shù)據(jù)傳輸帶來(lái)的網(wǎng)絡(luò)延遲往往無(wú)法滿足實(shí)時(shí)性的要求,如果網(wǎng)絡(luò)發(fā)生故障可能帶來(lái)災(zāi)難性后果。
再如,人們對(duì)個(gè)人隱私越來(lái)越關(guān)注,而很多數(shù)據(jù)(視頻、圖片、音頻等)都包含大量的個(gè)人隱私。保護(hù)個(gè)人隱私的最好的方法就是在本地進(jìn)行數(shù)據(jù)處理,不把個(gè)人數(shù)據(jù)傳到網(wǎng)絡(luò)上去。
另外,同樣重要的是,硬件的快速發(fā)展使得智能邊緣計(jì)算成為可能。隨著 AI 算法的日益成熟,人們開(kāi)始設(shè)計(jì)制造專用的 AI 芯片,特別是專門(mén)用于深度學(xué)習(xí)模型推理的 AI 芯片,這些 AI 芯片不僅數(shù)據(jù)處理能力強(qiáng)大,而且尺寸小、功耗低、價(jià)格便宜,可以應(yīng)用到各種邊緣設(shè)備上,為智能邊緣計(jì)算提供了堅(jiān)實(shí)的硬件基礎(chǔ)。
需要指出的是,智能邊緣計(jì)算并不是要取代云計(jì)算,而是和云計(jì)算互為補(bǔ)充,一起更好地為用戶提供服務(wù)。云計(jì)算和邊緣計(jì)算會(huì)不斷融合;
智能計(jì)算分布在不同的地方,但又相互連接,協(xié)同合作。
智能邊緣計(jì)算中的關(guān)鍵問(wèn)題研究
在微軟亞洲研究院,我們致力于研究智能邊緣計(jì)算中的關(guān)鍵問(wèn)題,更好地將 AI 賦能于邊緣設(shè)備(包括終端設(shè)備和邊緣服務(wù)器)和應(yīng)用,提高智能邊緣計(jì)算的系統(tǒng)性能和用戶體驗(yàn)。具體來(lái)說(shuō),目前我們主要關(guān)注以下幾個(gè)研究方向:
針對(duì)不同設(shè)備的模型壓縮和優(yōu)化。高精度的深度學(xué)習(xí)模型通常都十分龐大,由數(shù)百萬(wàn)甚至以億計(jì)的參數(shù)構(gòu)成。運(yùn)行這些模型需要耗費(fèi)大量的計(jì)算和內(nèi)存資源。雖然智能邊緣設(shè)備的處理和存儲(chǔ)能力大幅增長(zhǎng),但仍遠(yuǎn)遠(yuǎn)比不上云計(jì)算設(shè)備。因此,如何把深度學(xué)習(xí)模型在資源受限的邊緣設(shè)備上運(yùn)行起來(lái)是一個(gè)巨大的挑戰(zhàn)。
傳統(tǒng)的模型壓縮和優(yōu)化(比如剪枝、量化等)主要關(guān)注的是在如何把模型變小的同時(shí)盡量少損失模型精度。然而,邊緣設(shè)備的特點(diǎn)是類型多、差異性大,處理器類型性能和內(nèi)存大小千差萬(wàn)別。我們認(rèn)為,沒(méi)有一個(gè)統(tǒng)一的模型能夠適用于所有的邊緣設(shè)備,而是應(yīng)該結(jié)合硬件的特性,為不同的設(shè)備提供最適合的模型,不僅考慮模型大小和精度損失,更要考慮模型在設(shè)備上的執(zhí)行性能,比如延遲和功耗等。
基于異構(gòu)硬件資源的系統(tǒng)優(yōu)化。即使有了一個(gè)可以運(yùn)行的模型,如何提高模型的運(yùn)行效率仍是一個(gè)值得深入研究的課題。我們需要一個(gè)高效的模型推理引擎,把系統(tǒng)性能提高到極致。這不僅需要軟件層面的系統(tǒng)優(yōu)化,更要有軟件和硬件的協(xié)同設(shè)計(jì),能夠充分利用底層硬件的能力。邊緣設(shè)備往往有著各種異構(gòu)的硬件資源,比如智能手機(jī)擁有大小不同的 CPU 核(ARM big.Little)、DSP、GPU、甚至 NPU。
而現(xiàn)有的系統(tǒng)往往只能利用其中一種計(jì)算資源(比如 CPU 或者 GPU),還不能充分發(fā)揮硬件的性能。我們的工作致力于研究如何充分利用同一設(shè)備上的異構(gòu)硬件資源,深度優(yōu)化系統(tǒng)性能,大大降低模型執(zhí)行的延遲和能耗。
隱私保護(hù)和模型安全。如前所述,用戶隱私數(shù)據(jù)保護(hù)是一個(gè)重要的課題。
在邊緣設(shè)備無(wú)法運(yùn)行高精度模型的情況下(比如在低端的監(jiān)控?cái)z像頭上),利用云計(jì)算或者邊緣服務(wù)器來(lái)執(zhí)行深度學(xué)習(xí)模型就不可避免。在這種情況下,我們就需要研究如何利用遠(yuǎn)程的計(jì)算資源的同時(shí)還能不泄露用戶的隱私數(shù)據(jù)。
另外,在邊緣設(shè)備上運(yùn)行模型還帶來(lái)了一個(gè)新的問(wèn)題——模型的安全。訓(xùn)練一個(gè)好的模型需要花費(fèi)巨大的人力、物力。因此,模型是重要的數(shù)字資產(chǎn)。
在云計(jì)算模式下,模型的存儲(chǔ)和運(yùn)行都在云上,終端用戶無(wú)法直接接觸模型數(shù)據(jù)。而在邊緣計(jì)算中,模型是部署到本地設(shè)備上的,惡意用戶可以破解終端系統(tǒng),復(fù)制模型數(shù)據(jù)。所以,如何在智能邊緣計(jì)算中保護(hù)模型的安全就是一個(gè)新的重要研究課題。
持續(xù)學(xué)習(xí)和合作學(xué)習(xí)。智能邊緣計(jì)算還帶來(lái)了新的改善模型的機(jī)會(huì)。
目前的模型訓(xùn)練和模型使用通常是割裂的。一個(gè)模型在事先收集好的數(shù)據(jù)集上進(jìn)行訓(xùn)練,然后被部署到設(shè)備上進(jìn)行使用。然而,模型使用中的數(shù)據(jù)通常是和訓(xùn)練時(shí)的數(shù)據(jù)集不一樣的。比如,每個(gè)智能攝像頭由于其位置和光線的不同,它們看到的圖像內(nèi)容和特征都不盡相同,從而導(dǎo)致模型精度下降。
我們認(rèn)為,模型被部署到設(shè)備上以后,應(yīng)該根據(jù)設(shè)備上的輸入數(shù)據(jù)進(jìn)行適配和優(yōu)化,而且隨著設(shè)備處理越來(lái)越多的新數(shù)據(jù),它應(yīng)該從中學(xué)習(xí)到新的知識(shí),持續(xù)不斷地提高它的模型,這就是持續(xù)學(xué)習(xí)(Continuous Learning)。此外,多個(gè)設(shè)備還應(yīng)該把它們學(xué)習(xí)到的不同的新知識(shí)合并到起來(lái),一起合作來(lái)改進(jìn)完和善全局的模型,我們稱之為合作學(xué)習(xí)(Collaborative Learning)。
與主要關(guān)注如何利用多方數(shù)據(jù)集進(jìn)行模型訓(xùn)練而不相互泄露數(shù)據(jù)的聯(lián)邦學(xué)習(xí)(Federated Learning)不同,持續(xù)學(xué)習(xí)和合作學(xué)習(xí)的重點(diǎn)是如何在模型部署后從新獲取的數(shù)據(jù)中學(xué)習(xí)新的知識(shí)。
此外,我們還關(guān)注智能邊緣計(jì)算中的各種新場(chǎng)景和新應(yīng)用,比如視頻分析、VR/AR、自動(dòng)駕駛、AIoT 等,特別是隨著 5G 的到來(lái),如何構(gòu)建更好的智能邊緣+智能云的系統(tǒng),為這些場(chǎng)景和應(yīng)用提供更好的支撐。
在過(guò)去兩年,我們和國(guó)內(nèi)外的高校緊密合作,在這些研究方向上取得了一系列的進(jìn)展,也在相關(guān)學(xué)術(shù)會(huì)議上發(fā)表了多篇論文。其中,我們和北京大學(xué)和美國(guó)普渡大學(xué)關(guān)于如何利用緩存技術(shù)(Cache)提高卷積神經(jīng)網(wǎng)絡(luò)(CNN)執(zhí)行效率的工作發(fā)表在 MobiCom 2018上 [5];和哈爾濱工業(yè)大學(xué)等學(xué)校合作的關(guān)于如何利用模型稀疏性(Sparsity)加速模型執(zhí)行的工作發(fā)表在 FPGA 2019和 CVPR 2019上 [6] [7];和韓國(guó) KAIST 等學(xué)校合作的關(guān)于如何利用 SGX 保護(hù)用戶隱私的工作發(fā)表在 MobiCom 2019上 [8];和美國(guó)紐約大學(xué)和清華大學(xué)合作的關(guān)于合作學(xué)習(xí)的工作發(fā)表在 SEC 2019上 [9]。
未來(lái)展望
智能邊緣計(jì)算之后是什么?計(jì)算模式會(huì)沿著既有歷史路線繼續(xù)輪回嗎?
未來(lái)會(huì)是怎樣的?
我們無(wú)法準(zhǔn)確預(yù)測(cè)未來(lái),但我們相信世界一定會(huì)變得越來(lái)越數(shù)字化、智能化,一定會(huì)變得更加美好。在微軟看來(lái),整個(gè)世界正在成為一臺(tái)巨大的計(jì)算機(jī) [10]。不管你是在家里、在辦公室、還是在路上,不管是在工廠、在商場(chǎng)、還是在各行各業(yè),借助分布在各處的強(qiáng)大計(jì)算能力,我們可以利用人工智能處理由無(wú)處不在的傳感器采集到的數(shù)據(jù),創(chuàng)造出豐富多彩的工作和生活體驗(yàn)。
未來(lái)的計(jì)算一定是以用戶為中心的,智能環(huán)境和設(shè)備隨時(shí)隨地感知用戶的狀態(tài)和需求,將用戶所需的數(shù)據(jù)和信息準(zhǔn)確推送給用戶,為人們提供更好的服務(wù)。