File size: 2,167 Bytes
c70a50b
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
---
license: apache-2.0
datasets:
- Helsinki-NLP/tatoeba
- openlanguagedata/flores_plus
language:
- es
- ca
metrics:
- bleu
- comet
- chrf
pipeline_tag: translation
---

# OPUS-MT-tiny-cat-spa

Distilled model from a Tatoeba-MT Teacher: [Tatoeba-MT-models/itc-deu+eng+fra+por+spa/opusTCv20230926max50+bt+jhubc_transformer-big_2024-05-30](https://object.pouta.csc.fi/Tatoeba-MT-models/itc-deu+eng+fra+por+spa/opusTCv20230926max50+bt+jhubc_transformer-big_2024-05-30.zip), which has been trained on the [Tatoeba](https://github.com/Helsinki-NLP/Tatoeba-Challenge/tree/master/data) dataset.

We used the [OpusDistillery](https://github.com/Helsinki-NLP/OpusDistillery) to train new a new student with the tiny architecture, with a regular transformer decoder.
For training data, we used [Tatoeba](https://github.com/Helsinki-NLP/Tatoeba-Challenge/tree/master/data).
The configuration file fed into OpusDistillery can be found [here](https://github.com/Helsinki-NLP/OpusDistillery/blob/main/configs/opustranslate_hf/config.op.ca-es.yml).

## How to run
```python
from transformers import MarianMTModel, MarianTokenizer
model_name = "Helsinki-NLP/opus-mt_tiny_cat-spa"
tokenizer = MarianTokenizer.from_pretrained(model_name)
model = MarianMTModel.from_pretrained(model_name)
tok = tokenizer("El concepte prové de la Xina, on la flor del cirerer era la més apreciada.", return_tensors="pt").input_ids
output = model.generate(tok)[0]
tokenizer.decode(output, skip_special_tokens=True)
```

## Benchmarks
### Teacher
| testset               | BLEU  | chr-F | COMET| 
|-----------------------|-------|-------|-------|
| Flores+ 	| 24.7	| 53.4 | 0.8264 |

### Student

| testset               | BLEU  | chr-F | COMET |
|-----------------------|-------|-------|-------|
| Flores+ 	| 24.2 	| 53.2 | 0.8484 |


## Marian models

We also provide Marian-compatible versions of this model. To use them, compile [Marian](https://marian-nmt.github.io/quickstart/) and run decoding with `marian-decoder`, for example:

```bash
marian-decoder \
  -i input.txt \
  -c final.model.npz.best-perplexity.npz.decoder.yml \
  -m final.model.npz.best-perplexity.npz \
  -v vocab.spm vocab.spm