...
首页> 外文期刊>Future generation computer systems >Heterogeneous tree structure classification to label Java programmers according to their expertise level
【24h】

Heterogeneous tree structure classification to label Java programmers according to their expertise level

机译:异类树结构分类可根据其专业知识水平标记Java程序员

获取原文
获取原文并翻译 | 示例

摘要

Open-source code repositories are a valuable asset to creating different kinds of tools and services, utilizing machine learning and probabilistic reasoning. Syntactic models process Abstract Syntax Trees (AST) of source code to build systems capable of predicting different software properties. The main difficulty of building such models comes from the heterogeneous and compound structures of ASTs, and that traditional machine learning algorithms require instances to be represented as n-dimensional vectors rather than trees. In this article, we propose a new approach to classify ASTs using traditional supervised-learning algorithms, where a feature learning process selects the most representative syntax patterns for the child subtrees of different syntax constructs. Those syntax patterns are used to enrich the context information of each AST, allowing the classification of compound heterogeneous tree structures. The proposed approach is applied to the problem of labeling the expertise level of Java programmers. The system is able to label expert and novice programs with an average accuracy of 99.6%. Moreover, other code fragments such as types, fields, methods, statements and expressions could also be classified, with average accuracies of 99.5%, 91.4%, 95.2%, 88.3% and 78.1%, respectively.
机译:开源代码存储库是利用机器学习和概率推理来创建各种工具和服务的宝贵资产。语法模型处理源代码的抽象语法树(AST),以构建能够预测不同软件属性的系统。建立此类模型的主要困难来自AST的异构结构和复合结构,并且传统的机器学习算法要求将实例表示为n维向量而不是树。在本文中,我们提出了一种使用传统的监督学习算法对AST进行分类的新方法,其中特征学习过程为不同语法构造的子树选择最具代表性的语法模式。这些语法模式用于丰富每个AST的上下文信息,从而可以对复合异构树结构进行分类。所提出的方法适用于标记Java程序员的专业水平的问题。该系统能够标记专家和新手程序,平均准确度为99.6%。此外,还可以对其他代码片段(例如类型,字段,方法,语句和表达式)进行分类,其平均准确度分别为99.5%,91.4%,95.2%,88.3%和78.1%。

著录项

相似文献

  • 外文文献
  • 中文文献
  • 专利
获取原文

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号