基于图形神经网络的工业管理特征的代码相似性预测模型
Zhenhao Li1, Hang Lei1, Zhichao Ma1
1School of Information and Software Engineering, University of Electronic Science and Technology of China, Chengdu 610054, China.
Entropy (Basel, Switzerland)
|June 26, 2024
概括
本研究介绍了一种新的图形神经网络 (GNN) 模型,用于精确计算工业管理软件中的代码相似性. FSPS-GNN模型显著优于现有方法,增强了代码分析和软件工程实践.
科学领域:
- 计算机科学 计算机科学
- 软件工程 软件工程 软件工程
- 人工智能的人工智能
背景情况:
- 由于有限的系统API调用和广泛的自定义变量,工业管理软件代码对相似性计算提出了挑战.
- 传统的基于文本和神经网络的方法与这种类型的代码的独特特征作斗争.
研究的目的:
- 提出一种新型模型,FSPS-GNN,用于工业管理软件中有效的代码相似性计算.
- 解决分析复杂代码结构的现有方法的局限性.
主要方法:
- 开发了使用图形神经网络 (GNN) 的FSPS-GNN模型.
- 将代码特征分类为外部和内部图形.
- 采用了四个阶段的过程:特征嵌入,增强,融合和相似性预测.
- 在嵌入和增强阶段利用不同的结构GNN来改善功能交互.
主要成果:
- 在来自三个开源项目的代码上获得了87.57%的平均精度和89.12%的F0.5评分.
- 与现有的基于GNN的模型相比,显示了较低的平均平方误差 (MSE) (0.0041到0.0266更低).
- 与比较型号相比,显示了更高的F0.5评分 (3.3259%至6.4392%更高).
结论:
- 该FSPS-GNN模型有效计算工业管理软件的代码相似性.
- 该研究扩大了GNN在软件工程和代码分析中的应用性.
- 结果为解决代码相似性挑战提供了有价值的见解.
相关概念视频
Classification of Systems-I
179
Linearity is a system property characterized by a direct input-output relationship, combining homogeneity and additivity.
Homogeneity dictates that if an input x(t) is multiplied by a constant c, the output y(t) is multiplied by the same constant. Mathematically, this is expressed as:
Homogeneity dictates that if an input x(t) is multiplied by a constant c, the output y(t) is multiplied by the same constant. Mathematically, this is expressed as:
179
Time-Series Graph
4.3K
A time-series graph is a line graph with repeated measurements taken at successive intervals of time. It is also called a time series chart. To construct a time-series graph, one must look at both pieces of a paired data set. The horizontal axis is used to plot the time increments, and the vertical axis is used to plot the values of the variable that one is measuring. By using the axes in this way, each point on the graph will correspond to time and a measured quantity. The points on the graph...
4.3K
Vector Algebra: Graphical Method
12.0K
Vectors can be multiplied by scalars, added to other vectors, or subtracted from other vectors. The vector sum of two (or more) vectors is called the resultant vector or, for short, the resultant.
We use the laws of geometry to construct resultant vectors, followed by trigonometry to find vector magnitudes and directions. For a geometric construction of the sum of two vectors in a plane, we follow the parallelogram rule. Suppose two vectors are at arbitrary positions. Translate either one of...
We use the laws of geometry to construct resultant vectors, followed by trigonometry to find vector magnitudes and directions. For a geometric construction of the sum of two vectors in a plane, we follow the parallelogram rule. Suppose two vectors are at arbitrary positions. Translate either one of...
12.0K
Classification of Systems-II
139
Continuous-time systems have continuous input and output signals, with time measured continuously. These systems are generally defined by differential or algebraic equations. For instance, in an RC circuit, the relationship between input and output voltage is expressed through a differential equation derived from Ohm's law and the capacitor relation,
139
Classification of Signals
435
In signal processing, signals are classified based on various characteristics: continuous-time versus discrete-time, periodic versus aperiodic, analog versus digital, and causal versus noncausal. Each category highlights distinct properties crucial for understanding and manipulating signals.
A continuous-time signal holds a value at every instant in time, representing information seamlessly. In contrast, a discrete-time signal holds values only at specific moments, often denoted as x(n), where...
A continuous-time signal holds a value at every instant in time, representing information seamlessly. In contrast, a discrete-time signal holds values only at specific moments, often denoted as x(n), where...
435
Correlation and Regression
1.2K
In statistics, correlation describes the degree of association between two variables. In the subfield of linear regression, correlation is mathematically expressed by the correlation coefficient, which describes the strength and direction of the relationship between two variables. The coefficient is symbolically represented by 'r' and ranges from -1 to +1. A positive value indicates a positive correlation where the two variables move in the same direction. A negative value suggests a...
1.2K


