在現代人工智能中,大規模深度學習模型已經成為許多重要互聯網業務背后的核心技術,如搜索/廣告/推薦系統/CV/NLP。BERT、Vision Transformer、GPT-3和Switch Transformer模型將模型規模擴大到10億甚至數萬個參數,幾乎所有學習任務的準確性都得到了顯著提高。使用云集群的分布式訓練是及時成功地訓練此類大規模模型的關鍵。開發更先進的分布式訓練系統和算法既可以降低能源成本,也可以讓我們訓練更大的模型。此外,開發像聯邦學習這樣的顛覆性學習模式也至關重要,它不僅可以保護用戶的隱私,還可以分擔處理前所未有的大數據和模型的負載。這次演講將主要關注大規模模型的分布式ML系統:云集群的動態分布式訓練(//DistML.ai)和邊緣設備的大規模聯合學習()。在第一部分中,我將介紹PipeTransformer,這是一種用于分布式訓練Transformer模型(BERT和ViT)的自動化彈性管道。在PipeTransformer中,我們設計了自適應的飛凍結算法,可以在訓練過程中逐步識別和凍結部分層,并設計了彈性流水線系統,可以動態減少GPU資源來訓練剩余的激活層,并在已釋放的GPU資源上分叉更多的管道,以擴大數據并行度的寬度。第二部分,我將討論可擴展的聯邦學習,用于在資源受限的邊緣設備和FedML生態系統上訓練大型模型,其目標是針對CV NLP、GraphNN和IoT等多種AI應用在邊緣進行無處不在的分布式訓練。
地址:
作者: Chaoyang He,美國洛杉磯南加州大學計算機科學系博士研究生
摘要:針對隱私保護的法律法規相繼出臺,數據孤島現象已成為阻礙大數據和人工智能技術發展的主要瓶頸。聯邦學習作為隱私計算的重要技術被廣泛關注。從聯邦學習的歷史發展、概念、架構分類角度,闡述了聯邦學習的技術優勢,同時分析了聯邦學習系統的各種攻擊方式及其分類,討論了不同聯邦學習加密算法的差異。總結了聯邦學習隱私保護和安全機制領域的研究,并提出了挑戰和展望。
//www.infocomm-journal.com/bdr/CN/10.11959/j.issn.2096-0271.2021030
關鍵詞:聯邦學習 ; 聯邦學習系統攻擊 ; 隱私保護 ; 加密算法
論文引用格式:
王健宗, 孔令煒, 黃章成, 等. 聯邦學習隱私保護研究進展[J]. 大數據, 2021, 7(3): 130-149.
WANG J Z, KONG L W, HUANG Z C, et al. Research advances on privacy protection of federated learning[J]. Big Data Research, 2021, 7(3): 130-149.
圖片
1 引言
大數據、人工智能和云產業等的爆發式發展,一方面為傳統行業帶來升級變革的新機遇,另一方面也給數據和網絡安全帶來了新挑戰。不同行業的公司會收集大量的數據信息,同一企業下不同層級的部門也會收集不同的信息,由于行業間的競爭和壟斷,以及同一企業下不同系統和業務的閉塞性與阻隔性,很難實現數據信息的交流與整合。當不同的企業之間,以及同一企業下屬不同部門之間需要合作進行聯合建模時,將面臨跨越重重數據壁壘的考驗。這類挑戰也被稱為數據孤島問題。
早期的分布式計算試圖通過整合不同來源的數據進行分布式的建模,從而解決這類數據孤島問題。分布式建模將具有龐大計算量的任務部署到多臺機器上,提升了計算效率,減少了任務耗能。但是分布式機器學習依舊存在問題,重量級的分布式系統架構通常會產生巨大的溝通成本,影響數據的傳輸和處理效率。隨著人工智能技術的進一步發展和更廣泛的應用,數據隱私敏感性問題日益被重視。大規模的數據傳輸不可避免地會涉及隱私泄露問題,對于異構數據的聯合訓練和隱私安全問題,依然沒有找到一個令人滿意的解決方案。
聯邦學習(federated learning,FL)給上述難題提供了解決方案。聯邦學習是由谷歌公司在2016年率先提出的概念,該技術在數據不共享的情況下完成聯合建模共享模型。具體來講,各個數據持有方(個人/企業/機構)的自有數據不出本地,通過聯邦系統中加密機制下的模型參數交換方式(即在不違反數據隱私法規的情況下),聯合建立一個全局的共享模型,建好的模型為所有參與方共享使用。相對于分布式計算,聯邦學習有更多的優勢,例如在隱私保護領域,聯邦學習從算法層面上設計并考慮了客戶端間傳輸信息的加密。本文主要從隱私保護和安全加密的角度,對聯邦學習進行系統綜述。
本文的主要貢獻如下。
● 本文對聯邦學習的歷史進行了詳細的敘述,從安全隱私的分布式學習發展到現在的聯邦學習系統,總結了聯邦學習發展的歷程。
● 本文從新的角度闡述了聯邦學習的類型。與傳統方式不同,本文從面向企業(to business,ToB)和面向客戶(to customer,ToC)的應用場景的區別出發,分析了聯邦學習的不同。
● 詳細地從聯邦學習攻擊的角度分析聯邦系統面臨的各種可能的攻擊手段,并系統地將聯邦學習的攻擊手段進行了分類總結。
● 聯邦學習的加密機制在一定程度上可以抵御一些聯邦學習攻擊,或者大大增加攻擊的難度。本文從加密算法的角度詳細討論了聯邦學習的加密機制。
延遲問題是驅使許多公司從云轉移到邊緣的原因。“邊緣智能”(edge AI)或“邊緣機器學習”指的是,數據通過存儲在硬件設備上的算法在本地進行處理,而不是通過位于云中的算法進行處理。這不僅使實時操作成為可能,而且還有助于顯著降低與處理云數據相關的功耗和安全漏洞。
深度學習在語音識別、計算機視覺等許多領域得到了廣泛的應用和突破。其中涉及的深度神經網絡結構和計算問題已經在機器學習中得到了很好的研究。但對于理解深度學習模型在網絡架構中的建模、逼近或泛化能力,缺乏理論基礎。在這里,我們對具有卷積結構的深度卷積神經網絡(CNNs)很感興趣。convolutional architecture使得deep CNNs和fully connected deep neural networks有本質的區別,而30年前發展起來的關于fully connected networks的經典理論并不適用。本講座介紹了深度神經網絡的數學理論與整流線性單元(ReLU)激活函數。特別是,我們首次證明了深度CNN的普遍性,即當神經網絡的深度足夠大時,深度CNN可以用來逼近任意的連續函數,達到任意的精度。我們還給出了顯式的逼近率,并表明對于一般函數,深度神經網絡的逼近能力至少與全連接多層神經網絡一樣好,對于徑向函數更好。我們的定量估計嚴格按照待計算的自由參數的數量給出,驗證了深度網絡神經網絡處理大數據的效率。
人類的視覺系統證明,用極少的樣本就可以學習新的類別;人類不需要一百萬個樣本就能學會區分野外的有毒蘑菇和可食用蘑菇。可以說,這種能力來自于看到了數百萬個其他類別,并將學習到的表現形式轉化為新的類別。本報告將正式介紹機器學習與熱力學之間的聯系,以描述遷移學習中學習表征的質量。我們將討論諸如速率、畸變和分類損失等信息理論泛函如何位于一個凸的,所謂的平衡曲面上。我們規定了在約束條件下穿越該表面的動態過程,例如,一個調制速率和失真以保持分類損失不變的等分類過程。我們將演示這些過程如何完全控制從源數據集到目標數據集的傳輸,并保證最終模型的性能。
計算機科學正在發展,以利用新的硬件,如GPU、TPUs、CPU和大型商品集群。許多子領域,如機器學習和優化,已經調整了它們的算法來處理這樣的集群。
課程主題包括分布式和并行算法: 優化、數值線性代數、機器學習、圖分析、流式算法,以及其他在商用集群中難以擴展的問題。該類將重點分析程序,并使用Apache Spark和TensorFlow實現一些程序。
本課程將分為兩部分: 首先,介紹并行算法的基礎知識和在單多核機器上的運行時分析。其次,我們將介紹在集群機器上運行的分布式算法。
地址: //stanford.edu/~rezab/dao/
主講:
Reza Zadeh是斯坦福大學計算與數學工程學院的客座教授,同時也是Matroid公司的CEO。他的主要工作集中于機器學習理論與應用,分布式計算,以及離散數學。
課程目錄:
深度神經網絡最近展示了其解決復雜任務的驚人能力。如今的模型使用功能強大的GPU卡在數百萬個示例上進行訓練,能夠可靠地對圖像進行注釋、翻譯文本、理解口語或玩國際象棋或圍棋等戰略性游戲。此外,深度學習也將成為未來許多技術的組成部分,例如自動駕駛、物聯網(IoT)或5G網絡。特別是隨著物聯網的出現,智能設備的數量在過去幾年里迅速增長。這些設備中有許多都配備了傳感器,使它們能夠以前所未有的規模收集和處理數據。這為深度學習方法提供了獨特的機會。
然而,這些新的應用程序帶有許多附加的約束和要求,這些約束和要求限制了當前模型的開箱即用。
1. 嵌入式設備、物聯網設備和智能手機的內存和存儲容量有限,能源資源有限. 像VGG-16這樣的深度神經網絡需要超過500 MB的內存來存儲參數,執行單次向前傳遞需要15 gb的操作。很明顯,這些模型的當前(未壓縮的)形式不能在設備上使用。
2. 訓練數據通常分布在設備上,由于隱私問題或有限的資源(帶寬),無法簡單地在中央服務器上收集. 由于只有少量數據點的模型的局部訓練通常不太有希望,因此需要新的協作訓練方案來將深度學習的能力引入這些分布式應用程序。
本教程將討論最近提出的解決這兩個問題的技術。我們將首先簡要介紹深度學習,它的當前使用和今天的模型在計算和內存復雜性、能源效率和分布式環境方面的局限性。我們將強調解決這些問題的實際需要,并討論實現這一目標的最新進展,包括ITU ML5G和MPEG AHG CNNMCD正在開展的標準化活動。
然后我們將進入神經網絡壓縮的話題。我們將首先簡要介紹源編碼和信息論的基本概念,包括速率失真理論、量化、熵編碼和最小描述長度原則。這些概念需要形式化的神經網絡壓縮問題。然后我們將繼續討論壓縮DNNs的具體技術。為此,我們將區分壓縮過程的不同步驟,即剪枝和稀疏化、量化和熵編碼。前兩步是有損的,而最后一步是無損的。由于縮小尺寸并不是神經網絡壓縮的唯一目標(例如,快速推理、能源效率是其他目標),我們還將討論有效推理的方法,包括最近提出的神經網絡格式。最后,我們將介紹一個用例,即設備上的語音識別,演示如何在實際應用中使用壓縮方法。
最后我們將介紹分布式學習的最新發展。我們提出了不同的分布式訓練場景,并根據它們的通信特性進行了比較。接下來,我們將重點討論聯邦學習。我們列舉了聯邦學習中存在的挑戰——通信效率、數據異構性、隱私、個性化、健壯性——并提出了解決這些挑戰的方法。我們特別關注為減少分布式學習中的通信開銷而提出的技術,并討論集群化FL,這是一種與模型無關的分布式多任務優化的新方法。這里我們將強調本教程第一部分中介紹的概念的相似性,即稀疏化、量化和編碼。
目錄:
3.問題 4. 休息時間 5. 分布式學習
演講主講人是 Vivienne Sze,來自 MIT 的高效能多媒體系統組(Energy-Efficient Multimedia Systems Group)。她曾就讀于多倫多大學,在 MIT 完成 PhD 學業并獲得電氣工程博士學位,目前在 MIT 任教。Sze 教授的主要研究興趣是高效能算法和移動多媒體設備應用架構,她最近在MIT公開課給了《Efficient Computing for Deep Learning, AI and Robotics》報告。
本次演講的主題是 DNN 在硬件設備中的高效計算處理方法。隨著深度學習算法效率逐漸提高,計算速度、延遲程度、耗能和硬件成本成為制約算法性能的瓶頸問題。如果能夠解決這些問題,包括自動駕駛、無人機導航、智能手機、可穿戴設備和物聯網設備就都能夠受益于算法性能的提升。
在演講中,Sze 教授首先會介紹 DNN 算法,以及它們在各類硬件上部署時可能帶來的性能損失。更重要的是,演講會提到基準測試和評價標準對設計高效 DNN 算法帶來的影響。之后,Sze 教授會從算法角度硬件架構兩個角度介紹減少耗能的方法。同時,演講也會涵蓋將這些方法應用于計算機視覺等領域。Sze 教授因多項成果獲得過谷歌和 Facebook 的 faculty 獎等多個獎項。
本次演講的主要目標如下:
讓硬件高效處理 DNN 的方法(非常多);
關注包括設計 DNN 硬件處理器和 DNN 模型的評估方法;
設計 DNN 硬件處理器和 DNN 模型的方法;
研究過程中,你應當問什么樣的關鍵問題;
真正需要評價和對比的評估指標體系;
達成這些指標的挑戰;
了解設計中需要考慮到的問題,以及可能平衡在算法性能和耗能中遇到的問題;
在講解的過程中,Sze 教授會穿插大量的圖解和案例,讓介紹更加充實有趣。
【導讀】分布式機器學習Distributed Machine Learning是學術界和工業界關注的焦點。最近來自荷蘭的幾位研究人員撰寫了關于分布式機器學習的綜述,共33頁pdf和172篇文獻,概述了分布式機器學習相對于傳統(集中式)機器學習的挑戰和機遇,討論了用于分布式機器學習的技術,并對可用的系統進行了概述,從而全面概述了該領域的最新進展。
?論文地址: //www.zhuanzhi.ai/paper/161029da3ed8b6027a1199c026df7d07 ?
摘要 在過去的十年里,對人工智能的需求顯著增長,而機器學習技術的進步和利用硬件加速的能力推動了這種增長。然而,為了提高預測的質量并使機器學習解決方案在更復雜的應用中可行,需要大量的訓練數據。雖然小的機器學習模型可以用少量的數據進行訓練,但訓練大模型(如神經網絡)的輸入隨著參數的數量呈指數增長。由于處理訓練數據的需求已經超過了計算機器計算能力的增長,因此需要將機器學習的工作負載分布到多臺機器上,并將集中式的學習任務轉換為分布式系統。這些分布式系統提出了新的挑戰,首先是訓練過程的有效并行化和一致模型的創建。本文概述了分布式機器學習相對于傳統(集中式)機器學習的挑戰和機遇,討論了用于分布式機器學習的技術,并對可用的系統進行了概述,從而全面概述了該領域的最新進展。
1. 引言
近年來,新技術的快速發展導致了數據采集的空前增長。機器學習(ML)算法正越來越多地用于分析數據集和構建決策系統,因為問題的復雜性,算法解決方案是不可行的。例如控制自動駕駛汽車[23],識別語音[8],或者預測消費者行為[82]。
在某些情況下,訓練模型的長時間運行會引導解決方案設計者使用分布式系統來增加并行性和I/O帶寬總量,因為復雜應用程序所需的訓練數據很容易達到tb級的[29]。在其他情況下,當數據本身就是分布式的,或者數據太大而不能存儲在一臺機器上時,集中式解決方案甚至都不是一個選項。例如,大型企業對存儲在不同位置的[19]的數據進行事務處理,或者對大到無法移動和集中的天文數據進行事務處理[125]。
為了使這些類型的數據集可作為機器學習問題的訓練數據,必須選擇和實現能夠并行計算、數據分布和故障恢復能力的算法。在這一領域進行了豐富多樣的研究生態系統,我們將在本文中對其進行分類和討論。與之前關于分布式機器學習([120][124])或相關領域的調查([153][87][122][171][144])相比,我們對該問題應用了一個整體的觀點,并從分布式系統的角度討論了最先進的機器學習的實踐方面。
第2節深入討論了機器學習的系統挑戰,以及如何采用高性能計算(HPC)的思想來加速和提高可擴展性。第3節描述了分布式機器學習的參考體系結構,涵蓋了從算法到網絡通信模式的整個堆棧,這些模式可用于在各個節點之間交換狀態。第4節介紹了最廣泛使用的系統和庫的生態系統及其底層設計。最后,第5節討論了分布式機器學習的主要挑戰
2. 機器學習——高性能計算的挑戰?
近年來,機器學習技術在越來越復雜的應用中得到了廣泛應用。雖然出現了各種相互競爭的方法和算法,但所使用的數據表示在結構上驚人地相似。機器學習工作負載中的大多數計算都是關于向量、矩陣或張量的基本轉換——這是線性代數中眾所周知的問題。優化這些操作的需求是高性能計算社區數十年來一個非常活躍的研究領域。因此,一些來自HPC社區的技術和庫(如BLAS[89]或MPI[62])已經被機器學習社區成功地采用并集成到系統中。與此同時,HPC社區已經發現機器學習是一種新興的高價值工作負載,并開始將HPC方法應用于它們。Coates等人,[38]能夠在短短三天內,在他們的商用現貨高性能計算(COTS HPC)系統上訓練出一個10億個參數網絡。You等人[166]在Intel的Knights Landing(一種為高性能計算應用而設計的芯片)上優化了神經網絡的訓練。Kurth等人[84]證明了像提取天氣模式這樣的深度學習問題如何在大型并行高性能計算系統上進行優化和快速擴展。Yan等人[163]利用借鑒于HPC的輕量級概要分析等技術對工作負載需求進行建模,解決了在云計算基礎設施上調度深度神經網絡應用程序的挑戰。Li等人[91]研究了深度神經網絡在加速器上運行時對硬件錯誤的彈性特性,加速器通常部署在主要的高性能計算系統中。
與其他大規模計算挑戰一樣,加速工作負載有兩種基本的、互補的方法:向單個機器添加更多資源(垂直擴展或向上擴展)和向系統添加更多節點(水平擴展或向外擴展)。
3. 一個分布式機器學習的參考架構
圖1 機器學習的概述。在訓練階段,利用訓練數據和調整超參數對ML模型進行優化。然后利用訓練后的模型對輸入系統的新數據進行預測。
圖2 分布式機器學習中的并行性。數據并行性在di上訓練同一個模型的多個實例!模型并行性將單個模型的并行路徑分布到多個節點。
機器學習算法
機器學習算法學習根據數據做出決策或預測。我們根據以下三個特征對當前的ML算法進行了分類:
反饋、在學習過程中給算法的反饋類型
目的、期望的算法最終結果
方法、給出反饋時模型演化的本質
反饋 訓練算法需要反饋,這樣才能逐步提高模型的質量。反饋有幾種不同類型[165]:
包括 監督學習、無監督學習、半監督學習與強化學習
目的 機器學習算法可用于各種各樣的目的,如對圖像進行分類或預測事件的概率。它們通常用于以下任務[85]: 異常檢測、分類、聚類、降維、表示學習、回歸
每一個有效的ML算法都需要一種方法來迫使算法根據新的輸入數據進行改進,從而提高其準確性。通過算法的學習方式,我們識別出了不同的ML方法組: 演化算法、隨機梯度下降、支持向量機、感知器、神經網絡、規則機器學習、主題模型、矩陣分解。
圖3所示:基于分布程度的分布式機器學習拓撲
4. 分布式機器學習生態系統
圖4所示。分布式機器學習生態系統。通用分布式框架和單機ML系統和庫都在向分布式機器學習靠攏。云是ML的一種新的交付模型。
5 結論和當前的挑戰
分布式機器學習是一個蓬勃發展的生態系統,它在體系結構、算法、性能和效率方面都有各種各樣的解決方案。為了使分布式機器學習在第一時間成為可行的,必須克服一些基本的挑戰,例如,建立一種機制,使數據處理并行化,同時將結果組合成一個單一的一致模型。現在有工業級系統,針對日益增長的欲望與機器學習解決更復雜的問題,分布式機器學習越來越普遍和單機解決方案例外,類似于數據處理一般發展在過去的十年。然而,對于分布式機器學習的長期成功來說,仍然存在許多挑戰:性能、容錯、隱私、可移植性等。