全网唯一标准王
(19)国家知识产权局 (12)发明 专利申请 (10)申请公布号 (43)申请公布日 (21)申请 号 202211163783.6 (22)申请日 2022.09.23 (71)申请人 中国电信股份有限公司 地址 100033 北京市西城区金融大街31号 (72)发明人 姜林  (74)专利代理 机构 中国贸促会专利商标事务所 有限公司 1 1038 专利代理师 刘剑波 (51)Int.Cl. G06F 11/36(2006.01) G06F 40/242(2020.01) G06N 3/04(2006.01) G06N 3/08(2006.01) G06N 20/00(2019.01) (54)发明名称 模型训练方法和装置、 代码检索方法和装 置、 存储介质 (57)摘要 本公开提供一种模型训练方法和装置、 代码 检索方法和装置、 存储介质, 涉及大数据领域。 模 型训练方法包括: 抽取抛出异常的样本代码片段 的内部信息和外部信息; 将样 本代码片段的内部 信息和外部信息转换为样本代码片段的初始向 量; 利用样本代码片段的初始向量构造训练样 本; 利用训练样本训练机器学习模型, 并将机器 学习模型输出的与训练样本对应的嵌入向量写 入向量数据库中。 本公开利用经过训练的机器学 习模型和生成的向量数据库对抛出异常的代码 进行代码检索。 权利要求书3页 说明书9页 附图4页 CN 115481035 A 2022.12.16 CN 115481035 A 1.一种模型训练方法, 由模型训练装置执 行, 包括: 抽取抛出异常的样本代码片段的内部信息和外 部信息; 将所述样本代码片段的内部信息和外 部信息转换为所述样本代码片段的初始向量; 利用所述样本代码片段的初始向量构造训练样本; 利用所述训练样本训练机器学习模型, 并将所述机器学习 模型输出的与所述训练样本 对应的嵌入向量写入向量数据库中。 2.根据权利要求1所述的方法, 其中, 抽取 抛出异常的样本代码片段的内部信息包括: 将按顺序遍历出的所述样本代码片段中的令牌存入第 一列表中, 以便将所述第 一列表 作为所述样本代码片段的内部信息, 其中所述第一列表的长度不大于预设长度阈值。 3.根据权利要求1所述的方法, 其中, 抽取 抛出异常的样本代码片段的外 部信息包括: 将所述样本代码片段解析为第一抽象语法树, 从所述第一抽象语法树上提取所述样本代码片段的所在方法和所在类的特征, 以所述 样本代码片段的外 部信息。 4.根据权利要求3所述的方法, 其中, 所述样本代码片段的所在方法和所在类的特征包括以下内容中的至少一项: 所在类的 名称enclo singType、 所在方法的名称enclosingM ethod、 所在方法的返回类 型returnType、 所在方法的注解类型annotation、 所在方法抛出的异常类型t hrowsException, 其中所在方 法的注解类型和异常类型只保留第一项。 5.根据权利要求1所述的方法, 其中, 将所述样本代码片段的内部信 息和外部信 息转换 为所述样本代码片段的初始向量包括: 分别使用词向量模型为所述样本代码片段的内部信息和外部信息构建对应的内部信 息词典和外 部信息词典; 根据内部信 息词典, 将所述样本代码片段的内部信 息的每个令牌转化为对应的第 一向 量; 根据外部信 息词典, 将所述样本代码片段的外部信 息的每个令牌转化为对应的第 二向 量; 将全部第一向量和全部第二向量进行拼接, 以生成所述样本代码片段的初始向量。 6.根据权利要求1所述的方法, 其中, 所述训练样本item=<i nput,input>, 其中i nput为所述样本代码片段的初始向量。 7.根据权利要求1 ‑6中任一项所述的方法, 其中, 所述机器学习模型依次包括输入层、 多个隐层、 全连接层和输出层, 每个隐层包括一个 卷积层和一个池化层, 其中所述输入层和输出层的维度相同; 将所述机器学习模型输出的与所述训练样本对应的嵌入向量写入向量数据库中包括: 将所述机器学习模型中的全连接层输出的与所述训练样本对应的嵌入向量写入向量 数据库中。 8.一种模型训练装置, 包括: 第一训练模块, 被 配置为抽取 抛出异常的样本代码片段的内部信息和外 部信息; 第二训练模块, 被配置为将所述样本代码片段的内部信 息和外部信 息转换为所述样本 代码片段的初始向量;权 利 要 求 书 1/3 页 2 CN 115481035 A 2第三训练模块, 被配置为利用所述样本代码片段的初始向量构造训练样本, 利用所述 训练样本训练机器学习模型, 并将所述机器学习模型输出的与所述训练样本对应的嵌入向 量写入向量数据库中。 9.一种模型训练装置, 包括: 存储器, 被配置为存 储指令; 处理器, 耦合到存储器, 处理器被配置为基于存储器存储的指令执行实现如权利要求 1‑7中任一项所述的方法。 10.一种代码检索方法, 包括: 抽取当前 抛出异常的待查询代码片段的内部信息和外 部信息; 将所述待查询代码片段的内部信息和外部信息转换为所述待查询代码片段的初始向 量; 利用机器学习模型对所述待查询代码片段的初始向量进行处理, 以得到查询向量, 其 中所述机器学习模型利用权利要求1 ‑7中任一项所述的训练方法训练得到; 计算所述查询向量与向量数据库中的每个嵌入向量之间的相似度, 其中所述向量数据 库利用权利要求1 ‑7中任一项所述的训练方法得到; 将与最大相似度相对应的嵌入向量作为目标嵌入向量; 将所述目标嵌入向量对应的异常处 理代码作为检索结果。 11.根据权利要求10所述的方法, 其中, 抽取当前抛出异常的待查询代码片段的内部信 息包括: 将按顺序遍历出的所述待查询代码片段中的令牌存入第 二列表中, 以便将所述第 二列 表作为所述待查询代码片段的内部信息, 其中所述第二列表的长度不大于预设长度阈值。 12.根据权利要求10所述的方法, 其中, 抽取当前抛出异常的待查询代码片段的外部信 息包括: 将所述待查询代码片段解析为第二抽象语法树; 从所述第二抽象语法树上提取所述待查询代码片段的所在方法和所在类的特征, 以所 述待查询代码片段的外 部信息。 13.根据权利要求12所述的方法, 其中, 所述待查询代码片段的所在方法和所在类的特征包括以下内容中的至少一项: 所在类 的名称enclosingType、 所在方法的名称enclosingMethod、 所在方法的返回类型 returnType、 所在方法的注解类型annotation、 所在方法抛出的异常类型 throwsExcepti on, 其中所在方法的注解类型和异常类型只保留第一项。 14.根据权利要求10所述的方法, 其中, 将所述待查询代码片段的内部信 息和外部信 息 转换为所述待查询代码片段的初始向量包括: 分别使用词向量模型为所述待查询代码片段的内部信息和外部信息构建对应的内部 信息词典和外 部信息词典; 根据内部信 息词典, 将所述待查询代码片段的内部信 息的每个令牌转化为对应的第 三 向量; 根据外部信 息词典, 将所述待查询代码片段的外部信 息的每个令牌转化为对应的第四 向量;权 利 要 求 书 2/3 页 3 CN 115481035 A 3

.PDF文档 专利 模型训练方法和装置、代码检索方法和装置、存储介质

文档预览
中文文档 17 页 50 下载 1000 浏览 0 评论 309 收藏 3.0分
温馨提示:本文档共17页,可预览 3 页,如浏览全部内容或当前文档出现乱码,可开通会员下载原始文档
专利 模型训练方法和装置、代码检索方法和装置、存储介质 第 1 页 专利 模型训练方法和装置、代码检索方法和装置、存储介质 第 2 页 专利 模型训练方法和装置、代码检索方法和装置、存储介质 第 3 页
下载文档到电脑,方便使用
本文档由 人生无常 于 2024-03-18 12:13:44上传分享
友情链接
站内资源均来自网友分享或网络收集整理,若无意中侵犯到您的权利,敬请联系我们微信(点击查看客服),我们将及时删除相关资源。