Downloads · 30 days
21
4% of all-time downloads
W4ashabii/Byt5_OOV_finetuned
Byt5_OOV_finetuned is a text generation model from W4ashabii. Use it when you need the model to write or continue text. It is set up for transformers. The card lists the license as mit.
A ByT5-small model fine-tuned to predict morpheme boundaries in Nepali words, with a specific focus on generalizing to roots never seen during training (out-of-vocabulary / OOV generalization).
Downloads · 30 days
21
4% of all-time downloads
All-time downloads
579
Public
Parameters
300M
1.2 GB on disk
Likes
0
Public
Click a slice to open those files.
.safetensors1.2 GB · 100%
From the Hugging Face model README
A ByT5-small model fine-tuned to predict morpheme boundaries in Nepali words, with a specific focus on generalizing to roots never seen during training (out-of-vocabulary / OOV generalization).
Given a raw Nepali surface word, the model outputs the word split into
root and affix, separated by +:
Input: अँकाइनु
Output: अँका+इनु
Nepali morphology means a single dictionary root can surface in many inflected/derived forms. This model is trained to segment a word into its root and affix components at the byte level, which sidesteps the risk of a subword tokenizer fragmenting Devanagari's multi-byte, combining-mark-heavy sequences inconsistently.
Segmenting a Nepali surface word into root + affix, e.g. as a preprocessing step for morphological analysis, lemmatization, or downstream NLP pipelines that benefit from root-level normalization.
from transformers import AutoTokenizer, AutoModelForSeq2SeqLM
tokenizer = AutoTokenizer.from_pretrained("w4ashabii/Byt5_OOV_finetuned")
model = AutoModelForSeq2SeqLM.from_pretrained("w4ashabii/Byt5_OOV_finetuned")
word = "अँकाइनु"
input_ids = tokenizer(word, return_tensors="pt").input_ids
output_ids = model.generate(input_ids, max_length=40)
print(tokenizer.decode(output_ids[0], skip_special_tokens=True))
# अँका+इनु
Not intended for full morphological analysis beyond root/affix segmentation (e.g. no POS tagging, no gloss/meaning output), and not evaluated on languages other than Nepali.
Fine-tuned on w4ashabii/root_affix_dictionary,
split root-disjoint (not just word-disjoint) via grouped splitting on
the Root column, so no root appears in more than one split — this is
what makes the test set a genuine test of generalization to unseen roots
rather than memorization.
google/byt5-smallSingle NVIDIA T4 GPU (Google Colab)
Evaluated on the root-disjoint OOV test split (5,260 words never seen — by root — during training).
Two metrics, matching what matters for partial credit vs. strict correctness:
+ as a boundary at a character offset in
the reconstructed word and scores predicted vs. gold boundary positions
with precision/recall/F1, so a model that gets 3 of 4 boundaries right on
a word scores better than one that gets 0| Metric | Score |
|---|---|
| Exact Match | 0.8375 |
| Boundary Precision | 0.8094 |
| Boundary Recall | 0.7401 |
| Boundary F1 | 0.7732 |
The gap between boundary precision and recall indicates the model is somewhat more conservative than aggressive — it's more likely to miss a true boundary on an unseen root than to hallucinate one that isn't there.
BibTeX:
@misc{byt5_oov_finetuned,
author = {w4ashabii},
title = {Byt5\_OOV\_finetuned: A ByT5 model for Nepali morpheme boundary prediction},
year = {2026},
publisher = {Hugging Face},
howpublished = {\url{https://huggingface.co/w4ashabii/Byt5_OOV_finetuned}}
}