Eraserheadd's picture
Update README.md
e093844 verified
|
Raw
History Blame Contribute Delete
4.15 kB
---
license: cc-by-4.0
---
---
language:
* ru
license: cc-by-4.0
library_name: transformers
---
# RuBERT Tiny Toxicity Regression
Модель для оценки токсичности русскоязычных текстов по шкале от **-5 до +3**.
Модель была получена путем дообучения `cointegrated/rubert-tiny-toxicity` на размеченном корпусе русскоязычных интернет-комментариев.
## Что делает модель
Модель предсказывает числовую оценку токсичности текста:
* **-5** – максимально токсичный комментарий;
* **0** – нейтральный комментарий;
* **+3** – позитивный комментарий.
## Обучающие данные
Модель была обучена на корпусе из 101 966 русскоязычных интернет-комментариев.
Источники данных:
* Russian Language Toxic Comments (Kaggle);
* Toxic Russian Comments from B21176df (Kaggle);
* YouTube comments (Russian language) (Kaggle);
* Toxic Russian Comments Dataset (Hugging Face Datasets).
Комментарии были очищены от эмодзи, цифр и лишних символов, после чего использовались для обучения модели.
## Обучающие данные
Модель была дообучена на выборке из **1016 уникальных русскоязычных интернет-комментариев**, размеченных по шкале токсичности от **-5 до +3**.
Обучающая выборка была сформирована на основе двух источников:
* **171 комментарий**, оценённый женщинами-респондентками в рамках анкетирования (в качестве итоговой метки использовалась медианная оценка);
* **912 комментариев**, размеченных независимым экспертом.
При объединении источников дублирующиеся комментарии удалялись. Для совпадающих текстов сохранялись оценки, полученные в ходе анкетирования. Итоговый датасет содержал 1016 уникальных комментариев.
Для снижения гендерного смещения из обучающих данных были исключены оценки, демонстрировавшие систематические различия в восприятии токсичности гендерно маркированных оскорблений.
## Качество модели
Результаты на валидационной выборке:
* MAE = 0.957
* R² = 0.68
В среднем предсказание модели отличается от экспертной оценки менее чем на один балл шкалы.
## Использование
```python
from transformers import AutoTokenizer, AutoModelForSequenceClassification
import torch
model_name = "ВАШ_НИК/НАЗВАНИЕ_МОДЕЛИ"
tokenizer = AutoTokenizer.from_pretrained(model_name)
model = AutoModelForSequenceClassification.from_pretrained(model_name)
text = "Ты полный идиот"
inputs = tokenizer(text, return_tensors="pt")
with torch.no_grad():
score = model(**inputs).logits.item()
print(score)
```
## Ограничения
Модель обучалась на русскоязычных интернет-комментариях и может работать менее точно на текстах других жанров.
## Связанный датасет
Для обучения использовался корпус гендерно маркированной инвективной лексики русского языка.