劉衛(wèi)明 羅全成 毛伊敏 彭喆
摘 要:針對(duì)并行DCNN算法在大數(shù)據(jù)環(huán)境下存在冗余參數(shù)過(guò)多、收斂速度慢、容易陷入局部最優(yōu)和并行效率低的問(wèn)題,提出了基于Spark和AMPSO的并行深度卷積神經(jīng)網(wǎng)絡(luò)優(yōu)化算法PDCNN-SAMPSO。首先,該算法設(shè)計(jì)了基于卷積核重要性和相似度的卷積核剪枝策略(KP-IS),通過(guò)剪枝模型中冗余的卷積核,解決了冗余參數(shù)過(guò)多的問(wèn)題;接著,提出了基于自適應(yīng)變異粒子群優(yōu)化算法的模型并行訓(xùn)練策略(MPT-AMPSO),通過(guò)使用自適應(yīng)變異的粒子群優(yōu)化算法(AMPSO)初始化模型參數(shù),解決了并行DCNN算法收斂速度慢和容易陷入局部最優(yōu)的問(wèn)題;最后,提出了基于節(jié)點(diǎn)性能的動(dòng)態(tài)負(fù)載均衡策略(DLBNP),通過(guò)均衡集群中各節(jié)點(diǎn)負(fù)載,解決了集群并行效率低的問(wèn)題。實(shí)驗(yàn)表明,當(dāng)選取8個(gè)計(jì)算節(jié)點(diǎn)處理CompCars數(shù)據(jù)集時(shí),PDCNN-SAMPSO較Dis-CNN、DS-DCNN、CLR-Distributed-CNN、RS-DCNN的運(yùn)行時(shí)間分別降低了22%、30%、37%和27%,加速比分別高出了1.707、1.424、1.859、0.922,top-1準(zhǔn)確率分別高出了4.01%、4.89%、2.42%、5.94%,表明PDCNN-AMPSO在大數(shù)據(jù)環(huán)境下具有良好的分類(lèi)性能,適用于大數(shù)據(jù)環(huán)境下DCNN模型的并行訓(xùn)練。
關(guān)鍵詞:并行DCNN算法; Spark框架; PDCNN-SAMPSO算法; 負(fù)載均衡策略
中圖分類(lèi)號(hào):TP391 文獻(xiàn)標(biāo)志碼:A 文章編號(hào):1001-3695(2023)10-012-2957-10
doi:10.19734/j.issn.1001-3695.2023.03.0083
Parallel deep convolution neural network optimization algorithm
based on Spark and AMPSO
Liu Weiming1, Luo Quancheng1, Mao Yimin1,2, Peng Zhe3
(1.College of Information Engineering, Jiangxi University of Science & Technology, Ganzhou Jiangxi 341000, China; 2.College of Information Engineering, Shaoguan University, Shaoguan Guangdong 512026, China; 3.Dachan Customs District, P. R. China, Shenzhen Guangdong 518000, China)
Abstract:This paper proposed a parallel deep convolutional neural network optimization algorithm based on Spark and AMPSO(PDCNN-SAMPSO), aiming to address several issues encountered by parallel DCNN algorithms in big data environments, such as excessive redundant parameters, slow convergence speed, easy to fall into local optimal, and low parallel efficiency. Firstly, the algorithm designed a kernel pruning strategy based on importance and similarity (KP-IS) to address the problem of excessive redundant parameters by pruning the redundant convolution kernels in the model. Secondly, it proposed a model pa-rallel training strategy based on adaptive mutation particle swarm optimization algorithm (MPT-AMPSO) to solve the slow convergence speed and easy to fall into local optimal issues of parallel DCNN algorithms by initializing the model parameters using adaptive mutation particle swarm optimization algorithm (AMPSO). Finally, the algorithm proposed a dynamic load balancing strategy based on node performance (DLBNP) to balance the load of each node in the cluster and improve the parallel efficiency. Experiments show that, when using 8 computing nodes to process the CompCars dataset, the runtime of PDCNN-SAMPSO is 22%, 30%, 37% and 27% lower than that of Dis-CNN, DS-DCNN, CLR-Distributed-CNN and RS-DCNN, respectively, the speedup ratio is higher by 1.707, 1.424, 1.859, and 0.922, respectively, and the top-1 accuracy is higher by 4.01%, 4.89%, 2.42%, 5.94%, indicating that PDCNN-AMPSO has good classification performance in the big data environment and is suitable for parallel training of DCNN models in the big data environment.
Key words:parallel DCNN algorithm; Spark; PDCNN-SAMPSO algorithm; load balancing
0 引言
DCNN[1]是一類(lèi)包含卷積計(jì)算且含有深層次結(jié)構(gòu)的前饋神經(jīng)網(wǎng)絡(luò),因具有強(qiáng)大的特征選擇和泛化能力,被廣泛應(yīng)用于圖像分析[2]、語(yǔ)音識(shí)別[3]、目標(biāo)檢測(cè)像[4]、語(yǔ)義分割[5]、人臉識(shí)別[6]、自動(dòng)駕駛[7]等領(lǐng)域。然而隨著大數(shù)據(jù)時(shí)代[8]的到來(lái),數(shù)據(jù)的規(guī)模和人們對(duì)數(shù)據(jù)價(jià)值的提取需求不斷增長(zhǎng),傳統(tǒng)DCNN模型的訓(xùn)練成本和訓(xùn)練復(fù)雜度也隨之不斷提升。因此,設(shè)計(jì)適用于大數(shù)據(jù)環(huán)境下的DCNN算法具有十分重要的意義。
隨著Google公司開(kāi)發(fā)的分布式計(jì)算框架MapReduce的快速發(fā)展,基于分布式計(jì)算框架的DCNN算法得到了廣泛關(guān)注。文獻(xiàn)[9~12]均使用基于MapReduce的DCNN算法取得了不錯(cuò)的效果,然而隨著Spark[13]框架的誕生,其憑借計(jì)算速度快、簡(jiǎn)潔易用、通用性強(qiáng)和支持多種運(yùn)行模式等優(yōu)勢(shì)逐步超越MapReduce,成為并行DCNN研究領(lǐng)域中主流的計(jì)算框架。目前已有大量基于Spark框架的并行DCNN算法成功運(yùn)用到大數(shù)據(jù)的分析和處理領(lǐng)域中。例如,Xu等人[14]結(jié)合Spark提出了Dis-CNN(distributed convolution neural network)模型,該模型采用并行計(jì)算的方式對(duì)各分布式節(jié)點(diǎn)上的模型進(jìn)行訓(xùn)練,實(shí)現(xiàn)了DCNN模型在分布式計(jì)算系統(tǒng)上的并行化訓(xùn)練過(guò)程,相較于單機(jī)器的訓(xùn)練方式,擁有更高的訓(xùn)練效率?;诖?,Li等人[15]在模型并行訓(xùn)練階段引入了一種基于內(nèi)存的分布式文件系統(tǒng)Alluxio,提出了DS-DCNN(distributed system based on DCNN on Apache Spark and Alluxio)模型,該模型使用Alluxio來(lái)存儲(chǔ)中間數(shù)據(jù),進(jìn)一步提升了模型的并行訓(xùn)練效率。同時(shí),Sun等人[16]在模型并行訓(xùn)練階段運(yùn)用周期學(xué)習(xí)率[17]的思想,提出了CLR-Distributed-CNN(distributed convolutional neural network with a cycle learning rate)算法,該算法使用周期學(xué)習(xí)率替代線性變化的學(xué)習(xí)率,提升了模型的收斂速率。此外,Boulila等人[18]在參數(shù)并行更新階段結(jié)合了異步梯度下降法的思想,提出了RS-DCNN(distributed convolutional neural network for hand-ling RS image classification)算法,該算法通過(guò)異步更新各節(jié)點(diǎn)計(jì)算的梯度解決了集群相互等待的問(wèn)題,進(jìn)一步提高了集群的并行效率。實(shí)驗(yàn)結(jié)果表明,以上四種并行DCNN算法對(duì)模型的訓(xùn)練效率均有顯著的提升,但是仍存在以下不足:a)在模型并行訓(xùn)練之前,由于各分布式節(jié)點(diǎn)上的DCNN模型結(jié)構(gòu)過(guò)于復(fù)雜,若不對(duì)其進(jìn)行有效剪枝,模型將會(huì)存在冗余參數(shù)過(guò)多的問(wèn)題;b)在模型并行訓(xùn)練過(guò)程中,不管是使用周期學(xué)習(xí)率替代線性變化的學(xué)習(xí)率,還是使用Alluxio來(lái)存儲(chǔ)中間數(shù)據(jù),雖然都能在一定程度上提升模型的訓(xùn)練效率,但對(duì)于大數(shù)據(jù)環(huán)境下更為復(fù)雜的DCNN模型,仍存在收斂速度慢和容易陷入局部最優(yōu)的問(wèn)題;c)在參數(shù)并行更新階段,雖然使用異步梯度下降法能有效地解決集群相互等待的問(wèn)題,但這種做法同時(shí)也帶來(lái)了梯度延遲的問(wèn)題,導(dǎo)致模型精度有所降低。所以如何有效地提高集群的并行效率也是一個(gè)亟待解決的問(wèn)題。
針對(duì)以上三個(gè)問(wèn)題,本文提出了一種基于Spark和AMPSO的并行深度卷積神經(jīng)網(wǎng)絡(luò)優(yōu)化算法PDCNN-SAMPSO(parallel deep convolutional neural network optimization algorithm based on Spark and AMPSO),算法從三個(gè)方面對(duì)并行DCNN算法進(jìn)行了優(yōu)化:a)在模型壓縮階段,為了解決冗余參數(shù)過(guò)多的問(wèn)題,首先對(duì)各卷積層中的卷積核進(jìn)行剪枝,然而現(xiàn)有的卷積核剪枝策略大多是采用L1范數(shù)作為剪枝標(biāo)準(zhǔn)對(duì)各卷積層進(jìn)行剪枝,該做法不僅忽略了各卷積核間的相似度,而且對(duì)不同層采用同一剪枝標(biāo)準(zhǔn)的方式剪枝精度不高,PDCNN-AMPSO算法從卷積核重要性和相似度兩個(gè)維度考慮,設(shè)計(jì)了KP-IS策略,通過(guò)對(duì)不同卷積層采用不同的剪枝標(biāo)準(zhǔn)并考慮了卷積核間的相似度,解決了冗余參數(shù)過(guò)多的問(wèn)題;b)在模型并行訓(xùn)練階段,對(duì)于并行DCNN算法收斂慢且容易陷入局部最優(yōu)的問(wèn)題,考慮到PSO算法[19]收斂速率快和簡(jiǎn)單易用的特性,基于PSO算法提出了AMPSO算法,并在此基礎(chǔ)上設(shè)計(jì)了MPT-AMPSO策略,通過(guò)使用AMPSO算法來(lái)初始化模型參數(shù),接著再使用Adam(adaptive momentum algorithm)算法[20]對(duì)模型參數(shù)進(jìn)行更新,解決了并行DCNN算法收斂速度慢和容易陷入局部最優(yōu)的問(wèn)題;c)在參數(shù)并行更新階段,對(duì)于集群并行效率低的問(wèn)題,大多并行算法采用異步更新的方式對(duì)參數(shù)進(jìn)行更新,然而這種做法導(dǎo)致的梯度延遲問(wèn)題使得模型分類(lèi)精度有所降低,因此PDCNN-AMPSO算法選擇在同步更新的基礎(chǔ)上提出了DLBNP策略,通過(guò)評(píng)估各節(jié)點(diǎn)性能對(duì)中間數(shù)據(jù)進(jìn)行預(yù)劃分,并在集群實(shí)際運(yùn)行期間對(duì)各節(jié)點(diǎn)負(fù)載進(jìn)行遷移調(diào)整,解決了集群并行效率低的問(wèn)題。
1 相關(guān)概念介紹
1.1 皮爾森相關(guān)系數(shù)
皮爾森相關(guān)系數(shù)主要是用來(lái)衡量?jī)蓚€(gè)向量之間的相關(guān)性程度,它的取值是[-1,1]。如果值大于0,表示兩個(gè)向量成正相關(guān);如果值小于0,則兩個(gè)向量成負(fù)相關(guān);如果值等于0,則兩個(gè)向量不相關(guān)。皮爾森相關(guān)系數(shù)的計(jì)算公式如下:
2.1.2 基于重要性的剪枝
在完成對(duì)各卷積層特征聚集程度的量化之后,開(kāi)始對(duì)卷積核進(jìn)行剪枝。首先從卷積核的重要性這一維度對(duì)其進(jìn)行剪枝,其具體過(guò)程如下:首先提出自適應(yīng)重要性系數(shù)AIC作為卷積核重要性的衡量標(biāo)準(zhǔn),并由此計(jì)算出各卷積層中卷積核的AIC;接著,比較各卷積核的自適應(yīng)重要性系數(shù)AIC和給定閾值A(chǔ)IC0的大小,若AIC 定理2 自適應(yīng)重要性系數(shù)AIC。令FCC為第i層卷積層的特征聚集系數(shù),則第i層卷積層的第j個(gè)卷積核的重要性系數(shù)AIC可由式(14)計(jì)算。 證明 令FCC為第i層卷積層的特征聚集系數(shù),當(dāng)特征分布較為均勻時(shí)可知式(8)中LMFj·nGFj·n′趨近于1,即可得lim特征→均勻(FCC)=lim特征→均勻1j·∑ji=1LMFj·nGFj·n′≈1j·∑ji=11=1,此時(shí)AIC趨近于L1范數(shù),能夠充分考慮該卷積層中各卷積核所包含的信息;當(dāng)特征分布較為聚集時(shí)LMFj·nGFj·n′>1且隨聚集程度的增大而增大,此時(shí)lim特征→聚集(FCC)=lim特征→聚集1j·∑ji=1‖F(xiàn)‖i,max1·n‖F(xiàn)‖i1·n′>1,AIC趨近于更高階范數(shù),可以篩選出該卷積層中含有較大元素的卷積核。因此AIC可以通過(guò)當(dāng)前卷積層的特征聚集系數(shù)FCC自適應(yīng)地進(jìn)行調(diào)整,作為卷積核重要性評(píng)估的基本準(zhǔn)則,證畢。 2.1.3 基于相似度的剪枝 在根據(jù)卷積核的重要性對(duì)模型進(jìn)行初步壓縮后,考慮到此做法僅考慮了卷積核權(quán)重的數(shù)值大小,而忽略了它們之間的相關(guān)性,導(dǎo)致網(wǎng)絡(luò)中可能還存在冗余的卷積核,因此還需要從卷積核的相似度這一維度對(duì)模型做進(jìn)一步壓縮,其具體過(guò)程如下:首先提出特征相似度系數(shù)FSC作為卷積核間相似度的衡量標(biāo)準(zhǔn);然后依次計(jì)算每個(gè)卷積層中各卷積核兩兩之間的特征相似度系數(shù)FSC,并與給定的特征相似度閾值FSC0進(jìn)行比較,若FSC>FSC0,則將對(duì)應(yīng)的兩個(gè)卷積核以元組的形式加入待刪除隊(duì)列Q中;接著,依次取出隊(duì)列Q中元組(j,k),計(jì)算該元組所對(duì)應(yīng)的卷積核j和k的自適應(yīng)重要性系數(shù)AICj和AICk,并刪除其中較小者所對(duì)應(yīng)的卷積核;最后,當(dāng)對(duì)每個(gè)卷積層完成上述操作后,輸出最終剪枝完成的網(wǎng)絡(luò)模型。 定理3 特征相似度系數(shù)FSC。設(shè)j和k分別為第i層任意兩個(gè)卷積核,則卷積核j和k的特征相似度系數(shù)FSC為 其中:X和Y分別是卷積核j和k的向量表達(dá)形式。 證明 已知PCC(X,Y)代表卷積核j和k的關(guān)聯(lián)程度,即PCC(X,Y)越大,卷積核j和k的相似度越大。而ED(norm(X),norm(Y))的大小反映了卷積核j和k的差異程度,其值越大,卷積核差異越大,反之卷積核差異越小。因此,兩者的比值PCC(X,Y)ED(norm(X),norm(Y))在一定程度上可以反映卷積核直接的相似程度,即當(dāng)該值越大時(shí),表明卷積核之間相似程度越高;反之,表明卷積核之間相似程度越低,證畢。 算法1 模型壓縮 輸入:預(yù)訓(xùn)練得到的網(wǎng)絡(luò)權(quán)值序列{wn}。 輸出:壓縮后的網(wǎng)絡(luò)權(quán)值序列{wm}。 //特征聚集程度的量化 for each convolution layer i do calculate FCC//計(jì)算各卷積層的特征聚集系數(shù) i=FCC//將計(jì)算結(jié)果標(biāo)記給該層 end for //基于重要性的剪枝 for each convolution layer i do for each kernel j do calculate AIC//計(jì)算各卷積核的自適應(yīng)重要性系數(shù) if AIC delete j end if end for end for //基于相似度的剪枝 for each convolution layer i do create queue Qi//創(chuàng)建待刪除隊(duì)列 for each kernel j and k do calculate FSC//計(jì)算每?jī)蓚€(gè)卷積核的特征相似度系數(shù) if FSC>FSC0//根據(jù)閾值將兩兩卷積核加入待刪除隊(duì)列中 Qi.push((j,k)) end if end for while Qi≠ do //遍歷待刪除隊(duì)列 j,k←Qi.pop() calculate AICj and AICk if AICj delete j else delete k end if end while end for output {wm} //輸出壓縮后的網(wǎng)絡(luò)權(quán)值序列 2.2 模型并行訓(xùn)練 針對(duì)模型并行訓(xùn)練階段存在的收斂速度慢且容易陷入局部最優(yōu)的問(wèn)題,本文設(shè)計(jì)了一種基于自適應(yīng)變異粒子群優(yōu)化算法的參數(shù)并行訓(xùn)練策略MPT-AMPSO,該策略首先提出了AMPSO算法來(lái)初始化模型參數(shù),接著使用Adam算法更新模型參數(shù),提升了模型的收斂速率和跳出局部最優(yōu)位置的能力。其主要包括兩個(gè)步驟: a)參數(shù)初始化。提出了一種自適應(yīng)變異的粒子群優(yōu)化算法AMPSO,并使用該算法初始化模型參數(shù)。其中,AMPSO算法首先設(shè)計(jì)了一種慣性因子ω的自適應(yīng)計(jì)算公式(adaptive calculation formula of ω, ACF),使得ω能跟隨迭代周期自適應(yīng)地調(diào)整,增加了粒子跳出局部最優(yōu)的能力,其次又設(shè)計(jì)了一種粒子自適應(yīng)變異函數(shù)(adaptive mutation function,AMF),AMF結(jié)合了柯西變異和高斯變異的優(yōu)勢(shì),提升了PSO算法的收斂速率和跳出局部最優(yōu)的能力。 b)參數(shù)并行訓(xùn)練。在各節(jié)點(diǎn)上使用Adam算法進(jìn)行反向傳播,最終獲取模型并行訓(xùn)練結(jié)果。 2.2.1 參數(shù)初始化 為了解決梯度下降算法存在的收斂速度慢且容易陷入局部最優(yōu)的問(wèn)題,提出AMPSO算法,并在模型并行訓(xùn)練前,先使用該算法對(duì)模型參數(shù)進(jìn)行初始化。AMPSO算法的具體過(guò)程如下: 聯(lián)立式(21)~(25)可知f(x)在[0, 1]上具有關(guān)于點(diǎn)(1/2,1/2)對(duì)稱(chēng)、單調(diào)遞增且一階導(dǎo)在[0,1/2]單調(diào)遞增,在[1/2,1]單調(diào)遞減的性質(zhì)。 故f(x)在橫軸滿(mǎn)足關(guān)于迭代總次數(shù)T的對(duì)稱(chēng)性,在縱軸滿(mǎn)足關(guān)于rand取值的對(duì)稱(chēng)性,隨著迭代次數(shù)的增加,AMF能通過(guò)f(t/T)的取值自適應(yīng)地調(diào)整變異粒子的變異函數(shù)。即在迭代初期時(shí),在更多的周期內(nèi)有更多的粒子采用柯西變異以增強(qiáng)粒子在初期的全局搜索能力[21];相反在迭代末期,在更多的周期內(nèi)有更多的粒子會(huì)采用高斯變異以增強(qiáng)粒子在末期的局部收斂能力[22]。因此AMF可作為粒子變異的自適應(yīng)變異函數(shù),證畢。 d)更新粒子群參數(shù)。先根據(jù)式(18)更新慣性因子ω后,再根據(jù)式(6)(7)更新粒子速度和位置,最后對(duì)變異粒子的位置采用式(19)進(jìn)行擾動(dòng)。 e)粒子群迭代。重復(fù)步驟b)~d),直到達(dá)到設(shè)置的終止條件,最終輸出粒子的最優(yōu)位置。 2.2.2 參數(shù)并行更新 在使用AMPSO算法對(duì)模型參數(shù)進(jìn)行初始化之后,便開(kāi)始對(duì)模型參數(shù)進(jìn)行并行訓(xùn)練。參數(shù)并行訓(xùn)練時(shí)首先在各節(jié)點(diǎn)上對(duì)模型進(jìn)行前向傳播,并根據(jù)前向傳播的結(jié)果使用Adam算法對(duì)模型參數(shù)進(jìn)行反向傳播求得各參數(shù)的改變量,進(jìn)而獲得模型并行訓(xùn)練的結(jié)果。其具體過(guò)程如下: a) 參數(shù)并行訓(xùn)練。使用Adam算法對(duì)模型參數(shù)進(jìn)行反向傳播求得各參數(shù)的改變量。 b) 迭代訓(xùn)練。重復(fù)步驟a),直到達(dá)到設(shè)置的終止條件,最終輸出參數(shù)并行訓(xùn)練的結(jié)果,形如〈key=w,value=w〉。 算法2 模型并行訓(xùn)練 輸入:壓縮后的網(wǎng)絡(luò)權(quán)值序列{wm};迭代次數(shù)T;適應(yīng)度函數(shù)fitness(xi)。 輸出:參數(shù)并行更新結(jié)果〈key=w,value=w〉。 //參數(shù)初始化 initialize n particles based on {wm} while t for each particle pi do calculate fitness(xi)//計(jì)算各粒子的適應(yīng)度值 update pbesti and gbest //更新全局最優(yōu)值和局部最優(yōu) update ω=(ωmax-ωmin)·cos(tT·π2)+ωmin//更新慣性因子 update vt+1i=ωvti+c1r1×(pbesti-xti)+c2r2×(gbest-xti) //更新速度 update xt+1i=xti+vti//更新位置 if pi is mutation particle update xi=AMF(xi)//對(duì)粒子進(jìn)行變異操作 end if end for end while //參數(shù)并行更新 initialize the model parameters based on xi//初始化模型參數(shù) start forward propagation and back propagation //前向傳播和反向傳播 output 〈key=w,value=w〉//輸出參數(shù)并行更新結(jié)果 2.3 參數(shù)并行更新 針對(duì)參數(shù)并行更新階段存在的集群并行效率低的問(wèn)題,本文提出了基于節(jié)點(diǎn)性能的動(dòng)態(tài)負(fù)載均衡策略DLBNP,該策略主要包括以下兩個(gè)步驟:a)數(shù)據(jù)預(yù)劃分,在reduce任務(wù)開(kāi)始前,根據(jù)各節(jié)點(diǎn)的性能將中間數(shù)據(jù)初步劃分到不同的reduce節(jié)點(diǎn),充分利用各節(jié)點(diǎn)的性能,提高集群的資源利用率;b)數(shù)據(jù)遷移,在reduce任務(wù)實(shí)際運(yùn)行期間,通過(guò)監(jiān)測(cè)各節(jié)點(diǎn)的實(shí)際運(yùn)行情況,來(lái)動(dòng)態(tài)調(diào)整各節(jié)點(diǎn)的負(fù)載率,進(jìn)一步提高集群的并行效率。 2.3.1 數(shù)據(jù)預(yù)劃分 由于reduce階段每個(gè)reduce節(jié)點(diǎn)在拉取中間數(shù)據(jù)時(shí)是按照key的hash值進(jìn)行拉取的,所以無(wú)法保證中間數(shù)據(jù)劃分的均衡性,從而導(dǎo)致數(shù)據(jù)傾斜,進(jìn)而導(dǎo)致集群的并行效率過(guò)低。為了解決這一問(wèn)題,本文首先根據(jù)各節(jié)點(diǎn)性能對(duì)中間數(shù)據(jù)進(jìn)行預(yù)劃分,以保證中間數(shù)據(jù)劃分的均衡性,其具體步驟如下: a)設(shè)集群中有n個(gè)reduce節(jié)點(diǎn),其中節(jié)點(diǎn)Ni(i=1,2,…,n)的負(fù)載能力為L(zhǎng)i,當(dāng)前集群中reduce階段總?cè)蝿?wù)量為T(mén)total,則當(dāng)集群達(dá)到負(fù)載均衡時(shí),各節(jié)點(diǎn)應(yīng)分得的任務(wù)量Ti為 2.5 算法時(shí)間復(fù)雜度 相較于單機(jī)器的訓(xùn)練方式,Dis-CNN[14]算法采用并行計(jì)算的方式實(shí)現(xiàn)了模型的并行化訓(xùn)練過(guò)程,具有更高的訓(xùn)練效率;DS-DCNN[15]算法使用Alluxio來(lái)存儲(chǔ)中間數(shù)據(jù),提升了模型的并行訓(xùn)練效率;CLR-Distributed-CNN[16]算法使用周期學(xué)習(xí)率替代線性變化的學(xué)習(xí)率,提升了模型的并行訓(xùn)練效率;RS-DCNN[18]算法通過(guò)異步更新各節(jié)點(diǎn)計(jì)算的梯度解決了集群相互等待的問(wèn)題,提高了集群的并行效率。因此,本文選取Dis-CNN、DS-DCNN、CLR-Distributed-CNN以及RS-DCNN算法與PDCNN-SAMPSO算法進(jìn)行時(shí)間復(fù)雜度分析和實(shí)驗(yàn)對(duì)比。 PDCNN-SAMPSO算法的時(shí)間復(fù)雜度主要是由模型壓縮、模型并行訓(xùn)練和參數(shù)并行更新這三個(gè)部分構(gòu)成。這些部分的時(shí)間復(fù)雜度分別為: a)模型壓縮階段。該階段的時(shí)間復(fù)雜度主要取決于KP-IS策略的時(shí)間復(fù)雜度。設(shè)模型有c個(gè)卷積層,fi表示第i卷積層輸出的特征圖數(shù)量,ni表示第i卷積層輸出特征圖的邊長(zhǎng),n′i和Si分別表示第i卷積層在計(jì)算特征聚集系數(shù)時(shí)滑動(dòng)窗口的邊長(zhǎng)和滑動(dòng)步長(zhǎng),則使用KP-IS策略進(jìn)行剪枝的時(shí)間復(fù)雜度T1為 b)模型并行訓(xùn)練階段。該階段的時(shí)間復(fù)雜度主要取決于在各節(jié)點(diǎn)上執(zhí)行MPT-AMPSO策略的時(shí)間復(fù)雜度。設(shè)迭代次數(shù)為Iter,k表示AMPSO算法初始化的粒子數(shù),壓縮后的模型總參數(shù)量為w,則使用MPT-AMPSO策略進(jìn)行模型并行訓(xùn)練的時(shí)間復(fù)雜度T2為 c)參數(shù)并行更新階段。該階段的時(shí)間復(fù)雜度主要包括各reduce節(jié)點(diǎn)并行執(zhí)行參數(shù)的合并。設(shè)map節(jié)點(diǎn)個(gè)數(shù)為a,reduce節(jié)點(diǎn)個(gè)數(shù)為b,模型總參數(shù)量為w,則參數(shù)并行組合階段的時(shí)間復(fù)雜度T3為 由于PDCNN-SAMPSO算法在模型訓(xùn)練前對(duì)模型進(jìn)行了有效剪枝,使得模型中第i卷積層的卷積核數(shù)量Ci大幅減少,從而大大降低了卷積運(yùn)算的時(shí)間復(fù)雜度,即TConv-PDCNN-SAMPSO< 3 實(shí)驗(yàn)結(jié)果與分析 3.1 實(shí)驗(yàn)環(huán)境 為了驗(yàn)證PDCNN-SAMPSO算法的性能表現(xiàn),本文設(shè)計(jì)了相關(guān)實(shí)驗(yàn)。在硬件方面,本實(shí)驗(yàn)設(shè)置了8個(gè)計(jì)算節(jié)點(diǎn),其中包含1個(gè)master節(jié)點(diǎn)和7個(gè)slaver節(jié)點(diǎn)。各節(jié)點(diǎn)的配置均為AMD Ryzen 5 5600X CPU、16 GB DDR4 RAM、NVIDIA RTX2080Ti GPU,并通過(guò)1 000 Mbps的以太網(wǎng)相連。在軟件方面,各節(jié)點(diǎn)的配置均為Ubuntu 18.04.6、Python 3.7、TensorFlow 1.14、JDK 1.8.0、Apache Hadoop 2.7.2、Spark 2.1.1。各節(jié)點(diǎn)具體配置如表1所示。 3.2 實(shí)驗(yàn)數(shù)據(jù) 本文采用CIFAR-10、CIFAR-100、Emnist-Balanced和CompCars四個(gè)真實(shí)數(shù)據(jù)集。其中CIFAR-10和CIFAR-100都是由現(xiàn)實(shí)世界中真實(shí)物體的彩色圖像構(gòu)成的數(shù)據(jù)集;Emnist-Balanced是源自NIST Speical Database 19的一個(gè)手寫(xiě)字符數(shù)字?jǐn)?shù)據(jù)集;CompCars是一個(gè)車(chē)輛數(shù)據(jù)集。各數(shù)據(jù)集的詳細(xì)信息如表2所示。 3.3 評(píng)價(jià)指標(biāo) 3.3.1 加速比 加速比是指同一個(gè)任務(wù)在串行系統(tǒng)和并行系統(tǒng)中運(yùn)行消耗時(shí)間的比率,用來(lái)衡量并行系統(tǒng)的性能和效果。加速比越大,算法并行程度越高。加速比的定義如下: 其中:Ts表示算法在串行系統(tǒng)的運(yùn)行時(shí)間;Tm表示算法在并行系統(tǒng)的運(yùn)行時(shí)間。 3.3.2 top-1準(zhǔn)確率 top-1準(zhǔn)確率是指正確標(biāo)簽為模型輸出的最佳標(biāo)簽的樣本數(shù)與總樣本數(shù)的比率,用來(lái)衡量模型的分類(lèi)效果。top-1準(zhǔn)確率越高,模型分類(lèi)效果越好。top-1準(zhǔn)確率的定義為 其中:Tb是正確標(biāo)簽為模型輸出的最佳標(biāo)簽的樣本數(shù);N為總樣本數(shù)。 3.4 參數(shù)設(shè)置 在設(shè)置本文主要參數(shù)時(shí),首先,對(duì)于文中引入的PSO算法[19]和Adam算法[20]中的參數(shù)均取算法一般值,即PSO算法中學(xué)習(xí)因子c1=c2=2,Adam算法中一階矩估計(jì)指數(shù)衰減率β1=0.9、二階矩估計(jì)指數(shù)衰減率β2=0.999。其次,對(duì)于本文所提主要參數(shù)的取值,通過(guò)參數(shù)對(duì)比實(shí)驗(yàn)最終確定取值,參數(shù)對(duì)比實(shí)驗(yàn)中使用CompCars數(shù)據(jù)集,集群節(jié)點(diǎn)數(shù)目為8。其中,本文主要參數(shù)為:a)模型壓縮階段中KP-IS策略滑動(dòng)窗口的選取比例n′/n;b) 模型并行訓(xùn)練階段MPT-AMPSO策略中慣性因子ω的最大最小值ωmax、ωmin。根據(jù)表3參數(shù)對(duì)比實(shí)驗(yàn)結(jié)果,本文設(shè)置n′/n=15%,ωmax=1.3,ωmin=0.7。 3.5 算法可行性分析 3.5.1 消融實(shí)驗(yàn) 為驗(yàn)證PDCNN-SAMPSO算法中各策略的有效性,本文以算法的加速比作為評(píng)價(jià)指標(biāo),使用VGG-16作為訓(xùn)練模型在CIFAR-10、CIFAR-100、Emnist-Balanced和CompCars數(shù)據(jù)集上進(jìn)行了各策略的消融實(shí)驗(yàn)。同時(shí),為確保實(shí)驗(yàn)結(jié)果的可靠性,將算法在每個(gè)數(shù)據(jù)集上獨(dú)立運(yùn)行五次,并取其平均值作為最終的實(shí)驗(yàn)結(jié)果,其中加速比為集群節(jié)點(diǎn)數(shù)目為8時(shí)的數(shù)據(jù)。實(shí)驗(yàn)結(jié)果如表4所示。 從表4可以看出,PDCNN-SAMPSO算法中各策略均可顯著提升算法的加速比,其中KP-IS策略對(duì)算法加速比的提升效果最為明顯,且隨著數(shù)據(jù)集規(guī)模的增大,三個(gè)策略對(duì)算法加速比的提升效果更為明顯。其中,當(dāng)處理小規(guī)模數(shù)據(jù)集CIFAR-10時(shí),使用KP-IS、MPT-AMPSO和DLBNP策略分別比不使用這些策略時(shí)算法加速比提升了12.21%、7.01%、4.93%,且同時(shí)使用三個(gè)策略時(shí)算法加速比提升了18.56%。當(dāng)處理大規(guī)模數(shù)據(jù)集CompCars時(shí),使用KP-IS、MPT-AMPSO和DLBNP策略分別比不使用這些策略時(shí)算法加速比提升了17.01%、9.43%、9.27%,且同時(shí)使用三個(gè)策略時(shí)算法加速比提升了22.94%。產(chǎn)生這些結(jié)果的原因是:PDCNN-SAMPSO算法設(shè)計(jì)的KP-IS策略,通過(guò)剪枝冗余卷積核消除網(wǎng)絡(luò)中大量的冗余參數(shù),極大地減少了冗余計(jì)算,同時(shí)MPT-AMPSO策略通過(guò)使用AMPSO算法初始化模型參數(shù)提升了模型的收斂速率,此外DLBNP策略通過(guò)均衡節(jié)點(diǎn)間負(fù)載,進(jìn)一步提升了集群的并行效率,且這些提升在數(shù)據(jù)規(guī)模較大的情況下更為顯著。由此表明,KP-IS、MPT-AMPSO和DLBNP策略在大數(shù)據(jù)環(huán)境下具有良好的可行性與有效性。 3.5.2 PDCNN-SAMPSO算法可行性分析 為驗(yàn)證PDCNN-SAMPSO算法在大數(shù)據(jù)環(huán)境下的可行性,本文以算法的加速比作為評(píng)價(jià)指標(biāo),對(duì)PDCNN-SAMPSO算法在CIFAR-10、CIFAR-100、Emnist-Balanced和CompCars數(shù)據(jù)集上進(jìn)行了測(cè)試。同時(shí),為確保實(shí)驗(yàn)結(jié)果的可靠性,將算法在每個(gè)數(shù)據(jù)集上獨(dú)立運(yùn)行五次,并取其平均值作為最終的實(shí)驗(yàn)結(jié)果。實(shí)驗(yàn)結(jié)果如圖4所示。 從圖4可以看出,PDCNN-SAMPSO算法隨著節(jié)點(diǎn)數(shù)的增加,其加速比總體呈現(xiàn)上升趨勢(shì),且隨著四個(gè)數(shù)據(jù)集規(guī)模的增加逐步增長(zhǎng)。其中當(dāng)節(jié)點(diǎn)數(shù)為2時(shí),PDCNN-SAMPSO算法在四個(gè)數(shù)據(jù)集上的加速比差異較小算法相比于單節(jié)點(diǎn)的加速比分別增加了0.721、0.636、0.885和0.922;當(dāng)節(jié)點(diǎn)數(shù)為4時(shí),算法相比于單節(jié)點(diǎn)的加速比分別增加了2.151、2.362、2.794和2.662;當(dāng)節(jié)點(diǎn)數(shù)為8時(shí),PDCNN-SAMPSO算法在各數(shù)據(jù)集上有了顯著提升,分別達(dá)到了3.758、4.012、4.359和4.836??梢钥闯鲈诖笠?guī)模數(shù)據(jù)集下,隨著節(jié)點(diǎn)數(shù)量的增加,PDCNN-SAMPSO算法的并行訓(xùn)練效率也隨之逐漸提升。產(chǎn)生這些結(jié)果的原因是:a)PDCNN-SAMPSO算法設(shè)計(jì)了KP-IS策略,通過(guò)剪枝冗余卷積核消除網(wǎng)絡(luò)中大量的冗余參數(shù),極大地提升了PDCNN-SAMPSO算法的并行訓(xùn)練效率;b)PDCNN-SAMPSO算法設(shè)計(jì)了MPT-AMPSO策略,通過(guò)使用AMPSO算法初始化模型參數(shù)并使用Adam算法更新模型參數(shù),進(jìn)一步提升了模型的并行訓(xùn)練效率。由此表明,PDCNN-SAMPSO算法在大數(shù)據(jù)環(huán)境下具有良好的可行性與有效性。 3.6 算法性能分析比較 3.6.1 算法運(yùn)行時(shí)間分析 為驗(yàn)證PDCNN-SAMPSO算法的時(shí)間復(fù)雜度,本文在上述四個(gè)數(shù)據(jù)集上對(duì)Dis-CNN[14]、DS-DCNN[15]、CLR-Distributed-CNN[16]和RS-DCNN[18]算法分別進(jìn)行了五次測(cè)試,并取五次運(yùn)行時(shí)間的均值作為最終的實(shí)驗(yàn)結(jié)果。實(shí)驗(yàn)結(jié)果如圖5所示。 從圖5可以看出,在對(duì)各數(shù)據(jù)集進(jìn)行處理時(shí),PDCNN-SAMPSO算法的運(yùn)行時(shí)間始終保持最低,并且隨著數(shù)據(jù)規(guī)模的不斷上升,PDCNN-SAMPSO算法的運(yùn)行時(shí)間相較于其他四種算法運(yùn)行時(shí)間的差異比例也逐漸擴(kuò)大。其中,當(dāng)處理數(shù)據(jù)量較小的數(shù)據(jù)集CIFAR-10時(shí),PDCNN-SAMPSO算法運(yùn)行時(shí)間分別比Dis-CNN、DS-DCNN、CLR-Distributed-CNN和RS-DCNN算法減少了13%、21%、33%和22%;當(dāng)處理數(shù)據(jù)量較大的數(shù)據(jù)集CompCars時(shí),PDCNN-SAMPSO算法運(yùn)行時(shí)間分別比Dis-CNN、DS-DCNN、CLR-Distributed-CNN和RS-DCNN算法減少了22%、30%、37%和27%。可以看出PDCNN-SAMPSO算法相較于Dis-CNN、DS-DCNN、CLR-Distributed-CNN和RS-DCNN算法,運(yùn)行時(shí)間更少,且隨著數(shù)據(jù)規(guī)模的增長(zhǎng),其他四種算法運(yùn)行時(shí)間與它的差距也在逐步加大。產(chǎn)生這種結(jié)果的主要原因是:a)PDCNN-SAMPSO算法設(shè)計(jì)了KP-IS策略,通過(guò)剪枝冗余卷積核消除網(wǎng)絡(luò)中大量的冗余參數(shù),從而降低了模型并行訓(xùn)練的時(shí)間開(kāi)銷(xiāo),加快了算法的運(yùn)行速度;b)PDCNN-SAMPSO算法設(shè)計(jì)了MPT-AMPSO策略,通過(guò)使用AMPSO算法初始化模型參數(shù)并使用Adam算法更新模型參數(shù),進(jìn)一步加快了算法的運(yùn)行速度。由此表明,PDCNN-SAMPSO算法在大數(shù)據(jù)環(huán)境下?lián)碛懈鼉?yōu)良的性能。 3.6.2 算法加速比實(shí)驗(yàn)分析 為驗(yàn)證PDCNN-SAMPSO算法在大數(shù)據(jù)環(huán)境下的并行性能,本文在上述四個(gè)數(shù)據(jù)集上對(duì)Dis-CNN、DS-DCNN、CLR-Distributed-CNN和RS-DCNN算法在不同數(shù)目計(jì)算節(jié)點(diǎn)下分別進(jìn)行了五次測(cè)試,并用五次運(yùn)行時(shí)間的均值來(lái)計(jì)算各算法在不同數(shù)目計(jì)算節(jié)點(diǎn)下的加速比。實(shí)驗(yàn)結(jié)果如圖6所示。 從圖6可以看出,在處理CIFAR-10、CIFAR-100、Emnist-Balanced和CompCars數(shù)據(jù)集時(shí),各算法在四個(gè)數(shù)據(jù)集上的加速比隨著節(jié)點(diǎn)數(shù)量的增加都呈逐漸上升的趨勢(shì),并且隨著數(shù)據(jù)規(guī)模的增大,PDCNN-SAMPSO算法在各數(shù)據(jù)集上的加速比與其他四種算法的差距也逐步增大。其中,在處理規(guī)模較小的數(shù)據(jù)集CIFAR-10時(shí),如圖6(a)所示,各算法之間的加速比相差不大,且隨著計(jì)算節(jié)點(diǎn)數(shù)目從2個(gè)增加到8個(gè),PDCNN-SAMPSO算法的加速比逐步超過(guò)了其他四種算法,當(dāng)計(jì)算節(jié)點(diǎn)為8個(gè)時(shí),分別比Dis-CNN、DS-DCNN、CLR-Distributed-CNN和RS-DCNN算法的加速比高出了0.482、0.341、0.577和0.134。在處理數(shù)據(jù)規(guī)模較大的數(shù)據(jù)集CompCars時(shí),如圖6(d)所示,隨著節(jié)點(diǎn)數(shù)量的不斷增加,PDCNN-SAMPSO算法的優(yōu)勢(shì)逐漸凸顯,當(dāng)計(jì)算節(jié)點(diǎn)為8個(gè)時(shí),分別比Dis-CNN、DS-DCNN、CLR-Distributed-CNN和RS-DCNN算法的加速比高出了1.707、1.424、1.859、0.922。產(chǎn)生這種結(jié)果的原因是:a)當(dāng)處理規(guī)模較小的數(shù)據(jù)集時(shí),模型并行訓(xùn)練計(jì)算量較小,從而各節(jié)點(diǎn)間的通信時(shí)間開(kāi)銷(xiāo)相對(duì)來(lái)說(shuō)就變得很大,且當(dāng)數(shù)據(jù)規(guī)模較小時(shí),并行訓(xùn)練對(duì)訓(xùn)練效率的提升能力有限,從而導(dǎo)致PDCNN-SAMPSO算法的加速比提升不大;b)當(dāng)處理規(guī)模較大的數(shù)據(jù)集時(shí),PDCNN-SAMPSO算法設(shè)計(jì)了DLBNP策略,該策略均衡了各節(jié)點(diǎn)間的負(fù)載,提升了PDCNN-SAMPSO算法的并行效率,隨著計(jì)算節(jié)點(diǎn)的增加,相較于單機(jī)的并行效率逐步提升,從而提升了算法的加速比。由此表明,PDCNN-SAMPSO算法在大數(shù)據(jù)環(huán)境下相較于其他算法具有更好的并行性能。 3.6.3 算法top-1準(zhǔn)確率實(shí)驗(yàn)分析 為驗(yàn)證PDCNN-SAMPSO算法的分類(lèi)效果,本文以top-1準(zhǔn)確率作為評(píng)價(jià)指標(biāo),將PDCNN-SAMPSO算法分別與Dis-CNN、DS-DCNN、CLR-Distributed-CNN和RS-DCNN算法在CIFAR-10、CIFAR-100、Emnist-Balanced和CompCars四個(gè)數(shù)據(jù)集上進(jìn)行了對(duì)比實(shí)驗(yàn)。實(shí)驗(yàn)結(jié)果如圖7所示。 從圖7可以看出,雖然在訓(xùn)練初期PDCNN-SAMPSO算法相比其他四種算法的top-1準(zhǔn)確率略低,但是隨著訓(xùn)練輪次的不斷增加,PDCNN-SAMPSO算法比其他四種算法收斂速度更快且準(zhǔn)確率更高。其中,在處理較小規(guī)模的數(shù)據(jù)集CIFAR-10上,如圖7(a)所示,PDCNN-SAMPSO算法在訓(xùn)練輪次為50輪時(shí)便已經(jīng)開(kāi)始收斂,比Dis-CNN和RS-DCNN算法的收斂輪次快了10輪,比DS-DCNN和CLR-Distributed-CNN算法的收斂輪次快了20輪,且最終的top-1準(zhǔn)確率分別比Dis-CNN、DS-DCNN、CLR-Distributed-CNN和RS-DCNN算法高了3.42%、1.59%、2.38%、4.97%。在處理較大規(guī)模的數(shù)據(jù)集Emnist-Balanced和CompCars上,如圖7(c)(d)所示,PDCNN-SAMPSO算法對(duì)比其他四種算法,在收斂速度和最終top-1準(zhǔn)確率上提升更為明顯。產(chǎn)生這種結(jié)果的原因是:a)PDCNN-SAMPSO算法設(shè)計(jì)了KP-IS策略,通過(guò)剪枝冗余卷積核消除網(wǎng)絡(luò)中大量的冗余參數(shù),由于剪枝完成后,模型需要一定的訓(xùn)練輪次來(lái)恢復(fù)精度,所以在訓(xùn)練初期模型精度會(huì)有所降低,但是隨著訓(xùn)練輪次的增加,消除冗余參數(shù)所帶來(lái)的訓(xùn)練速度和準(zhǔn)確率的提升效果就會(huì)愈發(fā)顯著;b)PDCNN-SAMPSO算法設(shè)計(jì)了MPT-AMPSO策略,通過(guò)使用AMPSO算法初始化模型參數(shù)并使用Adam算法更新模型參數(shù),進(jìn)一步加快了算法的收斂速度和分類(lèi)精度,且這種提升在數(shù)據(jù)規(guī)模更大的數(shù)據(jù)集上效果更為明顯。由此表明,PDCNN-SAMPSO算法在大數(shù)據(jù)環(huán)境下有著更為優(yōu)良的分類(lèi)性能。 4 應(yīng)用場(chǎng)景 近年來(lái),隨著遙感設(shè)備的不斷發(fā)展以及無(wú)人機(jī)的快速普及,遙感技術(shù)已經(jīng)被廣泛應(yīng)用于災(zāi)害預(yù)測(cè)、環(huán)境監(jiān)測(cè)、數(shù)字城市等各領(lǐng)域。與此同時(shí),這也使得遙感數(shù)據(jù)規(guī)模呈爆炸式的增長(zhǎng),海量的遙感數(shù)據(jù)也意味著遙感大數(shù)據(jù)時(shí)代的到來(lái)[23],進(jìn)而給遙感數(shù)據(jù)的有效信息提取帶來(lái)了巨大的挑戰(zhàn)[24]。PDCNN-SAMPSO針對(duì)DCNN算法在大數(shù)據(jù)環(huán)境的改進(jìn),給上述問(wèn)題的解決提供了新的方向。圖8展示了將PDCNN-SAMPSO應(yīng)用于遙感圖像分類(lèi)的具體模型結(jié)構(gòu)。 在該模型結(jié)構(gòu)中, PDCNN-SAMPSO首先調(diào)用KP-IS策略剪枝預(yù)訓(xùn)練的網(wǎng)絡(luò)模型,消除了過(guò)多的冗余參數(shù),避免了后續(xù)信息提取過(guò)程中不必要的資源消耗;其次通過(guò)調(diào)用MPT-AMPSO策略加速了算法從遙感圖像中提取信息的速率;最后在Spark框架的并行期間調(diào)用DLBNP策略,進(jìn)一步提升了信息提取效率,從而解決了在遙感大數(shù)據(jù)時(shí)代,傳統(tǒng)算法對(duì)遙感圖像中有效信息提取能力不足的問(wèn)題。 5 結(jié)束語(yǔ) 針對(duì)傳統(tǒng)深度卷積神經(jīng)網(wǎng)絡(luò)算法在大數(shù)據(jù)環(huán)境下的不足,本文提出了一種基于Spark和AMPSO的并行深度卷積神經(jīng)網(wǎng)絡(luò)優(yōu)化算法——PDCNN-SAMPSO。首先,設(shè)計(jì)了基于卷積核重要性和相似度的卷積核剪枝策略KP-IS,通過(guò)從卷積核重要性和相似度兩個(gè)維度對(duì)模型進(jìn)行剪枝,解決了冗余參數(shù)過(guò)多的問(wèn)題;其次,設(shè)計(jì)了基于自適應(yīng)變異粒子群優(yōu)化算法的模型并行訓(xùn)練策略MPT-AMPSO,在該策略中先提出了一種自適應(yīng)變異的粒子群優(yōu)化算法AMPSO,通過(guò)使用AMPSO算法來(lái)初始化模型參數(shù),接著再使用Adam算法對(duì)模型參數(shù)進(jìn)行更新,解決了并行DCNN算法收斂速度慢和容易陷入局部最優(yōu)的問(wèn)題;最后,提出了基于節(jié)點(diǎn)性能的動(dòng)態(tài)負(fù)載均衡策略DLBNP,通過(guò)評(píng)估各節(jié)點(diǎn)性能對(duì)中間數(shù)據(jù)進(jìn)行預(yù)劃分,并在集群實(shí)際運(yùn)行期間對(duì)各節(jié)點(diǎn)負(fù)載進(jìn)行遷移調(diào)整,解決了集群并行效率低的問(wèn)題。實(shí)驗(yàn)表明,PDCNN-SAMPSO算法相較于其他算法,在處理大數(shù)據(jù)時(shí)具有更優(yōu)的性能表現(xiàn)。雖然PDCNN-SAMPSO算法在大數(shù)據(jù)環(huán)境下的深度卷積神經(jīng)網(wǎng)絡(luò)模型的并行訓(xùn)練方面取得了不小的進(jìn)步,但該算法在分類(lèi)精度上仍存在一定的提升空間,未來(lái)的工作重點(diǎn)也將集中在卷積核剪枝標(biāo)準(zhǔn)的選擇方面,使其對(duì)模型的壓縮更為精準(zhǔn),從而進(jìn)一步提升算法的分類(lèi)精度。 參考文獻(xiàn): [1]Gu Jiuxiang, Wang Zhenhua, Kuen J, et al. Recent advances in convolutional neural networks[J].Pattern Recognition,2018,77:354-377. [2]Russakovsky O, Deng Jia, Su Hao, et al. ImageNet large scale visual recognition challenge[J].International Journal of Computer Vision,2015,115(3):211-252. [3]Sarma B D, Prasanna S R M. Acoustic-phonetic analysis for speech recognition: a review[J].IETE Technical Review,2018,35(3):305-327. [4]Deng Jun, Xuan Xiaojing, Wang Weifeng, et al. A review of research on object detection based on deep learning[J].Journal of Physics:Conference Series,2020,1684(1):012028. [5]Mo Yujian, Wu Yan, Yang Xinneng, et al. Review the state-of-the-art technologies of semantic segmentation based on deep learning[J].Neurocomputing,2022,493:626-646. [6]Li Lixiang, Mu Xiaohui, Li Siying, et al. A review of face recognition technology[J].IEEE Access,2020,8:139110-139120. [7]Mozaffari S, Al-Jarrah O Y, Dianati M, et al. Deep learning-based vehicle behavior prediction for autonomous driving applications:a review[J].IEEE Trans on Intelligent Transportation Systems,2020,23(1):33-47. [8]Kaisler S, Armour F, Espinosa J A, et al. Big data: issues and challenges moving forward[C]//Proc of the 46th Hawaii International Conference on System Sciences.Piscataway,NJ:IEEE Press,2013:995-1004. [9]Leung J, Chen Min. Image recognition with MapReduce based convolutional neural networks[C]//Proc of the 10th Annual Ubiquitous Computing,Electronics & Mobile Communication Conference.Pisca-taway,NJ:IEEE Press,2019:119-125. [10]Wang Qicong, Zhao Jinhao, Gong Dingxi, et al. Parallelizing convolutional neural networks for action event recognition in surveillance videos[J].International Journal of Parallel Programming,2017,45(4):734-759. [11]Li Binquan, Hu Xiaohui. Effective vehicle logo recognition in real-world application using MapReduce based convolutional neural networks with a pre-training strategy[J].Journal of Intelligent & Fuzzy Systems,2018,34(3):1985-1994. [12]毛伊敏,張瑞朋,高波.大數(shù)據(jù)下基于特征圖的深度卷積神經(jīng)網(wǎng)絡(luò)[J].計(jì)算機(jī)工程與應(yīng)用,2022,58(15):110-116.(Mao Yiming, Zhang Ruipeng, Gao Bo. Deep convolutional neural network algorithm based on feature map in big data environment[J].Computer Engineering and Applications,2022,58(15):110-116.) [13]Zaharia M, Xin R S, Wendell P, et al. Apache Spark: a unified engine for big data processing[J].Communications of the ACM,2016,59(11):56-65. [14]Xu Jiangfeng, Ma Shenyue. Image classification model based on spark and CNN[C]//Proc of the 2nd International Conference on Material Engineering and Advanced Manufacturing Technology.2018. [15]Li Chen, Jiang Linhua, Chen Xiaodong. A distributed CBIR system based on DCNN on Apache Spark and Alluxio[C]//Proc of International Conference on Image and Video Processing, and Artificial Intelligence.[S.l.]:SPIE,2018. [16]Sun Yulu, Yun Bensheng, Qian Yaguan, et al. A Spark-based method for identifying large-scale network burst traffic[J].Journal of Computers,2021,32(4):123-136. [17]Smith L N. Cyclical learning rates for training neural networks[C]//Proc of IEEE Winter Conference on Applications of Computer Vision.Piscataway,NJ:IEEE Press,2017:464-472. [18]Boulila W, Sellami M, Driss M, et al. RS-DCNN: a novel distributed convolutional-neural-networks based-approach for big remote-sen-sing image classification[J].Computers and Electronics in Agriculture,2021,182:106014. [19]Shi Yuhui, Eberhart R. A modified particle swarm optimizer[C]//Proc of IEEE International Conference on Evolutionary Computation and IEEE World Congress on Computational Intelligence.Piscataway,NJ:IEEE Press,1998:69-73. [20]Kingma D P, Ba J. Adam: a method for stochastic optimization[EB/OL].(2017-01-30).https://arxiv.org/abs/1412.6980. [21]杜曉昕,張劍飛,郭媛,等.基于柯西—高斯動(dòng)態(tài)消減變異的果蠅優(yōu)化算法研究[J].計(jì)算機(jī)工程與科學(xué),2016,38(6):1171-1176.(Du Xiaoxin, Zhang Jianfei, Guo Yuan, et al. A fruit fly optimization algorithm with Cauchy-Gaussian dynamic reduction mutation[J].Computer Engineering and Science,2016,38(6):1171-1176.) [22]Song Xiaoxin, Jian Ling, Song Yunquan. A chunk updating LS-SVMs based on block Gaussian elimination method[J].Applied Soft Computing,2017,51:96-104. [23]劉偉權(quán),王程,臧彧,等.基于遙感大數(shù)據(jù)的信息提取技術(shù)綜述[J].大數(shù)據(jù),2022,8(2):28-57.(Liu Weiquan, Wang Cheng, Zang Yu, et al. A survey on information extraction technology based on remote sensing big data[J].Big Data Research,2022,8(2):28-57.) [24]張兵.遙感大數(shù)據(jù)時(shí)代與智能信息提?。跩].武漢大學(xué)學(xué)報(bào):信息科學(xué)版,2018,43(12):1861-1871.(Zhang Bing. Remote sensing big data era and intelligent information extraction[J].Geomatics and Information Science of Wuhan University,2018,43(12):1861-1871.) 收稿日期:2023-03-31;修回日期:2023-04-25 基金項(xiàng)目:科技創(chuàng)新2030-“新一代人工智能”重大項(xiàng)目(2020AAA0109605);廣東省重點(diǎn)提升項(xiàng)目(2022ZDJS048);韶關(guān)市科技計(jì)劃資助項(xiàng)目(220607154531533) 作者簡(jiǎn)介:劉衛(wèi)明(1964-),男,江西新余人,教授,碩導(dǎo),碩士,主要研究方向?yàn)榇髷?shù)據(jù)和數(shù)據(jù)挖掘;羅全成(1997-),男,河南信陽(yáng)人,碩士研究生,主要研究方向?yàn)榇髷?shù)據(jù)和數(shù)據(jù)挖掘;毛伊敏(1970-),女(通信作者),新疆伊犁人,教授,碩導(dǎo),博士,主要研究方向?yàn)榇髷?shù)據(jù)和數(shù)據(jù)挖掘(mymlyc@163.com);彭喆(1990-),男,湖南邵陽(yáng)人,碩士研究生,主要研究方向?yàn)榇髷?shù)據(jù)和數(shù)據(jù)挖掘.