Loading...
机构名称:
¥ 1.0

AI 算法在 SE 研究和实践中的使用频率越来越高。此类算法通常使用来自 SE 领域之外的数据进行委托和认证。我们是否可以假设此类算法可以“现成”使用(即无需修改)?换句话说,SE 问题是否有特殊之处可以表明使用 AI 工具的不同且更好的方法?为了回答这些问题,本文报告了使用 TimeLIME 的实验,TimeLIME 是 KDD'16 中 LIME 解释算法的变体。LIME 可以就如何更改静态代码属性以减少下一个软件版本中的缺陷数量提供建议。该版本的 LIME 使用内部加权工具来决定在这些建议中包含/排除哪些属性。TimeLIME 使用以下 SE 知识改进了该加权方案:软件以版本形式发布;对软件的不合理更改是以前版本中从未更改过的内容;因此最好使用合理的更改,即在以前版本中具有先例的更改。通过将建议限制在经常更改的属性上,TimeLIME 可以 (a) 产生更好的缺陷原因解释和 (b) 关于如何修复错误代码的更好建议。除了这些关于缺陷减少和 TimeLIME 的具体结果之外,本文更普遍的观点是,我们的社区应该更加谨慎地使用现成的 AI 工具,而无需首先应用 SE 知识。如此处所示,应用这些知识可能并不复杂。此外,一旦应用了 SE 知识,就可以显著改善系统。

使用 TimeLIME 缺陷减少工具进行实验

使用 TimeLIME 缺陷减少工具进行实验PDF文件第1页

使用 TimeLIME 缺陷减少工具进行实验PDF文件第2页

使用 TimeLIME 缺陷减少工具进行实验PDF文件第3页

使用 TimeLIME 缺陷减少工具进行实验PDF文件第4页

使用 TimeLIME 缺陷减少工具进行实验PDF文件第5页

相关文件推荐