Skip to content

Duolingo SLAM experiments, written in AllenNLP

Notifications You must be signed in to change notification settings

jbarrow/reteach

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

reteach

reteach is a new approach to deep knowledge tracing by considering:

  1. the timeline of the user studying each individual knowledge concept; and
  2. the interaction between different concepts.

By taking this approach, we hope to build o

Getting Started

Installation

To install reteach, you must first install the requirements:

pip install -r requirements.txt

Then, just clone the repo and you should be good to go.

Data

The original data can be found on the Duolingo 2018 SLAM Shared Task page. The validation and test datasets were blind and thus came with labels in a separate file. To join the labels with the data, just run our join_labels.py script:

python -m scripts.join_labels [PATH_TO_DATA_FILE] [PATH_TO_KEY_FILE] > [PATH_TO_OUTPUT_FILE]

Training

To train a model, run:

cuda=0 allennlp train \
  -f \
  --include-package reteach \
  -s [TRAINED_MODEL_DIRECTORY] \
  conf/slam.jsonnet

Inference

You can generate a prediction file (with JSON outputs) by running the following command:

allennlp predict \
  --output-file [OUTPUT_FILE] \
  --silent \
  --include-package reteach \
  --predictor slam-predictor \
  --use-dataset-reader \
  [TRAINED_MODEL_DIRECTORY] \
  [DATASET]

About

Duolingo SLAM experiments, written in AllenNLP

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published