AtesiT's picture
Upload README.md with huggingface_hub
a9ae38d verified
|
Raw
History Blame Contribute Delete
3.25 kB
metadata
language:
  - ru
license: mit
base_model: ai-forever/ru-en-RoSBERTa
tags:
  - text-classification
  - toxicity
  - russian
  - roberta
  - customer-support
metrics:
  - accuracy
  - f1
  - roc_auc
pipeline_tag: text-classification

Russian Support Toxicity Classifier

Модель для бинарной классификации токсичности русскоязычных текстов, дообученная на основе ai-forever/ru-en-RoSBERTa.

Описание

Модель предназначена для автоматического обнаружения токсичных, грубых или пассивно-агрессивных сообщений в контексте службы технической поддержки. Классифицирует текст на два класса:

  • 0 — нетоксичный (нейтральный, вежливый)
  • 1 — токсичный (грубость, оскорбления, агрессия)

Архитектура

  • Базовая модель: ai-forever/ru-en-RoSBERTa (RoBERTa-large, 24 слоя, 1024 hidden dim)
  • Подход: Transfer Learning с заморозкой весов энкодера
  • Обучается только классификационная голова (RobertaClassificationHead)
  • Dropout: 0.2, Optimizer: AdamW, LR: 2e-4

Метрики на тестовой выборке

Метрика Значение
Accuracy 0.9667
Precision 0.9654
Recall 0.9682
F1-score 0.9668
ROC AUC 0.9956
MCC 0.9335

Данные

Датасет: support-toxicity-classification-ru

  • Train: 11064 записей (50/50 по классам)
  • Val: 1383 записей
  • Test: 1383 записей

Источники:

  • Токсичный класс: s-nlp/ru_paradetox (ru_toxic_comment)
  • Нетоксичный класс: s-nlp/ru_paradetox (ru_neutral_comment), MTS-AI-SearchSkill/MTSBerquad, SetFit/amazon_massive_intent_ru-RU

Производительность инференса

  • GPU (T4): ~76 мс на 1 запрос
  • CPU: ~1800 мс на 1 запрос
  • Ускорение GPU/CPU: x23.6

Пример использования

from transformers import pipeline

classifier = pipeline( "text-classification", model="YOUR_USERNAME/support-toxicity-classifier-ru" )

result = classifier("Пожалуйста, попробуйте перезагрузить устройство") print(result)

result = classifier("Да пошел ты, надоел уже со своими вопросами") print(result)

Ограничения

  • Модель обучена преимущественно на интернет-комментариях, поэтому некоторые формы скрытой пассивной агрессии могут распознаваться с пониженной уверенностью (пограничные случаи около порога 0.5).
  • Рекомендуемый порог классификации: 0.5 (можно снизить до 0.4 для повышения Recall в продакшене за счёт роста FP).