-
公开(公告)号:CN114969272B
公开(公告)日:2024-07-02
申请号:CN202210743639.3
申请日:2022-06-27
Applicant: 哈尔滨工业大学
Abstract: 本发明公开了一种在API知识图谱上基于Q学习的API序列搜索方法,首先,设计了API本体结构,并从API文档与开源软件项目中抽取API知识用于构建API知识图谱。其次,通过Word2Vec词嵌入方法以及TransE表示学习方法生成强化学习的状态表示。再次,基于DQN方法,给出了基于强化学习的API序列搜索模型的训练算法。最后,基于训练好的强化学习模型,实现API序列搜索。本发明将API使用序列搜索任务转化为基于API知识图谱的路径搜索任务,能更好地保证搜索到的API序列的合法性。本发明采用强化学习实现API使用序列搜索,其独特的探索机制能探索更丰富的API调用方式,从而增强模型的泛化能力。
-
公开(公告)号:CN117472331A
公开(公告)日:2024-01-30
申请号:CN202311209385.8
申请日:2023-09-19
Applicant: 哈尔滨工业大学
Abstract: 本发明公开了一种基于敏捷系统工程的故障预测和健康管理方法,所述方法基于SysML建模,将PHM系统需求、功能、逻辑、物理架构建模分析的概念融合到PHM架构设计方法中,建立了各模型间的追溯关系,当PHM系统需求发生变更时,则可以根据追溯关系,分析需求变更的影响范围,从系统工程角度以递归和迭代方式更新系统模型,支持PHM系统快速迭代升级。本发明支持PHM系统的架构引领、基于模型、数据驱动的敏捷开发模式,形成适合于PHM敏捷系统工程的标准化支撑环境,支持PHM系统的快速迭代升级,为装备的使用和维修保障提供技术手段,对保障装备系统可靠性、可用性、安全性、可维护性,促进装备系统的创新发展有着重要的意义。
-
公开(公告)号:CN116561771A
公开(公告)日:2023-08-08
申请号:CN202310650119.2
申请日:2023-06-02
Applicant: 哈尔滨工业大学
Abstract: 本发明公开了一种基于合约语义图与深广特征融合的智能合约漏洞检测方法,所述方法能够充分利用智能合约代码中数据流、控制流与fallback运行机制的相关信息,构建出包含丰富结构信息的智能合约语义图。然后结合代码token序列的顺序语义信息与智能合约语义图的结构语义信息,利用深度神经网络提取出智能合约的深度语义特征,同时基于预先定义好的可解释的人工漏洞检测规则,使用全连接层与激活函数构成的线性模型提取出智能合约的人工规则特征。最后,使用Wide&Deep模型对分别侧重广度和深度的两种特征进行融合,进行智能合约的漏洞检测。本发明可以有效表示智能合约中与漏洞相关的语义信息。
-
公开(公告)号:CN116483348A
公开(公告)日:2023-07-25
申请号:CN202310467547.1
申请日:2023-04-26
Applicant: 哈尔滨工业大学
Abstract: 本发明公开了一种SysML模型生成与推荐方法,所述方法通过学习已有项目需求和SysML模型,构建SysML需求图自动生成器,实现根据自然语言表达的系统需求自动化地生成SysML需求图,并通过SysML模型的需求追溯关系推荐模型,支持模型驱动的系统工程中智能化的模型复用。本发明可以根据自然语言需求,自动化地生成SysML需求图模型,并支持可视化的需求确认和变更,进而利用SysML模型的可追溯性,自动化地推荐模块图、活动图等其他SysML图模型,辅助软件系统建模和开发,提高软件系统的开发效率和质量。本发明也适用于UML模型的生成和推荐,还可以进一步应用于其他低代码开发过程中的模型生成和推荐。
-
公开(公告)号:CN116301824A
公开(公告)日:2023-06-23
申请号:CN202310131203.3
申请日:2023-02-17
Applicant: 哈尔滨工业大学
Abstract: 本发明公开了一种文档指导的API序列搜索方法,所示方法包括如下步骤:步骤1:通过挖掘API文档仓库获取API集合以及API文档字典;步骤2:通过挖掘代码仓库构建数据集以及用于搜索的API使用序列数据库;步骤3:对原始数据进行预处理,并将其转化成能被深度学习模型处理的特征向量;步骤4:构建网络模型;步骤5:训练网络模型,并使用训练好的网络模型实现API使用序列搜索。本发明通过将API文档作为模型训练的指导信息,辅助实现跨模态注意力与跨模态相似度计算,能够缓解功能描述和API使用序列之间的语义鸿沟问题,从而提高搜索的准确率。
-
公开(公告)号: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模型得到图的向量表示;根据图的向量表示和标签调整网络参数;用训练好的模型检测代码漏洞。本发明能充分利用和学习漏洞代码的结构和属性信息,避免传统深度网络在对代码表示学习时易丢失代码结构信息及因需要把代码表示成固定长度序列而丢失长代码上下文信息的问题,有助于降低漏洞检测的误报和漏报。
-
公开(公告)号:CN109408114B
公开(公告)日:2021-06-22
申请号:CN201810950683.5
申请日:2018-08-20
Applicant: 哈尔滨工业大学
Abstract: 本发明提供了一种程序错误自动修正方法、装置、电子设备及存储介质,包括:S1根据待进行修正的学生程序从预先设定的多个模板程序获取与学生程序最为匹配的模板程序作为示例程序;S2根据学生程序以及示例程序进行语法树匹配,获取两个程序中语法结构相似节点和语法结构不同节点;S3获取两个程序相同功能变量的映射表;S4生成第一代变异体种群;S5根据测试通过次数以及和示例程序的相似度计算变异体的适应度;S6采用交叉和变异操作生成新一代变异体种群;S7循环执行S5和S6直到有变异体可以通过所有规定的测试用例或达到预设迭代次数,将适应度最高的变异体作为学生程序的修正程序以及其对应的编辑序列的操作作为修正方案输出。
-
公开(公告)号: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模型得到图的向量表示;根据图的向量表示和标签调整网络参数;用训练好的模型检测代码漏洞。本发明能充分利用和学习漏洞代码的结构和属性信息,避免传统深度网络在对代码表示学习时易丢失代码结构信息及因需要把代码表示成固定长度序列而丢失长代码上下文信息的问题,有助于降低漏洞检测的误报和漏报。
-
-
-
-
-
-
-
-
-