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

?

基于多通道注意力圖卷積網(wǎng)絡(luò)的微服務(wù)分解

2023-08-15 07:55:54來(lái)風(fēng)剛羊麟威錢(qián)李烽
關(guān)鍵詞:集上注意力卷積

張 攀,來(lái)風(fēng)剛,周 逸,羊麟威,錢(qián)李烽,劉 昕,李 靜

(1.國(guó)家電網(wǎng)有限公司信息通信分公司,北京 100053;2.南京航空航天大學(xué) 計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院/人工智能學(xué)院,江蘇 南京 211106)

0 引 言

伴隨云計(jì)算技術(shù)的快速發(fā)展,為了充分利用云基礎(chǔ)設(shè)施,靈活進(jìn)行業(yè)務(wù)擴(kuò)張和性能伸縮,降低維護(hù)成本,Amazon、IBM、Google等大型公司研究將單體應(yīng)用軟件系統(tǒng)遷移為基于微服務(wù)的架構(gòu)[1-3]。與單體架構(gòu)將系統(tǒng)各個(gè)模塊緊耦合不同,微服務(wù)架構(gòu)由許多獨(dú)立的服務(wù)組成,每個(gè)服務(wù)可獨(dú)立修改、開(kāi)發(fā)、部署和維護(hù)。微服務(wù)分解是將現(xiàn)有代碼重構(gòu)為一組較小的獨(dú)立代碼組的過(guò)程。目前大多數(shù)微服務(wù)分解過(guò)程是手工完成的,代價(jià)昂貴、耗時(shí)且易于出錯(cuò),其質(zhì)量通常與專(zhuān)家經(jīng)驗(yàn)和知識(shí)密切相關(guān),因此,迫切需要自動(dòng)化的過(guò)程來(lái)將單體應(yīng)用轉(zhuǎn)換成微服務(wù)系統(tǒng),微服務(wù)分解已成為軟件工程和云計(jì)算領(lǐng)域研究的重要問(wèn)題之一。

近些年,已有許多工作研究單體應(yīng)用系統(tǒng)的微服務(wù)分解方法。Levcovitz等人[4]于2016年提出一種基于人工經(jīng)驗(yàn)功能分解的微服務(wù)分解方法。Chen等人[5]于2017年使用基于數(shù)據(jù)流進(jìn)行候選服務(wù)分解。Baresi等人[6]于2017年提出了一種基于OpenApi規(guī)范規(guī)定的功能語(yǔ)義相似性的方法。Tyszberowicz等人[7]于2018年提出了一種基于軟件需求功能分解微服務(wù)的方法。Munezero等人[8]于2018年提出一種使用領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)(DDD)模式分解微服務(wù)的方法。Ding等人[9]于2020年提出了一種場(chǎng)景驅(qū)動(dòng)、自底向上的融合用戶(hù)反饋的半自動(dòng)化拆分方法。Zhang等人[10]于2020年提出一種圍繞負(fù)載均衡作為優(yōu)化目標(biāo)的基于運(yùn)行軌跡的多目標(biāo)優(yōu)化的微服務(wù)分解方法。Brito等人[11]于2021年提出一種基于主題建模的微服務(wù)分解方法。上述的大多數(shù)方法需要耗費(fèi)大量的人力,并且依賴(lài)專(zhuān)家知識(shí),微服務(wù)分解的效率與質(zhì)量難以保證。另外,大多數(shù)方法存在只適用于一個(gè)數(shù)據(jù)集的情況,在多個(gè)數(shù)據(jù)集上缺乏可擴(kuò)展性,或者缺少自動(dòng)化實(shí)現(xiàn)的方法。

針對(duì)上述問(wèn)題,受到多通道信息融合模型的啟發(fā),該文使用多通道注意力圖卷積網(wǎng)絡(luò)對(duì)軟件實(shí)體進(jìn)行建模和嵌入特征表示學(xué)習(xí),提出基于多通道注意力圖卷積網(wǎng)絡(luò)和Java單體程序微服務(wù)分解聯(lián)合學(xué)習(xí)框架MAGEMP。

主要貢獻(xiàn)表現(xiàn)在:(1)提出一種多通道注意力圖卷積網(wǎng)絡(luò)微服務(wù)分解框架,用于建模Java源代碼中提取的實(shí)體類(lèi)信息的嵌入特征學(xué)習(xí)任務(wù);(2)構(gòu)建了基于注意力的多通道圖卷積網(wǎng)絡(luò)特征嵌入融合機(jī)制,可以實(shí)現(xiàn)多通道信息的有效融合,提升多通道特征表示能力;(3)在M2M[12]提供的公開(kāi)通用數(shù)據(jù)集上進(jìn)行了廣泛的實(shí)驗(yàn),表明多通道深度注意力圖神經(jīng)網(wǎng)絡(luò)模型在微服務(wù)分解方面較同類(lèi)算法COGCN[13]有了顯著的提升。

1 相關(guān)工作

微服務(wù)分解的主要標(biāo)準(zhǔn)是每個(gè)微服務(wù)盡最大可能滿(mǎn)足低耦合和高內(nèi)聚標(biāo)準(zhǔn)[14]。采用聚類(lèi)的方法進(jìn)行微服務(wù)分解是目前的一個(gè)主流趨勢(shì),因此,本部分將主要介紹利用聚類(lèi)算法進(jìn)行微服務(wù)分解的相關(guān)工作。

Mitchell等人于2006年提出的Bunch[15],使用源代碼分析工具將源代碼轉(zhuǎn)化為一個(gè)有向的模塊依賴(lài)圖(MDG),然后將微服務(wù)分解建模為MDG劃分空間的聚類(lèi)搜索問(wèn)題。Gysel等人[16]于2016年引入了一個(gè)基于16個(gè)耦合標(biāo)準(zhǔn)的服務(wù)分解工具,這些標(biāo)準(zhǔn)來(lái)源于行業(yè)和文獻(xiàn),通過(guò)創(chuàng)建加權(quán)圖,利用聚類(lèi)算法分解潛在的微服務(wù)。Mazlami等人于2017年提出的MEM[17]模型使用邏輯耦合、語(yǔ)義耦合及貢獻(xiàn)者耦合三種不同的耦合策略,將單體應(yīng)用程序轉(zhuǎn)換為一個(gè)無(wú)向加權(quán)圖并使用基于KRUSKAL的最小生成樹(shù)聚類(lèi)算法確定可能的微服務(wù)。Amiri等人[18]于2018年提出一種使用業(yè)務(wù)流程模型和符號(hào)從業(yè)務(wù)流程中表示微服務(wù)的方法,實(shí)現(xiàn)過(guò)程中對(duì)結(jié)構(gòu)依賴(lài)和數(shù)據(jù)對(duì)象依賴(lài)信息使用簡(jiǎn)單的矩陣加法進(jìn)行了聚合。Jin等人于2019年提出的FoSCI[19]模型,采用非支配排序遺傳算法-II進(jìn)行多目標(biāo)優(yōu)化,將“功能原子”分組為每個(gè)候選服務(wù)的類(lèi)實(shí)體,對(duì)每個(gè)候選服務(wù)識(shí)別帶有操作的接口類(lèi),將它們與類(lèi)實(shí)體結(jié)合生成一個(gè)候選服務(wù)。Desai等人于2021年提出的COGCN[13]方法使用Soot工具獲得Java程序中類(lèi)和類(lèi)之間的調(diào)用關(guān)系圖,利用深度圖神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)該圖的嵌入表示,結(jié)合K-Means聚類(lèi)算法實(shí)現(xiàn)微服務(wù)分解。Kalia等人于2021年提出了M2M[12]方法。通過(guò)運(yùn)行時(shí)追蹤數(shù)據(jù),構(gòu)建以類(lèi)為節(jié)點(diǎn)的調(diào)用追蹤關(guān)系。然后通過(guò)定義的直接調(diào)用關(guān)系、間接調(diào)用關(guān)系、直接調(diào)用模式和間接調(diào)用模式四種時(shí)空特征計(jì)算類(lèi)和類(lèi)之間的相似性矩陣,最后使用層次聚類(lèi)方法將應(yīng)用程序類(lèi)劃分成不相交的微服務(wù)。

2 問(wèn)題描述

MAGEMP的目的是將Java單體應(yīng)用程序根據(jù)代碼中類(lèi)之間的相似性進(jìn)行劃分。在Java應(yīng)用程序中,程序都是由類(lèi)組成的,類(lèi)和類(lèi)之間的調(diào)用關(guān)系可以表示為類(lèi)之間的調(diào)用圖形式,以圖的結(jié)構(gòu)來(lái)表示。為了充分利用多屬性特征以構(gòu)建更加高效的微服務(wù)分解方法,MAGEMP將該問(wèn)題建模為一個(gè)多通道圖神經(jīng)網(wǎng)絡(luò)知識(shí)表示學(xué)習(xí)和聚類(lèi)過(guò)程。

2.1 基于多通道圖的特征嵌入

2.2 多通道圖聚類(lèi)

給定屬性圖G',多通道圖聚類(lèi)的目的是在沒(méi)有標(biāo)簽數(shù)據(jù)的前提下,使用非監(jiān)督學(xué)習(xí)將圖中節(jié)點(diǎn)分割為K個(gè)不相交的簇ζ={ζ1,ζ2,…,ζk},分解出K個(gè)簇,以滿(mǎn)足:在同一簇內(nèi)的節(jié)點(diǎn)之間在結(jié)構(gòu)上距離更小且在同一個(gè)簇內(nèi)的節(jié)點(diǎn)屬性更具相似性。

3 MAGEMP

針對(duì)COGCN方法沒(méi)有充分利用多通道信息建模的問(wèn)題,對(duì)Java單體程序中獲取的類(lèi)和類(lèi)之間的多屬性關(guān)系建模,提出一個(gè)集成多通道信息的統(tǒng)一框架MAGEMP。如圖1所示,模型框架的主要流程包括:

圖1 MAGEMP框架

(1)多通道圖構(gòu)建。將Java單體應(yīng)用中獲取的類(lèi)和類(lèi)之間的多屬性特征矩陣構(gòu)建成多通道圖;

(2)構(gòu)建基于多通道圖卷積神經(jīng)網(wǎng)絡(luò)的特征嵌入學(xué)習(xí)模型,每個(gè)通道得到新的特征嵌入表示,每個(gè)通道圖卷積神經(jīng)網(wǎng)絡(luò)由編碼器和解碼器組成;

(3)基于節(jié)點(diǎn)重要性的注意力融合機(jī)制將融合得到新的嵌入表示。

通過(guò)聯(lián)合學(xué)習(xí)框架不斷優(yōu)化參數(shù),最后使用譜聚類(lèi)算法進(jìn)行聚類(lèi),得到微服務(wù)的分解方案。

3.1 多通道圖構(gòu)建

p是某應(yīng)用中入口點(diǎn)集合。如果classi出現(xiàn)在入口點(diǎn)p所在的執(zhí)行追蹤中,則Xclass-trace(i,p)=1,否則Xclass-trace(i,p)=0。進(jìn)一步計(jì)算某個(gè)入口點(diǎn)開(kāi)始的調(diào)用鏈同時(shí)包含classi和classj的次數(shù),獲得屬性矩陣Xclass-occurence。最后,通過(guò)分析類(lèi)之間的繼承關(guān)系得到繼承關(guān)系矩陣Xclass-inheri,如果兩個(gè)類(lèi)存在繼承關(guān)系,則Xclass-inheri(i,j)=Xclass-inheri(j,i)=1,否則,Xclass-inheri(i,j)=Xclass-inheri(j,i)=0。

為了能夠捕捉到應(yīng)用程序中類(lèi)和類(lèi)之間的全面深度關(guān)系,對(duì)三種關(guān)系矩陣進(jìn)行新的組合形成多通道信息數(shù)據(jù)對(duì),即:

X1=(Xclass-trac,Xclass-occurence)

X2=(Xclass-trac,Xclass-inheri)

X3=(Xclass-occurence,Xclass-inheri)

使用A∈R|V|×|V|表示該圖的鄰接矩陣,定義為:

因?yàn)楸締?wèn)題中類(lèi)之間的調(diào)用圖固定,因此三個(gè)通道屬性圖具有相同的鄰接矩陣A。下一步,將(X1,A)、(X2,A)和(X3,A)分別輸入到多通道注意力圖卷積網(wǎng)絡(luò)編碼器模塊中。

3.2 多通道圖卷積神經(jīng)網(wǎng)絡(luò)架構(gòu)

3.2.1 多通道圖卷積神經(jīng)網(wǎng)絡(luò)編碼器模塊

MAGEMP中,每一個(gè)通道都使用了圖卷積網(wǎng)絡(luò)(GCN)[20]。圖卷積神經(jīng)網(wǎng)絡(luò)從鄰居節(jié)點(diǎn)聚合信息并學(xué)習(xí)圖中每個(gè)節(jié)點(diǎn)的嵌入表示:

(1)

(2)

(3)

3.2.2 多通道圖卷積神經(jīng)網(wǎng)絡(luò)解碼器模塊

(4)

(5)

σ是激活函數(shù)。使用重建的信息數(shù)據(jù)對(duì)和鄰接矩陣和原始的信息數(shù)據(jù)對(duì)和鄰接矩陣的誤差優(yōu)化網(wǎng)絡(luò),定義為:

(6)

3.3 注意力融合機(jī)制和聚類(lèi)模塊

3.3.1 注意力融合機(jī)制

(7)

(8)

(9)

3.3.2 聚類(lèi)模塊

為了能夠獲得更具有判別性的嵌入表示和最優(yōu)聚類(lèi)結(jié)果,完成譜聚類(lèi)后,構(gòu)建簇的k-d樹(shù),借助k-d樹(shù)實(shí)現(xiàn)最近鄰的快速查找,找到與節(jié)點(diǎn)zi同一個(gè)簇中曼哈頓距離最近的鄰居節(jié)點(diǎn)zj。定義損失函數(shù)[22]:

(10)

其中,d(zi,zj)表示節(jié)點(diǎn)i和節(jié)點(diǎn)j之間的曼哈頓距離|zi-zj|。

3.4 損失函數(shù)

根據(jù)MAGEMP網(wǎng)絡(luò)模型結(jié)構(gòu),其損失函數(shù)由多通道圖卷積網(wǎng)絡(luò)的重建損失和聚類(lèi)損失組成。定義為:

(11)

其中,γ>0,是超參數(shù)。通過(guò)最小化該損失函數(shù)訓(xùn)練整個(gè)多通道注意力圖卷積神經(jīng)網(wǎng)絡(luò)的參數(shù),得到較高質(zhì)量嵌入質(zhì)量表示和聚類(lèi)效果。

3.5 訓(xùn)練過(guò)程

實(shí)驗(yàn)過(guò)程由三個(gè)步驟組成。第一步是對(duì)多通道圖卷積神經(jīng)網(wǎng)絡(luò)模塊網(wǎng)絡(luò)參數(shù)進(jìn)行預(yù)訓(xùn)練;第二步是對(duì)整個(gè)網(wǎng)絡(luò)進(jìn)行正式訓(xùn)練,得到最終的參數(shù);第三步是使用學(xué)習(xí)到的特征嵌入表示Z進(jìn)行聚類(lèi)。

(2)正式開(kāi)始訓(xùn)練過(guò)程。對(duì)GCN編碼器、解碼器和注意力層參數(shù)進(jìn)行迭代優(yōu)化,得到最終的參數(shù)。首先將多通道信息數(shù)據(jù)對(duì)和鄰接矩陣輸入到預(yù)訓(xùn)練好的GCN編碼器網(wǎng)絡(luò)。經(jīng)過(guò)模型訓(xùn)練,獲得隱含層嵌入表示和注意力層嵌入表示,使用注意力層嵌入表示數(shù)據(jù)譜聚類(lèi),得到劃分結(jié)果,計(jì)算總體損失函數(shù)。通過(guò)最小化總體損失函數(shù)反向傳播訓(xùn)練整體網(wǎng)絡(luò)。

(3)通過(guò)學(xué)習(xí)到的嵌入表示Zm計(jì)算仿射矩陣S,進(jìn)行譜聚類(lèi)獲得最終聚類(lèi)結(jié)果。MAGEMP具體如算法1所示。

算法1:MAGEMP訓(xùn)練算法。

輸入:多屬性特征圖G'=(V,E,Xm),簇的個(gè)數(shù)K,迭代次數(shù)N。

輸出:聚類(lèi)結(jié)果R。

/*預(yù)訓(xùn)練階段*/

(2)利用公式(3)~公式(6)對(duì)多通道GCN編碼器進(jìn)行預(yù)訓(xùn)練,得到初始參數(shù)值;

(3)利用公式(3)計(jì)算每個(gè)通道圖卷積編碼器嵌入特征表示,利用公式(7)~公式(9)使用注意力機(jī)制得到融合的嵌入表示;

(4)對(duì)步驟3中經(jīng)過(guò)融合得到的嵌入表示使用k-means算法初始化聚類(lèi);

/*在線(xiàn)訓(xùn)練階段

(5)For iter∈0,1,…,N

(6)使用m通道GCN編碼器計(jì)算Zm;

(7)使用注意力機(jī)制融合嵌入表示;

(8)使用譜聚類(lèi)計(jì)算嵌入表示Z聚類(lèi)結(jié)果;

(9)利用公式(11)計(jì)算總損失函數(shù);

(10)利用Adam算法更新神經(jīng)網(wǎng)絡(luò)參數(shù);

(11)End for

(12)根據(jù)嵌入表示計(jì)算仿射矩陣作為譜聚類(lèi)的權(quán)值進(jìn)行聚類(lèi);

(13)計(jì)算聚類(lèi)結(jié)果R;

(14)返回R。

4 實(shí) 驗(yàn)

4.1 數(shù)據(jù)集

為了評(píng)估該方法,使用Mono2Mirco提供的4個(gè)公開(kāi)數(shù)據(jù)集[15]進(jìn)行測(cè)試。acmeair是航空公司訂票應(yīng)用系統(tǒng),daytrader是在線(xiàn)股票交易系統(tǒng),jpetstore是寵物商店系統(tǒng),plants是植物商店系統(tǒng)。

4.2 評(píng)價(jià)指標(biāo)

為了較好地量化評(píng)估MAGEMP模型微服務(wù)分解的性能,采用了微服務(wù)分解中較通用的滿(mǎn)足上述要求的評(píng)價(jià)指標(biāo)。評(píng)價(jià)指標(biāo)主要有3個(gè):

(1)IFN(independence of functionality)[19]評(píng)價(jià)微服務(wù)是否具有良好定義和獨(dú)立性,可表示為:

(12)

通常IFN值越小,表示微服務(wù)承擔(dān)責(zé)任越單一。

(2)SM(structural modularity quality)[19]用于量化微服務(wù)內(nèi)的類(lèi)間結(jié)構(gòu)一致性,表示為:

(13)

(3)ICP(inter-partition call percentage)[25]用于評(píng)估微服務(wù)之間的交互百分比??杀硎緸?

(14)

其中,ci,j表示不同微服務(wù)之間的調(diào)用數(shù)目。ICP值越小,說(shuō)明服務(wù)之間調(diào)用純度越好。

4.3 基線(xiàn)設(shè)置

為了評(píng)價(jià)所提方法的性能,將其與目前最先進(jìn)的方法進(jìn)行比較。第1個(gè)基準(zhǔn)方法是Bunch[15],它是較早提出的將服務(wù)劃分問(wèn)題描述為一個(gè)搜索問(wèn)題的方法,利用爬山搜索技術(shù)找到一個(gè)能夠最大化兩個(gè)特定度量的劃分(微服務(wù)),該劃分可以最大化結(jié)構(gòu)模塊化質(zhì)量。MEM[17]是基于邏輯、語(yǔ)義和變更歷史的耦合構(gòu)造一個(gè)圖,將微服務(wù)分解建模為圖割問(wèn)題,然后使用最小生成樹(shù)從構(gòu)造的圖中尋找最小割劃分。每個(gè)min-cut中的類(lèi)代表分解出的微服務(wù)。FoSCI[19]使用運(yùn)行時(shí)追蹤數(shù)據(jù)作為數(shù)據(jù)源,利用跟蹤規(guī)約算法刪除冗余的跟蹤,然后通過(guò)層次聚類(lèi)來(lái)創(chuàng)建“功能原子”,再使用多目標(biāo)優(yōu)化算法對(duì)這些功能原子進(jìn)行合并。M2M[12]通過(guò)不同的業(yè)務(wù)用例收集運(yùn)行時(shí)追蹤數(shù)據(jù)[26],使用層次聚類(lèi)方法將單體應(yīng)用劃分為不同微服務(wù),并公開(kāi)了相應(yīng)的數(shù)據(jù)集。COGCN是第一個(gè)使用圖神經(jīng)網(wǎng)絡(luò)進(jìn)行微服務(wù)分解的深度學(xué)習(xí)方法,并利用多個(gè)損失函數(shù)構(gòu)成了一個(gè)端到端的學(xué)習(xí)框架,再使用K-Means聚類(lèi)方法分解微服務(wù),也是主要對(duì)比的同類(lèi)方法。

4.4 性能比較

為了驗(yàn)證模型對(duì)于微服務(wù)分解的效果,分別在四個(gè)公開(kāi)數(shù)據(jù)集上進(jìn)行了測(cè)試,結(jié)果如表1~表4所示。性能測(cè)試的結(jié)果是在參數(shù)設(shè)置的范圍內(nèi)運(yùn)行100次,然后取每個(gè)性能指標(biāo)的中位數(shù)[12-13]。其中↑表示該指標(biāo)值越大越好,↓表示該指標(biāo)值越小越好。表中粗體表示性能最好。在所有數(shù)據(jù)集上,MAGEMP取得了顯著的效果。

表1 daytrader數(shù)據(jù)集上的結(jié)果

表2 acmeair數(shù)據(jù)集上的結(jié)果

表3 jpetstore數(shù)據(jù)集上的結(jié)果

表4 plants數(shù)據(jù)集上的結(jié)果

與同類(lèi)方法COGCN相比,在daytrader數(shù)據(jù)集上,ICP提升了37.6%,SM提升了41.86%。在acmeair數(shù)據(jù)集上,ICP提升了32.21%,SM提升了63.16%,IFN提升了1.44%。在jpetstore數(shù)據(jù)集上,ICP提升了54.81%,SM提升了27.47%,IFN提升了15.2%。在plant數(shù)據(jù)集上,ICP提升了6.48%。MAGEMP的多通道信息的充分利用和有效融合顯著提升了微服務(wù)分解在功能性和模塊性上的性能。

與另外四種非深度學(xué)習(xí)模型比較,MAGEMP在daytrader數(shù)據(jù)集的ICP指標(biāo),在acmeair數(shù)據(jù)集上的ICP指標(biāo)、IFN指標(biāo),在jpetstore數(shù)據(jù)集上的ICP指標(biāo),在plants數(shù)據(jù)集上的IFN指標(biāo)都取得了最好的實(shí)驗(yàn)效果,而在一些其他的指標(biāo)上,例如acmeair數(shù)據(jù)集上的IFN和plants上的ICP效果并不理想。這很大一部分原因是MAGEMP中類(lèi)調(diào)用圖的節(jié)點(diǎn)屬性過(guò)于簡(jiǎn)單,從而無(wú)法挖掘更深層次的信息。

從整體實(shí)驗(yàn)效果上來(lái)看,MAGEMP具有一定的優(yōu)勢(shì),但也有可提升的空間,并且進(jìn)一步驗(yàn)證了圖神經(jīng)網(wǎng)絡(luò)在微服務(wù)分解問(wèn)題上的可行性。

4.5 消融分析

為了進(jìn)一步評(píng)估MAGEMP模型中不同模塊的貢獻(xiàn),對(duì)MAGEMP進(jìn)行了消融實(shí)驗(yàn),考慮了MAGEMP的幾種變體:

(1)MAGEMP(mean):無(wú)注意力融合機(jī)制的MAGEMP。

(2)MAGEMP(m1):只使用通道1的MAGEMP。

(3)MAGEMP(m2):只使用通道2的MAGEMP。

(4)MAGEMP(m3):只是用通道3的MAGEMP。

MAGEMP在不同數(shù)據(jù)集上消融實(shí)驗(yàn)結(jié)果如表5~表8所示。從實(shí)驗(yàn)結(jié)果中可以看到,在所有數(shù)據(jù)集和指標(biāo)上,帶有注意力融合機(jī)制的MAGEMP模型性能更好,表明MAGEMP中的注意力機(jī)制可以利用多通道的嵌入特征表示的不同貢獻(xiàn),進(jìn)一步提高聚類(lèi)(微服務(wù)分解)的性能。從表中還可以看出,MAGEMP的性能優(yōu)于單通道圖卷積模型,充分驗(yàn)證了多通道圖卷積網(wǎng)絡(luò)模型可以利用多種信息更好地達(dá)到微服務(wù)分解的目的。

表5 daytrader數(shù)據(jù)集上消融分析

表6 acmeair數(shù)據(jù)集上消融分析

表7 jpetstore數(shù)據(jù)集上消融分析

表8 plants數(shù)據(jù)集上消融分析

4.6 注意力系數(shù)分析

注意力融合機(jī)制是MAGEMP模型的一個(gè)關(guān)鍵組成部分,它可以衡量和量化不同通道的重要性和不同通道中不同節(jié)點(diǎn)的重要性。圖2可視化了在acmeair數(shù)據(jù)集上三個(gè)通道中每個(gè)圖節(jié)點(diǎn)的注意力系數(shù)。從圖2可以看出,三個(gè)通道具有不同的重要性,在不同數(shù)據(jù)集上,通道1和通道3的權(quán)值比通道2的權(quán)值高。實(shí)驗(yàn)結(jié)果表明MAGEMP可以很好地利用不同通道的不同特征進(jìn)行聚類(lèi)。

圖2 acmeair數(shù)據(jù)集上三種模態(tài)的圖節(jié)點(diǎn)注意力系數(shù)熱圖

5 結(jié)束語(yǔ)

受多通道信息處理模型啟發(fā),針對(duì)Java單體應(yīng)用程序微服務(wù)分解問(wèn)題,對(duì)面向?qū)ο蟪绦蛟O(shè)計(jì)中的類(lèi)實(shí)體關(guān)系特征表示進(jìn)行建模,提出了一種基于多通道注意力深度圖卷積網(wǎng)絡(luò)聚類(lèi)的微服務(wù)分解方法MAGEMP。針對(duì)Java單體應(yīng)用程序的特點(diǎn),類(lèi)和類(lèi)之間的關(guān)系除了調(diào)用關(guān)系外,還可以充分利用源代碼中的主題建模等信息,因此將會(huì)繼續(xù)研究更加有效的多通道信息,進(jìn)一步提升微服務(wù)分解模型的泛化能力。

深度學(xué)習(xí)方法具有很好的擴(kuò)展性,但是在運(yùn)行時(shí)間和效率上,與其他類(lèi)方法相比,仍然有很大的提升空間,如何改進(jìn)深度圖卷積網(wǎng)絡(luò)的性能,獲得特征表示和運(yùn)行時(shí)的高效,也是一個(gè)很好的研究方向。另外,如何在微服務(wù)分解領(lǐng)域拓展深度卷積網(wǎng)絡(luò)的研究方法,提出新型的圖卷積神經(jīng)網(wǎng)絡(luò)模型,也是值得深入研究的方向。

猜你喜歡
集上注意力卷積
讓注意力“飛”回來(lái)
基于3D-Winograd的快速卷積算法設(shè)計(jì)及FPGA實(shí)現(xiàn)
Cookie-Cutter集上的Gibbs測(cè)度
鏈完備偏序集上廣義向量均衡問(wèn)題解映射的保序性
從濾波器理解卷積
電子制作(2019年11期)2019-07-04 00:34:38
基于傅里葉域卷積表示的目標(biāo)跟蹤算法
復(fù)扇形指標(biāo)集上的分布混沌
“揚(yáng)眼”APP:讓注意力“變現(xiàn)”
A Beautiful Way Of Looking At Things
一種基于卷積神經(jīng)網(wǎng)絡(luò)的性別識(shí)別方法
旅游| 赞皇县| 临邑县| 漯河市| 洮南市| 黎平县| 密山市| 西林县| 肃南| 锡林郭勒盟| 赤水市| 元氏县| 肥西县| 新化县| 日土县| 库尔勒市| 来宾市| 长顺县| 康定县| 云浮市| 公安县| 旌德县| 大同县| 中西区| 彭山县| 泗水县| 崇文区| 松桃| 绥宁县| 海安县| 镇安县| 清新县| 望都县| 南丰县| 柯坪县| 柳河县| 定结县| 尼勒克县| 兴海县| 荔浦县| 连云港市|