[发明专利]一种基于策略梯度算法的自动生成提交需求摘要的方法有效
申请号: | 202010075692.1 | 申请日: | 2020-01-22 |
公开(公告)号: | CN111291175B | 公开(公告)日: | 2022-07-22 |
发明(设计)人: | 李辉;王思文 | 申请(专利权)人: | 大连海事大学 |
主分类号: | G06F16/34 | 分类号: | G06F16/34;G06N3/04;G06N3/08 |
代理公司: | 大连东方专利代理有限责任公司 21212 | 代理人: | 姜玉蓉;李洪福 |
地址: | 116026 辽*** | 国省代码: | 辽宁;21 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 策略 梯度 算法 自动 生成 提交 需求 摘要 方法 | ||
本发明公开了一种基于策略梯度算法的自动生成提交需求摘要的方法,包括:提取提交需求关系中的提交信息和源代码注释和其对应的文本语义树结构,通过双向循环神经网络编码器编码到隐藏状态中,映射成固定长度的向量序列,使用指针生成器通过词汇的生成概率对从词汇表中选择的单词和从源序列中复制的单词之间进行一个软控制,得到最终的词汇分布。利用带有基线的策略梯度算法结合N次蒙特卡洛搜索,通过N次蒙特卡洛搜索计算包含一个动作的序列的平均奖励,找到平均奖励最大的动作序列,则该动作就是要选择的动作,依此进行,得到完整序列,利用蒙特卡洛搜索出的序列和基线序列的差值来更新策略梯度,最终生成提交需求摘要。
技术领域
本发明涉及信息数据处理技术领域,尤其涉及一种基于策略梯度算法的自动生成提交需求摘要的方法。
背景技术
基于提交式的开发模型在现代协作编码平台上很受欢迎,它减轻了开发人员对项目的贡献,在此模型中,开发人员无需直接访问中央存储库就可以为项目做出贡献,他只需要自己克隆中央存储库,在个人克隆的中央存储库中独立的进行更改,例如修复错误或者实现功能,然后通过提交需求将更改提交到中央存储库,再由中央存储库的审阅者对提交需求进行审核,审核通过则开发人员就对该项目做出了贡献。因此开发人员可以很容易的通过提交需求对模型做出贡献。当创建一个提交需求时,开发人员可以添加一个自由形式的描述来描述在提交需求中做了什么改变,为什么要做这样的改变,这样一个描述对于审阅者和其他开发人员非常有用,这种生成提交需求描述的过程就是文本摘要的过程。通过提交需求摘要可以核心团队成员或者审阅者不需要接触细节就可以快速的了解提交需求,减小了提交需求被忽视或者拒绝的可能性,提交需求描述对软件维护和程序理解起到了一定的影响作用。因此,自动的生成提交需求摘要变得非常重要。
目前关于生成提交需求摘要的方法有一些缺陷,只将文本信息作为输入,生成的提交需求描述缺少逻辑性,不符合人类评估标准;只使用普通的强化学习中的策略梯度算法,只能考虑生成整体句子的奖励,而没有考虑到中间时刻生成的单词的奖励情况,这使得生成的序列与目标序列差距过大,影响了生成句子的准确性。
发明内容
根据现有技术存在的问题,本发明公开了一种基于策略梯度算法的自动生成提交需求摘要的方法,具体包括如下步骤:
提取提交需求关系中的提交信息和源代码注释和其对应的文本语义树结构,将上述提取的信息作为序列到序列模型的输入,通过双向循环神经网络编码器编码到隐藏状态中,映射成固定长度的向量序列,通过注意力分布对其分配不同的权重,形成上下文向量,输入到解码器中,利用解码器的隐藏状态,最终解码出词汇分布。为了更好的处理词汇表之外的单词,使用指针生成器通过词汇的生成概率对从词汇表中选择的单词和从源序列中复制的单词之间进行一个软控制,得到最终的词汇分布。
利用带有基线的策略梯度算法结合N次蒙特卡洛搜索,将带有指针生成器和注意力机制的编码器-解码器模型作为强化学习中的智能体,生成的词汇分布看作是遵循的策略,已经生成的单词看作是状态,下一个要生成的单词看作是动作,通过N次蒙特卡洛搜索计算包含一个动作的序列的平均奖励,找到平均奖励最大的动作序列,则该动作就是要选择的动作,依此进行,得到完整序列,利用蒙特卡洛搜索出的序列和基线序列的差值来更新策略梯度。
进一步的,将强化学习中的策略梯度算法和N次蒙特卡洛搜索相结合,利用蒙特卡洛搜索出的序列和基线序列的差值来更新策略时具体采用如下方式:
将带有指针生成器和注意力机制的编码器-解码器模型作为强化学习中的智能体,生成的词汇分布看作是遵循的策略,已经生成的单词看作是状态,下一个要生成的单词看作是动作。
我们使用rollout策略的蒙特卡洛搜索方法,估计中间时间步骤t上的动作值,假设要生成的序列长度为T,我们使用rollout策略的蒙特卡洛搜索方法对剩下的T-t个未知的单词进行采样,进行N此蒙特卡洛搜索后,我们将输出N条样例,最后我们对N条序列的奖励取平均值,就是包含该动作的期望奖励,该动作就是我们要选择的动作,依次类推,最终得到完整的序列,得到提交需求的摘要。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于大连海事大学,未经大连海事大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010075692.1/2.html,转载请声明来源钻瓜专利网。