Bayesian Knowledge Tracing in 37 lines of Python — how NumPath models what a student knows
NumPath has developed a Bayesian Knowledge Tracing model in just 37 lines of Python code. This model updates the probability of a student's mastery of knowledge components after each attempt, aiding in adaptive learning. The design prioritizes simplicity and interpretability while preparing for future data collection and calibration.
- ▪NumPath's model maintains a KCState for each student and knowledge component pair.
- ▪The model uses four parameters to estimate mastery, learning, guessing, and slipping probabilities.
- ▪Standard Bayesian Knowledge Tracing was chosen for its speed and interpretability over more complex models.
Opening excerpt (first ~120 words) tap to expand
try { if(localStorage) { let currentUser = localStorage.getItem('current_user'); if (currentUser) { currentUser = JSON.parse(currentUser); if (currentUser.id === 409515) { document.getElementById('article-show-container').classList.add('current-user-is-article-author'); } } } } catch (e) { console.error(e); } Oscar Rieken Posted on May 27 Bayesian Knowledge Tracing in 37 lines of Python — how NumPath models what a student knows #numpath #adaptivelearning #python #bayesian What We Built NumPath maintains a KCState for every student × Knowledge Component pair. After every attempt, update_bkt() revises the probability that the student has mastered that KC.
…
Excerpt limited to ~120 words for fair-use compliance. The full article is at DEV.to (Top).