/MF-DAKT

2021 CIKM: source code for the Multi-Factors Aware Dual-Attentional Knowledge Tracing (MF-DAKT)

Primary LanguagePython

Multi-Factors Aware Dual-Attentional Knowledge Tracing

CIKM'2021: Multi-Factors Aware Dual-Attentional Knowledge Tracing. (Tensorflow implementation for MF-DAKT)

This is the code for the paper: Multi-Factors Aware Dual-Attentional Knowledge Tracing

If you find this code is useful for your research, please cite as:

Moyu Zhang, Xinning Zhu, Chunhong Zhang, Yang Ji, Feng Pan and Changchuan Yin. 2021. Multi-Factors Aware Dual-Attentional Knowledge Tracing. In the Proceedings of the 30th ACM International Conference on Information and Knowledge Management (CIKM’21), November 1-5, 2021, QLD, Australia. ACM, New York, NY, USA, 2585-2597.

Setups

  • Python 3.6+
  • Tensorflow 1.14.0
  • Scikit-learn 0.21.3
  • Numpy 1.17.2

How to run model

If you want to calculate relations of questions, you can do as below:

python3 prepare_relation.py

However, if you use the file of prepare_relation.py to generate relations of questions, you also need to modify code in pre_train.py where the original code load file of npz but prepare_relation.py will store relation matrix in txt format.

If you want to pre-train question representations, you can do as below:

python3 pre_question.py

(Thanks to Mr.Sun for finding that we uploaded wrong loss function codes in pre_train.py, and we have updated the wrong component.)

If you want to predict students' answer, you can do as below:

python3 main.py

(If you have any questions, please contact me on time. My E-mail is zhangmoyu@bupt.cn.)