Automated Knowledge Component Generation for Interpretable Knowledge Tracing in Coding Problems

Zhangqi Duan, Nigel Fernandez, Arun Balajiee Lekshmi Narayanan, Mohammad Hassany, Rafaella Sampaio de Alencar +3 more
2/25/2025
cs.AIcs.CLcs.CY

No official code found. Best implementation: umass-ml4ed/kcgen-kt (8 stars, last commit 2025-10-31).

Abstract

Knowledge components (KCs) mapped to problems help model student learning, tracking their mastery levels on fine-grained skills thereby facilitating personalized learning and feedback in online learning platforms. However, crafting and tagging KCs to problems, traditionally performed by human domain experts, is highly labor intensive. We present an automated, LLM-based pipeline for KC generation and tagging for open-ended programming problems. We also develop an LLM-based knowledge tracing (KT) framework to leverage these LLM-generated KCs, which we refer to as KCGen-KT. We conduct extensive quantitative and qualitative evaluations on two real-world student code submission datasets in different programming languages.We find that KCGen-KT outperforms existing KT methods and human-written KCs on future student response prediction. We investigate the learning curves of generated KCs and show that LLM-generated KCs result in a better fit than human written KCs under a cognitive model. We also conduct a human evaluation with course instructors to show that our pipeline generates reasonably accurate problem-KC mappings.

View on arXivView PDF

Code Implementations(1)

84Shell, PythonFeb 25, 202511 months ago

Similar Papers

Cite this paper

@article{duan2025automated,
  title  = {Automated Knowledge Component Generation for Interpretable Knowledge Tracing in Coding Problems},
  author = {Zhangqi Duan and Nigel Fernandez and Arun Balajiee Lekshmi Narayanan and Mohammad Hassany and Rafaella Sampaio de Alencar and Peter Brusilovsky and Bita Akram and Andrew Lan},
  year   = {2025},
  eprint = {2502.18632},
  archivePrefix = {arXiv},
  url    = {http://arxiv.org/abs/2502.18632v3}
}

Add a badge to your README

Shows whether official code is linked for this paper.

Code of Paper badge
[![Code of Paper](https://codeofpaper.com/badge/2502.18632.svg)](https://codeofpaper.com/paper/2502.18632)

Discussion