国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于動(dòng)態(tài)聚類的個(gè)性化聯(lián)邦學(xué)習(xí)與模塊化組合策略

2024-09-19 00:00:00周洪煒馬源馬旭
現(xiàn)代信息科技 2024年13期

摘 要:提出一種基于動(dòng)態(tài)聚類的個(gè)性化聯(lián)邦學(xué)習(xí)方法來解決聯(lián)邦學(xué)習(xí)下數(shù)據(jù)異構(gòu)的問題。此方法將優(yōu)化目標(biāo)向量與凝聚聚類算法相結(jié)合,在保證節(jié)省計(jì)算資源的同時(shí),將數(shù)據(jù)差異較大的客戶端動(dòng)態(tài)劃分到不同的集群中。此外,出于對(duì)訓(xùn)練模型可持續(xù)使用的考慮,進(jìn)一步提出模塊可組合策略,新的客戶端只需將之前訓(xùn)練模型組合便可以得到一個(gè)適合本地任務(wù)的初始模型??蛻舳酥恍柙谠摮跏寄P蜕线M(jìn)行少量訓(xùn)練便可以應(yīng)用于本地任務(wù)。在Cafir-10和Minst數(shù)據(jù)集上,其模型的精確度要優(yōu)于本地重新訓(xùn)練模型的精度。

關(guān)鍵詞:聯(lián)邦學(xué)習(xí);個(gè)性化;深度神經(jīng)網(wǎng)絡(luò);可組合;動(dòng)態(tài)聚類

中圖分類號(hào):TP181 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):2096-4706(2024)13-0061-05

Personalized Federated Learning Based on Dynamic Clustering and Modular Combinatorial Strategy

ZHOU Hongwei, MA Yuan, MA Xu

(Qufu Normal University, Qufu 273165, China)

Abstract: This paper proposes a personalized federated learning method based on dynamic clustering to address the issue of heterogeneous data in Federated Learning. This method combines the optimization target vector with the agglomerative clustering algorithm, dynamically divides clients with significant data differences into different clusters while conserving computing resources. Furthermore, in consideration of the sustainability of training models, the paper further proposes a modular combinatorial strategy, where new clients only need to combine previously trained models to obtain an initial model suitable for local tasks. The client only needs to perform a small amount of training on this initial model to apply it to local tasks. On the Cafir-10 and Minst datasets, the model's accuracy is superior to that of locally retrained models.

Keywords: Federated Learning; personalization; Deep Neural Network; combinatorial; dynamic clustering

0 引 言

傳統(tǒng)的中心化機(jī)器學(xué)習(xí)需要客戶端將本地的數(shù)據(jù)上傳到服務(wù)器,并由服務(wù)器利用手機(jī)的數(shù)據(jù)完成模型的訓(xùn)練,然而數(shù)據(jù)離開了本地往往會(huì)造成第三方對(duì)于個(gè)人隱私數(shù)據(jù)的濫用。因此聯(lián)邦平均算法[1]于2016年被谷歌學(xué)術(shù)提出,聯(lián)邦平均算法作為經(jīng)典分布式機(jī)器學(xué)算法可以使得客戶端訓(xùn)練數(shù)據(jù)在不離開本地情況下完成模型的訓(xùn)練,這有助保護(hù)客戶端數(shù)據(jù)的隱私和安全。因此聯(lián)邦學(xué)習(xí)被廣泛應(yīng)用于醫(yī)療[2]、物聯(lián)網(wǎng)[3-4]等領(lǐng)域。然而,一般的聯(lián)邦學(xué)習(xí)算法面臨客戶端數(shù)據(jù)異構(gòu)的情況時(shí),通常訓(xùn)練的模型收斂過慢甚至模型可用性差。因此個(gè)性化聯(lián)邦學(xué)習(xí)被提出來應(yīng)對(duì)上述挑戰(zhàn)。常見的個(gè)性化聯(lián)邦學(xué)習(xí)方案有基于正則損失的聯(lián)邦學(xué)習(xí)、基于參數(shù)解耦的個(gè)性化聯(lián)邦學(xué)習(xí)以及基于個(gè)性化掩碼的聯(lián)邦學(xué)習(xí)等。基于正則損失的聯(lián)邦學(xué)習(xí)是通過在本地優(yōu)化目標(biāo)上添加正則損失來約束本地優(yōu)化,防止本地過擬合提高模型的泛化能力[5]。參數(shù)解耦則是通過將客戶端模型拆分基礎(chǔ)層和個(gè)性層,通過共享基礎(chǔ)層參數(shù)提高模型泛化能力同時(shí),本地對(duì)個(gè)性化層的訓(xùn)練來提高模型個(gè)性化能力[6]。個(gè)性化掩碼則需要利用本地個(gè)性化掩碼對(duì)于全局模型進(jìn)行裁剪來得到適用于本地任務(wù)的模型[7]。盡管上述方案在一定程度上能夠緩解數(shù)據(jù)異構(gòu)帶來的挑戰(zhàn),但是面對(duì)客戶端數(shù)據(jù)差異較大的學(xué)習(xí)場(chǎng)景仍然表現(xiàn)不理想。因此近年來,基于客戶端聚類個(gè)性化聯(lián)邦學(xué)習(xí)方案被提出來解決上述的挑戰(zhàn)?;诳蛻舳司垲惖闹饕枷胧峭ㄟ^將數(shù)據(jù)差異較大客戶端分到不同集群中去,來減少同一集群內(nèi)部的數(shù)據(jù)異構(gòu)性。為了能有效地將相似度客戶端分到同一集群中,迭代聯(lián)邦聚類算法[8]與軟聚類聯(lián)邦學(xué)習(xí)算法[9]提出依據(jù)不同集群模型在客戶端的表現(xiàn)來確定客戶端所屬的集群,但是需要一定的先驗(yàn)知識(shí)預(yù)先確定客戶端分組的數(shù)量。在實(shí)際應(yīng)用中獲取這些先驗(yàn)知識(shí)通常是困難的。因此,聚類聯(lián)邦學(xué)習(xí)算法[10]提出通過計(jì)算客戶端模型梯度之間的相似度對(duì)客戶端集群進(jìn)行遞歸二分類,這使得服務(wù)器無須預(yù)先確定客戶端模型分組的數(shù)量。此外,層次聚合聯(lián)邦學(xué)習(xí)算法[11]利用客戶端模型參數(shù)之間的相似性對(duì)客戶端進(jìn)行層次凝聚聚類。然而,上述動(dòng)態(tài)分組都依賴于計(jì)算客戶端模型參數(shù)或者梯度的相似性,這是十分耗費(fèi)服務(wù)器計(jì)算資源的。除此之外,以往的個(gè)性化聯(lián)邦學(xué)習(xí)都忽略模型的可重復(fù)利用。新的客戶端如果想要得到一個(gè)個(gè)性化模型需要從頭開始訓(xùn)練,這通常造成計(jì)算資源極大的浪費(fèi)。為了解決上述問題,本文提出了一種可以為服務(wù)器節(jié)省計(jì)算開銷的動(dòng)態(tài)聚類個(gè)性化聯(lián)邦學(xué)習(xí)算法,并且提供了一個(gè)模塊組合策略來提高模型利用率。

1 方案設(shè)計(jì)

1.1 框架設(shè)計(jì)

本文框架由服務(wù)器和客戶端兩大部分構(gòu)成。根據(jù)動(dòng)態(tài)聚類個(gè)性化聯(lián)邦學(xué)習(xí)算法和模塊可組合策略,本文將客戶端進(jìn)一步分為兩類:一類是訓(xùn)練客戶端,另一類是測(cè)試客戶端。在動(dòng)態(tài)聚類個(gè)性化聯(lián)邦學(xué)習(xí)算法中,訓(xùn)練客戶端和服務(wù)器被用于訓(xùn)練出若干個(gè)組模型。在可組合策略中,測(cè)試客戶端(新客戶端)需要對(duì)動(dòng)態(tài)聚類個(gè)性化聯(lián)邦學(xué)習(xí)算法中生成的若干個(gè)組模型作為模塊進(jìn)行篩選并組合。動(dòng)態(tài)聚類個(gè)性化聯(lián)邦學(xué)習(xí)算法的優(yōu)化目標(biāo)可以表示為:

其中,m表示動(dòng)態(tài)聚類個(gè)性化聯(lián)邦學(xué)習(xí)算法得到的模塊數(shù)量。?i表示i-th訓(xùn)練客戶端本的損失函數(shù),Di則表示i-th客戶端本地?cái)?shù)據(jù)集。模塊組合策略的優(yōu)化目標(biāo)可以表示為:

其中,?test表示測(cè)試客戶端本地的損失函數(shù)。Dtest則表示測(cè)試客戶端本地?cái)?shù)據(jù)集。

1.2 動(dòng)態(tài)聚類個(gè)性化聯(lián)邦學(xué)習(xí)算法

動(dòng)態(tài)聚類個(gè)性化聯(lián)邦學(xué)習(xí)算法使用層次凝聚聚類對(duì)數(shù)據(jù)異構(gòu)的客戶端進(jìn)行動(dòng)態(tài)分組。為了節(jié)省計(jì)算開銷,我們通過衡量?jī)?yōu)化目標(biāo)向量之間的相似性來代替衡量模型參數(shù)之間相似性,算法框架如圖1所示。

第一階段:客戶端會(huì)生成一個(gè)優(yōu)化目標(biāo)向量Vi,該向量長(zhǎng)度和全局?jǐn)?shù)據(jù)集類別數(shù)量一致。如果客戶端第j個(gè)類別數(shù)據(jù)占比高,客戶端Ci會(huì)將Vi的第j維度設(shè)置為1,否則設(shè)置為0。在這里我們預(yù)先設(shè)置一個(gè)k值,客戶端將本地?cái)?shù)據(jù)占比最高的前k個(gè)類別對(duì)應(yīng)的優(yōu)化目標(biāo)向量維度設(shè)置為1。隨后客戶端將優(yōu)化目標(biāo)向量上傳到服務(wù)器。需要注意的是,客戶端僅需要向服務(wù)器傳輸一次優(yōu)化目標(biāo)向量。

第二階段:服務(wù)器在接收客戶端的優(yōu)化目標(biāo)向量后首先對(duì)客戶端進(jìn)行分組。為了描述清晰,這里我們將服務(wù)器分組過程劃分為三步:1)服務(wù)器計(jì)算每個(gè)簇的優(yōu)化目標(biāo)向量。具體來說,服務(wù)器對(duì)一個(gè)簇中的客戶端優(yōu)化目標(biāo)向量加和,然后對(duì)加和后的結(jié)果取前k個(gè)最大值并將其對(duì)應(yīng)的維度設(shè)置為1,其他維度設(shè)置為0。2)計(jì)算每個(gè)簇之間優(yōu)化目標(biāo)向量的相似度s。具體來說,服務(wù)器對(duì)任意兩個(gè)簇的優(yōu)化目標(biāo)向量并進(jìn)行按位與操作,最后服務(wù)器記錄按位與結(jié)果中每一維的值相加來作為簇之間的相似度s(1≤s≤c,s ∈ Z),c表示全局?jǐn)?shù)據(jù)集樣本類別數(shù)量。3)服務(wù)器合并相似度最大的兩個(gè)簇,并按照上一步計(jì)算新簇的優(yōu)化目標(biāo)向量。重復(fù)上述步驟直到簇之間的最小相似度滿足s≤a,a是一個(gè)預(yù)先設(shè)定的值,停止組的合并得到m個(gè)分組。

第三階段:隨后對(duì)于同一組中的客戶端進(jìn)行聯(lián)邦訓(xùn)練。具體來講,在t-th輪服務(wù)器和客戶端交互中,服務(wù)器將組模型 下發(fā)給客戶端ci,客戶端ci在本地?cái)?shù)據(jù)集 上通過隨機(jī)梯度下降算法對(duì)本地模型進(jìn)行更新:

其中,?表示本地的交叉熵?fù)p失函數(shù),η表示學(xué)習(xí)率。然后,客戶端將更新后模型 上傳到服務(wù)器進(jìn)行聚合:

其中,|C|表示當(dāng)前客戶端集群的大小。服務(wù)器和客戶端持續(xù)上述操作直到模型收斂。

1.3 模塊組合策略

測(cè)試客戶端通過模塊組合算法負(fù)責(zé)將訓(xùn)練好的m個(gè)組模型進(jìn)行篩選和組合。如圖2所示,測(cè)試客戶端首先從服務(wù)器獲取m個(gè)組模型w1,w2,…,wm,并利用本地的測(cè)試集對(duì)m個(gè)模塊分別計(jì)算損失L1,L2,…,Lm。測(cè)試客戶端依據(jù)計(jì)算損失從小到大對(duì)組模型進(jìn)行排序。取m'個(gè)損失最小的模塊w1,w2,…,wm',m'≤m。測(cè)試客戶端對(duì)這m'個(gè)模塊進(jìn)行聚合。在本地更新階段,需要將組合后的模型作為初始模型,并進(jìn)行微調(diào)。這樣不但節(jié)省了本地的計(jì)算開銷,同時(shí)能夠提升本地模型的性能。這是因?yàn)?,這m'個(gè)模型都和本地任務(wù)具有一定的相關(guān)性,并且這些模塊在此之前都在更為豐富的數(shù)據(jù)集上進(jìn)行了訓(xùn)練。

為了進(jìn)一步減少測(cè)試客戶端計(jì)算開銷,我們從模型參數(shù)解耦角度出發(fā)將m'個(gè)模塊分為“基礎(chǔ)層+個(gè)性化層”(靠近輸入層部分的模型稱為基礎(chǔ)層wbase,靠近輸出層部分的模型稱為個(gè)性化層wperson)。在深度學(xué)習(xí)過程中,基礎(chǔ)層被認(rèn)為用于公共特征的提取,而個(gè)性化層則被用于本地任務(wù)的個(gè)性化決策。在模塊聚合時(shí),測(cè)試客戶端m'個(gè)模塊的前i層作為基礎(chǔ)層并執(zhí)行平均聚合操作:

對(duì)于個(gè)性化層的模型參數(shù),測(cè)試客戶端需要進(jìn)行個(gè)性組合:

其中,pj表示第j個(gè)模塊個(gè)性化層組合時(shí)的系數(shù),然而如何設(shè)置pj是一個(gè)比較關(guān)鍵的問題,這將直接影響到組合后模型的性能。為了解決這個(gè)問題,本文提出將模塊篩選過程得到的損失來作為聚合權(quán)重的依據(jù)。具體來說,損失越小意味,該模塊越接近于本地的訓(xùn)練任務(wù),在組合過程中對(duì)應(yīng)的權(quán)重值pj應(yīng)該越大。pj計(jì)算過程可以表示為:

測(cè)試客戶端通過對(duì)m'個(gè)模塊聚合得到的模型wnew,可以表示為:

測(cè)試客戶端利用本地的數(shù)據(jù)集通過預(yù)先設(shè)定好學(xué)習(xí)率η的隨機(jī)梯度下降對(duì)wnew進(jìn)行微調(diào)。由于對(duì) 聚合時(shí),不同模塊的公共層是近似的,為了減少本地模型訓(xùn)練的計(jì)算開銷,測(cè)試客戶端僅對(duì)聚合后的個(gè)性化層 進(jìn)行更新:

2 實(shí)驗(yàn)分析

2.1 實(shí)驗(yàn)設(shè)置

在本文中,我們選取Minist和Cafir10作為實(shí)驗(yàn)數(shù)據(jù)集。Minist是一個(gè)10分類的手寫字體圖片數(shù)據(jù)集,總共有70 000張樣本。Cafir10是一個(gè)10分類的圖片數(shù)據(jù)集,總共有60 000張樣本。這兩個(gè)數(shù)據(jù)集在訓(xùn)練客戶端上是非獨(dú)立同分布的。本文在兩個(gè)數(shù)據(jù)集上均設(shè)置20個(gè)訓(xùn)練客戶端。遵循常見的數(shù)據(jù)異構(gòu)實(shí)驗(yàn)設(shè)置[8],預(yù)先將這些客戶端劃分為4個(gè)組,服務(wù)器選取2~3個(gè)類別的樣本被分配給每個(gè)組的訓(xùn)練客戶端。所有的數(shù)據(jù)都被拆分為70%的訓(xùn)練集和30%的測(cè)試集。本文選取Letnet-5深度神經(jīng)網(wǎng)絡(luò)來訓(xùn)練Minist數(shù)據(jù)集和CAFIR-10數(shù)據(jù)集。Letnet-5由兩層卷積層、兩層池化層以及三層全連接層構(gòu)成。此外,隨機(jī)選取2~3個(gè)類別測(cè)試客戶端的本地?cái)?shù)據(jù)集。為了公平,測(cè)試客戶端本地?cái)?shù)據(jù)集樣本數(shù)量和訓(xùn)練客戶端本地?cái)?shù)據(jù)集樣本數(shù)量保持一致。服務(wù)器與客戶端交互次數(shù)我們?cè)O(shè)置為150輪,本地客戶端更新周期e設(shè)置為5。學(xué)習(xí)率η設(shè)置為0.01,動(dòng)態(tài)聚類閾值a設(shè)置為1。

2.2 個(gè)性化聯(lián)邦學(xué)習(xí)算法性能評(píng)估

在本節(jié)中我們通過與本地訓(xùn)練算法(Local)、聯(lián)邦平均算法(Fedavg)[1]以及流行的迭代聯(lián)邦聚類算法(IFCA)[8]、正則損失聯(lián)邦學(xué)習(xí)算法(fedprox)[5]、層次聚合聯(lián)邦學(xué)習(xí)算法(HCFL)[11]進(jìn)行了模型的準(zhǔn)確度對(duì)比,來說明我們動(dòng)態(tài)分組聚類算法(DCPFL)的有效性。如表1所示,我們將上述算法得到的模型測(cè)試精度進(jìn)行了對(duì)比。從圖3和圖4中不難看出,在明顯的客戶端數(shù)據(jù)差異下,我們的方案要優(yōu)于其他大部分的個(gè)性化學(xué)習(xí)方案。此外我們發(fā)現(xiàn),DCPFL和HCFL收斂得更快,這是因?yàn)閮烧哳A(yù)先對(duì)客戶端集群完成了劃分,同一集群內(nèi)數(shù)據(jù)異構(gòu)性顯著下降進(jìn)而導(dǎo)致模型收斂速度要優(yōu)于其他方案。

盡管IFCA和FLHC在精確度上與DCPFL精度接近,但是DCPFL每次每個(gè)客戶端僅需要傳輸一個(gè)模型即可,IFCA需要傳輸K個(gè)模型(K與預(yù)先設(shè)定的組的數(shù)量相關(guān),在這里我們預(yù)先設(shè)置K = 4),因此相對(duì)于IFCA,DCPFL更節(jié)省通信開銷。因?yàn)镠CFL需要通過計(jì)算模型參數(shù)之間的相似性進(jìn)行層次聚類,而DCPFL僅需要依靠本地的優(yōu)化目標(biāo)向量的相似便可以完成聚類。不難發(fā)現(xiàn)優(yōu)化目標(biāo)向量遠(yuǎn)小于模型參數(shù)向量,因此DCPFL將比HCFL客戶端分組算法更節(jié)省計(jì)算開銷。

2.3 模塊組合策略性能評(píng)估

在本節(jié),為了驗(yàn)證模塊組合策略有效性,我們將測(cè)試客戶端采用模塊組合策略訓(xùn)練過程和本地訓(xùn)練過程進(jìn)行了對(duì)比。從圖5中可以看出模塊組合策略下客戶端模型收斂得更快,并且最終模型的準(zhǔn)確率更高。由于相對(duì)本地更新全部的模型參數(shù)來講,模塊組合策略僅需要更新個(gè)性化層參數(shù),這樣不僅使得本地模型性能有了提升,還極大節(jié)省了客戶端計(jì)算開銷。

3 結(jié) 論

在本文中,我們提出了動(dòng)態(tài)客戶端聚類個(gè)性化聯(lián)邦學(xué)習(xí)算法和模塊組合策略,來提高數(shù)據(jù)異構(gòu)場(chǎng)景下模型的可用性和可重復(fù)利用性。相對(duì)于經(jīng)典的個(gè)性化聯(lián)邦學(xué)習(xí)算法,我們不僅提高了模型精確度,同時(shí)極大節(jié)省了服務(wù)器和新客戶端的計(jì)算開銷。然而,本文提出的聚類算法目前僅適合客戶端數(shù)據(jù)差異明顯的簡(jiǎn)單場(chǎng)景。并且模塊組合策略要求新的客戶端的任務(wù)和訓(xùn)練模塊的任務(wù)接近。因此在未來工作中,我們將進(jìn)一步改進(jìn)客戶端聚類算法和模塊組合策略,以適合更為復(fù)雜的數(shù)據(jù)異構(gòu)場(chǎng)景和實(shí)現(xiàn)不同領(lǐng)域任務(wù)下的知識(shí)遷移。

參考文獻(xiàn):

[1] MCMAHAN B H,MOORE E,RAMAGE D,et al. Communication-Efficient Learning of Deep Networks from Decentralized Data [J/OL].arXiv:1602.05629 [cs.LG].(2023-01-23)[2023-11-20].https://arxiv.org/abs/1602.05629.

[2] TERRAIL J O,AYED S S,CYFFERS E,et al. FLamby: Datasets and Benchmarks for Cross-Silo Federated Learning in Realistic Healthcare Settings [J/OL]arD3K3QSY+lDrXVx8V8KOkxTITapOBWpYHhRZzsd9ISjc=Xiv:2210.04620 [cs.LG].(2023-05-05)[2023-11-20].https://arxiv.org/abs/2210.04620.

[3] KHAN L U,SAAD W,HAN Z,et al. Federated Learning for Internet of Things: Recent Advances, Taxonomy, and Open Challenges [J].IEEE Communications Surveys & Tutorials,2021,23(3):1759-1799.

[4] SUN W,LEI S Y,WANG L,et al. Adaptive0YJ1MMDr40pjfFRhPEOfe2TRhxOaZSEY7PPJ6F8+gWI= Federated Learning and Digital Twin for Industrial Internet of Things [J].IEEE Transactions on Industrial Informatics,2020,17(8):5605-5614.

[5] LI T,SAHU A K,ZAHEER M,et al. Federated Optimization in Heterogeneous Networks [J/OL]. arXiv:1812.06127 [cs.LG].(2020-04-21)[2023-11-20].https://arxiv.org/abs/1812.06127v5.

[6] ARIVAZHAGAN M G,AGGARWAL V,SINGH A K,et al. Federated Learning with Personalization Layers [J/OL].(2019-012-02)[2023-11-26].https://arxiv.org/abs/1912.00818.

[7] HUANG T S,LIU S W, SHEN L,et al. Achieving Personalized Federated Learning with Sparse Local Models [J/OL].arXiv:2201.11380 [cs.LG].(2022-02-27)[2023-11-26].https://arxiv.org/abs/2201.11380.

[8] GHOSH A,CHUNG J C,YIN D,et al. An Efficient Framework for Clustered Federated Learning [J].IEEE Transactions on Information Theory,2022,68(12):8076-8091.

[9] LI C X,LI G,VARSHNEY P K. Federated Learning With Soft Clustering [J].IEEE Internet of Things Journal,2022,9(10):7773-7782.

[10] SATTLER F,MüLLER K R,SAMEK W. Clustered Federated Learning: Model-Agnostic Distributed Multitask Optimization Under Privacy Constraints [J].IEEE Transactions on Neural Networks and Learning Systems,2021,32(8):3710-3722.

[11] BRIGGS C,F(xiàn)AN Z,ANDRAS P. Federated Learning with Hierarchical Clustering of Local Updates to Improve Training on Non-IID Data [C]//2020 International Joint Conference on Neural Networks (IJCNN).Glasgow:IEEE,2020:1-9.

作者簡(jiǎn)介:周洪煒(1998.12—),男,漢族,山東濰坊人,碩士在讀,研究方向:聯(lián)邦學(xué)習(xí)、機(jī)器學(xué)習(xí);馬源(1997.05—),男,漢族,山東青島人,碩士在讀,研究方向:聯(lián)邦學(xué)習(xí)、機(jī)器學(xué)習(xí);馬旭(1985.05—),男,漢族,山東濟(jì)寧人,教授,博士,研究方向:電子信息、機(jī)器學(xué)習(xí)隱私保護(hù)、聯(lián)邦學(xué)習(xí)。

宁国市| 大厂| 定州市| 上栗县| 平顺县| 泸州市| 濉溪县| 定边县| 佳木斯市| 鲁山县| 宝兴县| 堆龙德庆县| 开封市| 临武县| 施甸县| 会泽县| 洛川县| 延安市| 仁布县| 凯里市| 张家界市| 南江县| 德兴市| 桐城市| 宿迁市| 澜沧| 潼南县| 龙海市| 宜兰市| 长汀县| 大荔县| 临安市| 黔江区| 道真| 弥勒县| 连江县| 哈密市| 丰台区| 侯马市| 奎屯市| 丰都县|