The four BKT numbers
BKT is just four numbers per skill. Understand those — you’ve grasped half the model.
Parameters
Section titled “Parameters”| Symbol | Name | Meaning | Default |
|---|---|---|---|
| Initial knowledge | prior confidence the student already knows the skill before the first attempt | 0.2 | |
| Transit | probability of learning in one attempt (even if incorrect) | 0.1 | |
| Slip | “knew but slipped through carelessness” | 0.1 | |
| Guess | “didn’t know but guessed / intuitively correct” | 0.2 |
Literature defaults (Corbett–Anderson) usually sit in the 0.1–0.2 band — the model stays stable.
Why these four
Section titled “Why these four”Each number answers one specific question; without it the model breaks.
— where to place the student at start
Section titled “P(L0)P(L_0)P(L0) — where to place the student at start”Before the first answer we know little about this particular student. Pick a moderately low value (they’ve just started the topic):
You can raise toward 0.4–0.5 if prerequisites look strong, or drop toward 0.1 if they’re fresh from seventh grade. On demos we keep one default for everyone — simpler tagging.
— can the student learn while solving
Section titled “P(T)P(T)P(T) — can the student learn while solving”Critical. Without the model freezes: after 100 tasks there’s no growth; the only way to lift is a streak of correct answers.
With the model says:
Even if you were wrong — you still had a chance to learn during the attempt. So I’ll bump confidence in mastery a bit.
is the literature default — ~10% chance per attempt to move toward “knows.”
— slip — prevents panic
Section titled “P(S)P(S)P(S) — slip — prevents panic”Without slip a single mistake nukes confidence:
Wrong answer ⇒ doesn’t know.
That’s false. Everyone sometimes:
- flips a sign;
- misreads the prompt;
- rushes mental math;
- loses focus after four tasks in a row.
tells the model:
~10% of “knowing” attempts still miss. Don’t panic on one wrong answer.
So confidence drops — but not to zero.
— guess — prevents naivety
Section titled “P(G)P(G)P(G) — guess — prevents naivety”Mirror of slip:
- four-option MC gives ~25% blind guess odds;
- sometimes the right number appears “by accident”;
- some tasks allow computing an answer without understanding.
:
~20% of correct answers might not reflect real mastery. Don’t celebrate one lucky guess.
So confidence rises — but not to 1.0.
Why these exact numbers
Section titled “Why these exact numbers”They’re literature defaults from classic BKT work since 1995 (Corbett & Anderson, User Modeling and User-Adapted Interaction). They behave reasonably across domains (math, grammar, programming) when you lack bespoke data.
In production you should tune them automatically from answer histories via EM (Expectation–Maximization). That’s covered in Notebook 3 — EM fitting.
If asked about the defaults
Section titled “If asked about the defaults”“Why instead of 0.15?”
Ready answer:
These are literature defaults from foundational BKT papers. On real data we fit them with EM — it’s on our roadmap. For MVP we anchor sensible baselines — moving within ~0.05–0.15 doesn’t change the qualitative story.
What happens if parameters are way off
Section titled “What happens if parameters are way off”Full sensitivity study — Notebook 2 — Parameter sensitivity. Short version:
- — model distrusts correct answers; barely rises. Students loop drills forever.
- — model distrusts mistakes; barely falls. Weak students get tasks that are too hard.
- — no learning during attempts; only demonstrating existing knowledge is modeled.
- — unrealistically fast mastery in a handful of tasks — plausible only for trivial adult skills.
Defaults 0.2 / 0.1 / 0.1 / 0.2 hit the sweet spot.
Try it: how and shape
Section titled “Try it: how P(S)P(S)P(S) and P(G)P(G)P(G) shape P(solve)P(\text{solve})P(solve)”Drag the sliders: sets the left end of the line (), the right end (). In between, slope equals .
A straight line. P(solve) equals P(G) at P(L)=0 and 1−P(S) at P(L)=1. Slope = 1−P(S)−P(G).
If (e.g. 0.5 / 0.5) the curve flattens — correctness carries almost no information about . BKT stops working.
Now we have state () and parameters (). Time for the update rule — BKT’s core math — in the next chapter.