CN114647465B - 多通道注意力图神经网络聚类的单体程序拆分方法及系统 - Google Patents

多通道注意力图神经网络聚类的单体程序拆分方法及系统 Download PDF

Info

Publication number
CN114647465B
CN114647465B CN202210559572.8A CN202210559572A CN114647465B CN 114647465 B CN114647465 B CN 114647465B CN 202210559572 A CN202210559572 A CN 202210559572A CN 114647465 B CN114647465 B CN 114647465B
Authority
CN
China
Prior art keywords
channel
graph
clustering
neural network
attention
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202210559572.8A
Other languages
English (en)
Other versions
CN114647465A (zh
Inventor
李静
羊麟威
钱李烽
刘昕
张攀
来风刚
都繁杰
周逸
李明
尹晓宇
宫帅
程航
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nanjing University of Aeronautics and Astronautics
State Grid Corp of China SGCC
State Grid Information and Telecommunication Co Ltd
Information and Telecommunication Branch of State Grid Anhui Electric Power Co Ltd
Original Assignee
Nanjing University of Aeronautics and Astronautics
State Grid Corp of China SGCC
State Grid Information and Telecommunication Co Ltd
Information and Telecommunication Branch of State Grid Anhui Electric Power Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nanjing University of Aeronautics and Astronautics, State Grid Corp of China SGCC, State Grid Information and Telecommunication Co Ltd, Information and Telecommunication Branch of State Grid Anhui Electric Power Co Ltd filed Critical Nanjing University of Aeronautics and Astronautics
Priority to CN202210559572.8A priority Critical patent/CN114647465B/zh
Publication of CN114647465A publication Critical patent/CN114647465A/zh
Application granted granted Critical
Publication of CN114647465B publication Critical patent/CN114647465B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/448Execution paradigms, e.g. implementations of programming paradigms
    • G06F9/4488Object-oriented
    • G06F9/449Object-oriented method invocation or resolution
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/23Clustering techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/448Execution paradigms, e.g. implementations of programming paradigms
    • G06F9/4488Object-oriented
    • G06F9/4492Inheritance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • General Physics & Mathematics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Molecular Biology (AREA)
  • General Health & Medical Sciences (AREA)
  • Mathematical Physics (AREA)
  • Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Computing Systems (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Stored Programmes (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种多通道注意力图神经网络聚类的单体程序拆分方法及系统,包括单体程序多属性图构建、多通道图神经网络特征嵌入表示学习、基于注意力的多通道特征嵌入融合、基于谱聚类的微服务拆分。通过图神经网络重构信息和聚类信息构建新的损失函数,实现了图注意力神经网络与聚类的联合学习框架,实现了提取微服务在功能性和模块性方面性能的提升。本发明结合单体程序多种属性信息,构建多通道图注意力网络,实现了更为高质量的特征嵌入表示,同时也提升了微服务提取方法的可扩展性,避免了微服务提取方法在应用中使用受限等问题。

Description

多通道注意力图神经网络聚类的单体程序拆分方法及系统
技术领域
本发明属于软件工程和人工智能领域,具体涉及一种多通道注意力图神经网络聚类的单体程序拆分方法及系统。
背景技术
随着云计算技术的快速发展,为了充分利用云基础设施,灵活进行业务扩张和性能伸缩,降低维护成本,Amazon、IBM、Google等大型公司研究将单体应用软件系统迁移为基于微服务的架构,与单体架构这种将系统各个模块统一管理打包成单个应用程序的范式不同,微服务架构由许多独立的服务组成,服务之间通过轻量级通信协议进行动态交互,每个服务可独立修改、开发、部署和维护。因此,在增量迁移上云过程中,需要将单体应用替换到新的体系结构中。微服务提取或拆分是将现有代码重构为一组较小的独立代码组的过程,理想情况下不改变外部行为和语义。一旦移植到微服务,业务服务就可以独立地增强和扩展,提供敏捷性和改进的交付速度。目前大多数微服务拆分和重构过程是手工完成的,代价昂贵、耗时且易于出错,其质量通常与专家经验和知识密切相关,因此,迫切需要自动化的过程来将单体应用转换成微服务系统,微服务提取已成为软件工程和云计算领域研究的重要任务之一。
近些年,已有许多工作研究单体应用系统的微服务提取方法,微服务提取的主要标准是每个微服务尽最大可能满足低耦合和高内聚标准。Mitchell等人于2006年提出一种基于源代码分析的软件聚类方法,通过对源代码中实体和关系图产生子系统分解,最后通过爬山优化搜索算法产生软件聚类。Levcovitz等人于2016年提出一种基于人工经验功能分解的微服务提取方法,通过评估代码、数据库表和SQL查询确定业务对象及关系,结合调用图推荐可能微服务。Gysel等人于2016年引入了一个基于16个耦合标准的服务分解工具,这些标准来源于行业和文献,通过创建加权图,利用聚类算法提取潜在的微服务。Mazlami等人于2017年提出一种通过抽取代码中的依赖结构信息,将软件系统建模表示成图结构,然后设计图切割算法切分图,每个子图则对应一个可选的服务提取方法。Chen等人于2017年使用自顶向下的方法,基于数据流进行候选服务提取,该方法需要根据用户对系统的自然语言描述构造一个数据流图来说明详细的数据。Baresi等人于2017年提出了一种基于OpenApi规范规定的功能语义相似性的方法,这种相似性取决于引用词汇表。Tyszberowicz等人于2018年提出了一种基于软件需求的功能分解的方法提取微服务的方法。然后使用图形分析工具确定微服务,Amiri等人于2018年提出一种使用业务流程模型和符号(BPMN)从业务流程中表示微服务的方法,实现过程中对结构依赖和数据对象依赖信息使用简单的矩阵加法进行了聚合。Munezero等人于2018年提出一种使用领域驱动设计(DDD)模式提取微服务的方法,需领域专家确定系统每个功能的责任边界。Jin等人于2019年以单体应用系统的运行轨迹作为输入,提出了一种基于多目标优化技术的服务拆分方法。Ding等人于2020年提出了一种场景驱动、自底向上的融合用户反馈的半自动化拆分方法,该方法从数据库拆分出发,向上映射到系统代码的拆分,考虑了数据关联度、数据共享度、拆分开销等不同拆分因素。Zhang等人于2020年提出一种围绕负载均衡作为优化目标的基于运行轨迹的多目标优化的微服务提取方法。Brito等人于2021年提出一种基于主题建模的微服务提取方法,利用领域术语与聚类技术相结合生成一组基于原始单体应用软件的服务。Desai等人于2021年提出了基于深度学习图神经网络方法的微服务提取方法,是一种基于端到端的深度神经网络聚类联合框架,取得了较好的实验结果,并拓展了图神经网络的应用。Kalia于2021年提出了一种基于单体系统的运行轨迹中抽取出系统业务逻辑,使用分层聚类方法将单体应用划分为不同微服务的方法。
综上所述,近几年伴随人工智能技术的发展,微服务提取工作取得了很大的进展,尽管进行了大量的研究,但仍没有单一的提取方法可以推荐于普遍应用中。另外,大多数方法存在只适用于一个数据集的情况,在多个数据集上缺乏可扩展性,或者缺少自动化实现的方法。
发明内容
本发明针对现有技术中的不足,提供一种多通道注意力图神经网络聚类的单体程序拆分方法及系统,通过注意力机制,实现多通道信息的有效融合,提升多通道特征的表示能力。
为实现上述目的,本发明采用以下技术方案:
多通道注意力图神经网络聚类的单体程序拆分方法,其特征在于,包括:
步骤S1:对JAVA单体程序中获取的类和类之间的多源关系建模并组合形成多通道信息数据对,基于多通道信息数据对和邻接矩阵构建单体程序多属性图;
步骤S2:将单体程序多属性图输入到多通道图卷积编码器获得对应的特征嵌入表示,利用多通道图卷积解码器重构多通道信息数据对并基于重构误差设计重构损失函数;
步骤S3:通过注意力机制计算特征嵌入表示中各结点的重要性,并自适应融合为新的特征嵌入表示;
步骤S4:通过图神经网络和聚类的联合学习框架对新的特征嵌入表示进行聚类,实现微服务的划分,并基于重构损失函数和聚类过程中产生的聚类损失函数,对神经网络的参数进行优化。
为优化上述技术方案,采取的具体措施还包括:
进一步地,所述步骤S1具体包括如下子步骤:
步骤S11:通过对JAVA应用程序的动态分析,获得运行时调用链追踪数据信息;
步骤S12:根据调用链追踪数据信息,得到类与调用链之间的关系子图X class-trace ;如果类i class i 出现在入口点p所在的执行追踪中,则X class-trace (i, p) = 1,否则X class-trace (i, p) = 0;
步骤S13:根据调用链追踪数据信息,得到类之间的矩阵属性子图X class-occurrence ;若有q条调用链同时包含类i与类j,则X class-occurrence (i, j) = q
步骤S14:根据调用链追踪数据信息,得到类之间的继承关系子图X class-inheri ;如果两个类通过继承关系相关,则X class-inheri (i, j) = 1,否则X class-inheri (i, j) = 0;
步骤S15:根据调用链追踪数据信息,得到类之间的邻接矩阵A;邻接矩阵定义如下:
Figure 676052DEST_PATH_IMAGE001
其中,E表示继承关系子图的边集合,v a v b 分别表示结点a和结点bA uv 表示邻接矩阵A的第u行、第v列的值;
步骤S16:将关系子图X class-trace 、矩阵属性子图X class-occurrence 和继承关系子图X class-inheri 进行组合形成多通道信息数据对X 1 X 2 X 3 ,其中,X 1 =(X class-trace ,X class-occurrence ),X 2 =(X class-trace , X class-inheri ),X 3 =(X class-occurrence , X class-inheri ),结合邻接矩阵A构建单体程序多属性图。
进一步地,所述步骤S2具体包括如下子步骤:
步骤S21:将步骤S1中得到的单体程序多属性图输入多通道图卷积编码器,学习得到三个通道的特征嵌入表示,模型描述如下:
Figure 327613DEST_PATH_IMAGE002
其中,f m 为第m个通道信息数据与特征嵌入表示的映射关系,G为单体程序多属性 图,X m 为第m个通道信息数据对,
Figure 841771DEST_PATH_IMAGE003
为图神经网络的参数,Z m 表示学习得到的特征嵌入表示;
m个图卷积编码器的第l层的输出
Figure 971401DEST_PATH_IMAGE004
为:
Figure 395561DEST_PATH_IMAGE005
其中,
Figure 952444DEST_PATH_IMAGE006
是具有自连接的邻接矩阵,I N 是单位矩阵;
Figure 953898DEST_PATH_IMAGE007
Figure 746274DEST_PATH_IMAGE008
对应图的度矩 阵,
Figure 149573DEST_PATH_IMAGE009
是第m个图卷积编码器的权值参数,
Figure 877358DEST_PATH_IMAGE010
表示第m个图卷积编码器第l-1层的输出,
Figure 366108DEST_PATH_IMAGE011
表示非线性激活函数;
步骤S22:将步骤S21中得到的特征嵌入表示输入多通道图卷积解码器,重构多通 道信息数据对;第m个图卷积解码器的第l层的输出
Figure 211442DEST_PATH_IMAGE012
为:
Figure 469248DEST_PATH_IMAGE013
其中,
Figure 633513DEST_PATH_IMAGE014
Figure 609559DEST_PATH_IMAGE015
I n 是单位矩阵,DA对应图的度矩阵,
Figure 743737DEST_PATH_IMAGE016
是第m个图卷积解码器的权值参数;
Figure 856050DEST_PATH_IMAGE017
表示第m个图卷积解码器第l-1层的输出;第m个图卷积解 码器最后一层的输出就是重构后的第m个通道信息数据对
Figure 925637DEST_PATH_IMAGE018
重构m通道视图邻接矩阵
Figure 264345DEST_PATH_IMAGE019
Figure 77581DEST_PATH_IMAGE020
基于重构误差构建每个通道图神经网络的重构损失,重构损失函数L sa 定义为:
Figure 309979DEST_PATH_IMAGE021
其中,
Figure 816047DEST_PATH_IMAGE022
是图神经网络的参数,
Figure 625740DEST_PATH_IMAGE023
是超参数,M是通道数目。
进一步地,所述步骤S3具体如下:
通过注意力机制先对每个通道的特征嵌入表示进行非线性变换,再用一个共享注 意力向量
Figure 242666DEST_PATH_IMAGE024
得到m通道结点e的注意力值
Figure 329570DEST_PATH_IMAGE025
Figure 6539DEST_PATH_IMAGE026
其中,
Figure 287217DEST_PATH_IMAGE027
是权值矩阵,h’表示共享注意力向量的维度,h表示注意力机制 的通道数;
Figure 442255DEST_PATH_IMAGE028
表示m通道e结点的特征嵌入表示,
Figure 649245DEST_PATH_IMAGE029
是偏置向量;对
Figure 621749DEST_PATH_IMAGE030
进行归 一化:
Figure 281401DEST_PATH_IMAGE031
其中,
Figure 240129DEST_PATH_IMAGE032
值表示m通道e结点的特征嵌入表示的重要性,获得学习后的权值
Figure 36047DEST_PATH_IMAGE033
n表示嵌入特征维度;将三个通道的特征嵌入表示Z m 进行融合获得新 的特征嵌入表示Z
Figure 930185DEST_PATH_IMAGE034
其中,
Figure 77133DEST_PATH_IMAGE035
进一步地,所述步骤S4具体如下:
采用谱聚类算法对特征嵌入表示Z进行聚类,使用高斯核定义仿射矩阵S,如果
Figure 839552DEST_PATH_IMAGE036
,则
Figure 614610DEST_PATH_IMAGE037
否则S eo =0;S eo 代表结点e和结点o通过高斯核函数计算得到的相似度,N表示结点 数,z e 表示结点e的特征嵌入表示,
Figure 538704DEST_PATH_IMAGE038
是向量z e z o 之间的欧几里得距离,
Figure 172947DEST_PATH_IMAGE039
是尺度参数,S eo 对称且非负;然后,运行谱聚类算法将N个结点聚类到K个不同划分中;
谱聚类后,构建簇的k-d树,找到与结点z e 同一个簇中曼哈顿距离最近的邻居结点z o ,定义聚类损失函数L clus
Figure 473479DEST_PATH_IMAGE040
其中,d(z e , z o )表示结点e和结点o之间的曼哈顿距离
Figure 883469DEST_PATH_IMAGE041
综合L sa L clus 形成新的损失函数L
Figure 978464DEST_PATH_IMAGE042
其中,
Figure 100004DEST_PATH_IMAGE043
是超参数;通过最小化损失函数L训练并优化图神经网络的参数。
进一步地,本发明提出了一种多通道注意力图神经网络聚类的单体程序拆分系统,其特征在于,包括:多通道注意力网络模块、多通道图卷积神经网络模块、注意力机制模块和联合学习模块;
所述多通道注意力网络模块对JAVA单体程序中获取的类和类之间的多源关系建模并组合形成多通道信息数据对,基于多通道信息数据对和邻接矩阵构建单体程序多属性图;
所述多通道图卷积神经网络模块包括多通道图卷积编码器和多通道图卷积解码器,所述单体程序多属性图输入到多通道图卷积编码器获得对应的特征嵌入表示;所述多通道图卷积解码器重构多通道信息数据对并基于重构误差设计重构损失函数;
所述注意力机制模块通过注意力机制计算特征嵌入表示中各结点的重要性,并自适应融合为新的特征嵌入表示;
所述联合学习模块通过图神经网络和聚类的联合学习框架对新的特征嵌入表示进行聚类,实现微服务的划分,并基于重构损失函数和聚类过程中产生的聚类损失函数,对神经网络的参数进行优化。
进一步地,本发明提出了一种计算机可读存储介质,存储有计算机程序,其特征在于,所述计算机程序使计算机执行如上所述的多通道注意力图神经网络聚类的单体程序拆分方法。
进一步地,本发明提出了一种电子设备,其特征在于,包括:存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行计算机程序时,实现如上所述的多通道注意力图神经网络聚类的单体程序拆分方法。
本发明的有益效果是:本发明在Java程序运行时调用图分析,获取类与类之间的多属性信息,构建多属性图结构,设计基于多通道的图卷积神经网络模型对多属性图进行特征嵌入表示学习;然后以优化嵌入表示为目标,采用注意力机制,对多通道卷积网络嵌入表示进行融合,形成新的特征嵌入表示;再通过与聚类信息的联合训练,最后使用谱聚类进行聚类,得到微服务拆分结果。本发明充分利用多属性信息和多通道图注意力神经网络的建模能力,有效提升拆分后微服务的功能性和模块性。
附图说明
图1为本发明多通道注意力图神经网络聚类的单体程序拆分方法的流程图。
图2为本发明实施例提供的Java程序类调用示例图。
图3为本发明实施例提供的微服务拆分示意图。
图4为本发明多通道注意力图神经网络聚类的单体程序拆分方法的框架图。
图5a-5d为本发明实施例提供的不同数据集上三种通道的图结点注意力系数热图,其中图5a是daytrader数据集,图5b是acmeAir数据集,图5c是jpetstore数据集,图5d是plants数据集。
图6a-6c为本发明实施例提供的不同数据集嵌入维度对不同指标性能的影响结果图,其中图6a是ICP指标,图6b是SM指标,图6c是IFN指标。
具体实施方式
现在结合附图对本发明作进一步详细的说明。
本发明提出了一种多通道注意力图神经网络聚类的单体程序拆分系统,包括:
多通道注意力网络模块,用于对JAVA单体程序中获取的类和类之间的多源关系建模并组合形成多通道信息数据对,基于多通道信息数据对和邻接矩阵构建单体程序多属性图;
多通道图卷积神经网络模块,包括多通道图卷积编码器和多通道图卷积解码器,单体程序多属性图输入到多通道图卷积编码器获得对应的特征嵌入表示,多通道图卷积解码器重构多通道信息数据对并基于重构误差设计重构损失函数;
注意力机制模块,用于通过注意力机制计算特征嵌入表示中各结点的重要性,并自适应融合为新的特征嵌入表示;
联合学习模块,用于通过图神经网络和聚类的联合学习框架对新的特征嵌入表示进行聚类,实现微服务的划分,并基于重构损失函数和聚类过程中产生的聚类损失函数,对神经网络的参数进行优化。
如图1所示,本发明公开了一种多通道注意力图神经网络聚类的单体程序拆分方法,依次包括单体程序多属性图构建、多通道图神经网络特征嵌入表示学习、基于注意力的多通道特征嵌入融合和基于谱聚类的微服务拆分。首先,以Java单体应用为基础,从中获取类和类之间的特征信息构建成多属性图G = {V, E, X m };然后构建基于多通道图卷积神经网络的特征嵌入表示学习模型,每个通道得到特征嵌入表示Z m ,每个通道的图卷积神经网络由编码器和解码器组成;再基于结点重要性的注意力融合机制将Z m 融合得到新的特征嵌入表示Z;最后通过联合学习框架不断优化参数,使用谱聚类算法进行聚类,得到拆分后的微服务。
如图2所示,在JAVA应用程序中,程序都是由类组成的,类和类之间的调用关系可以表示为类之间的调用图形式,以图的结构来表示。因此,将程序转换为图结构进行建模是许多微服务提取模型采用的方法,通常通过静态代码分析或者运行时追踪等工具可以获得类和类之间的不同关系,本发明将该问题建模为一个多通道图神经网络和聚类的联合学习框架。将单体应用程序根据代码中类之间的相似性进行划分,例如图3中的6个类经过微服务提取后被划分到3个微服务中。如图4所示,本发明的方法以两个类是否同时出现在同一条调用链中、同时出现在某一条调用链中的次数、是否存在继承依赖关系等多属性出发,以充分利用这些关系构建更加高效的微服务提取方法。
S1,单体程序多属性图构建。
通过对JAVA应用程序动态分析,可获得运行时追踪数据。一条完整的调用链追踪 数据信息Trace =(序号,业务用例,class i ,调用(或返回到),class j ,调用所在文件和方 法)。每个业务用例包含多条调用链,每条调用链是从业务用例测试的入口点(entrypoint) 类开始的,因此根据调用链信息,可获得类与类之间的调用图,通过跟踪在入口点的执行跟 踪期间调用的所有类,得到类与某条调用链的关系子图X class-trace 。如果类iclass i 出现在入 口点p所在的执行追踪中,则X class-trace (i, p) = 1,否则X class-trace (i, p) = 0。进一步计算 某个开始点开始的调用链同时包含class i class j 的次数,获得矩阵属性子图X class-occurrence 。定义继承关系子图X class-inheri ,如果两个类通过继承关系相关,则X class-inheri (i, j) = 1,否则X class-inheri (i, j) = 0。为了能够捕捉到应用程序中类和类之间的全面深 度关系,对类和类之间的关系进行新的组合形成多通道信息数据对,即X 1 =(X class-trace , X class-occurrence ),X 2 =(X class-trace , X class-inheri ),X 3 =(X class-occurrence , X class-inheri )。使用A表示 该图的临接矩阵,定义为
Figure 204226DEST_PATH_IMAGE044
因为本问题中类之间的调用图固定,因此三个通道属性图具有相同的邻接矩阵A。下一步,将(X 1 , A),(X 2 , A)和(X 3 , A)分别输入到多通道图卷积编码器中。
S2,多通道图神经网络特征嵌入表示学习。
1)多通道图卷积编码器。本发明中,每一个通道都使用了图卷积网络(GCN)。GCN将卷积运算扩展到谱域的图形数据中,其卷积层用于学习图中每个结点的特征嵌入表示和从邻居结点聚合信息,将特征映射到嵌入特征空间。
多通道注意力图神经网络聚类的单体程序拆分方法对多通道属性图构建了三个 图卷积编码器,通过三通道GCN编码器将多属性矩阵和图结构映射到新的特征嵌入空间中。 具体来说,对于mm=1, 2,…,M)通道(本实施例取M=3),则GCN模型的函数为将图GX m 映射 到d维嵌入特征Z m 。则第m个图卷积编码器的第l层的输出
Figure 953876DEST_PATH_IMAGE045
为:
Figure 219773DEST_PATH_IMAGE046
其中,
Figure 563029DEST_PATH_IMAGE047
是具有自连接的邻接矩阵,I N 是单位矩阵;
Figure 346309DEST_PATH_IMAGE048
Figure 91411DEST_PATH_IMAGE049
对应图的度 矩阵,
Figure 793788DEST_PATH_IMAGE050
Figure 624340DEST_PATH_IMAGE051
是第m个图卷积编码器的权值参数,
Figure 194999DEST_PATH_IMAGE011
表示非线性激活函数。对于
Figure 794608DEST_PATH_IMAGE052
,当l=0时,
Figure 667886DEST_PATH_IMAGE053
Figure 94057DEST_PATH_IMAGE054
,当l=L时,
Figure 78193DEST_PATH_IMAGE055
H m 的第l个隐含层的输 入激活矩阵。如选取2层GCN模型,可表示为:
Figure 797888DEST_PATH_IMAGE056
其中
Figure 842067DEST_PATH_IMAGE057
是输入层到具有H个特征映射的隐含层权值矩阵,
Figure 771846DEST_PATH_IMAGE058
是隐含层到输出层的权值矩阵。
Figure 559673DEST_PATH_IMAGE059
N是结点个数,d是属性特征维 度。
Figure 133874DEST_PATH_IMAGE060
是激活函数,由此得到不同通道嵌入表示Z m
2)多通道图卷积解码器。为了能够提高每个通道GCN编码器特征表示的有效性,增 加了GCN解码器模块。重建多通道输入图的属性图X m 和结构图A m 。每个解码器模块,与编码器 层数相同,结构恰好相反。经过多通道GCN编码器模块后,已获得图嵌入表示Z m 。在每个解码 器端假定
Figure 348955DEST_PATH_IMAGE061
表示m通道的解码器重建属性图,
Figure 251183DEST_PATH_IMAGE062
代表m通道的解码器重建结构图。第m通道 第l层的属性特征重建可表示为:
Figure 577122DEST_PATH_IMAGE063
其中
Figure 5829DEST_PATH_IMAGE014
Figure 516445DEST_PATH_IMAGE015
,经过L层解码器,多通道结点属性矩阵
Figure 296182DEST_PATH_IMAGE064
。对于视图邻接矩阵的重建:
Figure 425812DEST_PATH_IMAGE020
使用重建图和原始图的误差继续优化网络,因此每个通道GCN网络的重建损失综合属性图重构误差和结构图重构误差,该部分损失函数定义为:
Figure 709026DEST_PATH_IMAGE065
S3,基于注意力的多通道特征嵌入融合。
使用注意力机制计算不同通道GCN的嵌入表示Z m 中不同结点的重要性
Figure 905390DEST_PATH_IMAGE066
,经过融 合得到新的嵌入特征表示Z。以结点e为例,其在m通道的嵌入表示Z m ,元素为
Figure 906844DEST_PATH_IMAGE067
m =1, 2,…,M。通过注意力机制先对每个通道的特征嵌入表示进行非线性变换,再用一个共 享注意力向量
Figure 840165DEST_PATH_IMAGE068
得到m通道结点e的注意力值
Figure 836940DEST_PATH_IMAGE069
Figure 830303DEST_PATH_IMAGE070
其中
Figure 319053DEST_PATH_IMAGE071
是权值矩阵,
Figure 790486DEST_PATH_IMAGE072
是偏置向量。对注意力值
Figure 923658DEST_PATH_IMAGE073
进行归 一化:
Figure 87923DEST_PATH_IMAGE074
较大
Figure 798390DEST_PATH_IMAGE032
值表示m通道e结点的嵌入特征越重要。类似地,对于所有的结点,可获得 学习后的权值
Figure 73514DEST_PATH_IMAGE075
,进一步地,
Figure 576039DEST_PATH_IMAGE076
。将三个通道嵌入表示Z m 进 行融合可获得最终的嵌入特征表示Z
Figure 645627DEST_PATH_IMAGE077
S4,基于谱聚类的微服务拆分。
经过多通道卷积图神经网络和注意力机制融合后,得到了新的嵌入特征表示Z,正常情况下,可采用分步骤的方式,只需要运行聚类方法进行划分即可,但考虑机器学习领域基于多通道注意力图神经网络聚类的单体程序微服务拆分方法的思路,在嵌入表示融合层上执行一个谱聚类层,定义损失函数,再联合优化整个多通道图神经网络模型参数。
谱聚类是基于图论的一种典型聚类算法,减少了对样本空间形状的要求,可以处 理非凸数据集,同时能有效克服集中经典聚类算法收敛于局部最优的缺点,因此本实施例 此处谱聚类算法对嵌入表示Z进行聚类。为了运行谱聚类,使用高斯核定义仿射矩阵S,如果
Figure 843390DEST_PATH_IMAGE078
,则
Figure 30526DEST_PATH_IMAGE079
;否则S eo =0。其中
Figure 262925DEST_PATH_IMAGE080
是向量z e z o 之间 的欧几里得距离,
Figure 503413DEST_PATH_IMAGE039
是尺度参数,S eo 对称且非负;然后,运行谱聚类算法将N个结点聚类到K 个不同划分中。
为了能够获得更具有判别性的嵌入表示和最优聚类结果,谱聚类后,构建簇的k-d树,借助k-d树实现最近邻的快速查找,找到与结点z e 同一个簇中曼哈顿距离最近的邻居结点z o 。定义聚类损失函数:
Figure 454052DEST_PATH_IMAGE081
其中,d(z e , z o )表示结点e和结点o之间的曼哈顿距离
Figure 195611DEST_PATH_IMAGE041
本发明首先通过多通道图神经网络对多属性图进行建模,通过注意力机制对特征嵌入表示进行融合,再使用谱聚类算法进行微服务拆分,训练过程中首先对损失函数进行了改进。根据网络模型结构,其损失函数由多通道图卷积网络的重构损失和聚类损失组成。定义为:
Figure 282516DEST_PATH_IMAGE082
其中,
Figure 959485DEST_PATH_IMAGE083
是超参数。通过最小化该损失函数训练整个多通道注意力图卷积神经 网络的参数,得到较高质量嵌入质量表示和聚类效果。
实验过程由三个步骤组成。第一步是对多通道图卷积神经网络模块网络参数进行预训练。第二步是对整个网络进行正式训练,得到最终的参数。第三步是使用学习到的嵌入表示Z进行聚类。
1)预训练优化网络参数。构建图临接矩阵A,多源属性图X m 输入到m个图卷积编码 器中获得嵌入表示Z m 。多通道图卷积解码器获得属性重建
Figure 131841DEST_PATH_IMAGE084
和结构重建
Figure 896665DEST_PATH_IMAGE085
,使用重建误 差优化每个通道图卷积网络参数。将训练得到的卷积自编码器的参数作为网络的初始参 数,计算注意力融合嵌入特征表示Z,使用谱聚类方法初始化聚类,完成初始化。
2)正式开始训练过程。对图卷积编码器、解码器和注意力层参数进行迭代优化,得到最终的参数。首先将多通道图形数据和参数输入到卷积自编码器网络。经过模型训练,获得隐含层嵌入表示和注意力层嵌入表示,使用注意力层嵌入表示数据谱聚类,得到划分结果,计算总体损失函数。通过最小化总体损失函数反向传播训练整体网络。
3)通过学习到的嵌入表示Z计算非负对称矩阵S,执行谱聚类获得最终聚类结果。
到此,该发明的训练过程和微服务提取已经计算完成。实施在一台运行Windows10(64位)、配备NVIDIA GeForce GTX 1660 Ti图形处理单元(GPU)和16gb内存的服务器上进行了所有的实验。使用PyTorch和Python实现,在训练过程中,使用了Adam优化器。为了评估本发明,使用Mono2Mirco提供的4个公开数据集进行测试。daytrader是从在线股票交易系统的运行追踪数据中抽取了含有28个类和103个方法的样本数据。acmeAir是从航空公司订票应用系统的运行追踪数据中抽取了含有73个类、428个方法的样本数据。jpetstore是从宠物上天系统的运行追踪数据中抽取了含有25个类和264个方法的样本数据。该项目是评估微服务提取方法中最常用的基线。如表1所示,plants是从购买植物和宠物的网店运行追踪数据中抽取了含有73个类和428个方法的样本数据。这些应用都是使用各种Java EE框架(如Spring、Apache、Struts等)构建的具有代表性的web应用。
表1 各数据集
Figure 103656DEST_PATH_IMAGE087
将本发明机基准方法Bunch、MEME、FoSCI和Mono2Micro进行了性能比较。对于所有 数据集,参数设置如下:预训练次数都是preepochs=350,正式训练次数epochs=300,学习率
Figure 685947DEST_PATH_IMAGE088
,聚类的数目
Figure 470232DEST_PATH_IMAGE089
。每个GCN编码器维度为
Figure 428961DEST_PATH_IMAGE090
Figure 490458DEST_PATH_IMAGE091
,结构损失权重
Figure 509229DEST_PATH_IMAGE092
Figure 30078DEST_PATH_IMAGE093
性能评价主要从功能独立性、模块性和交互复杂性三个角度进行。
(1)功能独立性。微服务的功能独立性是指服务提供单一功能职责的程度。一个微服务的功能是单一且一致的,则该服务在应用到新系统上则易于被新系统复用,同时能提高新系统的开发效率。
(2)模块性。模块性是指微服务能遵循高内聚、低耦合的程度。微服务之间的耦合程度越低、微服务内部聚合程度越高,则说明该微服务的模块性越好。因此,模块化主要用于评估微服务服务内部交互的一致性以及服务之间的松散耦合性(loosely coupled)。
(3)交互复杂性。服务的交互复杂性是指服务间动态交互行为的复杂程度。服务间的交互行为复杂,则发生故障后,很难有效在源代码中定位故障源头。
为了较好地量化评估基于多通道注意力图神经网络聚类的单体程序微服务拆分方法模型的微服务提取性能,本实施例采用了微服务提取中较通用的满足上述要求的评价指标。评价指标主要有3个:
(1)IFN(independence of functionality)。IFN强调外部依赖,评价微服务是否具有良好定义(well-defined)和独立性(independence)。ifn(interface number)用于量化一个给定服务的接口数目。它基于单一责任原则(single responsibility principle)。IFN表示所有ifn的平均值,可表示为:
Figure 526919DEST_PATH_IMAGE094
通常IFN值越小,表示给定服务越能承担单一责任。
(2)SM(structural modularity quality)用于量化微服务内的类间结构一致性,较高的SM值表示比较好的模块化服务,表示为:
Figure 177343DEST_PATH_IMAGE095
其中
Figure 491650DEST_PATH_IMAGE096
scohscop表示量化服务之间的耦合,
Figure 125893DEST_PATH_IMAGE097
Figure 426425DEST_PATH_IMAGE098
u i 表示当M个实体类之间发生结构调用依赖时一个服务内部边的 数目,与之类似,
Figure 196934DEST_PATH_IMAGE099
指的是服务之间的依赖发生时边的数目。
(3)ICP(inter-partition call percentage)表示服务间调用纯度,用于最小化不同调用的数量和服务间调用的数目,评估微服务之间的交互百分比。可表示为:
Figure 432875DEST_PATH_IMAGE100
其中c i,j 表示不同微服务之间的调用数目。ICP值越小,说明服务之间调用纯度越好。
主要目标是验证本发明所提取的微服务是否与功能和模块化的独立性有关,同时,测试结果的评价指标主要是SM、IFN和ICP。与其他方法的实验性能对比,结果如表2到表5所示。性能测试的结果是在参数设置选取的范围内跑了100次,然后取每个性能指标的中位数。其中↑表示值越大越好,↓表示该值越小越好。在所有数据集上,本发明取得了非常具有前景的结果。
表2 daytrader数据集上聚类分析结果
Figure 554415DEST_PATH_IMAGE101
表3 acmeAir数据集上聚类分析结果
Figure 393058DEST_PATH_IMAGE102
表4 jpetstore数据集上聚类分析结果
Figure 142708DEST_PATH_IMAGE103
表5 plants数据集上聚类分析结果
Figure 674183DEST_PATH_IMAGE104
从总体性能上比较,表2到表5列举了不同方法在四个数据集上的SM、IFN和ICP值。从表中可以看出在与同类方法CoGCN相比,在daytrader数据集上,ICP提升了37.6%,SM提升了41.86%。在acmeAir数据集上,ICP提升了32.21%,SM提升了63.16%,IFN提升了1.44%。在jpetstore数据集上,ICP提升了54.81%,SM提升了27.47%,IFN提升了15.2%。在plants数据集上,ICP提升了6.48%,SM提升了3.76%,IFN提升了6.13%。这表明基于多通道注意力图神经网络聚类的单体程序微服务拆分方法的多通道信息的充分利用和有效融合显著提升了提取微服务在功能性和模块性上的效果。
值得提及的是,与当前最具优势的其他非深度学习模型比较,基于多通道注意力图神经网络聚类的单体程序微服务拆分方法在daytrader数据集的ICP指标、在acmeAir数据集上的ICP指标和IFN指标、在jpetstore数据集上的ICP指标、在plants数据集上的IFN指标上都取得了最好的实验效果。表明了基于多通道深度学习的注意力卷积网络具有更强的嵌入表示学习能力,进一步提升了聚类的效果。
图5a到图5d给出了不同数据集上三种通道的图结点注意力系数热图。注意力融合机制是本模型的一个关键组成部分,它可以衡量和量化不同通道的重要性和不同通道中不同结点的重要性。图5a到图5d中可视化了在四个不同数据集上三个通道中每个图结点的注意力系数。从图中可以看出,三个通道具有不同的重要性,在不同数据集上,通道1和通道3的权值比通道2相对较高。实验结果表明基于多通道注意力图神经网络聚类的单体程序微服务拆分方法可以很好地利用不同通道的不同特征进行聚类。
图6a到图6c给出了不同数据集嵌入维度对不同指标性能的影响结果图。总体趋势,随着特征嵌入维度增大,ICP先增大后减小,SM先减小后增大,IFN受特征嵌入维度变化的影响较小。对于jpetstore和daytrader数据集,特征嵌入维度为8或64时,总体性能较好,对于acmeAir数据集,特征嵌入维度16时,总体性能较好。对于plants数据集,特征嵌入维度可在32与64之间平衡选择。
表6给出了本发明在jpegstore中提取的微服务结果,示出了基于Java Spring应用框架的jpetstore数据集在本发明基于多通道注意力图神经网络聚类的单体程序微服务拆分方法上的微服务提取结果。jpetstore是一宠物销售的购物应用程序,数据集中主要包含37个实体类,针对数据集中获取的多通道信息,经过基于多通道注意力图神经网络聚类的单体程序微服务拆分方法之后,可以得到四个微服务。每个微服务中包含的实体类如表6所示。
表6 jpegstore中提取的微服务结果
Figure 17440DEST_PATH_IMAGE106
每行代表某个聚类中包含的类。在这个示例中可以看到,每个微服务中内类之间具有较高的相似性,聚类结果较均匀。最终结果中包含了用户、目录、产品、订单和购物车等5个微服务。
综上,本发明针对单体应用程序微服务拆分问题,对面向对象程序设计中的类实体关系特征表示进行建模,提出了一种基于多通道注意力深度图卷积网络聚类的微服务拆分方法,考虑了不同类结点特征和拓扑结构信息的优势,达到了提高了模型性能的效果,再使用多通道图卷积神经网络对特征嵌入进行表示学习,通过注意力机制对嵌入特征的融合得到了更好的特征表示方式,最后通过谱聚类算法进行聚类得到微服务拆分结果。在4个通用数据集上进行了较广泛的验证实验,实验结果表明,多通道注意力图卷积神经网络聚类方法提升了微服务拆分的模块性和功能性的性能。
此外,本发明还提出了一种计算机可读存储介质,存储有计算机程序,计算机程序使计算机执行如上所述的多通道注意力图神经网络聚类的单体程序拆分方法。
此外,本发明还提出了一种电子设备,包括:存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时,实现如上所述的多通道注意力图神经网络聚类的单体程序拆分方法。
以上仅是本发明的优选实施方式,本发明的保护范围并不仅局限于上述实施例,凡属于本发明思路下的技术方案均属于本发明的保护范围。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理前提下的若干改进和润饰,应视为本发明的保护范围。

Claims (8)

1.多通道注意力图神经网络聚类的单体程序拆分方法,其特征在于,包括:
步骤S1:对JAVA单体程序中获取的类和类之间的多源关系建模并组合形成多通道信息数据对,基于多通道信息数据对和邻接矩阵构建单体程序多属性图;
步骤S2:将单体程序多属性图输入到多通道图卷积编码器获得对应的特征嵌入表示,利用多通道图卷积解码器重构多通道信息数据对并基于重构误差设计重构损失函数;
步骤S3:通过注意力机制计算特征嵌入表示中各结点的重要性,并自适应融合为新的特征嵌入表示;
步骤S4:通过图神经网络和聚类的联合学习框架对新的特征嵌入表示进行聚类,实现微服务的划分,并基于重构损失函数和聚类过程中产生的聚类损失函数,对图神经网络的参数进行优化。
2.如权利要求1所述的多通道注意力图神经网络聚类的单体程序拆分方法,其特征在于:所述步骤S1具体包括如下子步骤:
步骤S11:通过对JAVA应用程序的动态分析,获得运行时调用链追踪数据信息;
步骤S12:根据调用链追踪数据信息,得到类与调用链之间的关系子图X class-trace
步骤S13:根据调用链追踪数据信息,得到类之间的矩阵属性子图X class-occurrence
步骤S14:根据调用链追踪数据信息,得到类之间的继承关系子图X class-inheri
步骤S15:根据调用链追踪数据信息,得到类之间的邻接矩阵A;邻接矩阵定义如下:
Figure DEST_PATH_IMAGE002
其中,E表示继承关系子图的边集合,v a v b 分别表示结点a和结点bA uv 表示邻接矩阵A的第u行、第v列的值;
步骤S16:将关系子图X class-trace 、矩阵属性子图X class-occurrence 和继承关系子图X class-inheri 进行组合形成多通道信息数据对X 1 X 2 X 3 ,其中,X 1 =(X class-trace ,X class-occurrence ),X 2 =(X class-trace , X class-inheri ),X 3 =(X class-occurrence , X class-inheri ),结合邻接矩阵A构建单体程序多属性图。
3.如权利要求2所述的多通道注意力图神经网络聚类的单体程序拆分方法,其特征在于:所述步骤S2具体包括如下子步骤:
步骤S21:将步骤S1中得到的单体程序多属性图输入多通道图卷积编码器,学习得到三个通道的特征嵌入表示,模型描述如下:
Figure DEST_PATH_IMAGE004
其中,f m 为第m个通道信息数据与特征嵌入表示的映射关系,G为单体程序多属性图,X m 为第m个通道信息数据对,
Figure DEST_PATH_IMAGE006
为图神经网络的参数,Z m 表示学习得到的特征嵌入表示;
m个图卷积编码器的第l层的输出
Figure DEST_PATH_IMAGE008
为:
Figure DEST_PATH_IMAGE010
其中,
Figure DEST_PATH_IMAGE012
是具有自连接的邻接矩阵,I N 是单位矩阵;
Figure DEST_PATH_IMAGE014
Figure DEST_PATH_IMAGE016
对应图的度矩阵,
Figure DEST_PATH_IMAGE018
是第m个图卷积编码器的权值参数,
Figure DEST_PATH_IMAGE020
表示第m个图卷积编码器第l-1层的输出,
Figure DEST_PATH_IMAGE022
表示非线性激活函数;
步骤S22:将步骤S21中得到的特征嵌入表示输入多通道图卷积解码器,重构多通道信息数据对;第m个图卷积解码器的第l层的输出
Figure DEST_PATH_IMAGE024
为:
Figure DEST_PATH_IMAGE026
其中,
Figure DEST_PATH_IMAGE028
Figure DEST_PATH_IMAGE030
I n 是单位矩阵,DA对应图的度矩阵,
Figure DEST_PATH_IMAGE032
是第m个图卷积解码器的权值参数;
Figure DEST_PATH_IMAGE034
表示第m个图卷积解码器第l-1层的输出;第m个图卷积解码器最后一层的输出就是重构后的第m个通道信息数据对
Figure DEST_PATH_IMAGE036
重构m通道视图邻接矩阵
Figure DEST_PATH_IMAGE038
Figure DEST_PATH_IMAGE040
基于重构误差构建每个通道图神经网络的重构损失,重构损失函数L sa 定义为:
Figure DEST_PATH_IMAGE042
其中,
Figure DEST_PATH_IMAGE044
是图神经网络的参数,
Figure DEST_PATH_IMAGE046
是超参数,M是通道数目。
4.如权利要求3所述的多通道注意力图神经网络聚类的单体程序拆分方法,其特征在于:所述步骤S3具体如下:
通过注意力机制先对每个通道的特征嵌入表示进行非线性变换,再用一个共享注意力向量
Figure DEST_PATH_IMAGE048
得到m通道结点e的注意力值
Figure DEST_PATH_IMAGE050
Figure DEST_PATH_IMAGE052
其中,
Figure DEST_PATH_IMAGE054
是权值矩阵,h’表示共享注意力向量的维度,h表示注意力机制的通道数;
Figure DEST_PATH_IMAGE056
表示m通道e结点的特征嵌入表示,
Figure DEST_PATH_IMAGE058
是偏置向量;对
Figure DEST_PATH_IMAGE060
进行归一化:
Figure DEST_PATH_IMAGE062
其中,
Figure DEST_PATH_IMAGE064
值表示m通道e结点的特征嵌入表示的重要性,获得学习后的权值
Figure DEST_PATH_IMAGE066
n表示嵌入特征维度;将三个通道的特征嵌入表示Z m 进行融合获得新的特征嵌入表示Z
Figure DEST_PATH_IMAGE068
其中,
Figure DEST_PATH_IMAGE070
5.如权利要求4所述的多通道注意力图神经网络聚类的单体程序拆分方法,其特征在于:所述步骤S4具体如下:
采用谱聚类算法对特征嵌入表示Z进行聚类,使用高斯核定义仿射矩阵S,如果
Figure DEST_PATH_IMAGE072
,则
Figure DEST_PATH_IMAGE074
否则S eo =0;S eo 代表结点e和结点o通过高斯核函数计算得到的相似度,N表示结点数,z e 表示结点e的特征嵌入表示,
Figure DEST_PATH_IMAGE076
是向量z e z o 之间的欧几里得距离,
Figure DEST_PATH_IMAGE078
是尺度参数,S eo 对称且非负;然后,运行谱聚类算法将N个结点聚类到K个不同划分中;
谱聚类后,构建簇的k-d树,找到与结点z e 同一个簇中曼哈顿距离最近的邻居结点z o ,定义聚类损失函数L clus
Figure DEST_PATH_IMAGE080
其中,d(z e , z o )表示结点e和结点o之间的曼哈顿距离
Figure DEST_PATH_IMAGE082
综合L sa L clus 形成新的损失函数L
Figure DEST_PATH_IMAGE084
其中,
Figure DEST_PATH_IMAGE086
是超参数;通过最小化损失函数L训练并优化图神经网络的参数。
6.多通道注意力图神经网络聚类的单体程序拆分系统,其特征在于,包括:多通道注意力网络模块、多通道图卷积神经网络模块、注意力机制模块和联合学习模块;
所述多通道注意力网络模块对JAVA单体程序中获取的类和类之间的多源关系建模并组合形成多通道信息数据对,基于多通道信息数据对和邻接矩阵构建单体程序多属性图;
所述多通道图卷积神经网络模块包括多通道图卷积编码器和多通道图卷积解码器,所述单体程序多属性图输入到多通道图卷积编码器获得对应的特征嵌入表示;所述多通道图卷积解码器重构多通道信息数据对并基于重构误差设计重构损失函数;
所述注意力机制模块通过注意力机制计算特征嵌入表示中各结点的重要性,并自适应融合为新的特征嵌入表示;
所述联合学习模块通过图神经网络和聚类的联合学习框架对新的特征嵌入表示进行聚类,实现微服务的划分,并基于重构损失函数和聚类过程中产生的聚类损失函数,对图神经网络的参数进行优化。
7.一种计算机可读存储介质,存储有计算机程序,其特征在于,所述计算机程序使计算机执行如权利要求1-5任一项所述的多通道注意力图神经网络聚类的单体程序拆分方法。
8.一种电子设备,其特征在于,包括:存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行计算机程序时,实现如权利要求1-5任一项所述的多通道注意力图神经网络聚类的单体程序拆分方法。
CN202210559572.8A 2022-05-23 2022-05-23 多通道注意力图神经网络聚类的单体程序拆分方法及系统 Active CN114647465B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210559572.8A CN114647465B (zh) 2022-05-23 2022-05-23 多通道注意力图神经网络聚类的单体程序拆分方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210559572.8A CN114647465B (zh) 2022-05-23 2022-05-23 多通道注意力图神经网络聚类的单体程序拆分方法及系统

Publications (2)

Publication Number Publication Date
CN114647465A CN114647465A (zh) 2022-06-21
CN114647465B true CN114647465B (zh) 2022-08-16

Family

ID=81997123

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210559572.8A Active CN114647465B (zh) 2022-05-23 2022-05-23 多通道注意力图神经网络聚类的单体程序拆分方法及系统

Country Status (1)

Country Link
CN (1) CN114647465B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11860980B2 (en) * 2022-01-05 2024-01-02 International Business Machines Corporation Cognitive method to split monolithic architecture into microservice architecture

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115114980A (zh) * 2022-06-28 2022-09-27 支付宝(杭州)信息技术有限公司 联合训练用户聚类模型的、用户聚类方法及装置
CN115545098B (zh) * 2022-09-23 2023-09-08 青海师范大学 一种基于注意力机制的三通道图神经网络的节点分类方法
CN117311801B (zh) * 2023-11-27 2024-04-09 湖南科技大学 一种基于网络化结构特征的微服务拆分方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113780470A (zh) * 2021-09-28 2021-12-10 广西师范大学 一种基于自适应多通道交叉图卷积网络的图分类方法
CN114296975A (zh) * 2021-12-22 2022-04-08 复旦大学 一种分布式系统调用链和日志融合异常检测方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113780470A (zh) * 2021-09-28 2021-12-10 广西师范大学 一种基于自适应多通道交叉图卷积网络的图分类方法
CN114296975A (zh) * 2021-12-22 2022-04-08 复旦大学 一种分布式系统调用链和日志融合异常检测方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11860980B2 (en) * 2022-01-05 2024-01-02 International Business Machines Corporation Cognitive method to split monolithic architecture into microservice architecture

Also Published As

Publication number Publication date
CN114647465A (zh) 2022-06-21

Similar Documents

Publication Publication Date Title
CN114647465B (zh) 多通道注意力图神经网络聚类的单体程序拆分方法及系统
US11449670B2 (en) Iterative development and/or scalable deployment of a spreadsheet-based formula algorithm
CN107480694B (zh) 基于Spark平台采用两次评价的加权选择集成三支聚类方法
US10467060B2 (en) Performing data analytics utilizing a user configurable group of reusable modules
Wang et al. A scalable data science workflow approach for big data bayesian network learning
JP7486250B2 (ja) 高速スクリーニングのためのドメイン固有言語インタープリタ及び対話型視覚インターフェース
Patel et al. A hybrid CNN-LSTM model for predicting server load in cloud computing
Ma et al. Fuzzy hypergraph network for recommending top-K profitable stocks
Xu et al. Graph partitioning and graph neural network based hierarchical graph matching for graph similarity computation
Saddad et al. Lake data warehouse architecture for big data solutions
Muniswamaiah et al. Data virtualization for decision making in big data
Suleiman et al. An empirical evaluation of intelligent machine learning algorithms under big data processing systems
CN115409541A (zh) 基于数据血缘的卷烟品牌数据处理方法
Fatima et al. Automated feature synthesis from relational database for data science related problems
Jayasree Data Mining: Exploring Big Data Using Hadoop and Map Reduce
Ntaliakouras et al. An apache spark methodology for forecasting tourism demand in greece
Hsu et al. Similarity search over personal process description graph
Ferranti et al. An experimental analysis on evolutionary ontology meta-matching
SMITH et al. A level-wise taxonomic perspective on automated machine learning to date and beyond: Challenges and opportunities
Araujo gingado: a machine learning library focused on economics and finance
US20240012997A1 (en) Learning embedded representation of a correlation matrix to a network with machine learning
Harsh et al. Big Data hysteria, cognizance and scope
Greasley Using analytics with discrete-event simulation
CN118093439A (zh) 一种基于一致图聚类的微服务提取方法和系统
Chiou et al. Building a distributed, gpu-based machine learning library

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant