Programming Knowledge Tracing with Context and Structure Integration

Xiaopeng Guo,Maojing Shu,Zhijie Huang,Jun Liu,Jun Sun
DOI: https://doi.org/10.1007/978-981-97-5492-2_10
2024-01-01
Abstract:We study the problem of programming knowledge tracing (PKT) where the goal is to track the student's mastery of programming skills during programming assignment tasks. Previous approaches typically focused on either the structural or contextual representation of code to model PKT. However, relying solely on one type of these code representations may fail to capture the subtle differences in the student-submitted code, leading to inferior tracing performance. In this paper, we highlight the significance of the integration of both the structural and contextual representation of the code in PKT. We then propose an efficient Context and Structure Integration PKT framework (CSI-PKT) by incorporating both the contextual and structural representations to model PKT. Specifically, we first leverage the currently advanced large programming language model pre-trained on language-programming language pairs to extract a contextual representation of the code. Simultaneously, we utilize abstract syntax trees to derive the structural representation of code. The contextual and structural representations of code, along with the correctness of the attempt are then fused to feed into a carefully designed knowledge tracker built upon a popular transformer architecture, with the goal to estimate the student knowledge hidden state to make a accurate student future submission prediction. Extensive experiments on one public PKT benchmark datasets demonstrate that our CSI-PKT achieves improved performance.
What problem does this paper attempt to address?