-
公开(公告)号:CN111797242B
公开(公告)日:2023-04-07
申请号:CN202010611989.5
申请日:2020-06-29
Applicant: 哈尔滨工业大学
IPC: G06F16/36 , G06F16/34 , G06F40/295 , G06F40/284
Abstract: 本发明公开了一种基于代码知识图谱和知识迁移的代码摘要生成方法,所述方法如下:1、抽取并融合多源数据构建代码知识图谱;2、利用代码解析工具生成抽象语法树,遍历抽象语法树中的方法调用节点获取API调用序列;3、从代码知识图谱中搜索API调用序列中的API描述信息;4、挖掘大规模开源项目,构建API序列摘要生成数据集,训练文本摘要生成模型,学习与API功能相关的背景知识;5、构建代码摘要生成模型;6、在代码摘要数据集上训练代码摘要生成模型,并利用该模型生成代码摘要。本发明将代码知识图谱和知识迁移用于代码摘要生成任务,能加强模型提取代码功能语义信息的能力,辅助模型理解代码,提高代码摘要生成质量。
-
公开(公告)号:CN111783100B
公开(公告)日:2022-05-17
申请号:CN202010576421.4
申请日:2020-06-22
Applicant: 哈尔滨工业大学
Abstract: 本发明公开了一种基于图卷积网络对代码图表示学习的源代码漏洞检测方法,所述方法如下:生成代码属性图;在代码属性图中添加函数调用关系和过程间依赖关系;根据漏洞关键点获取代码切片;利用切片对图中节点进行删减,提取与漏洞相关的图结构信息;使用图卷积网络学习每个节点的向量表示;根据边的类型划分子图,并通过基于注意力机制的READOUT模型得到图的向量表示;根据图的向量表示和标签调整网络参数;用训练好的模型检测代码漏洞。本发明能充分利用和学习漏洞代码的结构和属性信息,避免传统深度网络在对代码表示学习时易丢失代码结构信息及因需要把代码表示成固定长度序列而丢失长代码上下文信息的问题,有助于降低漏洞检测的误报和漏报。
-
公开(公告)号:CN112001484A
公开(公告)日:2020-11-27
申请号:CN202010853000.1
申请日:2020-08-22
Applicant: 哈尔滨工业大学
IPC: G06N3/04 , G06N3/08 , G06K9/62 , G06F40/284 , G06F16/35
Abstract: 本发明公开了一种基于多任务深度学习的安全缺陷报告预测方法,首先挖掘缺陷报告仓库以及安全漏洞管理网站,构造多任务学习数据集。对数据集中缺陷报告的文本内容进行预处理,生成专业语料库,并利用其训练word2vec模型。建立多任务深度学习模型,利用模型底层的深度神经网络提取缺陷报告的共享语义特征,利用高层的各个子网络学习针对不同任务的具有分辨力的特征,最后将高层网络输出的特征向量作为各子任务预测网络的输入,完成安全缺陷报告识别和严重级别预测任务。本发明首次将多任务学习用于安全缺陷报告预测,利用与目标任务相关的辅助任务信息,引导模型学习到有更强泛化能力的特征,能够提高模型的泛化能力,降低噪音数据的影响。
-
公开(公告)号:CN111783100A
公开(公告)日:2020-10-16
申请号:CN202010576421.4
申请日:2020-06-22
Applicant: 哈尔滨工业大学
Abstract: 本发明公开了一种基于图卷积网络对代码图表示学习的源代码漏洞检测方法,所述方法如下:生成代码属性图;在代码属性图中添加函数调用关系和过程间依赖关系;根据漏洞关键点获取代码切片;利用切片对图中节点进行删减,提取与漏洞相关的图结构信息;使用图卷积网络学习每个节点的向量表示;根据边的类型划分子图,并通过基于注意力机制的READOUT模型得到图的向量表示;根据图的向量表示和标签调整网络参数;用训练好的模型检测代码漏洞。本发明能充分利用和学习漏洞代码的结构和属性信息,避免传统深度网络在对代码表示学习时易丢失代码结构信息及因需要把代码表示成固定长度序列而丢失长代码上下文信息的问题,有助于降低漏洞检测的误报和漏报。
-
公开(公告)号:CN118819311A
公开(公告)日:2024-10-22
申请号:CN202410837769.2
申请日:2024-06-26
Applicant: 哈尔滨工业大学
IPC: G06F3/023 , G06F40/166 , G06F40/274 , G06F16/332 , G06F16/338 , G06F16/953 , G06F16/9538
Abstract: 本发明公开了一种应用于输入法中的与大模型交互执行的方法,所述方法如下:以指定格式在组字区中输入指令,所述指令指用户输入的中文、英文或中英文内容;响应于用户已经在组字区中输入了指令内容,如果用户暂停输入超过预设时间间隔,输入法基于组字区的内容发送搜索请求给服务器,服务器查询指令库并将结果返回给客户端;客户端接收服务器返回的结果,显示指令展示界面,用户选中某条指令并填入组字区;按下指令执行快捷键,显示指令响应结果展示界面;选中某个响应结果进入编辑器。本发明实现了应用于输入法中的大模型指令交互执行方法,极大提高了用户撰写和修改专业文档时的便捷性和效率。
-
公开(公告)号:CN115080982A
公开(公告)日:2022-09-20
申请号:CN202210729780.8
申请日:2022-06-24
Applicant: 哈尔滨工业大学
Abstract: 本发明公开了一种针对漏洞检测模型的组合对抗攻击方法,首先使用本发明中提出的4种代码扰动方法对程序骨架中可修改的语句进行扰动,生成大量语义相似的候选样本。其次,利用生成的候选样本初始化遗传算法的种群规模和成员,然后,根据不同的扰动方法设计变异算子,并对种群成员进行选择、交叉和变异操作生成新的种群;最后,判断每次迭代生成的新种群中是否存在适应度大于一定阈值的成员,如果存在,则表示成功获得对抗样本。根据本发明提出的多种代码扰动方法,可实现对各种语法要素执行语义保持的程序等价变换,从而提高生成的对抗样本质量。通过将遗传搜索策略与多种代码扰动方法相结合,能够提高对代码漏洞检测模型的攻击成功率和攻击效率。
-
公开(公告)号:CN115048491A
公开(公告)日:2022-09-13
申请号:CN202210693666.4
申请日:2022-06-18
Applicant: 哈尔滨工业大学
Abstract: 本发明公开了一种在异构语义空间中基于假设检验的软件跨模态检索方法,所述方法使用分布生成网络将文本投影到分布空间中的CFP相关分布;将代码表示为控制流图,并抽取其中所有的路径;利用样本生成网络将CFP映射为样本空间中的CFP样本向量,此时代码被表示为一个CFP样本向量集合;使用假设检验计算CFP样本向量集合对CFP相关分布的服从程度作为二者的匹配分数,并用于实现代码检索文本或文本检索代码形式的跨模态检索任务。本发明首次提出将代码和文本投影到异构语义空间中进行表示学习,即将文本投影到CFP相关分布空间并将代码投影到CFP样本空间,能够准确表征文本和代码各自的独特语义,提高跨模态检索的准确性。
-
公开(公告)号:CN114969272A
公开(公告)日:2022-08-30
申请号:CN202210743639.3
申请日:2022-06-27
Applicant: 哈尔滨工业大学
Abstract: 本发明公开了一种在API知识图谱上基于Q学习的API序列搜索方法,首先,设计了API本体结构,并从API文档与开源软件项目中抽取API知识用于构建API知识图谱。其次,通过Word2Vec词嵌入方法以及TransE表示学习方法生成强化学习的状态表示。再次,基于DQN方法,给出了基于强化学习的API序列搜索模型的训练算法。最后,基于训练好的强化学习模型,实现API序列搜索。本发明将API使用序列搜索任务转化为基于API知识图谱的路径搜索任务,能更好地保证搜索到的API序列的合法性。本发明采用强化学习实现API使用序列搜索,其独特的探索机制能探索更丰富的API调用方式,从而增强模型的泛化能力。
-
公开(公告)号:CN114816517A
公开(公告)日:2022-07-29
申请号:CN202210488430.7
申请日:2022-05-06
Applicant: 哈尔滨工业大学
Abstract: 本发明公开了一种层次语义感知的代码表示学习方法,所述方法针对给定的源代码,首先利用程序分析技术构建程序的有向无环语义图,然后抽取语义图中的语法子树信息,并利用Tree‑LSTM模型学习程序中每条语句的局部语义向量表示,最后基于语句的局部语义向量表示,利用Graph‑LSTM模型学习代码的结构和顺序语义信息。本发明首次提出适用于程序结构语义编码的基于图的LSTM模型Graph‑LSTM,并提出一种能够将源代码序列信息融入到代码表示学习过程中的新框架,提高了模型的特征表示能力。
-
公开(公告)号:CN111723021A
公开(公告)日:2020-09-29
申请号:CN202010728693.1
申请日:2020-07-23
Applicant: 哈尔滨工业大学
Abstract: 本发明公开了一种基于知识库和表示学习的缺陷报告自动分派方法,所述方法利用知识库和表示学习技术,首先从缺陷报告仓库中提取结构化信息和文本信息,从而构建知识库。然后将知识库中的实体和关系以及文本描述初始化为相同维度的低维连续的实值向量。再利用改进的表示学习模型PTITransE学习实体和关系的向量表示。最后,基于实体和关系的向量表示,使用链接预测技术,为新提交的缺陷报告推荐合适的修复者。本发明首次将知识库和表示学习应用到缺陷分派领域,并提出一种新的表示学习模型以充分利用缺陷报告的文本和结构化信息,提高了缺陷分派的准确率。
-
-
-
-
-
-
-
-
-