-
公开(公告)号:CN118519681B
公开(公告)日:2024-09-17
申请号:CN202410970779.3
申请日:2024-07-19
申请人: 山东师范大学
IPC分类号: G06F8/72 , G06N3/0475 , G06N3/045 , G06N3/092
摘要: 本发明属于软件开发与维护自动化领域,公开了一种基于深度强化学习的代码自动补全方法、系统及装置,所述方法包括接收源代码数据,根据预设规则转换为代码类型数据;利用多任务学习的硬参数共享方式微调代码补全模型;利用多任务学习的硬参数共享方式训练评估器模型;利用微调后的代码补全模型和训练后的评估器模型构建深度强化学习网络;通过监督学习、深度强化学习训练策略网络,评估网络在代码补全过程中给出即时奖励,以此评估补全代码和相应类型对后续代码补全的影响相关性,从而使代码补全模型能够细致的感知动态变化的上下文需求;将训练后的策略网络用于对目标源代码数据进行补全;本发明能够根据源代码片段补全符合代码逻辑的代码片段。
-
公开(公告)号:CN118519681A
公开(公告)日:2024-08-20
申请号:CN202410970779.3
申请日:2024-07-19
申请人: 山东师范大学
IPC分类号: G06F8/72 , G06N3/0475 , G06N3/045 , G06N3/092
摘要: 本发明属于软件开发与维护自动化领域,公开了一种基于深度强化学习的代码自动补全方法、系统及装置,所述方法包括接收源代码数据,根据预设规则转换为代码类型数据;利用多任务学习的硬参数共享方式微调代码补全模型;利用多任务学习的硬参数共享方式训练评估器模型;利用微调后的代码补全模型和训练后的评估器模型构建深度强化学习网络;通过监督学习、深度强化学习训练策略网络,评估网络在代码补全过程中给出即时奖励,以此评估补全代码和相应类型对后续代码补全的影响相关性,从而使代码补全模型能够细致的感知动态变化的上下文需求;将训练后的策略网络用于对目标源代码数据进行补全;本发明能够根据源代码片段补全符合代码逻辑的代码片段。
-