-
公开(公告)号:CN117573085A
公开(公告)日:2024-02-20
申请号:CN202311340389.X
申请日:2023-10-17
Applicant: 广东工业大学
IPC: G06F8/30 , G06F8/75 , G06F40/274 , G06F40/205 , G06N3/0985
Abstract: 本发明公布了一种基于层次结构特征和序列特征的代码补全方法,具体实现步骤如下:(1)数据预处理:解析待补全源代码为对应的抽象语法树,解析抽象语法树生成对应的函数调用图,再构建抽象语法树对应的结点序列。(2)构建基于层次结构特征和序列特征的代码补全模型:构建抽象语法序列图并提取其特征;使用抽象语法树逐步构建语句级抽象语法树、块级抽象语法树和结构增强函数调用图,并提取结构增强函数调用图的特征;根据提取得到的特征生成补全代码。(4)划分数据预处理后的数据集,设置模型的所有初始参数和超参数;加载数据集至模型中进行训练,训练结束后得到该模型的最优参数。(5)将该代码补全模型应用于代码补全任务。
-
公开(公告)号:CN117573084B
公开(公告)日:2024-04-12
申请号:CN202310959780.1
申请日:2023-08-02
Applicant: 广东工业大学
IPC: G06F8/30 , G06F8/41 , G06N3/0464 , G06N3/08
Abstract: 本发明公布了一种基于逐层融合抽象语法树的代码补全方法,具体实现步骤如下:(1)对数据集中的每一份待补全源程序进行预处理:将待补全源程序解析为对应的抽象语法树、控制流程图、数据流程图和函数调用图,并将经过预处理后的数据集进行划分。(2)搭建一个基于逐层融合抽象语法树的代码补全模型:逐步构建语句级抽象语法树、增强语句级抽象语法树和信息增强函数调用图,使用图注意力网络提取信息增强函数调用图的信息,得到对应的特征向量,根据该特征向量生成补全代码。(3)设置模型的所有初始参数和超参数,将训练集和验证集加载至该模型中进行训练,训练结束后得到对于该模型最优的参数。(4)运用该模型进行代码补全。
-
公开(公告)号:CN117573084A
公开(公告)日:2024-02-20
申请号:CN202310959780.1
申请日:2023-08-02
Applicant: 广东工业大学
IPC: G06F8/30 , G06F8/41 , G06N3/0464 , G06N3/08
Abstract: 本发明公布了一种基于逐层融合抽象语法树的代码补全方法,具体实现步骤如下:(1)对数据集中的每一份待补全源程序进行预处理:将待补全源程序解析为对应的抽象语法树、控制流程图、数据流程图和函数调用图,并将经过预处理后的数据集进行划分。(2)搭建一个基于逐层融合抽象语法树的代码补全模型:逐步构建语句级抽象语法树、增强语句级抽象语法树和信息增强函数调用图,使用图注意力网络提取信息增强函数调用图的信息,得到对应的特征向量,根据该特征向量生成补全代码。(3)设置模型的所有初始参数和超参数,将训练集和验证集加载至该模型中进行训练,训练结束后得到对于该模型最优的参数。(4)运用该模型进行代码补全。
-
公开(公告)号:CN117573085B
公开(公告)日:2024-04-09
申请号:CN202311340389.X
申请日:2023-10-17
Applicant: 广东工业大学
IPC: G06F8/30 , G06F8/75 , G06F40/274 , G06F40/205 , G06N3/0985
Abstract: 本发明公布了一种基于层次结构特征和序列特征的代码补全方法,具体实现步骤如下:(1)数据预处理:解析待补全源代码为对应的抽象语法树,解析抽象语法树生成对应的函数调用图,再构建抽象语法树对应的结点序列。(2)构建基于层次结构特征和序列特征的代码补全模型:构建抽象语法序列图并提取其特征;使用抽象语法树逐步构建语句级抽象语法树、块级抽象语法树和结构增强函数调用图,并提取结构增强函数调用图的特征;根据提取得到的特征生成补全代码。(4)划分数据预处理后的数据集,设置模型的所有初始参数和超参数;加载数据集至模型中进行训练,训练结束后得到该模型的最优参数。(5)将该代码补全模型应用于代码补全任务。
-
-
-