jploski's picture
Fix for "base model is not allowed to be empty"
1d6673f
---
tags:
- generated_from_trainer
model-index:
- name: retnet-mini-shakespeare
results: []
pipeline_tag: text-generation
---
# retnet-mini-shakespeare
This model was trained from scratch on "tinyshakespeare" text file.
## Model description
A tiny model similar to jploski/falcon-mini-shakespeare, to demonstrate training and recurrent inference using a retentive network (https://arxiv.org/pdf/2307.08621.pdf).
The code utilizes Sehyun Choi's implementation of retentive network (https://github.com/syncdoth/RetNet) with configuration parameters changed to make it a very tiny model.
- **License:** Apache 2.0.
## Intended uses & limitations
Intended to demonstrate training and (recurrent O(1)) inference using a retentive network
## Training and evaluation data
https://raw.githubusercontent.com/karpathy/char-rnn/master/data/tinyshakespeare/input.txt
## Training procedure
Note: updated on 2023-11-10 to work with the current version of syncdoth/RetNet.
Just used the single tinyshakespeare text file as both the training and validation set (split up into paragraphs). See:
https://colab.research.google.com/drive/1wZnM7FCe4TsQpoamJ7NDAuQfA3DYiwHi?usp=sharing
### Training hyperparameters
The following hyperparameters were used during training:
- learning_rate: 0.0006
- train_batch_size: 32
- eval_batch_size: 32
- seed: 42
- gradient_accumulation_steps: 8
- total_train_batch_size: 256
- optimizer: Adam with betas=(0.9,0.999) and epsilon=1e-08
- lr_scheduler_type: cosine
- lr_scheduler_warmup_steps: 10
- num_epochs: 40
### Training results
| Training Loss | Epoch | Step | Validation Loss |
|:-------------:|:-----:|:----:|:---------------:|
| 3.6853 | 10.0 | 370 | 3.4459 |
| 2.1973 | 20.0 | 740 | 2.0213 |
| 1.3819 | 30.0 | 1110 | 1.3017 |
| 1.1658 | 40.0 | 1480 | 1.1566 |
### Framework versions
- Transformers 4.35.0
- Pytorch 2.1.0+cu118
- Datasets 2.14.6
- Tokenizers 0.14.1