File size: 5,026 Bytes
e0c0cb0
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
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
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
---
language:
- ti
license: apache-2.0
library_name: transformers
pipeline_tag: question-answering
tags:
- question-answering
- extractive-qa
- xlm-roberta
- vexmlm
- geez
- low-resource
base_model: Hailay/VEXMLM
---

# VEXMLM β€” TiQuAD

Tigrinya **question answering** fine-tuned from
[`Hailay/VEXMLM`](https://huggingface.co/Hailay/VEXMLM), the vocabulary-extended
XLM-R for Ge'ez-script languages.

Official implementation: **https://github.com/hailaykidu/VEXMLM**

| | |
|---|---|
| Task | question-answering |
| Dataset | TiQuAD |
| Language | Tigrinya |
| Architecture | `XLMRobertaForQuestionAnswering` |
| Base model | `Hailay/VEXMLM` |
| Vocabulary | 280,002 |
| Seeds published | 42, 43, 44, 45, 46 |

**TiQuAD is a supplementary task** in the VEXMLM paper β€” a diagnostic
evaluation, not a reported paper benchmark. Its 926 test questions make it a more
stable measurement than TIGQA's 67, and it is the stronger Tigrinya QA checkpoint
of the two.

## Five-seed benchmark evaluation

Fine-tuned independently under seeds 42–46 with one configuration (hash
`ce27cc194946`) on an A100-PCIE-40GB. Reported as mean Β± standard deviation over
the five runs, on the dataset's **test** split.

| Metric | Score |
|---|---|
| Exact Match | **50.24 Β± 0.48** |
| F1 | **58.90 Β± 0.66** |

These are the paper's verified results. They come from the five-seed evaluation
described above β€” **not** from interactive use.

### Interactive inference vs. benchmark

**Benchmark evaluation** is the five-seed measurement on the held-out test split,
shown in the table above.

**Interactive inference** is what the usage example below performs: Supply a Tigrinya context and question; the model returns an extracted span.
Predictions on arbitrary user input are demonstrations only and do not produce or
reproduce the benchmark score.

## Repository layout

Five independently fine-tuned checkpoints, one per seed. The reported benchmark
score is the mean Β± standard deviation over all five; **no single seed is the
"five-seed model."**

```
seed-42/  seed-43/  seed-44/  seed-45/  seed-46/
```

Load a specific seed with the `subfolder` argument, as in the example below.

## Fine-tuning

Fine-tuned from [`Hailay/VEXMLM`](https://huggingface.co/Hailay/VEXMLM), a
vocabulary-extended XLM-R (280,002 subwords, 30,000 Ge'ez tokens merged into the
SentencePiece model) after continued MLM pretraining.

| Hyperparameter | Value |
|---|---|
| Max sequence length | 256 |
| Batch size | 32 |
| Epochs | 4 |
| Learning rate | 2e-5 |
| LR schedule | Linear decay, 10% warmup |
| Weight decay | 0.01 |
| Gradient clipping | 1.0 |
| Optimizer | AdamW (β₁ 0.9, Ξ²β‚‚ 0.999, Ξ΅ 1e-8) |
| Precision | bf16 |
| Trainable parameters | All |
| Hardware | 1Γ— NVIDIA A100 |

Runs are bit-reproducible: `enable_full_determinism`,
`CUBLAS_WORKSPACE_CONFIG=:4096:8`, `dataloader_num_workers=0`.

## Usage

```python
from transformers import AutoTokenizer, AutoModelForQuestionAnswering
import torch

repo = "Hailay/VEXMLM-TiQuAD"
tokenizer = AutoTokenizer.from_pretrained(repo, subfolder="seed-42")
model = AutoModelForQuestionAnswering.from_pretrained(repo, subfolder="seed-42")
model.eval()

question = "αŠ€αˆ­α‰΅αˆ« ኣα‰₯ αŠ£α‹¨αŠ“α‹­ ክፍለ α‹“αˆˆαˆ α‰΅αˆ­αŠ¨α‰₯?"
context  = "αŠ€αˆ­α‰΅αˆ« ኣα‰₯ አፍαˆͺቃ ክፍለ α‹“αˆˆαˆ αŠ₯α‰΅αˆ­αŠ¨α‰₯ αˆƒαŒˆαˆ­ αŠ₯ያፒ"
enc = tokenizer(question, context, return_tensors="pt", truncation=True, max_length=256)

with torch.no_grad():
    out = model(**enc)

start = out.start_logits.argmax()
end = out.end_logits.argmax()
print(tokenizer.decode(enc.input_ids[0][start:end + 1], skip_special_tokens=True))
```

## Limitations

- Fine-tuned for Tigrinya on TiQuAD only; performance on other
  languages, domains or label schemes is not characterised.
- The base model covers Amharic and Tigrinya; other Ge'ez-script languages were
  not part of pretraining.
- Corpora are drawn largely from religious and news domains, and the model may
  reflect those distributions and any biases in them.
- Single-configuration study: no hyperparameter search was performed, and
  baseline comparisons in the paper are single-seed.

## Reproducibility

The fine-tuning launcher, evaluation code and per-run result records are in the
official repository: **https://github.com/hailaykidu/VEXMLM**

```bash
sbatch scripts/slurm_stage2_spm_seeds.sh    # 6 tasks Γ— 5 seeds
python3 evaluation/export_spm_results.py    # regenerates the metrics table
```

## Citation

```bibtex
@inproceedings{teklehaymanot2026vexmlm,
  title     = {Expanding the Lexicon of Ge'ez Based African Languages:
               A Comparative Study of Amharic and Tigrinya},
  author    = {Teklehaymanot, Hailay Kidu and Yadeta, Gebregziabihier and
               Nejdl, Wolfgang},
  booktitle = {Proceedings of the Workshop on Language Models for
               Underserved Communities (LM4UC) at IJCAI},
  year      = {2026}
}
```

Accepted at the LM4UC Workshop, IJCAI 2026.

## License

Apache 2.0, following `xlm-roberta-base`.