| ## A Lossless Syntax Tree Generator with Zero-shot Error Correction |
|
|
| - We follow [jam](https://huggingface.co/apcl/jam)'s pretraining procedure and use the same data to pretrain except we also use srcml to pretrain the models. |
| - In the finetuning stage, we finetune our models for 3 epochs. |
| - Our [GitHub repo](https://github.com/apcl-research/autorepair) contains the code for reproduction using the same [data](https://huggingface.co/datasets/apcl/autorepair). |
|
|
|
|
| ## Pretrained model parameters |
| | Hyperparameter | Description | Value | |
| | ----------- | ----------- |------------| |
| |e | embedding dimensions | 1024 | |
| |L | number of layers | 24 | |
| |h | attention heads | 16 | |
| |c | block size / context length | 256 | |
| |b | batch size | 4 | |
| |a | accumulation steps | 32 | |
| |r | learning rate | 3e-5 | |
| |y | weight decay | 1e-5 | |
| |iter | iterations | 570000 | |
|
|
| ## Model files |
|
|
| | Filename | Description | |
| | ------- | ------- | |
| |ckpt.pt|A model file for finetuning| |
| |ckpt_base.pt | A model file for generating syntax tree with the error correction in zero-shot setting| |
| |ckpt_finetune.pt | A model finetuned with the syntatic error dataset | |
|
|
| - Note that you can adjust the batch size and accumulation steps based on your GPU memory. But, the batch size * accumulation steps should be 128. |
| - If you finetune your models with multiple GPUs, you can turn down accumulation steps. For example, if you finetune with 2 GPUs, you will need to half the accumulation steps. |
|
|
|
|