/ Модель

Характеристики

Контекст
512 токенов
Параметры
191 млн
Лицензия
MIT
Архитектура
bert · dense
Опубликована
31 мая 2022

response-toxicity-classifier-base

Классификация текстаТекст → label3 профессии

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

86скачиваний за 30 дней10лайковвеса обновлены2 окт 2022

Бенчмарки

Как модель справилась с задачами пользователей ailist и что о ней публикуют открытые лидерборды

Публичные оценки

Из открытых лидербордов. Сравнивайте результаты одного теста при одинаковых условиях — отсутствие оценки не значит, что модель хуже.

В подключённых источниках результатов для этой модели пока нет.

Что умеет модель

Описание составлено по карточке модели и метаданным Hugging Face

response-toxicity-classifier-base — русскоязычный классификатор сообщений на базе BERT, разработанный в Skoltech и дообученный в рамках стажировки в Tinkoff Никитой Степановым под руководством Александра Маркова. Модель обрабатывает текст диалога с учётом контекста и относит сообщение к одному из четырёх классов: приемлемое, токсичное, резко токсичное или затрагивающее рискованные чувствительные темы. В карточке Hugging Face указаны 190,7 млн параметров, контекст до 512 токенов и формат PyTorch.

Модель предназначена для модерации русскоязычных интернет- и чатбот-диалогов, выявления оскорблений, агрессивных сообщений и высказываний на чувствительные темы. На приведённых в README проверочных данных F1 для класса приемлемых сообщений составляет 0,896–0,940; для остальных классов результаты варьируются от 0,295 до 0,729, поэтому качество обнаружения токсичных и рискованных сообщений неодинаково. Модель распространяется по лицензии MIT.

Сценарии применения

  • модерация русскоязычных интернет-диалогов
  • проверка сообщений чатбота на токсичность
  • выявление оскорблений и агрессивных реплик
  • поиск сообщений, затрагивающих чувствительные темы
  • разметка сообщений по четырём категориям для последующей проверки

Ограничения

По результатам README F1 для классов токсичных, резко токсичных и рискованных сообщений заметно ниже, чем для приемлемых; качество зависит от класса и типа диалогов. Контекст ограничен 512 токенами.

Для каких профессий подходит3

Разделы каталога профессий, в задачах которых используется эта модель

Все профессии

Карточка модели

README от автора на Hugging Face, как он его опубликовал

Открыть на Hugging Face

response-toxicity-classifier-base

BERT classifier from Skoltech, finetuned on contextual data with 4 labels.

Training

Skoltech/russian-inappropriate-messages was finetuned on a multiclass data with four classes (check the exact mapping between idx and label in model.config).

  1. OK label — the message is OK in context and does not intent to offend or somehow harm the reputation of a speaker.
  2. Toxic label — the message might be seen as a offensive one in given context.
  3. Severe toxic label — the message is offencive, full of anger and was written to provoke a fight or any other discomfort
  4. Risks label — the message touches on sensitive topics and can harm the reputation of the speaker (i.e. religion, politics)

The model was finetuned on a soon-to-be-posted dialogs datasets.

Evaluation results

Model achieves the following results on the validation datasets (will be posted soon):

OK - F1-scoreTOXIC - F1-scoreSEVERE TOXIC - F1-scoreRISKS - F1-score
internet dialogs0.8960.3480.4900.591
chatbot dialogs0.9400.2950.7290.46

Use in transformers

import torch
from transformers import AutoTokenizer, AutoModelForSequenceClassification
tokenizer = AutoTokenizer.from_pretrained('tinkoff-ai/response-toxicity-classifier-base')
model = AutoModelForSequenceClassification.from_pretrained('tinkoff-ai/response-toxicity-classifier-base')
inputs = tokenizer('[CLS]привет[SEP]привет![SEP]как дела?[RESPONSE_TOKEN]норм, у тя как?', max_length=128, add_special_tokens=False, return_tensors='pt')
with torch.inference_mode():
    logits = model(**inputs).logits
    probas = torch.softmax(logits, dim=-1)[0].cpu().detach().numpy()

The work was done during internship at Tinkoff by Nikita Stepanov, mentored by Alexander Markov.

Как запустить

На своей GPU в ailist. Цена — по текущим предложениям провайдеров

GPU в ailist

Универсальный рантайм · text-classification

Можно запустить

Подбираем GPU…

Класс архитектуры
BertForSequenceClassification
Ревизия весов
2efd8b0

0 моделей