ModernUzBERT-NER: Named Entity Recognition for the Uzbek Language
ModernUzBERT-NER — oʻzbek tili matnlarida nomlangan obʼyektlarni (Named Entity Recognition – NER) aniqlash uchun maxsus fine-tune qilingan zamonaviy transformator modelidir.
Model oʻzbek tili korpuslarida noldan pretrain qilingan ModernUzBERT modeli asosida qurilgan boʻlib, eng soʻnggi ModernBERT meʼmoriy yangiliklarini oʻzida mujassam etgan:
- Rotary Position Embeddings (RoPE): nisbiy masofa invariantligi va uzoq kontekstli bogʻlanishlarni mukammal modellashtirish;
- GeGLU (Gated Linear Units): nochiziqli faollashtirish qatlami;
- RMSNorm & Unpadding: hisoblash tezligi va xotira samaradorligi;
- BPE Tokenizer (52,032 vocab): oʻzbek tilining boy morfologik affikslarini aniq ifodalash.
Model Koʻrsatkichlari (Evaluation Results)
Model Hugging Face platformasidagi risqaliyevds/uzbek_ner maʼlumotlar toʻplamida (19,609 ta jumla) 19 ta BIO sinf (9 ta semantik toifa) boʻyicha oʻqitildi va mustaqil 1,947 ta test jumlasi (290,210 ta token, 9,180 ta haqiqiy obʼyekt) asosida qatʼiy CoNLL standarti boʻyicha baholandi:
| Metrika | Test Qiymati |
|---|---|
| Token Accuracy | 94.99% |
| Precision | 51.82% |
| Recall | 51.21% |
| Micro F1-Score | 51.51% |
Har bir semantik toifa boʻyicha F1-Score:
| Obʼyekt Toifasi (Entity) | Semantik Tavsifi | Precision | Recall | F1-Score | Namuna soni (Support) |
|---|---|---|---|---|---|
| PER | Shaxs nomlari | 79.71% | 79.61% | 79.66% | 2,241 |
| ORG | Tashkilotlar, vazirliklar, banklar va muassasalar | 49.96% | 52.11% | 51.01% | 2,581 |
| MONEY | Pul miqdorlari va moliyaviy birliklar | 43.20% | 42.39% | 42.79% | 427 |
| GPE | Geosiyosiy hududlar, davlatlar, viloyatlar va shaharlar | 40.93% | 42.68% | 41.78% | 867 |
| PROD | Mahsulotlar, texnika va tovar nomlari | 34.56% | 43.10% | 38.36% | 174 |
| LOC | Tabiiy geografik joylar, togʻlar, daryolar | 37.04% | 39.41% | 38.18% | 1,751 |
| DATE | Sana, yil, oy va vaqt koʻrsatkichlari | 38.93% | 33.15% | 35.81% | 727 |
| EVENT | Voqea-hodisalar, anjumanlar, festivallar | 15.66% | 5.88% | 8.55% | 221 |
| FAC | Inshootlar, binolar, koʻpriklar, maydonlar | 5.56% | 1.05% | 1.76% | 191 |
Qanday Foydalanish Mumkin? (How to Use)
1. Hugging Face pipeline orqali (Tezkor va oson):
from transformers import pipeline
# Model va tokenizatorni yuklash
ner_pipeline = pipeline(
"token-classification",
model="Orzumurod/ModernUzBERT-NER",
aggregation_strategy="simple"
)
# Sinov matni (tashkilot, joy nomi, pul birligi va sana)
text = "Oʻzbekiston Respublikasi Fanlar akademiyasi Toshkent shahrida yangi ilmiy markaz ochdi. 2024-yilda Markaziy bank 500000 soʻm miqdorida toʻlovni tasdiqladi."
entities = ner_pipeline(text)
for ent in entities:
print(f"Obʼyekt: {ent['word']} | Toifa: {ent['entity_group']} | Ishonchlilik: {ent['score']:.4f}")
2. PyTorch va AutoModelForTokenClassification orqali:
import torch
from transformers import AutoTokenizer, AutoModelForTokenClassification
model_id = "Orzumurod/ModernUzBERT-NER"
tokenizer = AutoTokenizer.from_pretrained(model_id)
model = AutoModelForTokenClassification.from_pretrained(model_id)
text = "Samarqand davlat universiteti Zarafshon daryosi boʻyida joylashgan."
inputs = tokenizer(text, return_tensors="pt")
with torch.no_grad():
logits = model(**inputs).logits
predictions = torch.argmax(logits, dim=2)[0].tolist()
tokens = tokenizer.convert_ids_to_tokens(inputs["input_ids"][0])
for token, pred_id in zip(tokens, predictions):
if token not in ["[CLS]", "[SEP]", "[PAD]"]:
print(f"{token}: {model.config.id2label[pred_id]}")
19 ta BIO Sinflar (Label Map)
Model quyidagi BIO teglari bilan ishlaydi:
O: Hech qanday obʼyekt emasB-PER/I-PER: Shaxs nomi (boshi / davomi)B-ORG/I-ORG: Tashkilot (boshi / davomi)B-LOC/I-LOC: Geografik joy (boshi / davomi)B-GPE/I-GPE: Geosiyosiy hudud (boshi / davomi)B-DATE/I-DATE: Sana va vaqt (boshi / davomi)B-MONEY/I-MONEY: Pul birligi (boshi / davomi)B-PROD/I-PROD: Mahsulot (boshi / davomi)B-EVENT/I-EVENT: Voqea-hodisa (boshi / davomi)B-FAC/I-FAC: Inshoot va bino (boshi / davomi)
Iqtibos (Citation)
Agar ushbu modeldan ilmiy tadqiqotingizda foydalansangiz, quyidagi bibliografik iqtibosni koʻrsatishingizni soʻraymiz:
@misc{modernuzbert_ner_2026,
author = {Orzumurod and Collaborators},
title = {ModernUzBERT-NER: Named Entity Recognition for the Uzbek Language based on ModernBERT},
year = {2026},
publisher = {Hugging Face},
howpublished = {\url{https://huggingface.co/Orzumurod/ModernUzBERT-NER}}
}
- Downloads last month
- 23
Dataset used to train Orzumurod/ModernUzBERT-NER
Evaluation results
- Test Micro F1-Score on Uzbek NER Datasetself-reported51.510
- Test Token Accuracy on Uzbek NER Datasetself-reported94.990
- Test Precision on Uzbek NER Datasetself-reported51.820
- Test Recall on Uzbek NER Datasetself-reported51.210