欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

聯(lián)邦學(xué)習(xí)論文解讀分散數(shù)據(jù)的深層網(wǎng)絡(luò)通信

 更新時(shí)間:2022年05月11日 11:37:21   作者:Cyril_KI  
這篇文章主要為大家介紹了論文解讀分散數(shù)據(jù)的深層網(wǎng)絡(luò)通信有效學(xué)習(xí),有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪

前言

聯(lián)邦學(xué)習(xí)(Federated Learning) 是人工智能的一個(gè)新的分支,這項(xiàng)技術(shù)是谷歌于2016年首次提出,本篇論文第一次描述了這一概念。

Abstract

現(xiàn)代移動設(shè)備可以訪問到大量數(shù)據(jù),這些數(shù)據(jù)訓(xùn)練后反過來可以大大提高用戶體驗(yàn)。例如,語言模型可以改善語音識別和文本輸入,圖像模型可以自動選擇好的照片。但是,這些豐富的數(shù)據(jù)通常對隱私敏感、數(shù)量眾多或兩者兼而有之,這可能會妨礙使用常規(guī)方法進(jìn)行訓(xùn)練。于是我們提出將訓(xùn)練數(shù)據(jù)分發(fā)在移動設(shè)備上的替代訓(xùn)練方案,并通過聚合本地計(jì)算的更新來學(xué)習(xí)共享模型,我們稱這種分散的學(xué)習(xí)方法為聯(lián)邦學(xué)習(xí)。

簡而言之,當(dāng)下移動設(shè)備產(chǎn)生了大量的數(shù)據(jù),我們需要利用這些數(shù)據(jù)來訓(xùn)練一些模型,這些模型將會提升用戶實(shí)驗(yàn)。傳統(tǒng)的訓(xùn)練方式:收集所有客戶端的數(shù)據(jù),然后利用這些數(shù)據(jù)訓(xùn)練一個(gè)模型,最后分發(fā)給所有客戶端。存在的問題:我們沒法直接收集所有設(shè)備的數(shù)據(jù)來統(tǒng)一訓(xùn)練(隱私要求),于是提出了一種新的不需要共享客戶端數(shù)據(jù)的模型訓(xùn)練方式。

Introduction

聯(lián)邦學(xué)習(xí)中,學(xué)習(xí)任務(wù)由中央服務(wù)器協(xié)調(diào),每個(gè)客戶端都有一個(gè)本地訓(xùn)練數(shù)據(jù)集,該數(shù)據(jù)集永遠(yuǎn)不會上傳到服務(wù)器(即隱私不會被泄露)。

本文主要貢獻(xiàn):

  • 將移動設(shè)備分散數(shù)據(jù)的訓(xùn)練問題確定為重要的研究方向
  • 提出了解決該問題的具體算法
  • 對所提出的算法進(jìn)行了驗(yàn)證

更具體地說,我們引入了聯(lián)邦平均算法(FederatedAveraging algorithm)。

Federated Learning

聯(lián)邦學(xué)習(xí)的問題具有以下屬性:

  • 對來自移動設(shè)備的數(shù)據(jù)進(jìn)行訓(xùn)練,與對數(shù)據(jù)中心通??捎玫拇頂?shù)據(jù)進(jìn)行訓(xùn)練相比,具有明顯的優(yōu)勢。
  • 該數(shù)據(jù)是隱私敏感的或者大規(guī)模的(與模型的大小相比),因此最好不要純粹出于模型訓(xùn)練的目的將其記錄到數(shù)據(jù)中心(隱私的)
  • 對于監(jiān)督任務(wù),可以從用戶交互中自然推斷出數(shù)據(jù)上的標(biāo)簽。

作為兩個(gè)例子,我們考慮圖像分類和語言模型。圖像分類:例如預(yù)測哪些照片將來最有可能被多次查看或共享;語言模型:下一個(gè)單詞的預(yù)測甚至預(yù)測整個(gè)回復(fù)來改善觸摸屏鍵盤上的語音識別和文本輸入。這兩項(xiàng)任務(wù)的潛在訓(xùn)練數(shù)據(jù)(用戶拍攝的所有照片以及他們在移動鍵盤上鍵入的所有照片,包括密碼,URL,消息等)都可能對隱私敏感。

Privacy

與數(shù)據(jù)中心對持久數(shù)據(jù)的訓(xùn)練相比,聯(lián)邦學(xué)習(xí)具有明顯的隱私優(yōu)勢。但是即使是“匿名”數(shù)據(jù)集,也可能通過與其他數(shù)據(jù)結(jié)合而使用戶隱私面臨風(fēng)險(xiǎn)。

Federated Optimization

我們將聯(lián)邦學(xué)習(xí)中的優(yōu)化問題稱為聯(lián)邦優(yōu)化(Federated Optimization)。聯(lián)邦優(yōu)化具有幾個(gè)關(guān)鍵屬性,可將其與典型的分布式優(yōu)化問題區(qū)分開:

  • Non-IID:給定客戶端上的訓(xùn)練數(shù)據(jù)通?;谔囟ㄓ脩魧σ苿釉O(shè)備的使用,因此任何特定用戶的本地?cái)?shù)據(jù)集將不代表總體分布。
  • Unbalanced:一些用戶將比其他用戶更重地使用服務(wù)或應(yīng)用程序,導(dǎo)致不同數(shù)量的本地培訓(xùn)數(shù)據(jù)。簡而言之,每個(gè)用戶產(chǎn)生的數(shù)據(jù)量不一樣。
  • Massively distributed:預(yù)計(jì)參與優(yōu)化的客戶端數(shù)量將遠(yuǎn)遠(yuǎn)大于每個(gè)客戶端的平均示例數(shù)量。
  • 移動設(shè)備經(jīng)常脫機(jī)或連接緩慢或昂貴

本文重點(diǎn)是非IID和不平衡屬性的優(yōu)化,以及通信約束的關(guān)鍵性質(zhì)。

我們假設(shè)一個(gè)同步更新方案在幾輪通訊中進(jìn)行。有一組固定的K個(gè)客戶端,每個(gè)客戶端都有一個(gè)固定的本地?cái)?shù)據(jù)集。在每輪開始時(shí),隨機(jī)選擇一部分客戶端,服務(wù)器將當(dāng)前全局算法狀態(tài)發(fā)送給這些客戶端中的每一個(gè)(例如,當(dāng)前模型參數(shù))。然后,每個(gè)選定的客戶端根據(jù)全局狀態(tài)及其本地?cái)?shù)據(jù)集執(zhí)行本地計(jì)算,并向服務(wù)器發(fā)送更新。然后,服務(wù)器將這些更新應(yīng)用于其全局狀態(tài),并重復(fù)該過程。

問題的一般形式:

在數(shù)據(jù)中心優(yōu)化中,通信成本相對較小,計(jì)算成本占主導(dǎo)地位,最近的重點(diǎn)是使用GPU來降低這些成本。相比之下,在聯(lián)邦優(yōu)化通信成本中占主導(dǎo)地位。

因此,我們的目標(biāo)是使用額外的計(jì)算來減少訓(xùn)練模型所需的通信輪數(shù)。我們可以添加計(jì)算的兩種主要方法:

增加并行性。使用更多客戶端在每個(gè)通信周期之間獨(dú)立工作。

增加對每個(gè)客戶端的計(jì)算。即每個(gè)客戶端在每個(gè)通信回合之間執(zhí)行更復(fù)雜的計(jì)算。

以上內(nèi)容下文都將有更加詳細(xì)的介紹!

The FederatedAveraging Algorithm

深度學(xué)習(xí)的眾多成功應(yīng)用幾乎完全依賴于隨機(jī)梯度下降(SGD)的變體進(jìn)行優(yōu)化。

在聯(lián)邦學(xué)習(xí)中,我們使用大批量同步SGD,已有相關(guān)論文證明,它是優(yōu)于異步方法的。

為了在聯(lián)邦學(xué)習(xí)中應(yīng)用這種方法,我們在每輪中選擇一部分客戶端,并計(jì)算這些客戶端持有的所有數(shù)據(jù)的損失梯度。參數(shù)C控制全局塊大小,其中C=1對應(yīng)于全批(非隨機(jī))梯度下降。我們將此算法稱為FederatedSGD(orFedSGD)。

FedSGD的一種典型的實(shí)現(xiàn)方式:C=1(非SGD),學(xué)習(xí)率 η \eta η固定,每一個(gè)客戶端算出自己所有數(shù)據(jù)損失的梯度(平均梯度),然后傳遞給中央服務(wù)器,中央服務(wù)器整合所有梯度,來更新全局的參數(shù) w t w_t wt?。

計(jì)算量由三個(gè)參數(shù)控制:

  • C:每一輪執(zhí)行計(jì)算的客戶端比例(只有一部分客戶端參與更新)
  • E:每一輪更新時(shí),每個(gè)客戶端對其本地參數(shù)進(jìn)行更新的次數(shù)
  • B:客戶端每一次更新參數(shù)時(shí)所用本地?cái)?shù)據(jù)量的大小

該算法更加詳細(xì)的描述如下:

參數(shù)介紹:K表示客戶端的個(gè)數(shù), B表示每一次本地更新時(shí)的數(shù)據(jù)量,E表示本地更新的次數(shù), η表示學(xué)習(xí)率。

首先是服務(wù)器執(zhí)行以下步驟:

Experimental Results

Table1:

表1描述的是圖像分類任務(wù):參數(shù)C對E=1的MNIST 2NN和E=5的CNN的影響。其中C=0表示每次選擇一個(gè)客戶端的數(shù)據(jù)進(jìn)行更新。對于MINST 2NN來說,總的客戶端數(shù)量為100,即五行分別表示1,10,20,50,100個(gè)客戶端。

每個(gè)表格條目給出了實(shí)現(xiàn)2NN的97%和CNN的99%的測試集精度所需的通信輪數(shù),以及相對于C=0這一baseline的加速比。 比如對于第三行 B = ∞ B=\infty B=∞這一情況( B = ∞ B=\infty B=∞表示每一次都用全部數(shù)據(jù)進(jìn)行本地參數(shù)更新),中央服務(wù)器需要與客戶端進(jìn)行1658次通信,才能使得模型在測試集上的精度達(dá)到97%。

Table2:

表2描述的是語言模型:LSTM語言模型,該模型在讀取一行中的每個(gè)字符后預(yù)測下一個(gè)字符。該模型以一系列字符作為輸入,并將每個(gè)字符嵌入到8維空間中,然后通過2個(gè)LSTM層處理嵌入的字符,每個(gè)層具有256個(gè)節(jié)點(diǎn)。

表2的含義同表1:在某一參數(shù)環(huán)境下,F(xiàn)edSGD要達(dá)到目標(biāo)精度所需要進(jìn)行的通訊次數(shù)。

SGD對學(xué)習(xí)率參數(shù)η的調(diào)整很敏感,本文的 η \eta η是基于網(wǎng)格搜索法找到的。

Increasing parallelism

增加并行性: 即增加客戶端數(shù)量。

上圖給出了特定參數(shù)設(shè)置下要達(dá)到閾值精度(圖中灰線)所需要進(jìn)行的通訊輪數(shù)。

然后,使用形成曲線的離散點(diǎn)之間的線性插值來計(jì)算曲線穿過目標(biāo)精度的輪數(shù)。

Increasing computation per client

增加每個(gè)客戶端的計(jì)算量。C=0.1固定,減小B,或者增加E,或者減小B的同時(shí)增加E。

還是上面這張圖:

可以看到,隨著B減小或者E增加,達(dá)到目標(biāo)精度所需的通訊次數(shù)是減小的,也就是說:每輪添加更多本地SGD更新可以顯著降低通信成本。

Can we over-optimize on the client datasets?

本地?cái)?shù)據(jù)集上進(jìn)行更新時(shí)可以過度優(yōu)化嗎?即E特別大,進(jìn)行很多次的本地更新。

上圖給出了E特別大時(shí)的實(shí)驗(yàn)結(jié)果:對于大的E值,收斂速度并沒有顯著的下降。

Conclusions and Future Work

聯(lián)邦學(xué)習(xí)可以變得切實(shí)可行,因?yàn)榭梢允褂孟鄬^少的通信輪次來訓(xùn)練高質(zhì)量模型。聯(lián)邦學(xué)習(xí)將是未來比較熱門的一個(gè)方向!

以上就是論文解讀分散數(shù)據(jù)的深層網(wǎng)絡(luò)通信有效學(xué)習(xí)的詳細(xì)內(nèi)容,更多關(guān)于分散數(shù)據(jù)深層網(wǎng)絡(luò)通信的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • git之reflog命令的使用

    git之reflog命令的使用

    git reflog 命令可以用來查看本地倉庫的所有操作記錄,包括所有分支的提交、合并、重置等操作,本文就詳細(xì)的介紹一下如何使用,感興趣的可以了解一下
    2023-08-08
  • MobaXterm的安裝和使用及問題小結(jié)

    MobaXterm的安裝和使用及問題小結(jié)

    MobaXterm是一款全能的終端連接工具,支持SSH連接,支持FTP、串口等協(xié)議。接下來通過本文給大家分享MobaXterm的安裝和使用及遇到的問題解決方法,感興趣的朋友跟隨小編一起看看吧
    2021-05-05
  • 百萬行WPF項(xiàng)目代碼重構(gòu)記錄分析

    百萬行WPF項(xiàng)目代碼重構(gòu)記錄分析

    這篇文章主要為大家介紹了一次百萬行WPF項(xiàng)目代碼的重構(gòu)記錄,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-05-05
  • vscode安裝使用的詳細(xì)教程

    vscode安裝使用的詳細(xì)教程

    Visual Studio Code (簡稱 VS Code / VSC) 是一款免費(fèi)開源的現(xiàn)代化輕量級代碼編輯器,這篇文章主要介紹了vscode安裝使用的詳細(xì)教程,需要的朋友可以參考下
    2020-08-08
  • 最新IDEA永久激活教程(支持最新2019.2版本)

    最新IDEA永久激活教程(支持最新2019.2版本)

    這篇文章主要介紹了最新IDEA永久激活教程,此教程已支持最新2019.2版本,適用Windows、Mac、Ubuntu等所有平臺,非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-05-05
  • 獲取鍵盤鍵的值 集合 方便監(jiān)控鍵盤事件

    獲取鍵盤鍵的值 集合 方便監(jiān)控鍵盤事件

    整理的比較全的鍵盤值的集合,以后大家在開發(fā)過程中,可以直接拿來判斷。
    2009-08-08
  • 提示“處理URL時(shí)服務(wù)器出錯(cuò)”和“HTTP 500錯(cuò)誤“的解決方法

    提示“處理URL時(shí)服務(wù)器出錯(cuò)”和“HTTP 500錯(cuò)誤“的解決方法

    關(guān)于提示“處理URL時(shí)服務(wù)器出錯(cuò)”和“HTTP 500錯(cuò)誤“的解決方法,需要的朋友可以參考下。
    2009-11-11
  • 深入解析HetuEngine實(shí)現(xiàn)On Yarn原理

    深入解析HetuEngine實(shí)現(xiàn)On Yarn原理

    這篇文章主要介紹了HetuEngine實(shí)現(xiàn)On Yarn原理,介紹了HetuEngine On Yarn的原理,其實(shí)現(xiàn)主要是借助了Yarn Service提供的能力,感興趣的朋友一起通過本文學(xué)習(xí)下
    2022-01-01
  • GBK字符編碼(字符集)缺陷導(dǎo)致web安全漏洞

    GBK字符編碼(字符集)缺陷導(dǎo)致web安全漏洞

    很多時(shí)候,一個(gè)web站點(diǎn),選擇什么樣的字符編碼,我們不會太過在意的。象中文網(wǎng)站,我們一般用gb2312,gbk,gb18030,也可以用utf-8。但是,可能我們不知道,選擇不同編碼,可能因此導(dǎo)致程序本身設(shè)計(jì)缺陷
    2016-06-06
  • Vscode編輯器的巧妙用法(快速格式化代碼的方法)

    Vscode編輯器的巧妙用法(快速格式化代碼的方法)

    今天小編給大家分享一款超好用的格式化神器,Vscode編輯器是一款很好用的編輯器,學(xué)會這個(gè)神器可以省去很多麻煩不需要手動一點(diǎn)點(diǎn)縮進(jìn),對Vscode編輯器代碼格式化感興趣的朋友一起看看吧
    2021-05-05

最新評論