人工智慧將重新定義邊緣計算的效能要求

AI前線發表於2019-03-01
人工智慧將重新定義邊緣計算的效能要求
作者 | Deepak Boppana
譯者 | Zhiyong Liu
編輯 | Natalie
AI 前線導讀: 今天,科技發展如盛壯之時的騏驥,一日而馳千里。物聯網方興未艾,智慧邊緣計算就這樣以迅雷不及掩耳之勢到來了。有了人工智慧的加持,邊緣計算將會發生什麼樣的變化呢?要知道,傳統的物聯網,它的智慧在資料中心,並不在邊緣裝置上。換言之,傳統方式是將資料、資料處理和應用幾乎全部儲存在雲上。而智慧邊緣計算則改變了這一狀況,人工智慧讓邊緣裝置變得更智慧、更敏捷,資料、資料處理和應用也不必儲存在雲中,集中在邊緣裝置足矣。讓我們來看看 AI 前線翻譯的 Deepak Boppana 寫的文章 AI Redefines Performance Requirements At The Edge。

更多優質內容請關注微信公眾號“AI 前線”,(ID:ai-front)

從廣義上講,計算的歷史是對理想系統架構的不斷探索。在過去的幾十年裡,系統架構師不斷地從集中式配置中來回轉換,在這些配置中,計算資源位於遠離使用者的分散式架構中,在這些架構中,處理資源更靠近個人使用者。

早期的系統使用高度集中的模式,向遍佈企業的使用者提供增強的計算能力和儲存功能。在 20 世紀 80 年代和 90 年代,隨著低成本的個人電腦的崛起,以及區域網的出現,然後是網際網路,這些集中式的架構被取代了。在這種新模式中,個人電腦承擔了越來越多的計算任務。

隨著膝上型電腦、平板電腦和智慧手機的興起,這種高度分散式架構最終演變為移動計算。但是,隨著計算需求的日益增加,系統架構師開始將計算任務轉移到雲端計算上,這樣,他們就可以利用雲端計算幾乎無限的計算能力和儲存資源,並享受其帶來的高可靠性和低成本。因此,近年來,企業開始向以雲端計算為中心的更加集中化的方式發展。例如,智慧手機將所有內容都傳送到雲端,進行處理和儲存,當需要資料時,再把資料傳回移動裝置上。

因此,現在企業進行高階計算和分析都用到雲端計算。企業使用雲端計算來執行企業級應用,如 Oracle,然後使用 PC 來解釋和分析雲端計算返回的計算結果。隨著機器學習技術在企業中的普及,企業採用了更高層級的人工智慧,雲端計算資源似乎將在每個企業中扮演著越來越關鍵的角色。今天,雲端計算展現了強大的優勢,它使企業能夠簡化資本支出,並管理與 IT 基礎設施相關的運維成本。每一家智慧工廠都需要這些資源來管理多個機器視覺系統,每個智慧城市都需要雲端計算來協調交通訊號燈,進行交通管理,優化成千上萬的路燈能效。

邊緣計算的人工智慧

然而,並不是所有的應用都要在雲端執行。事實上,隨著設計師為執行在邊緣裝置的應用中新增越來越高階的智慧,他們需要邊緣裝置能夠對不斷變化的環境條件作出更快的響應。例如,當一輛自動駕駛汽車駛入智慧城市時,如果遇到交通訊號燈變紅,它就立即與雲通訊,確定是否停車。它必須採取緊急行動。類似的,當智慧家居中的安全系統檢測到屋內有物體移動時,它就必須依靠裝置上的資源來檢測移動的物體是闖入家中的賊,還是家裡的狗。

這就需要獨立做出決策,並快速定義一類新的邊緣智慧裝置。使用語音或面部識別等技術,這些新裝置將能夠根據環境的變化,定製自己的功能。並且,通過應用機器學習和人工智慧技術,這些裝置將能夠根據不斷收集的資料來學習、改變其操作。

但是,使用雲端計算和僅將雲端計算用於處理和儲存的智慧系統截然不同。機器學習通常涉及到兩種型別的計算工作負載。在訓練中,系統從現有資料中習得新的能力。例如,系統通過手機和分析數千張面部影像來學習面部識別能力。因此,訓練是計算密集型的,需要能夠處理大量資料的硬體。另一種型別的計算工作負載,是通過識別模式和執行任務,將系統的功能應用於新資料。這使得系統能夠隨著時間的推移不斷學習,並增長其智慧。在邊緣裝置執行的系統不能在雲端上進行推斷。相反,它們需要利用機載計算資源來不斷擴充套件其智慧。

這種市場機會的範圍很難說得清,但不容小覷。潛在的應用領域不僅包括可以感應到使用者離開房間時自動關閉的智慧電視等消費類應用;還包括針對未來智慧工廠的下一代機器視覺解決方案。顯然,邊緣計算解決方案的最熱門市場之一在汽車行業。汽車從主要的機械裝置向日益電子化平臺的快速發展推動了這一轉變。這一過程始於娛樂系統從收音機和錄音機皮膚迅速發展到高度複雜的資訊娛樂系統。隨後出現了旨在提高駕駛安全性的高階駕駛輔助系統(Advanced Driver Assistance Systems ,ADAS)。Research and Markets 的分析師就曾預測,在 2016~2021 年,ADAS 市場將以年複合增長率 10.44% 暴漲。

移動市場的最近進展加速了這一變化。智慧手機為汽車帶來了新功能和新應用,而移動處理器的標準化的 MIPI 介面的開發,幫助降低了將這些功能整合到汽車中的成本。如今,複雜的汽車娛樂系統不僅提供資訊,還提供娛樂;而 ADAS 解決方案則帶來了廣泛的安全功能,包括自動制動、車道檢測、盲點檢測和自動平行停車等功能。

為了實現這一目標,越來越多的廠商將機器視覺系統整合到汽車中,以監控車內司機和道路狀況。這些嵌入式視覺系統能夠跟蹤司機的頭部和身體的運動情況來發現睏倦或分心的跡象,同時支援自動駐車、倒車輔助、盲點檢測、交通標誌監控和防撞的外部攝像頭數量也在不斷增加。新的應用如車道偏離預警系統,將視訊輸入和車道檢測演算法相結合,以確定汽車在道路上的位置。因此,汽車製造商現在在每輛汽車上整合了許多攝像頭。為了打造這些新的 ADAS 功能,設計師預計他們需要將前置攝像頭用於緊急制動、車道檢測、交通標誌識別,而側面和後置攝像頭則用於盲點檢測、停車輔助和兩側來車警告系統。

汽車製造商在構建這些系統面臨的瓶頸之一是 I/O。一般而言,現在的處理器都有兩個攝像頭介面。然而許多 ADAS 系統需要多達 8 臺攝像頭才能滿足影像質量要求。在理想的情況下,設計師可以使用一種解決方案,使它們能夠協同處理資源,從多臺攝像頭中拼接多個視訊流,或者在將資料傳送到單個流中的應用處理器之前,在攝像頭輸入上執行各種影像處理功能。事實上,大多數 ADAS 解決方案的一個共同特點是具備鳥瞰功能,可以從多臺攝像頭收集資料,並在汽車上方 20 英尺處為司機提供實況視訊。

人工智慧將重新定義邊緣計算的效能要求

上圖所示框圖描述了開發人員如何使用單個 ECP5 FPGA 生成以前需使用多個 Arm 處理器才能實現的鳥瞰功能子系統(參見下圖)。

從前,設計師曾經使用單處理器來驅動每塊顯示器。現在,設計師可以使用單個 FPGA 替換多個處理器,彙總來自每臺攝像頭的所有傳入資料,將影像拼接在一起,進行預處理和後處理,並將影像傳送到系統處理器,如下圖所示:

人工智慧將重新定義邊緣計算的效能要求

典型的鳥瞰圖,由多臺攝像頭的資料彙總而成。

這些新的視覺和感測器功能為自動駕駛汽車的引入奠定了基礎。例如,Cadillac 今年即將推出的 SuperCruise,就是業界首款擴音駕駛應用之一。這項新技術有望通過不斷地分析司機和道路的狀況,使司機更加安全,精確的鐳射雷達資料庫則提供道路的細節,先進攝像頭、感測器和 GPS 實現了對動態路面情況做出實時反映。

智慧工廠

在工業領域中,人工智慧和邊緣應用有望在智慧工廠中發揮越來越重要的作用。自 2011 年工業 4.0 的概念首次提出,新一代的智慧工廠將整合先進的機器人技術、機器學習、軟體即服務和物聯網,改善組織並最大限度提高生產力。

工業 1.0 標誌著製造業通過水力和蒸汽機實現工廠機械化;工業 2.0 則反映了由製造商整合計算機和自動化所定義的電力驅動產品的大規模生產;即將到來的工業 4.0 則將網宇實體系統(cyber-physical systems)引入到生產中,以監控智慧工廠的物理過程,並利用人工智慧資源做出分散的決策。這一演變將通過引入大資料和分析、IT 和物聯網的融合、機器人技術的最新進展以及數字工業鏈的發展推動行業的數字化轉型。此外,通過彼此之間以及操作人員的交流,這些物理系統將成為 IIoT 的一部分。

工業 4.0 的智慧工廠與現有工廠有何不同之處?它將為機器、裝置、感測器和人員之間提供接近通用的互操作性和更高水平的通訊。其次,它將高度重視資訊透明度,系統通過感測器資料建立物理世界的虛擬副本,從而建立情景化資訊。此外,智慧工廠的決策將高度分散,使網宇實體系統儘可能自主地執行。最後,這個工廠的新發展將提供高水平的技術援助,系統將能夠互助解決問題,做出決策並幫助人類完成可能非常困難或危險的任務。

不同的需求

設計師真的需要讓邊緣裝置具備人工智慧這些新功能嗎?傳統上,在資料中心採用深度學習技術的設計人員嚴重依賴高效能 GPU 來滿足苛刻的計算要求。而為邊緣裝置帶來人工智慧的設計師並沒有那麼奢侈。他們只需計算效率高的系統,能夠滿足準確的目標,同時符合消費市場中通常存在的嚴格的功耗和碳足跡的限制即可。

無論是智慧家居的安全系統,智慧城市的自動照明系統,下一代騎車的自動駕駛方案,還是智慧工廠的智慧視覺系統,它們都需要能夠實時處理高清數字視訊流的高價效比計算引擎。它們還需要高容量固態儲存器、智慧相機或感測器,以及先進的分析演算法。

通常而言,這些系統中的處理器必須執行各種任務:從影像採集和鏡頭校正到影像處理和分割。在一些應用中,設計師可以使用各種型別的處理器來滿足上述需求:從微處理器、圖形處理器(raphics Processing Units,GPU)和數字訊號處理器(Digital Signal Processors,DSP),到現場可程式設計邏輯閘陣列(Field Programmable Gate Arrays,FPGA)和專用標準處理器(Application Specific Standard Processors,ASSP)。每種處理器架構都有其獨特的優缺點。在某些情況下,設計師將多種處理器型別組合到異構計算環境中。在其他情況下,他們可以將多種處理器型別整合到一個裝置中。

解決方案的需求在不斷增長,利用應用程式支援和製造規模,與移動處理器和 MIPI 相容的感測器及顯示器,並使用人工智慧、機器學習和神經網路,使邊緣裝置智慧化。在機器學習中,像影像識別這樣的應用的神經網路需要海量資料和多種算力來開發資料結構並分配權重。因此,對於這類應用的機器學習通常出現在資料中心並不奇怪。

一旦模型訓練完畢並移植到嵌入式系統中,裝置就必須更快、更有效地作出決策。在大多數情況下,設計師需要一種將計算效率與低功耗、佔用空間小相結合的解決方案。

業界普遍認為,機器學習需要高度專業化的硬體加速,但需求因任務而異。例如,用於訓練應用程式的硬體設計師專注於使用 32 位浮點運算的高準確度計算。在網路邊緣上,執行推理的設計師更願意犧牲精度來提高處理速度或降低功耗。在某些情況下,使用定點計算的應用程式可以在消耗更少的功率的同時,為浮點應用程式提供幾乎相同的推理精度。

人工智慧將重新定義邊緣計算的效能要求

在這種情況下,ECP5 FPGA 被用於在邊緣裝置上實現一個面部識別應用的卷積神經網路 (CNN) 加速器。

在某些情況下,能夠支援這種設計靈活性的處理器在這些型別的應用中提供了明顯的優勢。例如,FPGA 結合了廣泛的嵌入式 DSP 資源與高度並行的結構,在能耗、佔用空間和成本方面具有競爭優勢。在 Lattice Semiconductor 的 ECP5 FPGA 中的 DSP 模組可以低於使用浮點運算的 GPU 的功耗 / 頻率來進行定點數學運算。

與此同時,神經網路的行業研究仍在繼續。最近,Lattice Semiconductor 與一家面向嵌入式應用的高效能軟核處理器開發商合作,為面部檢測應用開發基於神經網路的推理解決方案。該解決方案在不到 5000 個 LUT 的 ice40 5k FPGA 上實現。使用具有定製加速器的開源 RISC-V 處理器,這個設定大大降低了功耗,同時縮短了響應時間。

結論

邊緣計算對基於人工智慧系統的開發人員而言,是一個巨大的挑戰。隨著設計師水平的提高,需求將會增長,從而能夠更快、更準確地應對不斷變化的環境狀況。為了滿足這一新興需求,企業需要尋找開發人員採用各種技術。

原文連結:

AI Redefines Performance Requirements At The Edge

AI Redefines Performance Requirements At The Edge

相關文章