Introduction
-
We formulate a practice-based cognitive process through a POMDP model that represents how the learners update their cognitive states;
-
We automate the POMDP modelling and improve the model learning from the learners’ learning activity data through structuring potential relations of multiple knowledge concepts;
-
We solve the POMDP model to optimize the learning strategies and propose an information entropy-based technique to refine the strategies;
-
We demonstrate the utility of using the POMDP planning techniques in two real-world knowledge concept learning domains.
Related Works
Knowledge Tracing
Intelligent Tutoring Systems
Background Knowledge
A POMDP Model
Dynamic Programming
Information Entropy
POMDP Solutions to Inducing Learning Strategies
Modelling Cognitive Process Through POMDP
A POMDP Specification
Notations | Definition |
---|---|
\(S^{i}\)
| The set of states \(S=\left\{ s_{0},s_{1},s_{2},...,s_{2^{K}-1}\right\} =\{(0,0,...,0,0),(0,0,...,0,1),(0,0,...,1,0),...,(1,1,...,1,1)\}\), and each state s represents a specific ability of a student mastering K knowledge concepts. |
A | The set of actions \(A=\left\{ a_{0},a_{1},a_{2},...,a_{N-1}\right\}\), and each action is to select and answer a specific question in the question bank. |
T | The transaction function \(T(s'\mid {}s,a)\) is the conditional probability of the next state \(s'\) (new ability) given the current state s (previous ability) and the previous action a (after answering the question). |
\(\Omega ^{ii}\)
| The set of observations \(\Omega =\left\{ o_{0},o_{1},o_{2},...,o_{2N-1}\right\} =\left\{ 0_{a_{0}},1_{a_{0}},0_{a_{1}},...,1_{a_{N-1}}\right\}\), and each observation is the correctness of the student’s answer to the question. |
O | The observation function O(o|s, a) is the conditional probability of the new observation o given the state s (ability) and the action a (answering a new question). |
R | The reward is only related to the final state \(R(s_{final})\) and its value is determined by a specific learning goal. |
\(\gamma\)
|
\(\gamma \in \left[ 0,1\right]\) is a discount factor.
|
POMDP Parameter Learning
S={state set (X, Z, Y)} | |
---|---|
Without Relations | {(0,0,0), (0,0,1), (0,1,0), (0,1,1), (1,0,0), (1,0,1), (1,1,0), (1,1,1)} |
With Relations | {(0,0,0), (0,0,1), (1,0,0), (1,0,1), (1,1,1)} |
New POMDP Solutions
An Example
\(s_{t+1}\)
|
\(s^{0}\)
|
\(s^{1}\)
|
\(s^{2}\)
|
\(s^{3}\)
|
\(s^{4}\)
|
---|---|---|---|---|---|
\(s_{t}\), \(a_{t}\)
| |||||
\(s^{0},a^{0}\)
| 0.10 | 0.00 | 0.90 | 0.00 | 0.00 |
\(s^{1},a^{0}\)
| 0.00 | 0.10 | 0.00 | 0.90 | 0.00 |
\(s^{2},a^{0}\)
| 0.00 | 0.00 | 1.00 | 0.00 | 0.00 |
\(s^{3},a^{0}\)
| 0.00 | 0.00 | 0.00 | 1.00 | 0.00 |
\(s^{4},a^{0}\)
| 0.00 | 0.00 | 0.00 | 0.00 | 1.00 |
\(s^{0},a^{1}\)
| 0.10 | 0.00 | 0.90 | 0.00 | 0.00 |
\(s^{1},a^{1}\)
| 0.00 | 0.10 | 0.00 | 0.90 | 0.00 |
\(s^{2},a^{1}\)
| 0.00 | 0.00 | 1.00 | 0.00 | 0.00 |
\(s^{3},a^{1}\)
| 0.00 | 0.00 | 0.00 | 1.00 | 0.00 |
\(s^{4},a^{1}\)
| 0.00 | 0.00 | 0.00 | 0.00 | 1.00 |
\(s^{0},a^{2}\)
| 0.20 | 0.80 | 0.00 | 0.00 | 0.00 |
\(s^{1},a^{2}\)
| 0.00 | 1.00 | 0.00 | 0.00 | 0.00 |
\(s^{2},a^{2}\)
| 0.00 | 0.00 | 0.20 | 0.80 | 0.00 |
\(s^{3},a^{2}\)
| 0.00 | 0.00 | 0.00 | 1.00 | 0.00 |
\(s^{4},a^{2}\)
| 0.00 | 0.00 | 0.00 | 0.00 | 1.00 |
\(s^{0},a^{3}\)
| 0.20 | 0.80 | 0.00 | 0.00 | 0.00 |
\(s^{1},a^{3}\)
| 0.00 | 1.00 | 0.00 | 0.00 | 0.00 |
\(s^{2},a^{3}\)
| 0.00 | 0.00 | 0.20 | 0.80 | 0.00 |
\(s^{3},a^{3}\)
| 0.00 | 0.00 | 0.00 | 1.00 | 0.00 |
\(s^{4},a^{3}\)
| 0.00 | 0.00 | 0.00 | 0.00 | 1.00 |
\(s^{0},a^{4}\)
| 1.00 | 0.00 | 0.00 | 0.00 | 0.00 |
\(s^{1},a^{4}\)
| 0.00 | 1.00 | 0.00 | 0.00 | 0.00 |
\(s^{2},a^{4}\)
| 0.00 | 0.00 | 1.00 | 0.00 | 0.00 |
\(s^{3},a^{4}\)
| 0.00 | 0.00 | 0.00 | 0.30 | 0.70 |
\(s^{4},a^{4}\)
| 0.00 | 0.00 | 0.00 | 0.00 | 1.00 |
\(o_{t}\)
|
\(o^{0}\)
|
\(o^{1}\)
|
\(o^{2}\)
|
\(o^{3}\)
|
\(o^{4}\)
|
\(o^{5}\)
|
\(o^{6}\)
|
\(o^{7}\)
|
\(o^{8}\)
|
\(o^{9}\)
|
---|---|---|---|---|---|---|---|---|---|---|
\(s_{t}\), \(a_{t}\)
| ||||||||||
\(s^{0},a^{0}\)
| 0.70 | 0.30 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 |
\(s^{1},a^{0}\)
| 0.70 | 0.30 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 |
\(s^{2},a^{0}\)
| 0.30 | 0.70 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 |
\(s^{3},a^{0}\)
| 0.30 | 0.70 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 |
\(s^{4},a^{0}\)
| 0.30 | 0.70 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 |
\(s^{0},a^{1}\)
| 0.00 | 0.00 | 0.75 | 0.25 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 |
\(s^{1},a^{1}\)
| 0.00 | 0.00 | 0.75 | 0.25 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 |
\(s^{2},a^{1}\)
| 0.00 | 0.00 | 0.35 | 0.65 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 |
\(s^{3},a^{1}\)
| 0.00 | 0.00 | 0.35 | 0.65 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 |
\(s^{4},a^{1}\)
| 0.00 | 0.00 | 0.35 | 0.65 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 |
\(s^{0},a^{2}\)
| 0.00 | 0.00 | 0.00 | 0.00 | 0.70 | 0.30 | 0.00 | 0.00 | 0.00 | 0.00 |
\(s^{1},a^{2}\)
| 0.00 | 0.00 | 0.00 | 0.00 | 0.30 | 0.70 | 0.00 | 0.00 | 0.00 | 0.00 |
\(s^{2},a^{2}\)
| 0.00 | 0.00 | 0.00 | 0.00 | 0.70 | 0.30 | 0.00 | 0.00 | 0.00 | 0.00 |
\(s^{3},a^{2}\)
| 0.00 | 0.00 | 0.00 | 0.00 | 0.30 | 0.70 | 0.00 | 0.00 | 0.00 | 0.00 |
\(s^{4},a^{2}\)
| 0.00 | 0.00 | 0.00 | 0.00 | 0.30 | 0.70 | 0.00 | 0.00 | 0.00 | 0.00 |
\(s^{0},a^{3}\)
| 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | 0.75 | 0.25 | 0.00 | 0.00 |
\(s^{1},a^{3}\)
| 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | 0.35 | 0.65 | 0.00 | 0.00 |
\(s^{2},a^{3}\)
| 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | 0.75 | 0.25 | 0.00 | 0.00 |
\(s^{3},a^{3}\)
| 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | 0.35 | 0.65 | 0.00 | 0.00 |
\(s^{4},a^{3}\)
| 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | 0.35 | 0.65 | 0.00 | 0.00 |
\(s^{0},a^{4}\)
| 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | 0.70 | 0.30 |
\(s^{1},a^{4}\)
| 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | 0.30 | 0.70 |
\(s^{2},a^{4}\)
| 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | 0.70 | 0.30 |
\(s^{3},a^{4}\)
| 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | 0.30 | 0.70 |
\(s^{4},a^{4}\)
| 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | 0.30 | 0.70 |
Algorithm Summary and Discussion
learning goal | Goal\(1\)
\(^{*}\)
| Goal\(2\)
\(^{**}\)
| Goal\(3\)
\(^{***}\)
|
---|---|---|---|
state(X,Z,Y) | |||
(0,0,0) | 0 | 0 | 0 |
(1,0,0) | 1 | 100 | 0 |
(0,0,1) | 1 | 100 | 0 |
(1,0,1) | 2 | 200 | 0 |
(1,1,1) | 3 | 201 | 1 |
Experimental Results
Data and Knowledge Concepts
dataset | Students | Knowledge concepts | Questions | Answer logs |
---|---|---|---|---|
ASSIST | 8,096 | 200 | 6,907 | 603,128 |
Quanlang | 11,203 | 14 | 3,544 | 243,718 |
seq_id | task_id | account_no | exam_id | knowledge_concept_id | auto_scoring | result | is_right | is_mark | score | class_id |
---|---|---|---|---|---|---|---|---|---|---|
12016 | 1909 | 12068 | 19432 | 10762 | 1 | “D” | I03 | I01 | 0 | 60 |
148106 | 3064 | 12508 | 21085 | 10763 | 1 | “B” | I01 | I01 | 5 | 66 |
2304322 | 73109 | 10519 | 20585 | 10764 | 0 | “\(\varvec{7}\)or\(\varvec{-7}\)” | I01 | I01 | 5 | 322 |
Field | Annotation |
---|---|
seq_id | It uniquely identifies the record in chronological order. |
task_id | It represents an assignment which may contain multiple questions. |
account_no | student account |
exam_id | It uniquely identifies a question. |
knowledge_concept_id | It uniquely identifies a knowledge concept. |
auto_scoring | It represents whether to automatically score. 0 means non-automatic scoring, 1 means automatic scoring. |
result | text of students’ answers |
is_right | It represents whether the student’s answer is right. I01 means exactly right, I02 means partly right, and I03 means not right. |
is_mark | It represents whether it has been graded. I01 means graded, and I02 means not graded. |
class_id | It uniquely identifies a class. |
KCS | Students | Knowledge concepts | Questions | Answer logs |
---|---|---|---|---|
KCS1 | 8,409 | 4 | 977 | 57,417 |
KCS2 | 6,624 | 4 | 864 | 64,872 |
KCS3 | 2,865 | 3 | 105 | 25,963 |
KCS4 | 3,509 | 5 | 154 | 20,513 |
KCS5 | 2,355 | 6 | 115 | 13,445 |
Experiment 1: Evaluations on Learning Strategy Induction
-
DP, as introduced in “Dynamic Programming” section, is the traditional method for solving POMDP and provides ground-truth for the POMDP solutions [16].
-
GREEDY strategy is a simplistic DP of which the decision horizon is 1. It aims to maximize the reward for only one time step.
-
IE\(_{\varvec{SE}}\)-DP and IE\(_{\varvec{KL}}\)-DP are the new IE-DP methods based on the POMDP models as implemented in Algorithm 1 where the Shannon entropy and the KL divergence are used to refine the learning strategies respectively.
-
Student strategy is retrieved from the students’ answer records [35]. We use a decision tree to compose the learning strategies based on what the students provide to answer the selected questions.
-
Random strategy is an excessive assignment tactic. The ITS randomly selects one question from the question bank which the student is to answer at each step.
-
LeitnerTutor selects the questions by examining the students’ proficiency on knowledge concepts [36]. The probability that a question is selected is reduced if the student has correctly answered the question involving the same knowledge concept; otherwise, the selection chance is increased.
-
ThresholdTutor presents questions based on the student’s correct rates on answering the possible questions [37], of which the threshold value is set as 0.5 in our experiments.
-
Proficiency of each knowledge concept achieved by all the students is calculated aswhere k is the \(k^{th}\) knowledge concept and \(ml(s_{T},k)\) is the mastery level (0 or 1) of the \(k^{th}\) knowledge concept at the state \(s_{T}\).$$\begin{aligned} pro(k)={\sum }_{s_{T}\in {}S}ml(s_{T},k)P(s_{T}) \end{aligned}$$
-
AVE is the average number of knowledge concepts mastered by all the students.$$\begin{aligned} AVE={\sum }_{s_{T}\in {}S}KC(s_{T})P(s_{T}) \end{aligned}$$
-
VAR is the variance of the number of knowledge concepts mastered by all the students.$$\begin{aligned} VAR={\sum }_{s_{T}\in {}S}[AVE-KC(s_{T})]^{2}P(s_{T}) \end{aligned}$$
KCS | Student | Random | LeitnerTutor | ThresholdTutor | IE\(_{SE}\)-DP | IE\(_{KL}\)-DP | DP | GREEDY | ||
---|---|---|---|---|---|---|---|---|---|---|
KCS1 | state(W,X,Y,Z) | (0,0,0,0) | 0.1913 | 0.2103 | 0.1765 | 0.1135 | 0.1348 | 0.1348 | 0.1281 | 0.1245 |
...... | ...... | ...... | ...... | ...... | ...... | ...... | ...... | ...... | ||
(1,1,1,1) | 0.4546 | 0.4768 | 0.4779 | 0.5242 | 0.6629 | 0.6433 | 0.5761 | 0.6152 | ||
proficiency | W | 0.8087 | 0.7897 | 0.8235 | 0.8865 | 0.8652 | 0.8652 | 0.8719 | 0.8755 | |
X | 0.7169 | 0.6889 | 0.7097 | 0.8462 | 0.8183 | 0.8206 | 0.7978 | 0.7969 | ||
Y | 0.7129 | 0.7042 | 0.7230 | 0.6542 | 0.8117 | 0.8158 | 0.7959 | 0.7526 | ||
Z | 0.4546 | 0.4768 | 0.4779 | 0.5242 | 0.6629 | 0.6433 | 0.5761 | 0.6152 | ||
AVE | 2.6931 | 2.6596 | 2.7341 | 2.9111 | 3.1581 | 3.1449 | 3.0417 | 3.0402 | ||
VAR | 2.3583 | 2.5271 | 2.3332 | 1.8104 | 1.9625 | 1.9493 | 1.9348 | 2.0630 | ||
KCS2 | state(W,Z,X,Y) | (0,0,0,0) | 0.1352 | 0.1299 | 0.1318 | 0.1369 | 0.0450 | 0.0529 | 0.0597 | 0.0554 |
...... | ...... | ...... | ...... | ...... | ...... | ...... | ...... | ...... | ||
(1,1,1,1) | 0.3216 | 0.3220 | 0.3203 | 0.3643 | 0.5300 | 0.5118 | 0.4701 | 0.3636 | ||
proficiency | W | 0.7024 | 0.6940 | 0.6852 | 0.7980 | 0.8450 | 0.8308 | 0.8248 | 0.7898 | |
Z | 0.3216 | 0.3220 | 0.3203 | 0.3643 | 0.5300 | 0.5118 | 0.4701 | 0.3636 | ||
X | 0.5803 | 0.5721 | 0.5625 | 0.6061 | 0.6858 | 0.6682 | 0.6413 | 0.6643 | ||
Y | 0.6211 | 0.6066 | 0.5834 | 0.6250 | 0.8041 | 0.7955 | 0.7646 | 0.7301 | ||
AVE | 2.2254 | 2.1947 | 2.1514 | 2.3934 | 2.8649 | 2.8063 | 2.7008 | 2.5478 | ||
VAR | 2.0482 | 2.0166 | 2.0491 | 1.9114 | 1.6744 | 1.7382 | 1.7697 | 1.7493 | ||
KCS3 | state(X,Z,Y) | (0,0,0) | 0.1883 | 0.1696 | 0.1985 | 0.1174 | 0.1319 | 0.1386 | 0.1432 | 0.1449 |
...... | ...... | ...... | ...... | ...... | ...... | ...... | ...... | ...... | ||
(1,1,1) | 0.2845 | 0.2950 | 0.4672 | 0.5917 | 0.6978 | 0.7125 | 0.6932 | 0.6933 | ||
proficiency | X | 0.6785 | 0.6888 | 0.7110 | 0.8569 | 0.8373 | 0.8253 | 0.8214 | 0.8208 | |
Z | 0.2845 | 0.2950 | 0.4672 | 0.5917 | 0.6978 | 0.7125 | 0.6932 | 0.6933 | ||
Y | 0.6624 | 0.6752 | 0.6980 | 0.6861 | 0.7948 | 0.8139 | 0.7952 | 0.8030 | ||
AVE | 1.6254 | 1.6590 | 1.8762 | 2.1347 | 2.3299 | 2.3517 | 2.3098 | 2.3171 | ||
VAR | 1.1799 | 1.1539 | 1.4399 | 1.2654 | 1.2207 | 1.2268 | 1.2670 | 1.2587 | ||
KCS4 | state(V,Z,W,X,Y) | (0,0,0,0,0) | 0.0458 | 0.0365 | 0.0544 | 0.0456 | 0.0087 | 0.0172 | 0.0118 | 0.0242 |
...... | ...... | ...... | ...... | ...... | ...... | ...... | ...... | ...... | ||
(1,1,1,1,1) | 0.1129 | 0.1580 | 0.1501 | 0.1644 | 0.6662 | 0.7040 | 0.6108 | 0.5369 | ||
proficiency | V | 0.6309 | 0.7202 | 0.6502 | 0.4669 | 0.9319 | 0.9111 | 0.9111 | 0.8422 | |
Z | 0.1129 | 0.1580 | 0.1501 | 0.1644 | 0.6662 | 0.7040 | 0.6108 | 0.5369 | ||
W | 0.4873 | 0.5595 | 0.5080 | 0.2259 | 0.8906 | 0.8744 | 0.8502 | 0.7986 | ||
X | 0.6007 | 0.6310 | 0.6541 | 0.7022 | 0.8455 | 0.8876 | 0.8463 | 0.7894 | ||
Y | 0.6100 | 0.6610 | 0.6511 | 0.9260 | 0.9384 | 0.8936 | 0.9077 | 0.8322 | ||
AVE | 2.4418 | 2.7297 | 2.6135 | 2.4854 | 4.2726 | 4.2707 | 4.1261 | 3.7993 | ||
VAR | 1.7942 | 2.0428 | 2.1695 | 1.8150 | 1.3587 | 1.6292 | 1.6174 | 2.1864 | ||
KCS5 | state(U,Z,V,W,X,Y) | (0,0,0,0,0,0) | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 |
...... | ...... | ...... | ...... | ...... | ...... | ...... | ...... | ...... | ||
(1,1,1,1,1,1) | 0.1199 | 0.1480 | 0.0610 | 0.0000 | 0.5485 | 0.5499 | 0.5491 | 0.7594 | ||
proficiency | U | 0.4847 | 0.5778 | 0.6025 | 0.9992 | 0.9531 | 0.9588 | 0.9030 | 0.9027 | |
Z | 0.1199 | 0.1480 | 0.0610 | 0.0000 | 0.5485 | 0.5499 | 0.5491 | 0.7594 | ||
V | 0.5960 | 0.6006 | 0.5160 | 0.0008 | 0.8910 | 0.9005 | 0.8528 | 0.8957 | ||
W | 0.6817 | 0.7095 | 0.5316 | 0.0008 | 0.8343 | 0.8316 | 0.7950 | 0.9802 | ||
X | 0.5071 | 0.5628 | 0.5139 | 0.9991 | 0.9152 | 0.9248 | 0.8846 | 0.9412 | ||
Y | 0.5423 | 0.6054 | 0.6774 | 1.0000 | 0.9232 | 0.9336 | 0.8895 | 0.8700 | ||
AVE | 2.9317 | 3.2041 | 2.9024 | 2.9999 | 5.0653 | 5.0992 | 4.8740 | 5.3492 | ||
VAR | 2.2522 | 2.4044 | 1.7201 | 0.0005 | 1.4570 | 1.3702 | 2.2423 | 1.5735 |
KCS1 | Student | Random | LeitnerTutor | ThresholdTutor | IE\(_{SE}\)-DP | IE\(_{KL}\)-DP | DP | GREEDY |
---|---|---|---|---|---|---|---|---|
KCS2 | ||||||||
Student |
\(\diagdown\)
| 1.52 | 1.89 | 10.68 | 22.37 | 21.77 | 16.82 | 16.51 |
Random | 1.52 |
\(\diagdown\)
| 3.38 | 12.08 | 23.53 | 22.94 | 18.09 | 17.76 |
LeitnerTutor | 3.67 | 2.15 |
\(\diagdown\)
| 8.70 | 20.46 | 19.85 | 14.89 | 14.60 |
ThresholdTutor | 8.44 | 10.03 | 12.16 |
\(\diagdown\)
| 12.72 | 12.06 | 6.75 | 6.56 |
IE\(_{SE}\)-DP | 33.14 | 34.88 | 36.98 | 24.88 |
\(\diagdown\)
| 0.67 | 5.90 | 5.88 |
IE\(_{KL}\)-DP | 29.85 | 31.56 | 33.65 | 21.61 | 3.17 |
\(\diagdown\)
| 5.24 | 5.23 |
DP | 24.33 | 26.01 | 28.11 | 16.02 | 8.84 | 5.63 |
\(\diagdown\)
| 0.08 |
GREEDY | 16.54 | 18.20 | 20.34 | 8.07 | 17.14 | 13.84 | 8.16 |
\(\diagdown\)
|
KCS3 | Student | Random | LeitnerTutor | ThresholdTutor | IE\(_{SE}\)-DP | IE\(_{KL}\)-DP | DP | GREEDY |
KCS4 | ||||||||
Student |
\(\diagdown\)
| 2.20 | 15.48 | 32.57 | 45.47 | 46.82 | 43.75 | 44.29 |
Random | 14.70 |
\(\diagdown\)
| 13.49 | 30.58 | 43.54 | 44.89 | 41.83 | 42.37 |
LeitnerTutor | 8.62 | 5.66 |
\(\diagdown\)
| 15.72 | 27.82 | 29.12 | 26.35 | 26.84 |
ThresholdTutor | 2.29 | 12.44 | 6.42 |
\(\diagdown\)
| 12.38 | 13.75 | 11.00 | 11.48 |
IE\(_{SE}\)-DP | 103.11 | 83.66 | 88.33 | 100.32 |
\(\diagdown\)
| 1.39 | 1.27 | 0.81 |
IE\(_{KL}\)-DP | 98.85 | 80.42 | 85.03 | 96.20 | 0.11 |
\(\diagdown\)
| 2.65 | 2.19 |
DP | 91.19 | 72.99 | 77.73 | 88.56 | 8.49 | 8.02 |
\(\diagdown\)
| 0.46 |
GREEDY | 68.04 | 52.01 | 56.82 | 65.68 | 25.14 | 24.13 | 16.76 |
\(\diagdown\)
|
KCS5 | Student | Random | LeitnerTutor | ThresholdTutor | IE\(_{SE}\)-DP | IE\(_{KL}\)-DP | DP | GREEDY |
\(\diagdown\)
| ||||||||
Student |
\(\diagdown\)
| 14.70 | 8.62 | 2.29 | 103.11 | 98.85 | 91.19 | 68.04 |
Random |
\(\diagdown\)
|
\(\diagdown\)
| 5.66 | 12.44 | 83.66 | 80.42 | 72.99 | 52.01 |
LeitnerTutor |
\(\diagdown\)
|
\(\diagdown\)
|
\(\diagdown\)
| 6.42 | 88.33 | 85.03 | 77.73 | 56.82 |
ThresholdTutor |
\(\diagdown\)
|
\(\diagdown\)
|
\(\diagdown\)
|
\(\diagdown\)
| 100.32 | 96.20 | 88.56 | 65.68 |
IE\(_{SE}\)-DP |
\(\diagdown\)
|
\(\diagdown\)
|
\(\diagdown\)
|
\(\diagdown\)
|
\(\diagdown\)
| 0.11 | 8.49 | 25.14 |
IE\(_{KL}\)-DP |
\(\diagdown\)
|
\(\diagdown\)
|
\(\diagdown\)
|
\(\diagdown\)
|
\(\diagdown\)
|
\(\diagdown\)
| 8.03 | 24.13 |
DP |
\(\diagdown\)
|
\(\diagdown\)
|
\(\diagdown\)
|
\(\diagdown\)
|
\(\diagdown\)
|
\(\diagdown\)
|
\(\diagdown\)
| 16.76 |
GREEDY |
\(\diagdown\)
|
\(\diagdown\)
|
\(\diagdown\)
|
\(\diagdown\)
|
\(\diagdown\)
|
\(\diagdown\)
|
\(\diagdown\)
|
\(\diagdown\)
|
Experiment 2: Evaluations on Students’ Performance Prediction
-
BKT [9] predicts the student’s performance on mastering a single knowledge concept.
-
DBKT [22] introduces dynamic Bayesian nets into BKT and makes it possible to represent the hierarchy and relationships between different skills of a learning domain.
-
AKT [12] couples flexible attention-based neural network models with a series of novel, interpretable model components inspired by cognitive and psychometric models.
-
Prediction Accuracy (ACC) binarizes the predicted values and is the ratio of the number of samples, which are predicted correctly, to the total number of samples.
-
Area Under an ROC Curve (AUC): In a dataset with M positive samples and N negative samples. There are a total of \(M\times {}N\) pairs of samples. For these \(M\times {}N\) pairs of samples, AUC is the ratio of the number of sample pairs whose predicted value of the positive sample is greater than that of the negative sample to the total number of sample pairs. A large AUC value indicates a good prediction performance.where$$\begin{aligned} AUC=\frac{\sum {}I(P_{positive},P_{negative})}{M\times {}N} \end{aligned}$$$$\begin{aligned} I(P_{positive},P_{negative})= {\left\{ \begin{array}{ll} 1,\quad {}P_{positive}>P_{negative}, \\ 0.5,\quad {}P_{positive}=P_{negative} \\ 0,\quad {}P_{positive}<P_{negative}\\ \end{array}\right. } \end{aligned}$$
-
Mean Average Error (MAE) and Root Mean Squared Error (RMSE) measure the deviation of the predicted values from the true values.$$\begin{aligned} \begin{aligned} MAE&=\frac{\sum {}|y_{true}-y_{predicted}|}{the\;number\;of\;samples} \\ RMSE&=\frac{\sqrt{\sum {}(y_{true}-y_{predicted})^{2}}}{the\;number\;of\;samples} \end{aligned} \end{aligned}$$
KCS | Metric | BKT | DBKT | AKT | POMDP |
---|---|---|---|---|---|
KCS1 | ACC | 0.6676 | 0.6821 | 0.6980 | 0.6905 |
AUC | 0.7239 | 0.7208 | 0.7566 | 0.7479 | |
MAE | 0.3996 | 0.3883 | 0.3759 | 0.3890 | |
RMSE | 0.4557 | 0.4526 | 0.4430 | 0.4447 | |
KCS2 | ACC | 0.6669 | 0.6577 | 0.6968 | 0.6818 |
AUC | 0.7212 | 0.7231 | 0.7553 | 0.7414 | |
MAE | 0.4087 | 0.4036 | 0.3803 | 0.3966 | |
RMSE | 0.4576 | 0.4622 | 0.4457 | 0.4509 | |
KCS3 | ACC | 0.6987 | 0.7000 | 0.7555 | 0.7318 |
AUC | 0.7630 | 0.7722 | 0.8319 | 0.8083 | |
MAE | 0.3748 | 0.3695 | 0.3251 | 0.3506 | |
RMSE | 0.4457 | 0.4405 | 0.4088 | 0.4215 | |
KCS4 | ACC | 0.7333 | 0.7197 | 0.7313 | 0.7227 |
AUC | 0.8016 | 0.7940 | 0.8039 | 0.7890 | |
MAE | 0.3670 | 0.3546 | 0.3461 | 0.3562 | |
RMSE | 0.4269 | 0.4303 | 0.4233 | 0.4319 | |
KCS5 | ACC | 0.8558 | 0.8437 | 0.8402 | 0.8505 |
AUC | 0.8829 | 0.8655 | 0.8681 | 0.8599 | |
MAE | 0.2176 | 0.2194 | 0.2190 | 0.2221 | |
RMSE | 0.3285 | 0.3394 | 0.3414 | 0.3412 |