中文

一种支持开源社区新手引导与留存的基于 NLP 的简单方法

软件工程 2018-08-17 v2

摘要

成功的开源社区不断寻找新成员并帮助他们成为活跃开发者。开源项目中开发者新手引导的一种常见方法是让新人专注于相关但易于解决的问题,以使他们熟悉代码和社区。本研究的目标有两个。首先,我们旨在通过仅使用问题的标题和描述分析已解决问题的历史,自动识别新人可以解决的问题。其次,我们旨在自动识别那些可以由后来成为活跃开发者的新人解决的问题。我们挖掘了三个大型开源项目的问题跟踪器,并从已解决问题的标题和描述中提取了自然语言特征。在一系列实验中,我们优化并比较了四种监督分类器的准确率以实现我们的研究目标。针对第一个目标,Random Forest 实现了高达 91% 的准确率(F1-score 为 72%);而针对第二个目标,Decision Tree 实现了 92% 的准确率(F1-score 为 91%)。定性评估深入了解了问题描述中的哪些信息对新人有帮助。我们的方法可用于仅基于问题文本自动识别、标记和推荐开源软件项目中新人的问题。

关键词

引用

@article{arxiv.1806.02592,
  title  = {A Simple NLP-based Approach to Support Onboarding and Retention in Open Source Communities},
  author = {Christoph Stanik and Lloyd Montgomery and Daniel Martens and Davide Fucci and Walid Maalej},
  journal= {arXiv preprint arXiv:1806.02592},
  year   = {2018}
}