|
--- |
|
base_model: '' |
|
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 |
|
|
|
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 | |
|
|:-------------:|:-----:|:----:|:---------------:| |
|
| 5.3901 | 9.93 | 370 | 4.1523 | |
|
| 3.8122 | 19.87 | 740 | 3.3425 | |
|
| 3.1609 | 29.8 | 1110 | 2.8916 | |
|
| 2.8352 | 39.73 | 1480 | 2.7718 | |
|
|
|
|
|
### Framework versions |
|
|
|
- Transformers 4.31.0 |
|
- Pytorch 2.0.1+cu118 |
|
- Datasets 2.14.3 |
|
- Tokenizers 0.13.3 |