In-situ AI: 物聯網的分散式霧運算

In-situ AI: 物聯網的分散式霧運算

Print Friendly

In-situ AI: 物聯網的分散式霧運算
台大電機系 吳奕萱 編譯

隨著物聯網(Internet of Things, IoT)的普及,我們周遭佈滿各式各樣的感測器與攝影機,帶來生活便利之餘也收集了大量資料,成為電腦探索物理世界的素材。如潮水般湧入的資料,更是深度學習發展的重要基礎。以往這些資料會被傳到雲端,在雲端進行分析處理。然而愈來愈大量的資料,使傳輸耗費的能源急遽增加,其中更伴隨著隱私上的顧慮。此外,傳統在伺服器進行的監督式學習模型,在應付型態各異的原始IoT資料上也顯得笨拙。因此,若能在裝置上進行初步的資料處理,從源頭解決問題,除了能降低傳輸到雲端的資料量,也能更有彈性地處理不同類型的資料。

去中心化分散式計算

物聯網收集的資料具有兩大特性:他們是動態(dynamic),且不具有標籤的(unlabeled)。當生物學家在野外裝設監視器,捕捉野生動物的畫面影像時,影像品質受到環境亮度、天氣等變化影響,存在極多的變異量,收集的資料相當動態。當機器遇到未曾見過的資訊時,判讀上難免有較大的誤差。又因為人工標記的速度,永遠趕不上指數成長的資料量,使得大量資料不具有標籤,不適用需要藉由目標答案進行訓練的監督式學習。因此,若要充分利用大量原始的資料,勢必得發展出一套以非監督式學習為基礎,具有足夠準確率的模型。

「In-Situ AI」這套運算架構,因應物聯網資料的特性與使用情境,在資料收集處就地進行大部分的運算工作。不同於以往將資料全部傳到「中央」的雲端,再接收「中央」決策完回傳的指令,In-Situ AI 發揮了去中心化的精神,善用地方資源、產生因地制宜的策略。其架構分為兩大部分:運算中樞(Node)與雲端(如圖一)。雲端有較高的運算能力,負責從大量的物聯網資料進行非監督式學習,汲取重要的特徵。接著藉由遷移學習(transfer learning),讓運算中樞的推理網路(inference network)認識這些特徵。如此在有限的標記資料下,推理網路也能對周遭世界具有一定程度的判讀能力。實驗結果顯示,遷移學習學到的特徵,讓推理網路預測的準確率提升30 %(達到近60 %),彌補標記資料不足的限制。

圖一、以雲端為中心(a)及分散式(b)運算架構 ( 譯者自繪 )

面對動態的資料,運算中樞同時具有「診斷」功能,能找出判讀錯誤的資訊。錯誤的原因很可能是因為先前學習時沒有看過,因此診斷出來後會把這些資訊回傳至雲端,增加訓練的素材、強化模型。當接收到的資料不用全部回傳,只回傳必要的資訊時,不僅有效最小化資料傳輸量(降低約 28 -71 %),也兼顧了蒐集新資料的功能。

此外,電腦還進行一種有趣的「拼圖」學習法。首先我們將一張影像切成3 x 3格,並打散這9塊局部影像,隨機排列。接著,電腦要嘗試找出正確的排列方式,將小圖拼回原本的大圖。若電腦能順利辨識9張圖的相對位置,也意味著他的深度學習模型已精於辨認物體的型態。相較於非監督式學習中,電腦要從沒有答案可參考的資訊中自行尋找規律,「拼圖」創造了一個可依循的正確答案,有助於提升辨識準確率。

速度與耗能

隨著運算工作由雲端平台轉移到物聯網裝置,電力來源也從供應不絕的電源轉為容量有限的電池,運算速度與能源使用上的平衡受到考驗。若回顧裝置運算中樞主要進行的兩項工作,可發現「推斷」在藉由影像辨識偵測物體、分類後,需即時產生反應,分秒必爭。「診斷」篩選出需回傳至雲端的資料,在執行上較無急迫性,應多考慮能源使用的效率。因此,在「推斷」工作不需要24小時持續運行的情境下,物聯網裝置通常採單核心運作模式,切割時間區間,交替執行兩項工作。相對地,若「推斷」工作需全年無休執行,則需採多工處理,同步進行。

那麼在有限的運算資源下,如何提升速度?辨識影像的神經網路中具有多層卷積層,若每到一層都要重新訓練權重,雖然準確率可能最高,卻相當費時。如果善用權重共享(shared weight)假設每個輸出的結果權重相同,便可大幅減少訓練模型時的參數[1][2]。優化的過程,便是尋找速度與準確率間的平衡,而實驗結果顯示,固定前三層的情形下(只訓練conv4、conv5,以及後面整合特徵表現的全連接層),準確率雖從59 % 略降為 56 %,速度卻能加快1.7 倍,提升應用價值。

從「雲」到「霧」

事實上,2015年思科(CISCO)便提出了「霧運算(Fog Computing)」的概念,將雲端的「雲」延伸到物品實際所在的位置[3]。相較於雲端運算平台,分散式的霧運算在地理上的分布較廣,靈活度也較高,應用在串流媒體這類強調即時性的功能上,具有相當的優勢。

值得一提的是,霧運算的興起並非要取代雲端運算。相反地,雲端仍扮演重要的角色。在「In-Situ AI」的案例中,我們看到像是訓練大量資料這類倚賴高效能的工作,依然是在雲端執行。不同的是裝置在收集到資料後,會先交由運算中樞的推理網路與診斷網路進行處理,只選取有較高利用價值的資料回傳雲端。因此,雲端和霧運算可說是相輔相成,藉雙向互動各發揮所長,一同打造嶄新的物聯網時代。

 

參考資料

  1. M. Song, K. Zhong, J. Zhang, Y. Hu, D. Liu, W. Zhang, J. Wang, and T. Li, “In-Situ AI: Towards Autonomous and Incremental Deep Learning for IoT Systems”, 2018 IEEE International Symposium on High Performance Computer Architecture (HPCA), 2018.
  2. Justin Johnson, Andrej Karpathy, “Stanford University CS231n: Convolutional Neural Networks for Visual Recognition“, Cs231n.stanford.edu, 2018.
  3. CISCO, “Fog Computing and the Internet of Things: Extend the Cloud to Where the Things Are”, CISCO, 2015.

 

發表迴響

你的電子郵件位址並不會被公開。 必要欄位標記為 *


9 − = 5