Federated Learning

小路
從心開始
Published in
Dec 14, 2022
Federated Learning for Industrial Internet of Things
 in Future Industries

Paper :
Federated Learning for Industrial Internet of Things in Future Industries

Introduction

在資料共享的大數據時代下,個人資料隱私問題也逐漸被大家重視,現在 AI 面臨的最大挑戰,就是要想出怎麼解決隱私問題,同時優化中心模型演算法。如今「聯合學習」(Federated Learning),做到了!

歐盟 2018 年 5 月通過 GDPR (General Data Protection Regulation)法案,明確規定所有與個人相關的資訊都是個人數據,對數據的使用行為必須要有用戶的明確授權與同意,這讓數據使用、整合與共享難上加難。

簡單來說,聯合學習(federated learning)可以讓人工智慧演算法從不同來源的大量資料中獲得經驗,同時在「敏感用戶資料」不離開設備的前提下進行機器學習。有了聯合學習,我們可以使用「去中心化的數據來訓練中心化的模型」。

這是什麼意思呢?因為過去為了優化 AI 演算法,會將用戶數據上傳到資料中心伺服器中進行機器學習。

現在為了保護用戶隱私,加上邊緣運算的趨勢,聯合學習只需要將「模型訓練」導入各個用戶的裝置上,接著演算法就會將「用戶裝置上整合得到的相關數據」,直接送到資料中心伺服器上,這樣就能用來強化中心伺服器的演算力,也能確保用戶隱私受到保護。

Changing Medical Technology

聯合學習這項技術的優點特別適合用在醫療生態系統。現在各行各業都積極與 AI 合作,而這背後都需要大數據的支撐才能進行,但是對於醫界來說,大數據之間的「資料共享」與「患者隱私」之間的問題最難突破。

過去為了保護病患隱私,醫院只能依賴自己機構收集的病患資料,難以取得其他醫院的病患資訊,但是在聯合學習(Federated Learning)的協助下,多個組織可以合作開發模型,又不用經過彼此,就能分享機密的臨床資料

在這樣反覆多次的運算過程中,醫療機構之間的共用模型接觸到的資料量,會比任何單一組織內部擁有的資料量還要更多。

文章開頭提到「要成為專家一定要累積經驗」之談,運用在醫療情境中,就代表要成為醫學專家,少說也要工作 15 年才能培養出特定醫學專業能力,而這樣的專家一年大概要看 1.5 萬個病人,也就是說,這 15 年中醫生總共讀 22.5 萬個病例才能夠達到臨床等級的準確性。

但是如果今天是罕見疾病,就算是一位有 30 年經驗的專家,在醫學生涯中頂多也只能接觸到 100 個病患。

什麼是聯合學習?

聯合學習(Federated Learning)是一種分散式機器學習訓練方法,最常見的形式為Server-Client形式,由一個中央伺服器,搭配分散各地來參與訓練的多個節點(也就是Client)。

各節點主機先從中央伺服器下載模型,在本地端以自己的資料來進行訓練,完成訓練後,再將各自模型的權重上傳至中央伺服器,由中央伺服器來聚合(Aggregate)這些權重。這種分散式訓練方法,可套用在不同機器學習模型的訓練過程。

接著,中央伺服器會將優化過的權重,回傳給各節點,各節點再利用新的權重,進行下一輪訓練。這個過程會不斷重複,直到模型收斂至理想狀態。

聯合學習帶來的好處 ?

聯合學習靠各節點貢獻自己的模型參數,來同步優化所有模型,而不需要像傳統集中式的訓練方式,需將所有資料集中來訓練。

因此,就算資料因故無法共享,也可以進行聯合學習。只要加入訓練的節點夠多、資料多樣性夠高,聯合學習也能解決資料不足和模型偏見問題,訓練出最具代表性的模型。

聯合學習有哪些種類?適合哪些產業?

聯合學習可分為兩種,首先是跨裝置(Cross-device),比如Google利用聯合學習來訓練數萬支Android手機的Gboard模型,

最後再部署到上百萬支手機。另一個是跨組織(Cross-silo),比如英特爾聯手賓州大學醫學院,與29家跨國醫療機構利用聯合學習,來開發腦瘤偵測AI演算法。聯合學習適合重個資隱私的領域,比如醫療、金融業。

聯合學習與集中式訓練的模型,準確度有差別嗎?

根據臺灣人工智慧實驗室創辦人杜奕瑾的經驗,他們多次用聯合學習來訓練醫療AI模型時,比較過兩種訓練方法的效果,只要各節點的資料分散程度越多元,訓練迭代次數越多,聯合學習的AI模型準確度可以媲美集中式訓練,甚至可以比集中式訓練更高。

聯合學習有哪些挑戰?

雖然聯合學習不必將原始資料上傳,但在傳遞權重的過程中,仍可能受到模型逆推攻擊(Model Inversion Attack),透過權重來回推特定的使用者資料。常見的解法包括同態加密、差分隱私(Differential Privacy),在傳送的權重中添加雜訊(Noise)。

台灣案例 (1)

台灣三軍總醫院加入了 Nvidia 與 美國麻州總醫院 Mass General Brigham 建立的一個 COVID-19 的聯合學習計畫,主要是訓練出一套病情惡化預警模型。

這套系統主要是為了解決大量 COVID-19 患者湧入醫院造成醫院過載,進而無法有效找出高風險患者 ! 透過這套模型提前預警幫醫生做篩選,並替該患者事先裝備好高氧治療。

該計畫 Mass General Brigham 與 Nvidia 已經完成前置作業包含基礎的訓練模型,讓參與者 (三軍總醫院) 直接透過 AWS 下載 Mass General Brigham 開發的樣板,然後由各家醫院在本地端以自家的資料來訓練模型,

訓練完成後將模型的權重 (參數) 透過差分隱私(Differential Privacy)或 SHA-256加密,在上傳到 AWS 執行聚合(Aggregate),

中央主機會將收集到的權重參數透過聚合演算法來優化權重,再將優化過後的權重回傳到參與合作的醫院,讓醫院利用新的權重資料來訓練自家模型,如此循環迭代。

這個過程避免了將使用者資料流出,也能透過分散式學習提高模型的準確度,例如歐盟 GDPR 限制下 透過聯合學習正好解決了這些瓶頸以共享權重,來達到精進模型表現。

台灣案例 (2)

https://www.ithome.com.tw/news/154630

--

--