A System to Grade Computer Programming Skills using Machine Learning

被引:42
|
作者
Srikant, Shashank [1 ]
Aggarwal, Varun [1 ]
机构
[1] Aspiring Minds, Boston, MA 02108 USA
关键词
Recruitment; Automatic grading; MOOC; Feature engineering; Supervised learning; One-class learning;
D O I
10.1145/2623330.2623377
中图分类号
TP18 [人工智能理论];
学科分类号
081104 ; 0812 ; 0835 ; 1405 ;
摘要
The automatic evaluation of computer programs is a nascent area of research with a potential for large-scale impact. Extant program assessment systems score mostly based on the number of test-cases passed, providing no insight into the competency of the programmer. In this paper, we present a system to grade computer programs automatically. In addition to grading a program on its programming practices and complexity, the key kernel of the system is a machine-learning based algorithm which determines closeness of the logic of the given program to a correct program. This algorithm uses a set of highly-informative features, derived from the abstract representations of a given program, that capture the program's functionality. These features are then used to learn a model to grade the programs, which are built against evaluations done by experts. We show that the regression models provide much better grading than the ubiquitous test-case-pass based grading and rivals the grading accuracy of other open-response problems such as essay grading . We also show that our novel features add significant value over and above basic keyword/expression count features. In addition to this, we propose a novel way of posing computer-program grading as a one-class modeling problem and report encouraging preliminary results. We show the value of the system through a case study in a real-world industrial deployment. To the best of the authors' knowledge, this is the first time a system using machine learning has been developed and used for grading programs. The work is timely with regard to the recent boom in Massively Online Open Courseware (MOOCs), which promises to produce a significant amount of hand-graded digitized data.
引用
收藏
页码:1887 / 1896
页数:10
相关论文
共 50 条
  • [1] UNCODE: INTERACTIVE SYSTEM FOR LEARNING AND AUTOMATIC EVALUATION OF COMPUTER PROGRAMMING SKILLS
    Restrepo-Calle, F.
    Ramirez Echeverry, J. J.
    Gonzalez, F. A.
    EDULEARN18: 10TH INTERNATIONAL CONFERENCE ON EDUCATION AND NEW LEARNING TECHNOLOGIES, 2018, : 6888 - 6898
  • [2] A peer-assisted learning experience in computer programming language learning and developing computer programming skills
    Altintas, Tugba
    Gunes, Ali
    Sayan, Hamiyet
    INNOVATIONS IN EDUCATION AND TEACHING INTERNATIONAL, 2016, 53 (03) : 329 - 337
  • [3] Using computer graphics to improve programming skills
    Slaby, Antonin
    Jezek, Bruno
    Vanek, Jan
    INTERNATIONAL JOURNAL OF CONTINUING ENGINEERING EDUCATION AND LIFE-LONG LEARNING, 2005, 15 (3-6) : 185 - 193
  • [4] MACHINE LEARNING USING BRAIN COMPUTER INTERFACE SYSTEM
    Matsuno, Kevin
    Nandikolla, Vidya K.
    PROCEEDINGS OF THE ASME 2020 INTERNATIONAL MECHANICAL ENGINEERING CONGRESS AND EXPOSITION, IMECE2020, VOL 5, 2020,
  • [5] MUSICIANS LEARNING PERCEPTUAL SKILLS USING A COMPUTER-BASED TEACHING MACHINE
    DOWLING, WJ
    JOURNAL OF THE ACOUSTICAL SOCIETY OF AMERICA, 1972, 51 (01): : 138 - &
  • [6] Blended teaching and learning of computer programming skills in engineering curricula
    El-Zein, Abbas
    Langrish, Tim
    Balaam, Nigel
    Advances in Engineering Education, 2009, 1 (03): : 1 - 18
  • [7] Learning computer programming: Implementing a fractal in a Turing Machine
    Pereira, Hernane B. de B.
    Zebende, Gilney F.
    Moret, Marcelo A.
    COMPUTERS & EDUCATION, 2010, 55 (02) : 767 - 776
  • [8] Experiences in using an automated system for improving students' learning of computer programming
    Choy, M
    Nazir, U
    Poon, CK
    Yu, YT
    ADVANCES IN WEB-BASED LEARNING - ICWL 2005, 2005, 3583 : 267 - 272
  • [9] Forming Groups for Collaborative Learning of Introductory Computer Programming Based on Students' Programming Skills and Learning Styles
    Adan-Coello, Juan Manuel
    Tobar, Carlos Miguel
    Jose de Faria, Eustyquio Sao
    de Menezes, Wiris Serafim
    de Freitas, Ricardo Luis
    INTERNATIONAL JOURNAL OF INFORMATION AND COMMUNICATION TECHNOLOGY EDUCATION, 2011, 7 (04) : 34 - 46
  • [10] Can a computer detect interpersonal skills? Using machine learning to scale up the Facilitative Interpersonal Skills task
    Goldberg, Simon B.
    Tanana, Michael
    Imel, Zac E.
    Atkins, David C.
    Hill, Clara E.
    Anderson, Timothy
    PSYCHOTHERAPY RESEARCH, 2021, 31 (03) : 281 - 288