論文信息
SpreadGNN: Serverless Multi-task Federated Learning for Graph Neural Networks
原文鏈接:SpreadGNN: Serverless Multi-task Federated Learning for Graph Neural Networks:https://arxiv.org/abs/2106.02743
摘要
Graph Neural Networks (GNNs) are the first choice methods for graph machine learning problems thanks to their ability to learn state-of-the-art level representations from graph-structured data. However, centralizing a massive amount of real-world graph data for GNN training is prohibitive due to user-side privacy concerns, regulation restrictions, and commercial competition. Federated Learning is the de-facto standard for collaborative training of machine learning models over many distributed edge devices without the need for centralization. Nevertheless, training graph neural networks in a federated setting is vaguely defined and brings statistical and systems challenges. This work proposes SpreadGNN, a novel multi-task federated training framework capable of operating in the presence of partial labels and absence of a central server for the first time in the literature. SpreadGNN extends federated multi-task learning to realistic serverless settings for GNNs, and utilizes a novel optimization algorithm with a convergence guarantee, Decentralized Periodic Averaging SGD (DPA-SGD), to solve decentralized multi-task learning problems. We empirically demonstrate the efficacy of our framework on a variety of non-I.I.D. distributed graph-level molecular property prediction datasets with partial labels. Our results show that SpreadGNN outperforms GNN models trained over a central server-dependent federated learning system, even in constrained topologies.
圖神經(jīng)網(wǎng)絡(luò)( GNN )是圖機(jī)器學(xué)習(xí)問題的首選方法,因?yàn)樗鼈兡軌驈膱D結(jié)構(gòu)數(shù)據(jù)中學(xué)習(xí)最先進(jìn)的表示。然而,由于用戶方面的隱私問題、法規(guī)限制和商業(yè)競爭,將大量的真實(shí)世界圖形數(shù)據(jù)集中用于GNN訓(xùn)練是令人望而卻步的。聯(lián)邦學(xué)習(xí)是在許多分布式邊緣設(shè)備上協(xié)同訓(xùn)練機(jī)器學(xué)習(xí)模型的事實(shí)上的標(biāo)準(zhǔn),而無需集中化。盡管如此,在聯(lián)邦環(huán)境中訓(xùn)練圖神經(jīng)網(wǎng)絡(luò)是模糊定義的,并帶來統(tǒng)計(jì)和系統(tǒng)挑戰(zhàn)。本文首次在文獻(xiàn)中提出了可以在存在部分標(biāo)簽和沒有中心服務(wù)器的情況下運(yùn)行的新型多任務(wù)聯(lián)邦訓(xùn)練框架SpreadGNN。SpreadGNN將聯(lián)邦多任務(wù)學(xué)習(xí)擴(kuò)展到GNN的實(shí)際無服務(wù)器設(shè)置,并使用具有收斂保證的新型優(yōu)化算法- -分布式周期平均SGD ( DPA-SGD )來解決分布式多任務(wù)學(xué)習(xí)問題。我們在多種帶有部分標(biāo)簽的非I . I . D .分布式圖水平分子性質(zhì)預(yù)測數(shù)據(jù)集上實(shí)證了我們框架的有效性。我們的結(jié)果表明,即使在有約束的拓?fù)浣Y(jié)構(gòu)中,SpreadGNN也優(yōu)于在中央服務(wù)器依賴的聯(lián)邦學(xué)習(xí)系統(tǒng)上訓(xùn)練的GNN模型。
SpreadGNN Framework
用于圖層次學(xué)習(xí)的聯(lián)邦圖神經(jīng)網(wǎng)絡(luò)
我們尋求在位于邊緣服務(wù)器的分散圖數(shù)據(jù)集上學(xué)習(xí)圖級別的表示,這些數(shù)據(jù)集由于隱私和規(guī)則限制而無法集中進(jìn)行訓(xùn)練。例如,分子試驗(yàn)中的化合物可能由于知識(shí)產(chǎn)權(quán)或監(jiān)管方面的考慮而無法跨實(shí)體共享。在此設(shè)置下,我們假設(shè)FL網(wǎng)絡(luò)中有K個(gè)客戶端,并且每個(gè)客戶端有自己的數(shù)據(jù)集。每個(gè)客戶端都擁有一個(gè)帶有readout的GNN,以學(xué)習(xí)圖級表示。我們把這個(gè)GNN模型設(shè)置為一個(gè)readout函數(shù)和一個(gè)graph classifier。多個(gè)客戶端可以協(xié)作改進(jìn)他們的GNN模型,而不必透露他們的圖數(shù)據(jù)集。在本文中,我們將理論建立在消息傳遞神經(jīng)網(wǎng)絡(luò)( Message Passing Neural Network,MPNN )框架之上,因?yàn)榇蠖鄶?shù)空間GNN模型都可以統(tǒng)一到這個(gè)框架中。一個(gè)MPNN的前向傳遞有兩個(gè)階段:消息傳遞階段(式( 1 ) )和更新階段(式( 2 ) )。對于每個(gè)客戶端,我們用一個(gè)有L層的GNN和一個(gè)readout函數(shù)來定義圖分類器,如下所示:
其中,為第k個(gè)客戶端的節(jié)點(diǎn)特征,l為層索引,AGG為聚合方法,Ni表示第i個(gè)節(jié)點(diǎn)的鄰居。
為了構(gòu)造基于GNN的FL,使用上面的模型定義之外,我們定義作為總體可學(xué)習(xí)的權(quán)重。注意,W獨(dú)立于圖結(jié)構(gòu),因?yàn)镚NN和Readout參數(shù)都不對輸入圖做任何假設(shè)。因此,可以使用基于FL的方法學(xué)習(xí)W。整個(gè)FL任務(wù)可以表示為一個(gè)分布式優(yōu)化問題:
其中,是度量異構(gòu)圖數(shù)據(jù)集D ( k )上的局部經(jīng)驗(yàn)風(fēng)險(xiǎn)的第k個(gè)客戶端的局部目標(biāo)函數(shù)。L是全局圖分類器的損失函數(shù)。
有了這樣的公式,它可能看起來像是為基于FedAvg的優(yōu)化器定制的優(yōu)化問題。不幸的是,在分子圖設(shè)置中,由于以下原因,情況并非如此。( a )在我們的環(huán)境中,客戶端屬于去中心化的無服務(wù)器拓?fù)洹]有一個(gè)中心服務(wù)器可以從客戶端對模型參數(shù)進(jìn)行平均。( b )在我們的場景中,客戶具有不完整的標(biāo)簽,因此Φ task的維度在不同的客戶上可能不同。例如,一個(gè)客戶可能只有一個(gè)分子的部分毒性標(biāo)簽,而另一個(gè)客戶可能具有一個(gè)分子與另一個(gè)藥物化合物的相互作用性質(zhì)。即使每個(gè)客戶的信息不完整,我們的學(xué)習(xí)任務(wù)也有興趣在多個(gè)標(biāo)簽類別中對每個(gè)分子進(jìn)行分類。聯(lián)邦多任務(wù)學(xué)習(xí)( FMTL )是一個(gè)流行的框架,旨在處理這些問題。然而,目前的方法不能推廣到非凸深度模型,如圖神經(jīng)網(wǎng)絡(luò)。為了解決這些問題,我們首先在第2.2節(jié)中介紹一個(gè)用于圖神經(jīng)網(wǎng)絡(luò)的集中式FMTL框架。但是,在由多個(gè)相互競爭的實(shí)體擁有的分子圖中,依賴中央服務(wù)器可能是不可行的。因此,我們將這個(gè)集中式FMTL增強(qiáng)到第2.3節(jié)中的無服務(wù)器場景,我們稱之為SpreadGNN。
圖神經(jīng)網(wǎng)絡(luò)的聯(lián)邦多任務(wù)學(xué)習(xí)
在正則化MTL范式下,我們定義了如下的集中式聯(lián)邦圖MTL問題( FedGMTL ):
圖2-a描述了客戶圖分類器權(quán)重使用FLserver的FedGMTL框架。雖然上面的公式通過一個(gè)可用于GNN學(xué)習(xí)的受限正則化器增強(qiáng)了FMTL,但我們?nèi)匀恍枰鉀Q最后的挑戰(zhàn),即消除對中央服務(wù)器的依賴,以執(zhí)行公式5中的計(jì)算。因此,我們提出了一個(gè)去中心化圖多任務(wù)學(xué)習(xí)框架SpreadGNN,并利用我們新的優(yōu)化器去中心化周期平均SGD ( DPA-SGD )來擴(kuò)展FMTL框架。去中心化框架如圖2 - c所示。注意,每個(gè)客戶機(jī)的學(xué)習(xí)任務(wù)保持不變,但SpreadGNN中的聚合過程不同。
SpreadGNN
為了過渡到無服務(wù)器設(shè)置,我們引入了一種新的優(yōu)化方法,稱為去中心化周期平均SGD ( DPA-SGD )。DPA - SGD的主要思想是每個(gè)客戶機(jī)在本地應(yīng)用SGD,并在每τ次迭代發(fā)生的通信輪中僅與鄰居同步所有參數(shù)。在一個(gè)分散的系統(tǒng)中,所有客戶端不一定連接到所有其他客戶端,這也使得維護(hù)一個(gè)任務(wù)協(xié)方差矩陣?是不可能的。因此,我們提出使用不同的協(xié)方差矩陣?kin每個(gè)客戶端,并使用圖3所示的交換機(jī)制進(jìn)行高效更新。我們將這個(gè)想法形式化如下??紤]一個(gè)特定的客戶m有任務(wù)權(quán)重Φ task,m∈Rd × Sm其中Sm為客戶m擁有的任務(wù)數(shù)。
在去中心化的設(shè)置中,我們強(qiáng)調(diào)客戶端可以集體學(xué)習(xí)任務(wù)的窮舉集,即使客戶端可能無法訪問每個(gè)多類標(biāo)簽中的某些類。那么,新的非凸目標(biāo)函數(shù)可以定義為:為了解決這個(gè)非凸問題,我們應(yīng)用了文獻(xiàn)中提出的交替優(yōu)化方法,其中W k和?k以交替的方式更新。
第一個(gè)平均項(xiàng)可以將附近的節(jié)點(diǎn)相關(guān)性合并為它自己的相關(guān)性。值得注意的是,每個(gè)?imay具有不同的維度(不同數(shù)量的鄰居),因此該平均算法是基于全局?中的節(jié)點(diǎn)對齊。falign函數(shù)如圖3所示。在這里,對每個(gè)客戶機(jī)執(zhí)行falign,第二項(xiàng)捕獲其鄰居之間的新相關(guān)性,如圖3所示。
DPA-SGD的收斂性質(zhì)
在這一部分,我們給出了DPA - SGD的收斂性分析.我們的分析解釋了為什么DPA - SGD在聯(lián)邦環(huán)境下運(yùn)行良好。在上一節(jié)中,我們介紹了DPA - SGD算法。在任何形式之前,我們首先引入一個(gè)二進(jìn)制對稱的節(jié)點(diǎn)連接矩陣M∈RK × K來記錄網(wǎng)絡(luò)中的連接,其中Mi是一個(gè)二進(jìn)制值,表示節(jié)點(diǎn)i和j是否連接。我們假設(shè)M滿足:(a) M1K = 1K , (b) MT = M , c) max { | λ2 ( M ) |,. . .,| λK ( M ) | } < λ1 ( M ) = 1,其中λ是M的特征值。注意到,如果M = I ( Identity matrix ),那么每個(gè)節(jié)點(diǎn)都是獨(dú)立的并且分別更新參數(shù).如果M = J(每個(gè)元素一個(gè)),則模型退化為集中式模型。在這里,我們給出了DPA - SGD的數(shù)學(xué)上簡單方便的更新規(guī)則:接下來,我們將給出我們對上述平均模型ut的收斂性的分析。對于非凸優(yōu)化,先前關(guān)于SGD收斂性分析的工作使用平均平方梯度范數(shù)作為收斂到穩(wěn)定點(diǎn)的指標(biāo)。
假設(shè),假設(shè)1和定義( 13 )成立。然后,如果學(xué)習(xí)率η滿足以下條件:
以上表明DPA - SGD算法在收斂速度和包括通信效率(通信輪數(shù))和收斂速度在內(nèi)的系統(tǒng)優(yōu)化之間是一個(gè)折中。最近的工作在一個(gè)統(tǒng)一的框架下得到了相同的結(jié)果。我們的工作與這項(xiàng)工作的不同之處在于它沒有為聯(lián)邦學(xué)習(xí)提供充分的理論分析和實(shí)證評估。
實(shí)驗(yàn)
為了證明我們的框架不依賴于GNN模型的選擇,我們在兩種不同的GNN架構(gòu)上運(yùn)行實(shí)驗(yàn):GraphSAGE和GAT。
我們首先在一個(gè)完整的拓?fù)渲性u估我們的框架,其中所有客戶端都連接到所有其他客戶端,以衡量我們提出的正則化器的有效性。然后,我們對每個(gè)客戶的鄰居數(shù)量進(jìn)行消融研究,以強(qiáng)調(diào)在更有約束力的環(huán)境中測試我們的框架。
我們使用一個(gè)中央的、服務(wù)器依賴的FedAvg系統(tǒng)作為比較的基準(zhǔn)。更具體地說,在每個(gè)平均輪中,所有客戶端都參與模型參數(shù)的平均。
我們在表2中總結(jié)的結(jié)果表明,當(dāng)所有客戶端都可以與所有其他客戶端通信時(shí),SpreadGNN (第三列)優(yōu)于使用FedAvg (第一列)的集中式聯(lián)邦學(xué)習(xí)系統(tǒng)。這表明,通過使用方程6中的任務(wù)正則化器和DPA - SGD算法的組合,我們可以消除對中央服務(wù)器的依賴,并使客戶能夠在其各自的標(biāo)簽中缺少分子屬性的情況下更有效地學(xué)習(xí)。此外,結(jié)果還表明,由于Graph SAGE和GAT都受益于我們的框架,我們的框架對用于分子性質(zhì)預(yù)測任務(wù)的GNN模型類型不敏感。我們的框架也適用于可信中心服務(wù)器可用的情況(第二列)??尚胖行姆?wù)器的存在提高了少數(shù)場景下的準(zhǔn)確率。然而,SpreadGNN在中央服務(wù)器不可行的更現(xiàn)實(shí)的環(huán)境中提供了競爭性能。
圖4顯示了λ 1對回歸和分類任務(wù)的影響。有趣的是,回歸對λ 1的變化更加穩(wěn)健,而分類則需要更仔細(xì)地調(diào)整λ 1以獲得最佳的模型性能。這意味著回歸任務(wù)中的不同屬性比分類任務(wù)中的屬性更加獨(dú)立。
網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)決定了一個(gè)通信輪中每個(gè)客戶端可以與多少鄰居進(jìn)行通信。雖然表2顯示了SpreadGNN在一個(gè)完整的拓?fù)渲袃?yōu)于FedAvg,但是圖5顯示了我們的框架即使在客戶端被限制與更少的鄰居通信時(shí)也優(yōu)于FedAvg。我們還可以看到,重要的不僅僅是鄰居,客戶端連接的拓?fù)浣Y(jié)構(gòu)也很重要。當(dāng)n鄰域= 2時(shí),環(huán)拓?fù)鋬?yōu)于隨機(jī)拓?fù)?,因?yàn)榄h(huán)保證了從任意客戶端到任意其他客戶端的路徑。因此,學(xué)習(xí)在所有客戶端之間是間接共享的。文章來源:http://www.zghlxwxcb.cn/news/detail-793310.html
總結(jié)
在這項(xiàng)工作中,我們提出了SpreadGNN,一個(gè)在無服務(wù)器的聯(lián)邦系統(tǒng)中訓(xùn)練圖神經(jīng)網(wǎng)絡(luò)的框架。我們通過一個(gè)現(xiàn)實(shí)的環(huán)境來激勵(lì)我們的框架,在這個(gè)環(huán)境中,由于隱私和競爭,參與分子機(jī)器學(xué)習(xí)研究的客戶無法相互共享數(shù)據(jù)。此外,我們進(jìn)一步認(rèn)識(shí)到,客戶可能只擁有其數(shù)據(jù)的部分標(biāo)簽。通過實(shí)驗(yàn)分析,我們首次表明,以聯(lián)邦方式訓(xùn)練圖神經(jīng)網(wǎng)絡(luò)不需要集中式拓?fù)浣Y(jié)構(gòu),并且我們的框架可以解決非獨(dú)立同分布indataset大小和客戶端之間的標(biāo)簽分布問題。即使在客戶端只能與少數(shù)鄰居通信的情況下,SpreadGNN也能超越中心服務(wù)器依賴基線。為了支持我們的實(shí)證結(jié)果,我們還給出了SpreadGNN使用的DPA - SGD優(yōu)化算法的收斂性分析。文章來源地址http://www.zghlxwxcb.cn/news/detail-793310.html
到了這里,關(guān)于【論文導(dǎo)讀】- SpreadGNN: Serverless Multi-task Federated Learning for Graph Neural Networks(去服務(wù)器的多任務(wù)圖聯(lián)邦學(xué)習(xí))的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!