Downloads · 30 days
9
28% of all-time downloads
uzbtrust/uzbek-operator-ner
uzbek-operator-ner is a machine learning model from uzbtrust. Use it for the machine learning task on the model card, and read the license before you ship it in a product. The card lists the license as mit.
A multilingual (English + Russian) Named Entity Recognition model, fine-tuned to recognize telecom-operator domain entities (tariffs, services, USSD codes) alongside general PER/ORG/LOC/MISC entities. Architecture and…
Downloads · 30 days
9
28% of all-time downloads
All-time downloads
32
Public
Repo size
43.7 MB
Likes
0
Public
Click a slice to open those files.
.pt43.7 MB · 96%
From the Hugging Face model README
A multilingual (English + Russian) Named Entity Recognition model, fine-tuned to recognize
telecom-operator domain entities (tariffs, services, USSD codes) alongside general PER/ORG/LOC/MISC
entities. Architecture and training code: uzbtrust/uzbek-operator-ner
on GitHub.
The encoder is a hand-written BiLSTM-CRF — no pretrained transformer. Word embeddings are FastText (EN+RU), combined with a character-level CNN and a learned language embedding.
| Test set | F1 |
|---|---|
| CoNLL-2003 (English) | 0.786 |
| WikiANN (Russian) | 0.817 |
| Operator domain (synthetic) | 1.000 |
This is the checkpoint from the second (mixed, fully-unfrozen) stage of domain fine-tuning — the stage chosen to preserve general EN/RU performance rather than the first-stage checkpoint, which reaches domain F1 = 1.0 faster but at some cost to general-domain recall.
model.pt — {"epoch", "best_f1", "model": state_dict}word_vocab.json, char_vocab.json, tag_map.json — vocabularies built during trainingconfig.json — architecture summaryThe model class lives in the GitHub repo, not in this repository (this is a plain PyTorch
state_dict, not a transformers-compatible checkpoint):
git clone https://github.com/uzbtrust/uzbek-operator-ner
cd uzbek-operator-ner
import torch, json
from model.ner_model import NERModel # see repo for exact constructor args
vocab = json.load(open("word_vocab.json"))
tags = json.load(open("tag_map.json"))
ckpt = torch.load("model.pt", map_location="cpu")
model = NERModel(vocab_size=len(vocab), num_tags=len(tags))
model.load_state_dict(ckpt["model"])
model.eval()
See training/predict.py
in the GitHub repo for a complete, runnable inference example.
MIT, matching the GitHub repository.