題目: A Survey on Distributed Machine Learning
簡介: 在過去十年中,對人工智能的需求已顯著增長,并且這種增長得益于機器學習技術的進步以及利用硬件加速的能力,但是,為了提高預測質量并在復雜的應用程序中提供可行的機器學習解決方案,需要大量的訓練數據。盡管小型機器學習模型可以使用一定數量的數據進行訓練,但用于訓練較大模型(例如神經網絡)的輸入與參數數量成指數增長。由于處理訓練數據的需求已經超過了計算機器的計算能力的增長,因此急需在多個機器之間分配機器學習工作量,并將集中式的精力分配到分配的系統上。這些分布式系統提出了新的挑戰,最重要的是訓練過程的科學并行化和相關模型的創建。本文通過概述傳統的(集中的)機器學習方法,探討了分布式機器學習的挑戰和機遇,從而對當前的最新技術進行了廣泛的概述,并對現有的技術進行研究。
題目: An Overview of Privacy in Machine Learning
序言: 在過去幾年中,谷歌、微軟和亞馬遜等供應商已經開始為客戶提供軟件接口,使他們能夠輕松地將機器學習任務嵌入到他們的應用程序中。總的來說,機構現在可以使用機器學習作為服務(MLaaS)引擎來外包復雜的任務,例如訓練分類器、執行預測、聚類等等。他們還可以讓其他人根據他們的數據查詢模型。當然,這種方法也可以在其他情況下使用(并且經常提倡使用),包括政府協作、公民科學項目和企業對企業的伙伴關系。然而,如果惡意用戶能夠恢復用于訓練這些模型的數據,那么由此導致的信息泄漏將會產生嚴重的問題。同樣,如果模型的內部參數被認為是專有信息,那么對模型的訪問不應該允許對手了解這些參數。在本文中,我們對這一領域的隱私挑戰進行了回顧,系統回顧了相關的研究文獻,并探討了可能的對策。具體地說,我們提供了大量關于機器學習和隱私相關概念的背景信息。然后,我們討論了可能的對抗模型和設置,涵蓋了與隱私和/或敏感信息泄漏有關的廣泛攻擊,并回顧了最近試圖防御此類攻擊的結果。最后,我們總結出一系列需要更多工作的開放問題,包括需要更好的評估、更有針對性的防御,以及研究與政策和數據保護工作的關系。
考慮到當今使用的各種大數據應用程序的復雜性,cpu密集型的數據處理任務已經變得至關重要。降低每個進程的CPU利用率對于提高應用程序的總體速度非常重要。
這本書將教你如何執行計算的并行執行,將它們分布在一臺機器的多個處理器上,從而提高大數據處理任務的整體性能。我們將討論同步和異步模型、共享內存和文件系統、各種進程之間的通信、同步等等。
你會學到什么
隨著深度學習在視覺、推薦系統、自然語言處理等諸多領域的不斷發展,深度神經網絡(DNNs)在生產系統中得到了廣泛的應用。大數據集的可用性和高計算能力是這些進步的主要因素。這些數據集通常是眾包的,可能包含敏感信息。這造成了嚴重的隱私問題,因為這些數據可能被濫用或通過各種漏洞泄露。即使云提供商和通信鏈路是可信的,仍然存在推理攻擊的威脅,攻擊者可以推測用于訓練的數據的屬性,或者找到底層的模型架構和參數。在這次調查中,我們回顧了深度學習帶來的隱私問題,以及為解決這些問題而引入的緩解技術。我們還指出,在測試時間推斷隱私方面的文獻存在空白,并提出未來可能的研究方向。
【導讀】元學習旨在學會學習,是當下研究熱點之一。最近來自愛丁堡大學的學者發布了關于元學習最新綜述論文《Meta-Learning in Neural Networks: A Survey》,值得關注,詳述了元學習體系,包括定義、方法、應用、挑戰,成為不可缺少的文獻。
近年來,元學習領域,或者說“學會學習的學習”,引起了人們極大的興趣。與傳統的人工智能方法(使用固定的學習算法從頭開始解決給定的任務)不同,元學習的目的是改進學習算法本身,考慮到多次學習的經驗。這個范例提供了一個機會來解決深度學習的許多傳統挑戰,包括數據和計算瓶頸,以及泛化的基本問題。在這項綜述中,我們描述了當代元學習的景觀。我們首先討論元學習的定義,并將其定位于相關領域,如遷移學習、多任務學習和超參數優化。然后,我們提出了一個新的分類法,對元學習方法的空間進行了更全面的細分。我們綜述了元學習的一些有前途的應用和成功案例,包括小樣本學習、強化學習和體系架構搜索。最后,我們討論了突出的挑戰和未來研究的有希望的領域。
概述
現代機器學習模型通常是使用手工設計的固定學習算法,針對特定任務從零開始進行訓練。基于深度學習的方法在許多領域都取得了巨大的成功[1,2,3]。但是有明顯的局限性[4]。例如,成功主要是在可以收集或模擬大量數據的領域,以及在可以使用大量計算資源的領域。這排除了許多數據本質上是稀有或昂貴的[5],或者計算資源不可用的應用程序[6,7]。
元學習提供了另一種范式,機器學習模型可以在多個學習階段獲得經驗——通常覆蓋相關任務的分布——并使用這些經驗來改進未來的學習性能。這種“學會學習”[8]可以帶來各種好處,如數據和計算效率,它更適合人類和動物的學習[9],其中學習策略在一生和進化時間尺度上都得到改善[10,9,11]。機器學習在歷史上是建立在手工設計的特征上的模型,而特征的選擇往往是最終模型性能的決定因素[12,13,14]。深度學習實現了聯合特征和模型學習的承諾[15,16],為許多任務提供了巨大的性能改進[1,3]。神經網絡中的元學習可以看作是集成聯合特征、模型和算法學習的下一步。神經網絡元學習有著悠久的歷史[17,18,8]。然而,它作為推動當代深度學習行業前沿的潛力,導致了最近研究的爆炸性增長。特別是,元學習有可能緩解當代深度學習[4]的許多主要批評,例如,通過提供更好的數據效率,利用先驗知識轉移,以及支持無監督和自主學習。成功的應用領域包括:小樣本圖像識別[19,20]、無監督學習[21]、數據高效[22,23]、自導向[24]強化學習(RL)、超參數優化[25]和神經結構搜索(NAS)[26, 27, 28]。
在文獻中可以找到許多關于元學習的不同觀點。特別是由于不同的社區對這個術語的使用略有不同,所以很難定義它。與我們[29]相關的觀點認為,元學習是管理“沒有免費午餐”定理[30]的工具,并通過搜索最適合給定問題或問題族的算法(歸納偏差)來改進泛化。然而,從廣義上來說,這個定義可以包括遷移、多任務、特征選擇和模型集成學習,這些在今天通常不被認為是元學習。另一個關于元學習[31]的觀點廣泛地涵蓋了基于數據集特性的算法選擇和配置技術,并且很難與自動機器學習(AutoML)[32]區分開來。在這篇論文中,我們關注當代的神經網絡元學習。我們將其理解為算法或歸納偏差搜索,但重點是通過端到端學習明確定義的目標函數(如交叉熵損失、準確性或速度)來實現的。
因此,本文提供了一個獨特的,及時的,最新的調查神經網絡元學習領域的快速增長。相比之下,在這個快速發展的領域,以往的研究已經相當過時,或者關注于數據挖掘[29、33、34、35、36、37、31]、自動[32]的算法選擇,或者元學習的特定應用,如小樣本學習[38]或神經架構搜索[39]。
我們討論元學習方法和應用。特別是,我們首先提供了一個高層次的問題形式化,它可以用來理解和定位最近的工作。然后,我們在元表示、元目標和元優化器方面提供了一種新的方法分類。我們調查了幾個流行和新興的應用領域,包括少鏡頭、強化學習和架構搜索;并對相關的話題如遷移學習、多任務學習和自動學習進行元學習定位。最后,我們討論了尚未解決的挑戰和未來研究的領域。
未來挑戰:
-元泛化 元學習在不同任務之間面臨著泛化的挑戰,這與傳統機器學習中在不同實例之間進行泛化的挑戰類似。
總結
元學習領域最近出現了快速增長的興趣。這帶來了一定程度的混亂,比如它如何與鄰近的字段相關聯,它可以應用到什么地方,以及如何對它進行基準測試。在這次綜述中,我們試圖通過從方法學的角度對這一領域進行徹底的調查來澄清這些問題——我們將其分為元表示、元優化器和元目標的分類;從應用的角度來看。我們希望這項調查將有助于新人和實踐者在這個不斷增長的領域中定位自己,并強調未來研究的機會。
題目: Survey of Personalization Techniques for Federated Learning
簡介:
聯邦學習使機器學習模型可以從分散的數據中學習,而不會損害隱私。 聯邦學習的標準制定為所有客戶提供了一種共享模型。 由于跨設備的非IID數據分布造成的統計異質性通常導致以下情況:對于某些客戶,僅對自己的私有數據進行訓練的局部模型的性能要優于全局共享模型,從而喪失了參與該過程的動力。 已經提出了幾種技術來個性化全局模型,以更好地為單個客戶服務。 本文強調了個性化的必要性,并對有關該主題的最新研究進行了調查。
目錄:
【導讀】分布式機器學習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 結論和當前的挑戰
分布式機器學習是一個蓬勃發展的生態系統,它在體系結構、算法、性能和效率方面都有各種各樣的解決方案。為了使分布式機器學習在第一時間成為可行的,必須克服一些基本的挑戰,例如,建立一種機制,使數據處理并行化,同時將結果組合成一個單一的一致模型。現在有工業級系統,針對日益增長的欲望與機器學習解決更復雜的問題,分布式機器學習越來越普遍和單機解決方案例外,類似于數據處理一般發展在過去的十年。然而,對于分布式機器學習的長期成功來說,仍然存在許多挑戰:性能、容錯、隱私、可移植性等。
The demand for artificial intelligence has grown significantly over the last decade and this growth has been fueled by advances in machine learning techniques and the ability to leverage hardware acceleration. However, in order to increase the quality of predictions and render machine learning solutions feasible for more complex applications, a substantial amount of training data is required. Although small machine learning models can be trained with modest amounts of data, the input for training larger models such as neural networks grows exponentially with the number of parameters. Since the demand for processing training data has outpaced the increase in computation power of computing machinery, there is a need for distributing the machine learning workload across multiple machines, and turning the centralized into a distributed system. These distributed systems present new challenges, first and foremost the efficient parallelization of the training process and the creation of a coherent model. This article provides an extensive overview of the current state-of-the-art in the field by outlining the challenges and opportunities of distributed machine learning over conventional (centralized) machine learning, discussing the techniques used for distributed machine learning, and providing an overview of the systems that are available.
Graphical causal inference as pioneered by Judea Pearl arose from research on artificial intelligence (AI), and for a long time had little connection to the field of machine learning. This article discusses where links have been and should be established, introducing key concepts along the way. It argues that the hard open problems of machine learning and AI are intrinsically related to causality, and explains how the field is beginning to understand them.
近年來,移動設備得到了越來越大的發展,計算能力越來越強,存儲空間越來越大。一些計算密集型的機器學習和深度學習任務現在可以在移動設備上運行。為了充分利用移動設備上的資源,保護用戶的隱私,提出了移動分布式機器學習的思想。它使用本地硬件資源和本地數據來解決移動設備上的機器學習子問題,只上傳計算結果而不是原始數據來幫助全局模型的優化。該體系結構不僅可以減輕服務器的計算和存儲負擔,而且可以保護用戶的敏感信息。另一個好處是帶寬的減少,因為各種各樣的本地數據現在可以參與培訓過程,而不需要上傳到服務器。本文對移動分布式機器學習的研究現狀進行了綜述。我們調查了一些廣泛使用的移動分布式機器學習方法。我們還就這一領域的挑戰和未來方向進行了深入的討論。我們相信這項調查能夠清晰地展示移動分布式機器學習的概況,并為移動分布式機器學習在實際應用中的應用提供指導。
In recent years, mobile devices have gained increasingly development with stronger computation capability and larger storage. Some of the computation-intensive machine learning and deep learning tasks can now be run on mobile devices. To take advantage of the resources available on mobile devices and preserve users' privacy, the idea of mobile distributed machine learning is proposed. It uses local hardware resources and local data to solve machine learning sub-problems on mobile devices, and only uploads computation results instead of original data to contribute to the optimization of the global model. This architecture can not only relieve computation and storage burden on servers, but also protect the users' sensitive information. Another benefit is the bandwidth reduction, as various kinds of local data can now participate in the training process without being uploaded to the server. In this paper, we provide a comprehensive survey on recent studies of mobile distributed machine learning. We survey a number of widely-used mobile distributed machine learning methods. We also present an in-depth discussion on the challenges and future directions in this area. We believe that this survey can demonstrate a clear overview of mobile distributed machine learning and provide guidelines on applying mobile distributed machine learning to real applications.