CoolFace
Modelpublic

dimeshanthoney/mbart-large-m50-singlish-sinhala

sourceHugging Faceapache-2.0updated 7mo agoView on Hugging Face
0likes
Model Card

mBART-50 · Singlish → Sinhala Transliteration

Fine-tuned [mBART-50](https://huggingface.co/facebook/mbart-large-50-many-to-many-mmt) for Singlish (Romanised Sinhala) → Sinhala script transliteration using a two-phase LoRA training strategy.

Training Strategy

PhaseDatasetStepsLR
Phase 1Phonetic corpus (400,000 pairs)9,0000.0003
Phase 2Adhoc curated (10,000 × 10)4,0006e-05

LoRA config: r=32, alpha=64, dropout 0.05 Target modules: q_proj, k_proj, v_proj, out_proj

Results — IndoNLP 2025 (Test 1 + Test 2 combined)

MetricPhase 1**Final**
BLEU-char83.408483.7157
WER0.27090.3266
CER0.10020.0986
ExactMatch0.17840.0932

Inference

python
from transformers import MBart50TokenizerFast, MBartForConditionalGeneration

repo = 'dimeshanthoney/mbart-large-m50-singlish-sinhala'
tokenizer = MBart50TokenizerFast.from_pretrained(repo)
model = MBartForConditionalGeneration.from_pretrained(repo)

src_text = 'oya kohomada'
tokenizer.src_lang = 'en_XX'
enc = tokenizer(src_text, return_tensors='pt')

gen = model.generate(
    **enc,
    forced_bos_token_id=tokenizer.lang_code_to_id['si_LK'],
    max_length=128,
    num_beams=5
)

print(tokenizer.batch_decode(gen, skip_special_tokens=True)[0])