Page 34 - 《软件学报》2021年第6期
P. 34
1608 Journal of Software 软件学报 Vol.32, No.6, June 2021
PR 原文:
At a stateless pure javascript/client side component. 〈cm-sep〉 wrap models to be able to user resource models.
〈cm-sep〉 add an example fo client side tabs. 〈cm-sep〉 get rid of extra iteration of tabs. 〈cm-sep〉 introduce isactive.
〈cm-sep〉 rename model. 〈cm-sep〉 make tabs dynamic. 〈cm-sep〉 get rid of un-needed space. 〈cm-sep〉 improve text.
〈cm-sep〉 improve java doc, rename some methods, index start counting at 0 to be compatible with classical
tabeedpanel. 〈cm-sep〉 add a test unit for client side tabs. 〈cm-sep〉 add more tests and add css class specific to each
tab. 〈para-sep〉 a pure client side tab. it is completely stateless. 〈para-sep〉 〈p〉 a ‘pure’ client side stateless tabs
component. But instead of generating links that trigger server round trips id does generates just ‘client side’ links.
〈/p〉.
真实 PR 描述:
At a stateless pure javascript/client side component.
I just need this for a project and thought it might be useful to other users. It works as in classical but user only
needs to use it as ‘standard’ wicket tabs. Mind that all content panels are created at the same time. If accepted i can
add an example to demo application.
HGPRG-RL:
At a stateless pure javascript/client side component.
Wrap models to be able to user resource models.
Improve java doc rename some methods index start counting at 0 to be compatible with classical tabeedpanel.
PG+RL:
Add an example to be able to user to be compatible with classical tabeedpanel.
实例 2 是由 12 条 commit message 和 2 条 code comment 组成的大粒度 PR.由项目贡献者书写的真实 PR
描述可知:该条 PR 所作出的修改是在无状态的纯 javascript/client 端组件中添加了一项针对用户的操作,该操作
与传统操作原理相同,用户把它当作标准选项卡使用即可.使用我们的方法生成的 PR 描述能够成功获取到修改
的位置信息,亦能得知该功能是针对用户资源模型所作出的修改以及该 PR 作出的一些细节修改.
仔细分析 Liu 等人方法生成的 PR 描述可知:该描述来源于“add an example fo client side tabs”, “wrap
models to be able to user resource models”, “improve java doc, rename some methods, index start counting at 0 to
be compatible with classical tabeedpanel”这 3 条 commit message.其分别在 3 条 commit message 中提取了关键词
并进行了简单拼接,但是其拼接得到语句的意思却与原文的意思完全不同.项目贡献者添加实例的目的并不是
使用户能与原始面板兼容,并且用户与面板兼容也不符合语言逻辑.
综上,可以看出:本文提出的方法生成的 PR 描述具有较好的可读性,能够避免一些逻辑错误,且能够捕捉到
能多的有用信息.因此,我们的方法在大粒度的 PR 描述生成问题上更具有优势.
5 结 论
针对先前工作的不足,我们为大粒度的 PR 描述自动生成提出了一种切实可行的方法.将大粒度的 PR 描述
自动生成问题建模为抽取式摘要生成问题,为了更好地学习 PR 源文档中的内容信息,我们构建了以词节点为辅
助节点的词-句异质图,使 PR 源文档中句子间的联系得以建立,随后提取异质图的节点特征信息,并利用图神经
网络进一步学习 PR 异质图的图表示向量,使模型学习到了更丰富的 PR 语句内容信息.同时,我们使用了
REINFORCE 算法,避免了使用人工标记的标签指导 PR 描述的生成,降低了对数据集的要求,且能够使模型在评
价指标上取得更好的表现.在真实的数据集上进行了实验,实验结果表明,我们的方法优于现有的 PR 描述生成
方法.未来,我们将研究如何减少未登录词对 PR 源文档内容学习的影响,以便更好地生成 PR 描述.