[发明专利]代码修复方法及装置、存储介质及电子设备在审
申请号: | 202210265115.8 | 申请日: | 2022-03-17 |
公开(公告)号: | CN114625405A | 公开(公告)日: | 2022-06-14 |
发明(设计)人: | 伍杰;闫保奇;袁淑美 | 申请(专利权)人: | 中国电信股份有限公司 |
主分类号: | G06F8/70 | 分类号: | G06F8/70;G06F11/36 |
代理公司: | 北京律智知识产权代理有限公司 11438 | 代理人: | 王辉 |
地址: | 100033 *** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 代码 修复 方法 装置 存储 介质 电子设备 | ||
1.一种代码修复方法,其特征在于,所述方法包括:
通过故障代码识别模型获取故障代码,将所述故障代码划分为多个公共子词单元;
将所述公共子词单元转换为公共子词特征向量,将所述公共子词特征向量输入代码预测模型;
根据所述代码预测模型生成预测修复代码,根据所述预测修复代码确定所述预测修复代码的正确概率;
根据所述预测修复代码的正确概率将所述预测修复代码确定为所述故障代码对应的修复代码。
2.根据权利要求1所述的方法,其特征在于,在所述通过故障代码识别模型获取故障代码之前,所述方法还包括:
获取样本故障代码以及与所述样本故障代码对应的样本修复代码;
将所述样本故障代码解析为故障代码语法序列,将所述样本故障代码对应的样本修复代码解析为修复代码语法序列;
根据所述故障代码语法序列以及所述修复代码语法序列训练所述故障代码识别模型。
3.根据权利要求2所述的方法,其特征在于,所述根据所述故障代码语法序列以及所述修复代码语法序列训练所述故障代码识别模型,包括:
根据所述故障代码语法序列生成所述故障代码语法序列对应的故障代码特征向量;
根据所述修复代码语法序列生成所述修复代码语法序列对应的修复代码特征向量;
将所述故障代码特征向量输入所述故障代码识别模型得到预测结果,根据所述预测结果以及所述修复代码特征向量确定所述故障代码识别模型的识别损失函数;
通过所述识别损失函数对所述故障代码识别模型中的神经网络参数进行迭代更新,以训练所述故障代码识别模型。
4.根据权利要求2所述的方法,其特征在于,在根据所述故障代码语法序列以及所述修复代码语法序列训练所述故障代码识别模型之前,所述方法还包括:
获取所述故障代码语法序列对应的代码故障类型,获取所述故障代码语法序列对应的故障数量;其中,所述代码故障类型包括语法故障;
将所述故障类型为语法故障的故障代码语法序列以及故障数量小于预设故障数量的故障代码语法序列抛弃。
5.根据权利要求1所述的方法,其特征在于,所述将所述公共子词特征向量输入代码预测模型,包括:
根据所述公共子词特征向量确定所述公共子词特征向量对应的公共子词特征字向量、公共子词特征文本向量和公共子词特征位置向量;
将所述公共子词特征字向量、公共子词特征文本向量和公共子词特征位置向量输入所述代码预测模型。
6.根据权利要求1所述的方法,其特征在于,所述根据所述预测修复代码确定所述预测修复代码的正确概率,包括:
获取所述预测修复代码中的多个代码单词,根据所述多个代码单词中每两个相邻代码单词确定所述修复子概率;
根据所述多个修复子概率确定所述修复代码的正确概率。
7.根据权利要求1所述的方法,其特征在于,所述根据所述预测修复代码确定所述预测修复代码的正确概率,包括:
将所述预测修复代码转换为预测代码特征向量,根据所述预测代码特征向量生成预测代码语义图谱;
根据所述预测代码语义图谱的相关信息以及代码修复先验知识确定所述修复代码的正确概率。
8.一种代码修复装置,其特征在于,所述装置包括:
故障代码识别模块,用于通过故障代码识别模型获取故障代码,将所述故障代码划分为多个公共子词单元;
公共子词划分模块,用于将所述公共子词单元转换为公共子词特征向量,将所述公共子词特征向量输入代码预测模型;
修复代码生成模块,用于根据所述代码预测模型生成预测修复代码,根据所述预测修复代码确定所述预测修复代码的正确概率;
修复代码确定模块,用于根据所述预测修复代码的正确概率将所述预测修复代码确定为所述故障代码对应的修复代码。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述程序被处理器执行时实现如权利要求1~7中任一项所述的方法。
10.一种电子设备,其特征在于,包括:
一个或多个处理器;以及
存储器,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现如权利要求1~7中任一项所述的方法。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国电信股份有限公司,未经中国电信股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202210265115.8/1.html,转载请声明来源钻瓜专利网。