Automating Program Structure Classification
When students write programs, their program structure provides insight into their learning process. However, analyzing program structure by hand is time-consuming, and teachers need better tools for computer-assisted exploration of student solutions. As a first step towards an education-oriented program analysis toolkit, we show how supervised machine learning methods can automatically classify student programs into a predetermined set of high-level structures. We evaluate two models on classifying student solutions to the Rainfall problem: a nearest-neighbors classifier using syntax tree edit distance and a recurrent neural network. We demonstrate that these models can achieve 91% classification accuracy when trained on 108 programs. We further explore the generality, trade-offs, and failure cases of each model.
Code (1)
Tasks
ClassificationGeneral ClassificationSimilar Papers 제목 키워드 기반
CLARK: Closed-loop Learning for Adaptive Reasoning over Knowledge Graphs
Machine Learning models are widely used for automating classification tasks by extracting statistical patterns from data. However, their performance deteriorates if the data distribution changes, making them ill-suited t…
Knowledge GraphsMulti-label Classification for Automatic Tag Prediction in the Context of Programming Challenges
One of the best ways for developers to test and improve their skills in a fun and challenging way are programming challenges, offered by a plethora of websites. For the inexperienced ones, some of the problems might appe…
Deep LearningGeneral ClassificationMulti-Label ClassificationMUlTI-LABEL-ClASSIFICATION+1Transforming Probabilistic Programs for Model Checking
Probabilistic programming is perfectly suited to reliable and transparent data science, as it allows the user to specify their models in a high-level language without worrying about the complexities of how to fit the mod…
modelProbabilistic ProgrammingClassifying Unstructured Clinical Notes via Automatic Weak Supervision
Healthcare providers usually record detailed notes of the clinical care delivered to each patient for clinical, research, and billing purposes. Due to the unstructured nature of these narratives, providers employ dedicat…
DiagnosticText ClassificationAutomating Manual Tasks through Intuitive Robot Programming and Cognitive Robotics
This paper presents a novel concept for intuitive end-user programming of robots, inspired by natural interaction between humans. Natural language and supportive gestures are translated into robot programs using large la…