CoolFace
Datasetpublic

AtesiT/ru-multitask-toxicity

RU Multi-Task Toxicity Dataset Описание Датасет для обучения multi-task классификатора токсичности русскоязычных текстов по трём независимым бинарным категориям: profanity — ненормативная лексика (мат) threat — угрозы в адрес пользователя/третьих лиц illegal — запросы, связанные с нарушением закона (например, "как сделать бомбу", "где купить наркотики") Каждый текст может относиться сразу к нескольким категориям одновременно (multi-label задача), либо ни к одной… See the full description on the dataset page: https://huggingface.co/datasets/AtesiT/ru-multitask-toxicity.

sourceHugging Facemitupdated 2mo agoView on Hugging Face
1likes38downloads
Dataset Card

RU Multi-Task Toxicity Dataset

Описание

Датасет для обучения multi-task классификатора токсичности русскоязычных текстов по трём независимым бинарным категориям:

  • —profanity — ненормативная лексика (мат)
  • —threat — угрозы в адрес пользователя/третьих лиц
  • —illegal — запросы, связанные с нарушением закона (например, "как сделать бомбу", "где купить наркотики")

Каждый текст может относиться сразу к нескольким категориям одновременно (multi-label задача), либо ни к одной (нейтральный текст).

Состав данных

Датасет собран комбинированным способом:

  1. 1.Реальные русскоязычные тексты из открытых источников (там, где это было технически возможно), очищенные и размеченные по мату через regex-паттерны.
  2. 2.Weak-supervision разметка классов threat и illegal по словарям/паттернам ключевых фраз.
  3. 3.Синтетическая аугментация редких классов (threat, illegal) шаблонными примерами — сделано намеренно, так как в естественных текстах такие примеры крайне редки, а модели нужно на чём-то учиться их распознавать.

Структура

КолонкаТипОписание
textstrОчищенный текст комментария
profanityint1, если присутствует нецензурная лексика
threatint1, если текст содержит угрозу
illegalint1, если текст — запрос про незаконные действия

Статистика классов

КлассPositive% от датасета
profanity396934.58%
threat1181.03%
illegal700.61%

Классы сильно несбалансированы: profanity встречается часто, threat и illegal — редкие классы. Это нужно учитывать при обучении (взвешивание лосса, подбор порога по F1, а не по accuracy).

Разбиение

  • —train: 9757 примеров
  • —test: 1722 примеров

Разбиение стратифицировано по самому редкому классу (illegal), чтобы он присутствовал в обеих выборках.

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

python
from datasets import load_dataset

ds = load_dataset("AtesiT/ru-multitask-toxicity")
print(ds["train"][0])

Лицензия

MIT. Датасет создан в учебных целях для курса по трансформерным энкодерам.