Skip to content
Back to skills

Hate Speech Detection Eval

ASecurity

Evaluates binary and multi-label hate speech detection models on Brazilian Portuguese text. It specifically probes a model's sensitivity to targeted minority groups and its ranking quality under severe class imbalance. Use when the user wants to benchmark on ToxiGen-PT, Portuguese Superset Benchmark, HateBR, OLID-BR, TuPy-E, ToLD-BR, or asks about evaluating this task. Reports Macro-Recall.

  • 3 stars
  • 0 votes
  • 0 copies
  • 1 view
  • Added September 11, 2026
researchpython

Security analysis

A100/100

Scanned September 11, 2026

npx -y skills add qhjqhj00/research-skills-pool --skill hate-speech-detection-eval --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Hate Speech Detection Eval?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Hate Speech Detection Eval
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/qhjqhj00-hate-speech-detection-eval/badge)](https://www.skillsdirectory.com/skills/qhjqhj00-hate-speech-detection-eval)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: hate-speech-detection-eval
description: Evaluates binary and multi-label hate speech detection models on Brazilian Portuguese text. It specifically probes a model's sensitivity to targeted minority groups and its ranking quality under severe class imbalance. Use when the user wants to benchmark on ToxiGen-PT, Portuguese Superset Benchmark, HateBR, OLID-BR, TuPy-E, ToLD-BR, or asks about evaluating this task. Reports Macro-Recall.
metadata:
  skill_kind: dataset_eval
  source_arxiv: 2506.10245
  bibtex_key: brito2025toxsyn
  confidence: high
---

# hate-speech-detection-eval

> ToxSyn: Reducing Bias in Hate Speech Detection via Synthetic Minority Data in Brazilian Portuguese — Brito et al. (2025) (arXiv:2506.10245, 2025)

## What this evaluates

Evaluates binary and multi-label hate speech detection models on Brazilian Portuguese text. It specifically probes a model's sensitivity to targeted minority groups and its ranking quality under severe class imbalance.

## Datasets

- **ToxiGen-PT** — total 8960; splits: test (8960)
- **Portuguese Superset Benchmark** — total 6002; splits: test (6002)
- **HateBR** — total ?; splits: test (-1)
- **OLID-BR** — total ?; splits: test (-1)
- **TuPy-E** — total ?; splits: test (-1)
- **ToLD-BR** — total ?; splits: test (-1)

## Metrics

- `Macro-Recall` **(primary)** — range: [0, 1]
  - Unweighted mean of recall scores computed independently for each class (toxic/non-toxic or each minority group).
- `ROC AUC` — range: [0, 1]
  - Area under the Receiver Operating Characteristic curve, measuring the model's ability to rank positive instances higher than negative ones across all classification thresholds.

## Input / output format

**Input**: Raw text strings in Brazilian Portuguese (social media posts/comments).

**Output**: Binary label (toxic vs. non-toxic) or a multi-label vector indicating presence of specific protected minority group targets.

## Scoring recipe

```python
def compute_macro_recall(y_true, y_pred, num_classes):
    recalls = []
    for c in range(num_classes):
        tp = sum(1 for t, p in zip(y_true, y_pred) if t == c and p == c)
        fn = sum(1 for t, p in zip(y_true, y_pred) if t == c and p != c)
        recalls.append(tp / (tp + fn) if (tp + fn) > 0 else 0.0)
    return sum(recalls) / len(recalls)

def compute_roc_auc(y_true, y_scores):
    fpr, tpr, _ = roc_curve(y_true, y_scores)
    return auc(fpr, tpr)
```

## Common pitfalls

- Severe class imbalance in hate speech corpora makes accuracy misleading; macro-recall is required to capture minority group sensitivity.
- Existing benchmarks only label protected groups when content is explicitly toxic, leaving neutral/supportive references unlabeled and skewing evaluation.
- Translated datasets contain unnaturalized phrasing and culturally mismatched slurs that may not reflect authentic Brazilian Portuguese usage.

## Evidence (verbatim from paper)

> Due to class imbalance, we report macro-averaged recall (to measure per-class sensitivity) and ROC AUC (to assess ranking quality).

## Citation

```bibtex
@misc{brito2025toxsyn,
  title={ToxSyn: Reducing Bias in Hate Speech Detection via Synthetic Minority Data in Brazilian Portuguese},
  author={Brito et al. (2025)},
  year={2025},
  note={arXiv:2506.10245}
}
```

- arXiv: 2506.10245

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.