工作流程:
1.初始化(Initialization):從預(yù)定義好的目標(biāo)函數(shù)和全局梯度中隨機(jī)選擇參數(shù)。
2.本地模型更新(Local model update):終端設(shè)備根據(jù)所需的迭代次數(shù)來(lái)訓(xùn)練本地模型。
3.本地模型上傳(Local model upload):礦工與終端設(shè)備進(jìn)行綁定。終端設(shè)備上傳本地模型參數(shù)給礦工,同時(shí)上傳相應(yīng)的本地計(jì)算時(shí)間進(jìn)行驗(yàn)證。
4.交叉驗(yàn)證(Cross Verification):礦工依次驗(yàn)證終端設(shè)備的模型參數(shù)和計(jì)算時(shí)間。計(jì)算時(shí)間是否與數(shù)據(jù)的大小成正比決定了模型參數(shù)的可靠性。驗(yàn)證后的數(shù)據(jù)存儲(chǔ)在礦工的potential塊中,直到所有模型參數(shù)驗(yàn)證并存儲(chǔ)在一個(gè)塊中。
5.區(qū)塊生成(Block generation):每一輪都會(huì)運(yùn)行共識(shí)算法。當(dāng)有獲勝的礦工獲得區(qū)塊生成機(jī)會(huì)并生成候選塊(candidate block)時(shí)便會(huì)停止共識(shí)算法,同時(shí)強(qiáng)迫其他礦工停止競(jìng)爭(zhēng)區(qū)塊生成的機(jī)會(huì)。
6.區(qū)塊傳播(Block propagation):獲勝的礦工將候選塊作為新區(qū)塊廣播給所有參與方。如果驗(yàn)證無(wú)誤,系統(tǒng)中的所有礦工將新區(qū)塊追加到本地的賬本中。
7.全局模型更新(Global model update):被選擇的礦工聚合所有本地模型參數(shù),然后將新的全區(qū)參數(shù)寫入塊中。
8.全局模型下載(Global model download):所有的終端設(shè)備從新區(qū)塊中下載全局參數(shù),并決定是否進(jìn)行下一輪。
分類:
完全去中心化(Fully decentralized):每個(gè)終端設(shè)備都有可能領(lǐng)導(dǎo)特定的一輪訓(xùn)練,并發(fā)揮聚合器(中心服務(wù)器)的作用??赡苄耘c所處理的資源成正比,包括:計(jì)算和存儲(chǔ)性能、本地?cái)?shù)據(jù)質(zhì)量、網(wǎng)絡(luò)穩(wěn)定性等因素。
部分去中心化(Partially decentralized):部分去中心化的FL允許一個(gè)選定的礦工或委員會(huì)達(dá)成共識(shí),并決定候選區(qū)塊。
混合型(Hybrid):一些支持區(qū)塊鏈的FL系統(tǒng)選擇了靈活的共識(shí)算法(例如基于委員會(huì)的算法),這樣既可以完全去中心化又可以部分去中心化,這種情況下稱為Hybrid。文章來(lái)源:http://www.zghlxwxcb.cn/news/detail-451319.html
參考文獻(xiàn):https://www.researchgate.net/profile/Youyang-Qu/publication/359493327_Blockchain-Enabled_Federated_Learning_A_Survey/links/6242659957084c718b72b113/Blockchain-Enabled-Federated-Learning-A-Survey.pdf文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-451319.html
到了這里,關(guān)于基于區(qū)塊鏈的聯(lián)邦學(xué)習(xí)工作流程的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!