E百科 | 基于MEC的边缘AI服务
作者:阿里云付哲,計算機(jī)科學(xué)與技術(shù)專業(yè)博士后,在流量檢測、資源調(diào)度領(lǐng)域有深入研究,其論文《Astraea: Deploy AI Services at the Edge in Elegant Ways》曾入選2020年IEEE邊緣計算國際會議(IEEE International Conference on Edge Computing)。目前在阿里云邊緣計算團(tuán)隊從事邊緣云資源調(diào)度和創(chuàng)新應(yīng)用方面的研究。
5G關(guān)鍵能力
近年來,5G已成為各國戰(zhàn)略競爭制高點和未來社會發(fā)展、信息化的關(guān)鍵技術(shù)。目前,各國紛紛加快5G戰(zhàn)略和政策布局。2019年工業(yè)和信息化部正式向中國電信、中國移動、中國聯(lián)通、中國廣電發(fā)放5G商用牌照,中國正式進(jìn)入5G商用元年,這比原計劃商用提前了一年。最新報告顯示,截至2020年12月,我國三大運營商5G用戶已經(jīng)超過了2.5億。隨著5G技術(shù)和商業(yè)化的不斷普及,5G正滲透到社會生活每個角落。
圖1 5G之花-5G關(guān)鍵能力
目前對5G的認(rèn)知,關(guān)注的焦點是極致的速度。但對于5G更多能力的愿景,現(xiàn)階段涉及還比較少。移動通信專家在5G標(biāo)準(zhǔn)設(shè)立之初,為了形象地描述5G關(guān)鍵能力,畫出了一朵“5G之花”[1],花朵的每一瓣都表示一種核心技術(shù)能力,如圖1所示。
在5G的場景中,不僅是道路速度快了10倍,道路寬了100倍,道路承載的流量、移動性、各種效率等指標(biāo)也均有明顯的提升。很多人都存在一個疑問,這些嚴(yán)苛的能力真的能實現(xiàn)嗎?例如端到端1毫秒的時延,5G通信怎么可能時延比固網(wǎng)通信還要低?這里需要澄清一下,5G毫秒級的時延指的不是遠(yuǎn)距離傳輸?shù)臅r延。以光速計算,1毫秒時間信息也只能傳遞300000*1/1000=300公里的距離。無論是5G,還是6G、7G,也是無法突破這一物理定律的。而通過5G網(wǎng)絡(luò)定制的低時延切片以及多接入邊緣計算等技術(shù),將核心網(wǎng)等下沉到市、縣、鄉(xiāng)等離終端用戶百公里級的范圍之內(nèi),毫秒級時延也并不完全是一句空談。
多接入邊緣計算(MEC)
多接入邊緣計算(Multi-access Edge Computing)的概念最早提出于2009年卡耐基梅隆大學(xué)所研發(fā)的cloudlet計算平臺,并逐漸被世界各個標(biāo)準(zhǔn)協(xié)會納入通信標(biāo)準(zhǔn),發(fā)展演進(jìn)成為5G移動通信技術(shù)系統(tǒng)的重要技術(shù)之一。
為了避免技術(shù)敘述上的枯燥,先舉一個通俗的例子。假設(shè)我們有兩個快遞件要發(fā),一個是從深圳發(fā)往北京,一個是從深圳福田區(qū)發(fā)往同城的寶安區(qū)。第一個快遞會先從深圳發(fā)往某地的快遞集散中心(例如鄭州集散中心),然后再發(fā)往北京,最終通過逐級快遞點送到用戶手中,這種方式是沒有問題的。但是如果按此方式運送第二個快遞,那么第二個快遞也會先從福田區(qū)發(fā)往鄭州集散中心,然后再返回寶安區(qū),最終送到用戶手中。
圖2 5G與MEC
大家一定會覺得這種方式瘋了,同市的快遞為什么不直接在市內(nèi)調(diào)度就好,而要先運送到千里之外的集散中心?現(xiàn)實很殘酷,5G之前的網(wǎng)絡(luò)(包括5G非獨立組網(wǎng)),數(shù)據(jù)基本上都是按照接入網(wǎng)->承載網(wǎng)->核心網(wǎng)的處理方式,最后再由核心網(wǎng)決定怎么去調(diào)度和處理。即使是同一個城市、同一個基站下的兩個終端間的通信,還是得先上報到核心網(wǎng)處理再回來。這一去一回,用戶感知的時延明顯增大了。而MEC技術(shù),可以將計算能力下沉到基站側(cè),終端用戶的業(yè)務(wù)請求可以調(diào)用就近的算力解決,而不用一層層上報至核心計算中心,再下發(fā)處理,從而能夠降低網(wǎng)絡(luò)傳輸時延,并且減少涌入中心云的網(wǎng)絡(luò)流量。
基于MEC的邊緣AI服務(wù)
5G普及之后,大部分的計算交互都可以直接在MEC節(jié)點處進(jìn)行處理,由于節(jié)省了承載網(wǎng)、核心網(wǎng)的介入,大大降低了網(wǎng)絡(luò)時延,同時節(jié)省了網(wǎng)絡(luò)帶寬資源。高清視頻、VR/AR、云游戲等應(yīng)用預(yù)計將會隨著5G的普及迎來下一波爆發(fā)。本文將會介紹5G場景下的熱點應(yīng)用之一:邊緣AI服務(wù)。
站在用戶的角度,AI服務(wù)(尤其是推理階段)通常可分為在端側(cè)或者在云側(cè)執(zhí)行。手機(jī)等終端設(shè)備的計算能力逐漸增強(qiáng),使得一些簡單的AI模型跑在終端上成為了可能。然而,終端設(shè)備有限的功耗是始終無法忽略的問題,不少運行在終端上的AI模型往往會遇到發(fā)熱、降頻、耗電過快的問題;此外,數(shù)量更大的其他終端設(shè)備,例如攝像頭、傳感器以及其他IoT設(shè)備,其受限的計算資源使得他們難以運行常見的端側(cè)AI模型。另一方面,云側(cè)雖然算力強(qiáng)大,但是由于其執(zhí)行的AI模型由于離端側(cè)更遠(yuǎn),時延無法得到保證;即使對時延并不敏感,在萬物互聯(lián)場景下如果海量端側(cè)設(shè)備都依賴云中心的AI服務(wù)的話,它們的帶寬流量會對現(xiàn)有網(wǎng)絡(luò)帶來不小的沖擊。
為了解決這一困境,基于MEC的邊緣AI服務(wù)應(yīng)運而生。MEC節(jié)點的計算能力雖然比不上中心云,但是相較于終端設(shè)備還是要高不少的,部分MEC節(jié)點也包含GPU、FPGA等計算加速硬件。卸載到邊緣節(jié)點的AI服務(wù)不僅僅能夠節(jié)省終端到云中心的通信成本,而且能夠提供低至毫秒級的網(wǎng)絡(luò)通信時延。
計算卸載是邊緣計算的主要功能之一,為簡化這一場景,我們僅以單任務(wù)決策為例進(jìn)行建模分析。對于終端用戶來說,如果滿足以下條件(1),那么將AI計算從端設(shè)備卸載到邊緣執(zhí)行,在任務(wù)完成時延上有明顯體驗上的提升的。
C / Pd > C / Pe + D / Bc (1)
類似地,當(dāng)條件(2)滿足時,將AI計算任務(wù)從端設(shè)備卸載到邊緣執(zhí)行,可以降低計算能耗。
C × Ed / Pd > C × Ee / Pe + D × Ec / Bc (2)
以上公式中各參數(shù)含義如下:
Pd: 端設(shè)備處理速度
Pe: 邊緣云服務(wù)器處理速度
C: 計算任務(wù)量
D:需要傳輸?shù)娜蝿?wù)大小
Bc: 端設(shè)備到邊緣節(jié)點的帶寬大小
Ed: 端設(shè)備處理功耗
Ee: 邊緣云服務(wù)器處理功耗
Ec: 端設(shè)備到邊緣節(jié)點的通信功耗
邊緣AI部署項目Astraea
人工智能模型的開發(fā)人員和數(shù)據(jù)科學(xué)家通常不知道或不太關(guān)心他們的模型在生產(chǎn)環(huán)境中是如何服務(wù)的。例如,在邊緣部署模型時,必須考慮到不同框架的AI模型需要不同的部署方式,同時也需要一個API服務(wù)器將AI模型對外提供給終端用戶。此外,邊緣人工智能服務(wù)還需要全生命周期管理的能力,包括版本升級、灰度發(fā)布、自動縮放等,以及靈活的調(diào)度能力,以優(yōu)化用戶體驗、計算成本和流量成本之間的權(quán)衡。
為此,阿里云邊緣計算團(tuán)隊提出了Astraea[2] — 一個適用于邊緣計算場景的新型AI服務(wù)部署平臺,它簡化了部署階段,同時充分利用了邊緣計算的優(yōu)勢。通過邊緣AI部署項目Astraea,模型開發(fā)者能夠自動化地完成AI服務(wù)在MEC等邊緣節(jié)點的部署,并將AI服務(wù)的推理過程轉(zhuǎn)化為Restful API接口,供終端設(shè)備調(diào)用,使得終端設(shè)備能夠充分利用5G/MEC帶來的技術(shù)紅利。
圖3 Astraea 總體架構(gòu)
Astraea具有以下優(yōu)點。首先,Astraea的用戶只需要提交不到10行的模板配置,Astraea能夠在1分鐘時間內(nèi)構(gòu)建映像,在5分鐘時間內(nèi)完成服務(wù)邊緣部署。其次,Astraea支持Scikit learn、TensorFlow、Pythorch、ONNX等多個人工智能框架,可以一鍵化為AI服務(wù)自動生成Restful API。借助Astraea以及阿里云邊緣節(jié)點服務(wù),AI服務(wù)可以下沉到距離用戶10公里的范圍內(nèi)。同時,Astraea基于阿里云邊緣節(jié)點服務(wù)能力實現(xiàn)運維自動化。
Astraea可以基于邊緣節(jié)點服務(wù)平臺實現(xiàn)以下能力:
鏡像倉庫:作為邊緣AI鏡像的儲存?zhèn)}庫,并提供鏡像分發(fā)加速能力
應(yīng)用發(fā)布:提供邊緣AI服務(wù)的一鍵部署和灰度發(fā)布功能
監(jiān)測運維:負(fù)責(zé)邊緣AI容器狀態(tài)監(jiān)測和相關(guān)日志服務(wù)
圖4 Astraea AI模型封裝
實時車牌識別DEMO
為了驗證基于MEC的AI服務(wù)的技術(shù)能力,以下基于Astraea實現(xiàn)了一個簡單的車牌識別(License Plate Reader)服務(wù)示例。實驗中使用了Raspberry Pi 4模擬終端攝像頭設(shè)備。由于目前Raspberry Pi沒有5G通信模塊,因此實驗中額外購置了5G WiFi將5G信號轉(zhuǎn)化為可供Raspberry Pi連接的WiFi信號,用于模擬5G通信鏈路。
圖5 原型驗證中使用的實驗硬件
由于Raspberry Pi采用的是ARM架構(gòu)CPU,算力較弱,實測在Raspberry上直接執(zhí)行車牌檢測的程序,采用預(yù)訓(xùn)練好的模型,需要大概13s的時間才能識別出一張圖片中的車牌數(shù)字及其位置。顯然,想利用Raspberry Pi本身實現(xiàn)實時的車牌識別是不可能的。
下面,我們將車牌識別這一AI服務(wù)部署至邊緣節(jié)點。在項目目錄執(zhí)行:
astraea build該步驟將車牌識別的AI模型打包成AI服務(wù)鏡像,按照用戶定義的配置文件暴露出API接口,并推送到到邊緣節(jié)點的鏡像倉庫中。
接下來,執(zhí)行:
astraea deploy該步驟中,Astraea根據(jù)配置文件中指定的調(diào)度域、規(guī)格和數(shù)量信息將AI服務(wù)調(diào)度到指定的節(jié)點。例如,可以將服務(wù)部署到了位于上海寶山區(qū)的邊緣節(jié)點,能夠為上海寶山區(qū)的用戶提供就近訪問的低時延車牌識別能力。
Astraea能夠按照模板定義好的模型調(diào)用方法自動生成Restful API,返回服務(wù)IP地址以及端口號,提供接口供用戶調(diào)用。本示例中,直接調(diào)用以下接口,就能獲得車牌識別的結(jié)果。
curl -g http://IP:port/predict -d 'json={"jsonData": "img_base64"}'被調(diào)用后,API會返回車牌號識別結(jié)果,包括車牌字符串、位置以及置信概率)。該服務(wù)同時支持多車牌識別,如果一張圖片里有多個車牌,那么結(jié)果將以json數(shù)組形式返回。一個API返回示例如下:
{"code": 0,"request_id": "xxx-xxx-xxx","data": {"msg": {},"ndarray": [{"confidence": 0.8996933911527906,"rect": [120.92, 103.3, 73.57536804199219, 23.4],"res": "\u9c81A88888"}]}, }此外,Astraea還提供了基本的監(jiān)控功能,訪問以下接口,能獲得諸如QPM、平均推理耗時、模型調(diào)用次數(shù)等統(tǒng)計信息。
curl -g http://IP:port/monitor返回值如下:
{"AvgQPM":33.35,"AvgReqTime":"0.009s","Counter":3022}該返回值表示該AI服務(wù)平均每分鐘被調(diào)用33.35次,平均處理時延為9ms,一共被調(diào)用了3022次。
將Astraea自動生成的API接口進(jìn)一步封裝,就能夠?qū)崿F(xiàn)可視化、以及實時的車牌識別。例如,下圖是基于Raspberry Pi 4的實時車牌識別結(jié)果。可以看到,基于部署在邊緣節(jié)點邊緣車牌識別服務(wù),算力較弱的終端設(shè)備(例如Raspberry Pi、老舊攝像頭等)也能實現(xiàn)強(qiáng)大而又低時延的AI處理能力。
圖6 基于Astraea的實時車牌識別服務(wù)
總結(jié)
關(guān)于阿里云EdgePlus官方公眾號,了解更多邊緣計算技術(shù)資訊,更有粉絲專屬福利等你來領(lǐng)基于MEC等邊緣云基礎(chǔ)設(shè)施的能力,AI及其他計算任務(wù)可以卸載到離用戶最近的計算節(jié)點執(zhí)行,在處理時延、處理功耗、網(wǎng)絡(luò)帶寬等方面達(dá)到較優(yōu)的權(quán)衡。通過Astraea,模型開發(fā)者能將已有模型一鍵部署到指定的MEC等邊緣云節(jié)點,提供易部署和低時延AI服務(wù)能力。Astraea的愿景是希望在5G時代,AI服務(wù)在邊緣的部署與運維就像如今使用CDN分發(fā)圖片和視頻一樣簡單。
對這個項目感興趣的伙伴,歡迎聯(lián)系付哲jeff.fz@alibaba-inc.com
文章參考:
[1] 5G之花,http://www.imt2020.org.cn/en/category/65591
[2] Astraea: Deploy AI Services at the Edge in Elegant Ways,https://ieeexplore.ieee.org/document/9284292
2021極速奔跑吧活動火熱進(jìn)行中,點擊了解詳情
原文鏈接:https://developer.aliyun.com/article/782056?
版權(quán)聲明:本文內(nèi)容由阿里云實名注冊用戶自發(fā)貢獻(xiàn),版權(quán)歸原作者所有,阿里云開發(fā)者社區(qū)不擁有其著作權(quán),亦不承擔(dān)相應(yīng)法律責(zé)任。具體規(guī)則請查看《阿里云開發(fā)者社區(qū)用戶服務(wù)協(xié)議》和《阿里云開發(fā)者社區(qū)知識產(chǎn)權(quán)保護(hù)指引》。如果您發(fā)現(xiàn)本社區(qū)中有涉嫌抄襲的內(nèi)容,填寫侵權(quán)投訴表單進(jìn)行舉報,一經(jīng)查實,本社區(qū)將立刻刪除涉嫌侵權(quán)內(nèi)容。總結(jié)
以上是生活随笔為你收集整理的E百科 | 基于MEC的边缘AI服务的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 开年赢好运!程序员加油包等你免费拿
- 下一篇: 开源微服务运行时 Dapr 1.0 版本