|
--- |
|
datasets: |
|
- oscar |
|
language: |
|
- da |
|
widget: |
|
- text: Der var engang |
|
--- |
|
|
|
# What is this? |
|
|
|
A GPT-2 model (medium version, ~354.8 M parameters) for Danish text generation. The model was not pre-trained from scratch but adapted from the English version using [CLP-Transfer](https://arxiv.org/abs/2301.09626). |
|
|
|
# How to use |
|
|
|
Test the model using the pipeline from the [🤗 Transformers](https://github.com/huggingface/transformers) library: |
|
|
|
```python |
|
from transformers import pipeline |
|
|
|
generator = pipeline("text-generation", model = "KennethTM/gpt2-medium-danish") |
|
text = generator("Manden arbejdede som") |
|
|
|
print(text[0]["generated_text"]) |
|
``` |
|
|
|
Or load it using the Auto* classes: |
|
|
|
```python |
|
from transformers import AutoTokenizer, AutoModelForCausalLM |
|
|
|
tokenizer = AutoTokenizer.from_pretrained("KennethTM/gpt2-medium-danish") |
|
model = AutoModelForCausalLM.from_pretrained("KennethTM/gpt2-medium-danish") |
|
``` |
|
|
|
# Model training |
|
|
|
The training data are the Danish part of the [oscar dataset](https://huggingface.co/datasets/oscar) ('unshuffled_deduplicated_da') and a context length of 1024 tokens. |
|
|
|
The model weights are initialized from the English [GPT-2 medium model](https://huggingface.co/gpt2-medium) ('source model') with new word token embeddings created from the Danish [GPT-2 small model](https://huggingface.co/KennethTM/gpt2-small-danish) ('helper model') using the [CLP-Transfer method](https://github.com/malteos/clp-transfer). |
|
|
|
The model is trained using ~1.000.000 samples. |
|
|
|
For reference, the model achieves a perplexity of 24.7 on 5.000 random validation samples. |
|
|
|
The model is trained on an 8 GB GPU. |
|
|
|
# Notes |
|
|
|
This is a pre-trained model, for optimal performance it should be finetuned for new tasks. |