[论文解读] Better Predictors for Issue Lifetime
该论文提出了一种简单且可解释的方法,利用相关特征选择(CFS)和小型决策树来预测软件项目中的问题生命周期,实现了高精度(中位数71%)和低误报率(中位数13%),优于以往工作。此外,研究进一步表明,无需复杂迁移学习调整的跨项目数据可作为训练高效预测器的稳健默认方案。
Predicting issue lifetime can help software developers, managers, and stakeholders effectively prioritize work, allocate development resources, and better understand project timelines. Progress had been made on this prediction problem, but prior work has reported low precision and high false alarms. The latest results also use complex models such as random forests that detract from their readability. We solve both issues by using small, readable decision trees (under 20 lines long) and correlation feature selection to predict issue lifetime, achieving high precision and low false alarms (medians of 71% and 13% respectively). We also address the problem of high class imbalance within issue datasets - when local data fails to train a good model, we show that cross-project data can be used in place of the local data. In fact, cross-project data works so well that we argue it should be the default approach for learning predictors for issue lifetime.
研究动机与目标
- 提高问题生命周期预测的精度并减少误报,解决以往工作使用随机森林等复杂模型所存在的局限性。
- 开发可解释、人类可读的问题生命周期预测模型,以促进开发者和管理者更好地采纳。
- 探究当本地模型因性能差或数据稀缺而失效时,跨项目数据是否能有效替代本地数据。
- 评估在该预测任务中,轻量级模型(如单个决策树)与复杂模型(如随机森林)的有效性。
- 评估问题生命周期预测中的迁移学习是否需要复杂的数据调整,还是简单的跨项目迁移即可有效。
提出的方法
- 通过相关特征选择(CFS)进行特征选择,从问题元数据和上下文数据中识别出最具预测性且非冗余的特征。
- 使用C4.5算法在所选特征上训练单个决策树模型,以确保模型的可解释性和简洁性。
- 应用轮转式跨项目学习,即在其他项目的数据上训练模型,并在目标项目上进行测试。
- 采用二分类方法,设置N个阈值(N=5),以预测问题是否会在给定时间窗口之前或之后关闭。
- 通过仅使用问题创建时可用的静态特征,避免时间数据泄露。
- 使用精确率、召回率和误报率评估模型性能,结合交叉验证和轮转测试。
实验结果
研究问题
- RQ1使用CFS和决策树的简单可解释模型能否在精度上超越以往使用随机森林的工作,并实现更低的误报率?
- RQ2在未进行数据调整的情况下,跨项目学习是否能实现优于或至少相当的性能,特别是在本地数据失效时?
- RQ3仅使用上下文特征是否足以实现准确的问题生命周期预测,还是需要代码级度量?
- RQ4能否通过少于20行代码的轻量级模型实现高精度且易于向利益相关者解释?
- RQ5问题生命周期预测的迁移学习是否真的只需简单地跨项目转移原始数据,而无需复杂过滤或转换?
主要发现
- 所提出方法实现了71%的中位数精确率和13%的中位数误报率,显著优于以往工作(精确率低于25%,误报率超过60%)。
- 跨项目学习始终优于本地学习,即使在本地模型失效的情况下(如cocoon、hadoop、hive、kafka、node、ofbiz、qpid)也能实现有效预测。
- 使用CFS进行特征选择在所有数据集上均提升了模型性能,且各项目所选特征不同,表明不存在通用的最佳特征集合。
- 使用CFS处理后的特征训练的简单决策树(少于20行代码)具有高度可解释性,且比随机森林等复杂模型更有效。
- 跨项目数据表现如此出色,以至于作者认为它应作为训练问题生命周期预测器的默认方法,即使不进行诸如相关性过滤或维度转换等数据调整。
- 研究表明,上下文特征(如问题正文长度和提交模式)已足够实现高精度预测,对静态代码度量的需求极低。
更好的研究,从现在开始
从阅读论文到最终审阅,大幅缩短您的研究时间。
无需绑定信用卡
本解读由 AI 生成,并经人工编辑审核。