Skip to content

Home

Welcome to PyEdmine’s documentation!

Introduction

PyEdmine is a library of algorithms for reproducing Knowledge Tracing, Cognitive Diagnosis, and Exercise Recommendation models.

Implemented

Built-in Data Preprocessing

  • Assist2009
  • Assist2009-full
  • Assist2012
  • Assist2015
  • Assist2017
  • Edi2020-task1
  • Edi2020-task34
  • Ednet-kt1
  • Junyi2015
  • Moocradar-C[courseId] (For example, moocradar-C746997)
  • Poj
  • Slepemapy-anatomy
  • SLP-[subject] (For example, SLP-mat)
  • Statics2011
  • Xes3g5m

Built-in Models

Dataset used in the example is assist2009

First, Run examples/knowledge_tracing/mc2sc.py to obtain the Q table based on single-concept format (i.e., the combination of multiple knowledge points is regarded as a new knowledge point) on the assist2009 dataset.

Knowledge Tracing

root dir: examples/knowledge_tracing

  • ABQR ([Download])
    • Run abqr/get_graph.py --dataset_name "assist2009-single-concept"
    • Run train/abqr.py --dataset_name "assist2009-single-concept"
  • AKT ([Download])
    • Run train/akt.py
  • ATDKT ([Download])
    • Run train/atdkt.py
  • ATKT ([Download])
    • Run train/atkt.py
  • CKT ([Download])
    • Run train/ckt.py
  • CLKT
    • Run train/clkt.py --dataset_name "assist2009-single-concept"
  • DIMKT ([Download])
    • Run dimkt/get_difficulty.py
    • Run train/dimkt.py
  • DKT ([Download])
    • Run train/dkt.py
  • DKTForget ([Download])
    • Run train/dkt_forget.py
  • DKVMN ([Download])
    • Run train/dkvmn.py
  • DTransformer ([Download])
    • Run train/d_transformer.py --dataset_name "assist2009-single-concept"
  • GIKT
    • Run gikt/get_graph.py
    • Run train/gikt.py
  • HawkesKT ([Download])
    • Run train/hawkes_kt.py --dataset_name "assist2009-single-concept"
  • HDLPKT ([Download])
    • Run train/hdlpkt.py --dataset_name "assist2009-single-concept"
  • LBKT ([Download])
    • Run lbkt/get_statics.py
    • Run lbkt/get_factor.py
  • LPKT ([Download])
    • Run train/lpkt.py
  • MIKT ([Download])
    • Run train/mikt.py
  • QDCKT ([Download])
    • Run qdckt/get_difficulty.py
    • Run train/qdckt.py
  • QIKT ([Download])
    • Run train/qikt.py
  • qDKT ([Download])
    • Run train/qdkt.py
  • SimpleKT ([Download])
    • Run train/simple_kt.py
  • SKVMN
    • Run train/skvmn.py
  • SparseKT ([Download])
    • Run train/sparse_kt.py
  • UKT
    • Run train/ukt.py
  • GRKT
  • DyGKT

Cognitive Diagnosis

root dir: examples/cognitive_diagnosis

  • DINA ([Download])
    • Run train/dina.py
  • HierCDF
    • Run hier_cdf/construct_graph_from_rcd.py
    • Run train/hier_cdf.py
  • HyperCD ([Download])
    • Run hyper_cd/construct_hyper_graph.py
    • Run train/hyper_cd.py
  • IRT ([Download])
    • Run train/irt.py
  • MIRT ([Download])
    • Run train/mirt.py
  • NCD ([Download])
    • Run train/ncd.py
  • RCD ([Download])
    • Run /root/code/pyedmine/rcd/build_k_e_graph.py
    • Run /root/code/pyedmine/rcd/build_u_e_graph.py
    • Run /root/code/pyedmine/rcd/process_edge.py
    • Run train/rcd.py

Exercise Recommendation

root dir: examples/exercise_recommendation

  • EB-CF
    • Get Question Similarity Matrix
      • Run user_exercise_based_CF/que_sim_matrix.py
      • Run user_exercise_based_CF/que_sim_matrix_KT.py
      • Run user_exercise_based_CF/que_sim_matrix_CD.py
    • Run user_exercise_based_CF/evaluate_ub_cf.py
  • UB-CF
    • Get User Similarity Matrix
      • Run user_exercise_based_CF/user_sim_matrix.py
      • Run user_exercise_based_CF/user_sim_matrix_KT.py
      • Run user_exercise_based_CF/user_sim_matrix_CD.py
    • Run user_exercise_based_CF/evaluate_eb_cf.py
  • KG4EX ([Download])
    • Get DKT_KG4EX model: Run examples/knowledge_tracing/train/dkt_kg4ex.py
    • Run kg4ex/get_mlkc.py
    • Run kg4ex/get_pkc.py
    • Run kg4ex/get_efr.py
    • Run kg4ex/get_triples.py
    • Run train/kg4ex.py