-
公开(公告)号:CN115600012A
公开(公告)日:2023-01-13
申请号:CN202211523157.3
申请日:2022-12-01
Applicant: 哈尔滨工业大学(深圳)(哈尔滨工业大学深圳科技创新研究院)(CN)
IPC: G06F16/9535 , G06F8/75 , G06F18/214 , G06N3/0464 , G06N3/08
Abstract: 本发明提供了一种基于知识增强和结构对比的API推荐方法,包括以下步骤:步骤1,代码预处理构图;解析源代码,提取方法、API和结构节点以及它们之间的关系,构成调用关系图和层次结构图;步骤2,知识增强的图嵌入学习;使用图卷积神经网络GCN在调用关系图上传播信息来细化方法和API的初始嵌入表示,同时用翻译模型TransH学习层次结构图中的实体和关系的嵌入表示;步骤3,多任务学习;包括主要的API推荐任务和辅助的对比学习任务。本发明的有益效果是:本发明提出了知识增强的图嵌入学习,使得方法和API的嵌入向量中不仅建模了调用交互还融合了代码中的层次结构信息,优化了方法和API的表示,达到更准确的推荐效果。
-
公开(公告)号:CN113987522A
公开(公告)日:2022-01-28
申请号:CN202111637333.1
申请日:2021-12-30
Applicant: 哈尔滨工业大学(深圳)(哈尔滨工业大学深圳科技创新研究院)
Abstract: 本发明公开了一种用于源代码漏洞检测的代码属性图压缩方法及装置,所述方法包括如下步骤:根据代码属性图计算基于前K跳邻居的节点邻域信息增益;对节点邻域信息增益进行局部归一化处理;选择归一化处理后的节点邻域信息增益低的节点组成候选删除节点集合,判断候选删除节点集合中是否存在割点,并将割点从候选删除节点集合中移除,最终得到删除节点集合;从代码属性图中去掉删除节点集合中的节点以及与节点相连的边,得到代码属性压缩图。本发明通过计算节点的前K跳邻居增益信息,选择增益信息低的节点进行删除同时保证压缩图的连通性,在尽可能保持代码属性图的节点属性和结构特征的情况下降低其复杂度,从而提高后续模型训练的时空效率。
-
公开(公告)号:CN118246556B
公开(公告)日:2024-11-12
申请号:CN202410668413.0
申请日:2024-05-28
Applicant: 哈尔滨工业大学(深圳)(哈尔滨工业大学深圳科技创新研究院)
IPC: G06N5/04 , G06N3/0455 , G06N3/0499 , G06N3/092 , G06F16/35 , G06F8/41
Abstract: 本发明公开了一种基于强化学习的类型推断方法及装置,包括:获取运行环境数据和代码数据,并对所述运行环境数据和所述代码数据进行预处理,得到合法类型序列及类型流序列;根据所述合法类型序列及所述类型流序列,进行带类型标注的代码生成任务的监督训练;根据生成的带类型标注的目标代码,进行静态反馈的强化学习训练,得到强化后的代码生成模型。本发明提出了使用基于生成的方法来预测类型,并通过强化学习来增强生成模型的类型预测的准确性,解决了现有的类型推断模型的预测结果与实际应用偏差较大的问题。
-
公开(公告)号:CN118246556A
公开(公告)日:2024-06-25
申请号:CN202410668413.0
申请日:2024-05-28
Applicant: 哈尔滨工业大学(深圳)(哈尔滨工业大学深圳科技创新研究院)
IPC: G06N5/04 , G06N3/0455 , G06N3/0499 , G06N3/092 , G06F16/35 , G06F8/41
Abstract: 本发明公开了一种基于强化学习的类型推断方法及装置,包括:获取运行环境数据和代码数据,并对所述运行环境数据和所述代码数据进行预处理,得到合法类型序列及类型流序列;根据所述合法类型序列及所述类型流序列,进行带类型标注的代码生成任务的监督训练;根据生成的带类型标注的目标代码,进行静态反馈的强化学习训练,得到强化后的代码生成模型。本发明提出了使用基于生成的方法来预测类型,并通过强化学习来增强生成模型的类型预测的准确性,解决了现有的类型推断模型的预测结果与实际应用偏差较大的问题。
-
公开(公告)号:CN115600012B
公开(公告)日:2023-04-21
申请号:CN202211523157.3
申请日:2022-12-01
Applicant: 哈尔滨工业大学(深圳)(哈尔滨工业大学深圳科技创新研究院)
IPC: G06F16/9535 , G06F8/75 , G06F18/214 , G06N3/0464 , G06N3/08
Abstract: 本发明提供了一种基于知识增强和结构对比的API推荐方法,包括以下步骤:步骤1,代码预处理构图;解析源代码,提取方法、API和结构节点以及它们之间的关系,构成调用关系图和层次结构图;步骤2,知识增强的图嵌入学习;使用图卷积神经网络GCN在调用关系图上传播信息来细化方法和API的初始嵌入表示,同时用翻译模型TransH学习层次结构图中的实体和关系的嵌入表示;步骤3,多任务学习;包括主要的API推荐任务和辅助的对比学习任务。本发明的有益效果是:本发明提出了知识增强的图嵌入学习,使得方法和API的嵌入向量中不仅建模了调用交互还融合了代码中的层次结构信息,优化了方法和API的表示,达到更准确的推荐效果。
-
公开(公告)号:CN113987522B
公开(公告)日:2022-05-03
申请号:CN202111637333.1
申请日:2021-12-30
Applicant: 哈尔滨工业大学(深圳)(哈尔滨工业大学深圳科技创新研究院)
Abstract: 本发明公开了一种用于源代码漏洞检测的代码属性图压缩方法及装置,所述方法包括如下步骤:根据代码属性图计算基于前K跳邻居的节点邻域信息增益;对节点邻域信息增益进行局部归一化处理;选择归一化处理后的节点邻域信息增益低的节点组成候选删除节点集合,判断候选删除节点集合中是否存在割点,并将割点从候选删除节点集合中移除,最终得到删除节点集合;从代码属性图中去掉删除节点集合中的节点以及与节点相连的边,得到代码属性压缩图。本发明通过计算节点的前K跳邻居增益信息,选择增益信息低的节点进行删除同时保证压缩图的连通性,在尽可能保持代码属性图的节点属性和结构特征的情况下降低其复杂度,从而提高后续模型训练的时空效率。
-
公开(公告)号:CN114416159B
公开(公告)日:2022-07-22
申请号:CN202210335647.4
申请日:2022-04-01
Applicant: 哈尔滨工业大学(深圳)(哈尔滨工业大学深圳科技创新研究院)
Abstract: 本发明公开了一种基于信息增强调用序列的API推荐方法及装置,方法包括解析源代码提取得到原始API调用序列,根据原始API调用序列获取用户自定义API和非自定义API的对应关系,得到增强API调用序列;将原始API调用序列和增强API调用序列分别放入神经网络嵌入层,得到原始序列表示向量和第一增强序列表示向量,将第一增强序列表示向量输入神经网络第一编码器,得到第二增强序列表示向量,并和原始序列表示向量进行信息融合得到API新向量表示;将API新向量表示输入神经网络第二编码器中,得到API序列向量并输入相似度计算模块,得到每一个候选API的概率。本发明可解决原始API调用序列信息不足和用户自定义API携带信息过少影响推荐准确率的问题。
-
公开(公告)号:CN114416159A
公开(公告)日:2022-04-29
申请号:CN202210335647.4
申请日:2022-04-01
Applicant: 哈尔滨工业大学(深圳)(哈尔滨工业大学深圳科技创新研究院)
Abstract: 本发明公开了一种基于信息增强调用序列的API推荐方法及装置,方法包括解析源代码提取得到原始API调用序列,根据原始API调用序列获取用户自定义API和非自定义API的对应关系,得到增强API调用序列;将原始API调用序列和增强API调用序列分别放入神经网络嵌入层,得到原始序列表示向量和第一增强序列表示向量,将第一增强序列表示向量输入神经网络第一编码器,得到第二增强序列表示向量,并和原始序列表示向量进行信息融合得到API新向量表示;将API新向量表示输入神经网络第二编码器中,得到API序列向量并输入相似度计算模块,得到每一个候选API的概率。本发明可解决原始API调用序列信息不足和用户自定义API携带信息过少影响推荐准确率的问题。
-
-
-
-
-
-
-