Home

Awesome

JuICe Models

Setup

Install conda. Then prepare environment:

conda create -n {name} python=3.6 anaconda
source activate {name}

# install pytorch
conda install pytorch torchvision cudatoolkit=8.0 -c pytorch

# fairseq setup
pip install --editable .

Train/Evaluate LSTM

CUDA_VISIBLE_DEVICES=0 python run.py  --model-dir {model directory} --dataset-dir {directory of downloaded dataset} --max-tokens 12000 --max-ctx-cells 3 --max-ctx-cell-tokens 75 --max-seq-len 250 -model lstm --code-key code_tokens_clean --num-merges 10000 --train-max 100000 

Train/Evaluate Transformer

Using 3 gpus yields a bigger batch size.

CUDA_VISIBLE_DEVICES=0,1,2 python run.py  --model-dir {model directory} --dataset-dir {directory of downloaded dataset}  --max-tokens 11000 --max-ctx-cells 3  -model transformer --code-key code_tokens_clean --num-merges 10000 --max-ctx-cell-tokens 50 --train-max 100000  --max-seq-len 250  --lr .0001 --warmup 1000

Viewing Predictions

During evaluation (generate_jupyter.py) the first 100 dev/test model predictions will be logged jupyter notebook under the model directory. This streamlines performing error analysis.

Acknowledgments

This code is built on the fairseq library.