中文

GitRanking:一种基于主动采样的GitHub主题软件分类排序框架

软件工程 2023-11-21 v1 信息检索 机器学习

摘要

GitHub是全球最大的源代码托管平台,拥有超过1.5亿个仓库。然而,这些仓库大多未标注或标注不充分,致使用户更难找到相关项目。过去多年间已有多种软件应用领域分类的提案。但这些方法缺乏一个分层、基于知识库且不含无关术语的明确定义的分类法。本工作提出GitRanking,一种将分类按含义通用或具体程度排分为离散层级的框架。我们从GitHub收集了12.1万个主题,并取其中60%的最高频主题用于排序。GitRanking 1)使用主动采样以确保所需标注量最小;2)将每个主题关联到Wikidata,减少歧义并提升分类法的可复用性。我们的结果表明,开发者在标注其项目时避免使用高度具体的术语,这使其他用户更难以查找和发现其项目。此外,我们展示GitRanking能依据通用或具体含义有效排序术语。该排序将是开发者赖以构建的重要资产,使其能用更精确的主题补充标注。最后,我们表明GitRanking是一种动态可扩展方法:当前可接受进一步术语以最少标注量(约15)参与排序。本文是构建自下而上软件领域分类法的首次集体尝试。

关键词

引用

@article{arxiv.2205.09379,
  title  = {GitRanking: A Ranking of GitHub Topics for Software Classification using Active Sampling},
  author = {Cezar Sas and Andrea Capiluppi and Claudio Di Sipio and Juri Di Rocco and Davide Di Ruscio},
  journal= {arXiv preprint arXiv:2205.09379},
  year   = {2023}
}

备注

11 pages, 6 figures, 3 tables