MVideo NER RuBERT

RuBERT-модель для извлечения товарных фактов из коротких русскоязычных поисковых запросов и названий товаров. Модель размечает исходный текст символьными диапазонами четырёх типов:

Сущность Значение Примеры
BRAND бренд или производитель Samsung, Bosch, Dreame
MODEL модель, серия или артикул Galaxy S24, RT-AX53U
TYPE тип товара смартфон, стиральная машина
ATTR характеристика товара 256 ГБ, 45 см, Черный

Модель обучена для домена e-commerce и товарного поиска. Это не универсальная NER-модель для персон, организаций или географических объектов.

Какую ревизию использовать

В одном репозитории опубликованы несколько закреплённых версий:

Тег Commit Назначение
v3 0ead406ec30e5678f03dcb78a9ac061603d17c3e поисковые запросы; рекомендуемая query-версия
v2 493175ce2d8c1c270589b63338de1ea62b6b7956 промежуточная исследовательская версия
v1 6b7114f127175b5733c063d77296c8a8a0f47e3b названия и карточки товаров

Практическая рекомендация:

  • для пользовательских запросов используйте revision="v3";
  • для названий и карточек товаров используйте revision="v1";
  • для воспроизводимости всегда задавайте тег или полный commit SHA.

Быстрый старт

pip install torch transformers

Поисковые запросы — V3

from transformers import pipeline

extract = pipeline(
    task="token-classification",
    model="Mis-prog/mvideo-ner-rubert",
    revision="v3",
    aggregation_strategy="simple",
)

text = "Смартфон Samsung Galaxy S24 256 ГБ Черный"
for fact in extract(text):
    print(
        fact["entity_group"],
        repr(text[fact["start"]:fact["end"]]),
        fact["start"],
        fact["end"],
        round(float(fact["score"]), 4),
    )

Названия карточек — V1

from transformers import pipeline

extract_card = pipeline(
    task="token-classification",
    model="Mis-prog/mvideo-ner-rubert",
    revision="v1",
    aggregation_strategy="simple",
)

print(extract_card("Маршрутизатор ASUS RT-AX53U"))

Модель публична: токен Hugging Face для скачивания не требуется.

Оценка

Основная метрика — micro F1 по точному совпадению класса и обеих символьных границ сущности. Оценка проведена на фиксированном очищенном holdout из 477 строк: 247 поисковых запросов и 230 названий товаров. SHA-256 набора: 6a7bfa256365a097e58966435a0e4c2fc275029dbe4123cd5c6590ad53a4bfe9.

Результаты чистой модели без каталоговых правил:

Ревизия Все 477 Query Name/card
V1 0.7460 0.7281 0.7569
V2 0.6487 0.7577 0.5879
V3 0.6927 0.7630 0.6528

F1 V3 по классам на всём holdout:

BRAND TYPE MODEL ATTR
0.8933 0.7350 0.6301 0.5171

Разница между V1 и V3 ожидаема: V3 лучше обрабатывает реальные короткие запросы, а V1 лучше сохраняет границы характеристик и моделей в длинных названиях карточек.

Обучение V3

  • базовый checkpoint: DeepPavlov/rubert-base-cased;
  • архитектура: BertForTokenClassification, 12 слоёв, hidden size 768;
  • 9 BIO-меток: O и B-/I- для четырёх типов сущностей;
  • максимальная длина: 64 токена;
  • train: 400 000 строк;
  • источники: карточки и параметры каталога, реальные query-click пары, проверенная teacher-разметка и label-aware аугментации;
  • каждая эпоха балансировалась 50/50 между query и name;
  • 2 эпохи, learning rate 2e-5, seed 42;
  • лучший checkpoint выбирался по худшему F1 из двух dev-срезов: query и name.

Публичный набор с gold/silver-примерами: Mis-prog/mvideo-ner-data.

Hybrid pipeline

Этот репозиторий содержит только token-classification checkpoint. Полный MVideo Fact Extraction дополнительно использует:

  • SQLite-граф каталога;
  • category-aware правила и исправление опечаток;
  • query-click контекст;
  • типизацию ATTR в facet, value и unit;
  • confidence gate и prediction cache.

Поэтому результаты полного pipeline и прямой вызов модели через transformers.pipeline не идентичны. Сама BERT-модель возвращает только класс, confidence и границы исходного текста.

Ограничения

  • Модель специализирована на товарах М.Видео и может хуже переноситься на другие каталоги и схемы сущностей.
  • Основной язык — русский; латиница хорошо представлена прежде всего в брендах и моделях.
  • V3 не рекомендуется как единственный checkpoint для длинных названий карточек: используйте V1 или source-aware маршрутизацию.
  • Наиболее сложный класс V3 — ATTR, особенно числовые характеристики, составные размеры и точные границы.
  • Возможны конфликты BRAND/MODEL для названий линеек и MODEL/ATTR для буквенно-цифровых значений.
  • Обучающие данные отражают ассортимент и поисковое поведение исходного каталога, поэтому частотные категории представлены лучше редких.
  • Для длинных текстов явно задавайте подходящий max_length; модель обучалась на коротких строках с пределом 64 токена.

Лицензия и воспроизводимость

Публичный доступ к весам не задаёт лицензию автоматически. Лицензия этого репозитория модели пока не указана; перед распространением или коммерческим использованием проверьте условия исходной модели и данных.

Код pipeline, evaluator и документация: github.com/Mis-prog/MVideo.

Downloads last month
116
Safetensors
Model size
0.2B params
Tensor type
F32
·
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support

Model tree for Mis-prog/mvideo-ner-rubert

Finetuned
(70)
this model