最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

FedAvg聯(lián)邦學(xué)習(xí)FedProx異質(zhì)網(wǎng)絡(luò)優(yōu)化實(shí)驗(yàn)總結(jié)

 更新時(shí)間:2022年05月11日 14:30:12   作者:Cyril_KI  
這篇文章主要為大家介紹了FedAvg聯(lián)邦學(xué)習(xí)FedProx異質(zhì)網(wǎng)絡(luò)優(yōu)化的實(shí)驗(yàn)總結(jié),有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪

前言

題目: Federated Optimization for Heterogeneous Networks

會(huì)議: Conference on Machine Learning and Systems 2020

論文地址:Federated Optimization for Heterogeneous Networks

FedAvg對(duì)設(shè)備異質(zhì)性和數(shù)據(jù)異質(zhì)性沒(méi)有太好的解決辦法,F(xiàn)edProx在FedAvg的基礎(chǔ)上做出了一些改進(jìn)來(lái)嘗試緩解這兩個(gè)問(wèn)題。

在Online Learning中,為了防止模型根據(jù)新到來(lái)的數(shù)據(jù)進(jìn)行更新后偏離原來(lái)的模型太遠(yuǎn),也就是為了防止過(guò)調(diào)節(jié),通常會(huì)加入一個(gè)余項(xiàng)來(lái)限制更新前后模型參數(shù)的差異。FedProx中同樣引入了一個(gè)余項(xiàng),作用類(lèi)似。

I. FedAvg

Google的團(tuán)隊(duì)首次提出了聯(lián)邦學(xué)習(xí),并引入了聯(lián)邦學(xué)習(xí)的基本算法FedAvg。問(wèn)題的一般形式:

FedAvg:

簡(jiǎn)單來(lái)說(shuō),在FedAvg的框架下:每一輪通信中,服務(wù)器分發(fā)全局參數(shù)到各個(gè)客戶(hù)端,各個(gè)客戶(hù)端利用本地?cái)?shù)據(jù)訓(xùn)練相同的epoch,然后再將梯度上傳到服務(wù)器進(jìn)行聚合形成更新后的參數(shù)。

FedAvg存在著兩個(gè)缺陷:

  • 設(shè)備異質(zhì)性:不同的設(shè)備間的通信和計(jì)算能力是有差異的。在FedAvg中,被選中的客戶(hù)端在本地都訓(xùn)練相同的epoch,雖然作者指出提升epoch可以有效減小通信成本,但較大的epoch下,可能會(huì)有很多設(shè)備無(wú)法按時(shí)完成訓(xùn)練。無(wú)論是直接drop掉這部分客戶(hù)端的模型還是直接利用這部分未完成的模型來(lái)進(jìn)行聚合,都將對(duì)最終模型的收斂造成不好的影響。
  • 數(shù)據(jù)異質(zhì)性:不同設(shè)備中數(shù)據(jù)可能是非獨(dú)立同分布的。如果數(shù)據(jù)是獨(dú)立同分布的,那么本地模型訓(xùn)練較多的epoch會(huì)加快全局模型的收斂;如果不是獨(dú)立同分布的,不同設(shè)備在利用非IID的本地?cái)?shù)據(jù)進(jìn)行訓(xùn)練并且訓(xùn)練輪數(shù)較大時(shí),本地模型將會(huì)偏離初始的全局模型。

II. FedProx

為了緩解上述兩個(gè)問(wèn)題,本文作者提出了一個(gè)新的聯(lián)邦學(xué)習(xí)框架FedProx。FedProx能夠很好地處理異質(zhì)性。

定義一:

簡(jiǎn)單來(lái)說(shuō),每個(gè)客戶(hù)端都是優(yōu)化所有樣本的損失和,這個(gè)是正常的思路,讓全局模型在本地?cái)?shù)據(jù)集上表現(xiàn)更好。

但如果設(shè)備間的數(shù)據(jù)是異質(zhì)的,每個(gè)客戶(hù)端優(yōu)化之后得到的模型就與初始時(shí)服務(wù)器分配的全局模型相差過(guò)大,本地模型將會(huì)偏離初始的全局模型,這將減緩全局模型的收斂。

為了有效限制這種偏差,本文作者提出,設(shè)備 k k k在本地進(jìn)行訓(xùn)練時(shí),需要最小化以下目標(biāo)函數(shù):

作者在FedAvg損失函數(shù)的基礎(chǔ)上,引入了一個(gè)proximal term,我們可以稱(chēng)之為近端項(xiàng)。引入近端項(xiàng)后,客戶(hù)端在本地訓(xùn)練后得到的模型參數(shù) w將不會(huì)與初始時(shí)的服務(wù)器參數(shù) wt偏離太多。

觀察上式可以發(fā)現(xiàn),當(dāng)  μ=0時(shí),F(xiàn)edProx客戶(hù)端的優(yōu)化目標(biāo)就與FedAvg一致。

這個(gè)思路其實(shí)還是很常見(jiàn)的,在機(jī)器學(xué)習(xí)中,為了防止過(guò)調(diào)節(jié),亦或者為了限制參數(shù)變化,通常都會(huì)在原有損失函數(shù)的基礎(chǔ)上加上這樣一個(gè)類(lèi)似的項(xiàng)。比如在在線學(xué)習(xí)中,我們就可以添加此項(xiàng)來(lái)限制更新前后模型參數(shù)的差異。

FedProx的算法偽代碼:

通過(guò)觀察這個(gè)步驟可以發(fā)現(xiàn),F(xiàn)edProx在FedAvg上做了兩點(diǎn)改進(jìn):

引入了近端項(xiàng),限制了因?yàn)閿?shù)據(jù)異質(zhì)性導(dǎo)致的模型偏離。引入了不精確解,各個(gè)客戶(hù)端不再需要訓(xùn)練相同的輪數(shù),只需要得到一個(gè)不精確解,這有效緩解了某些設(shè)備的計(jì)算壓力。

III. 實(shí)驗(yàn)

圖1給出了數(shù)據(jù)異質(zhì)性對(duì)模型收斂的影響:

上圖給出了損失隨著通信輪數(shù)增加的變化情況,數(shù)據(jù)的異質(zhì)性從左到右依次增加,其中 μ = 0 表示FedAvg??梢园l(fā)現(xiàn),數(shù)據(jù)間異質(zhì)性越強(qiáng),收斂越慢,但如果我們讓 μ>0,將有效緩解這一情況,也就是模型將更快收斂。

圖2:

左圖:E增加后對(duì)μ=0情況的影響??梢园l(fā)現(xiàn),太多的本地訓(xùn)練將導(dǎo)致本地模型偏離全局模型,全局模型收斂變緩。

中圖:同一數(shù)據(jù)集,增加μ后,收斂將加快,因?yàn)檫@有效緩解了模型的偏移,從而使FedProx的性能較少依賴(lài)于 E。

作者給出了一個(gè)trick:在實(shí)踐中,μ可以根據(jù)模型當(dāng)前的性能自適應(yīng)地選擇。比較簡(jiǎn)單的做法是當(dāng)損失增加時(shí)增加 μ,當(dāng)損失減少時(shí)減少μ。

但是對(duì)于 γ,作者貌似沒(méi)有具體說(shuō)明怎么選擇,只能去GitHub上研究一下源碼再給出解釋了。

IV. 總結(jié)

數(shù)據(jù)和設(shè)備的異質(zhì)性對(duì)傳統(tǒng)的FedAvg算法提出了挑戰(zhàn),本文作者在FedAvg的基礎(chǔ)上提出了FedProx,F(xiàn)edProx相比于FedAvg主要有以下兩點(diǎn)不同:

考慮了不同設(shè)備通信和計(jì)算能力的差異,并引入了不精確解,不同設(shè)備不需要訓(xùn)練相同的輪數(shù),只需要得到一個(gè)不精確解即可。引入了近端項(xiàng),在數(shù)據(jù)異質(zhì)的情況下,限制了本地訓(xùn)練時(shí)模型對(duì)全局模型的偏離。

以上就是FedProx異質(zhì)網(wǎng)絡(luò)的聯(lián)邦優(yōu)化經(jīng)驗(yàn)總結(jié)的詳細(xì)內(nèi)容,更多關(guān)于FedProx異質(zhì)網(wǎng)絡(luò)聯(lián)邦優(yōu)化的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • vscode檢測(cè)到#include錯(cuò)誤請(qǐng)更新includePath的解決方法

    vscode檢測(cè)到#include錯(cuò)誤請(qǐng)更新includePath的解決方法

    這篇文章主要介紹了vscode檢測(cè)到#include錯(cuò)誤請(qǐng)更新includePath的解決方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-08-08
  • net-snmp靜態(tài)編譯鏈接的獲取程序及生成執(zhí)行程序詳解

    net-snmp靜態(tài)編譯鏈接的獲取程序及生成執(zhí)行程序詳解

    這篇文章主要介紹了net-snmp靜態(tài)編譯鏈接的獲取程序及生成執(zhí)行程序詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-08-08
  • 在VScode中配置ROS環(huán)境的詳細(xì)過(guò)程

    在VScode中配置ROS環(huán)境的詳細(xì)過(guò)程

    這篇文章主要介紹了在VScode中配置ROS環(huán)境,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-07-07
  • ElasticSearch寫(xiě)入流程實(shí)例解析

    ElasticSearch寫(xiě)入流程實(shí)例解析

    這篇文章主要為大家介紹了ElasticSearch寫(xiě)入流程實(shí)例解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-09-09
  • Git初次使用時(shí)的安裝配置圖文教程

    Git初次使用時(shí)的安裝配置圖文教程

    下面小編就為大家分享一篇Git初次使用時(shí)的安裝配置圖文教程,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2017-11-11
  • Matlab實(shí)現(xiàn)新冠病毒傳播模擬效果

    Matlab實(shí)現(xiàn)新冠病毒傳播模擬效果

    2022年4月11日?qǐng)?bào)道,日本NEC公司8日宣布已開(kāi)始利用最尖端的人工智能(AI)技術(shù)開(kāi)發(fā)新冠疫苗,本文給大家?guī)?lái)了Matlab實(shí)現(xiàn)新冠病毒傳播模擬效果,需要的朋友可以參考下
    2022-04-04
  • 關(guān)于指令重排現(xiàn)象的兩個(gè)階段詳解

    關(guān)于指令重排現(xiàn)象的兩個(gè)階段詳解

    這個(gè)知識(shí)點(diǎn)也是很多人說(shuō)不清道不明的地方,感覺(jué)都知道,說(shuō)又說(shuō)不出來(lái)。為什么會(huì)這樣呢?因?yàn)檫@幾個(gè)字,很容易被當(dāng)成動(dòng)詞去理解,其實(shí)正確的理解是當(dāng)成名詞,即指令重排現(xiàn)象
    2022-01-01
  • vscode的eslint插件不起作用問(wèn)題及解決

    vscode的eslint插件不起作用問(wèn)題及解決

    這篇文章主要介紹了vscode的eslint插件不起作用問(wèn)題及解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-10-10
  • Visual Studio安裝git插件的方法步驟

    Visual Studio安裝git插件的方法步驟

    這篇文章主要介紹了Visual Studio安裝git插件的方法步驟,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2021-04-04
  • fiddler抓包小技巧之自動(dòng)保存抓包數(shù)據(jù)的實(shí)現(xiàn)方法分析【可根據(jù)需求過(guò)濾】

    fiddler抓包小技巧之自動(dòng)保存抓包數(shù)據(jù)的實(shí)現(xiàn)方法分析【可根據(jù)需求過(guò)濾】

    這篇文章主要介紹了fiddler抓包小技巧之自動(dòng)保存抓包數(shù)據(jù)的實(shí)現(xiàn)方法,較為詳細(xì)的分析了fiddler自動(dòng)保存抓包數(shù)據(jù)及根據(jù)需求過(guò)濾相關(guān)操作技巧,需要的朋友可以參考下
    2020-01-01

最新評(píng)論

平昌县| 福建省| 嘉荫县| 彰武县| 牡丹江市| 平度市| 象山县| 汶上县| 汉阴县| 鱼台县| 鹤庆县| 樟树市| 巴青县| 分宜县| 泗水县| 扎赉特旗| 上犹县| 宜黄县| 革吉县| 左云县| 正镶白旗| 密云县| 肇东市| 博湖县| 南部县| 和平县| 资兴市| 攀枝花市| 乌鲁木齐县| 安塞县| 堆龙德庆县| 嵊泗县| 渝中区| 临高县| 和政县| 天等县| 谷城县| 涞源县| 马尔康县| 葵青区| 襄垣县|