Pattern-based Knowledge Component Extraction from Student Code Using Representation Learning
Not on the map. Why?
Abstract (arXiv)
Personalized instruction aims to provide learners with support that adapts to their individual knowledge and progress toward learning objectives. Discovering and tracing Knowledge Components (KCs) is an important step in building accurate models of student learning. However, KC discovery in computer science education is challenging due to the open-ended nature of programming, wide variability in student solutions, and intertwined use of programming structures in code. We address these challenges with a pattern-based KC discovery method that uses a data-driven approach to define KCs as recurring structural patterns in student code that reveal persistent patterns of struggle and mastery in students' solutions. We then evaluate the discovered KCs using expert evaluation and statistical student modeling to demonstrate their effectiveness in capturing student learning and struggles. We propose a framework for modeling students' learning by deriving pattern-based KCs from student code through a three-stage process. First, an attention-based code representation model identifies Abstract Syntax Tree subtrees most relevant to code correctness. Second, a Variational Autoencoder abstracts these subtrees into a smooth latent space, capturing structural similarity across student submissions. Third, the resulting representations are clustered into pattern-based KCs. To assess the effectiveness of pattern-based KCs for modeling students' learning, we adapt the Deep Knowledge Tracing model to incorporate these KCs, demonstrating significant improvements in predictive performance over baseline KT methods. Additionally, the learning curve analysis showed alignment between the derived KCs and learning theory.
Key facts. Cited by 4 papers in the map (data through 14 Oct 2026). Builds on 8 of its 42 references that are in the map. First posted on arXiv 12 Aug 2025.
Builds on
8 of 42 references.
References · 8
- 2021CodeT5: Identifier-aware Unified Pre-trained Encoder-Decoder Models for Code Understanding and Generationcited by 906
- 2015Deep Knowledge Tracingcited by 332
- 2019EdNet: A Large-Scale Hierarchical Dataset in Educationcited by 108
- 2022Knowledge Tracing: A Surveycited by 77
- 2022Code-DKT: A Code-based Knowledge Tracing Model for Programming Taskscited by 16
- 2021pyBKT: An Accessible Python Library of Bayesian Knowledge Tracing Modelscited by 13
- 2024Automated Generation and Tagging of Knowledge Components from Multiple-Choice Questionscited by 13
- 2025Automated Identification of Logical Errors in Programs: Advancing Scalable Analysis of Student Misconceptionscited by 5
Built on by
Citing papers per year: 2025: 1; 2026: 3.
4 papers.
- 2026Personalized Worked Example Generation from Student Code Submissions Using Pattern-based Knowledge Componentscited by 2
- 2025Automated Program Repair of Uncompilable Student Codecited by 0
- 2026Using LLMs for Knowledge Component-level Correctness Labeling in Open-ended Coding Problemscited by 0
- 2026Automated Recommendation of Programming Learning Content Using Pattern-based Knowledge Componentscited by 0
- 2026Automated Recommendation of Programming Learning Content Using Pattern-based Knowledge Components9 Jun 2026
- 2026Personalized Worked Example Generation from Student Code Submissions Using Pattern-based Knowledge Components27 Apr 2026
- 2026Using LLMs for Knowledge Component-level Correctness Labeling in Open-ended Coding Problems19 Feb 2026
- 2025Automated Program Repair of Uncompilable Student Code7 Oct 2025