中文

利用源代码中的名称对大规模公开代码库进行主题建模

编程语言 2017-05-23 v2 计算与语言

摘要

编程语言本身具有数量有限的保留关键字和定义语言规范的基于字符的词元。然而,程序员通过注释、文本字面量和命名实体在代码中丰富地使用了自然语言。在源代码中可以找到的由程序员定义的名称是构建项目高层理解的丰富信息源。本文的目标是对超过1360万个代码库中使用的名称应用主题建模,并观察推断出的主题。此类研究中的一个问题是出现未被正式标记为分支的重复代码库(隐蔽分支)。我们展示了如何使用为主题建模提取的相同标识符来解决此问题。我们首先讨论源代码中的命名,然后详细说明我们在词袋模型上使用局部敏感哈希来移除完全重复和模糊重复代码库的方法,接着讨论我们在主题建模方面的工作;最后展示我们数据分析的结果,并同时开放源代码、工具和数据集。

关键词

引用

@article{arxiv.1704.00135,
  title  = {Topic modeling of public repositories at scale using names in source code},
  author = {Vadim Markovtsev and Eiso Kant},
  journal= {arXiv preprint arXiv:1704.00135},
  year   = {2017}
}

备注

11 pages