摘要
本发明涉及结合源码语义和异常反馈的程序缺陷自动修复方法,属于计算机程序技术领域。本发明首先选取待修复程序的最新发行版本,对该版本程序随机添加扰动生成多个缺陷变体程序;其次提取缺陷变体程序的缺陷行、缺陷近邻行等元素构建缺陷上下文;然后获取缺陷变体程序的编译错误或执行后的功能错误作为异常反馈;最后将缺陷上下文和异常反馈向量化并拼接为训练数据,设计损失函数以最小化修复代码与最新发行程序的语义差异,训练生成缺陷修复模型。本发明针对现有方法使用开源训练数据与待修复程序语义差异较大,造成模型难以学习正常程序特征的问题,通过构建专有训练数据并设计目标函数指导模型学习语义及上下文信息,提升正确修复的缺陷数量。
技术关键词
语义
计算机程序技术
样本
程序特征
套件
数据
序列
变量
元素
阶段
定义
系统为您推荐了相关专利信息
神经网络优化方法
历史会话
生成推荐内容
节点
随机噪声
算力系统
数据存储容量
调用管理方法
调用管理系统
数据特征提取
语义分割方法
融合图像信息
解码器结构
图片
卷积模块