AtesiT's picture
Upload README.md with huggingface_hub
be3c09a verified
|
Raw History Blame Contribute Delete
4.06 kB
metadata
language:
  - ru
license: apache-2.0
library_name: sentence-transformers
tags:
  - sentence-transformers
  - feature-extraction
  - sentence-similarity
  - semantic-search
  - russian
  - domain-adaptation
base_model: sentence-transformers/all-MiniLM-L6-v2
datasets:
  - deepvk/ru-HNP
  - ai-forever/rubq-retrieval
metrics:
  - recall
pipeline_tag: sentence-similarity

all-MiniLM-L6-v2-ru-adapted

Это доменно-адаптированная версия модели sentence-transformers/all-MiniLM-L6-v2, дообученная для работы с русскоязычными текстами в задаче семантического поиска.

Базовая модель обучалась только на английских данных. Данная адаптация направлена на улучшение качества получаемых эмбеддингов для русского языка с помощью дообучения на парафразах.

Описание модели

  • Базовая модель: sentence-transformers/all-MiniLM-L6-v2
  • Размерность эмбеддингов: 384
  • Максимальная длина последовательности: 256 токенов
  • Функция потерь: TripletLoss (Cosine Distance, margin=0.5)
  • Датасет для дообучения: deepvk/ru-HNP (20000 примеров, якорь/позитив/негатив)
  • Эпохи обучения: 3
  • Batch size: 16
  • Warmup steps: 100

Как использовать

from sentence_transformers import SentenceTransformer

model = SentenceTransformer("AtesiT/all-MiniLM-L6-v2-ru-adapted")

sentences = [
    "Какая столица России?",
    "Москва — столица Российской Федерации",
    "Кошки — популярные домашние животные"
]

embeddings = model.encode(sentences, normalize_embeddings=True)
print(embeddings.shape)

similarity = embeddings[0] @ embeddings[1].T
print("Сходство между вопросом и ответом:", similarity)

Оценка качества (базовая модель, до дообучения)

Оценка проводилась на датасете ai-forever/rubq-retrieval (1692 вопроса, 56826 документов в базе знаний) с использованием FAISS (IndexFlatIP) и метрики Recall@K.

Метрика Базовая модель (all-MiniLM-L6-v2)
Recall@5 0.0272
Recall@10 0.0350

Метрики дообученной модели будут добавлены после завершения полного цикла оценки.

Кривая обучения (Training Loss)

Step Loss
500 0.214
1000 0.139
1500 0.130
2000 0.117
2500 0.114
3000 0.106
3500 0.108

Ограничения

  • Модель дообучалась на ограниченной выборке (20000 примеров) и небольшом числе эпох (3), что типично для образовательного проекта.
  • Данные для обучения (ru-HNP, парафразы) отличаются по своей природе от задачи QA-поиска (rubq-retrieval), что ограничивает степень переноса качества между задачами (domain shift).
  • Для промышленного использования рекомендуется дообучение на большем объёме данных, более близких по структуре к целевой задаче, а также подбор гиперпараметров.

Обучающий пайплайн

Модель была получена в рамках учебного задания по доменной адаптации энкодерных моделей.

Автор: AtesiT