menos-odio-v5-multitarea

RoBERTuito compartido con tres cabezas independientes y no excluyentes: vulgaridad, insulto y odio_grupal. Acepta un contexto opcional (título de la noticia o mensaje previo) y entrega probabilidades calibradas por cabeza.

No es un modelo estándar de transformers: se guarda y se carga con la clase Predictor de multitarea_es.py, incluida en el Space y en el cuaderno del proyecto.

Datos

  • odio_grupal: piuba-bigdata/contextualized_hate_speech (HATEFUL), partición por artículo, seed 42. Español rioplatense, tema pandémico.
  • vulgaridad e insulto: SINAI/OffendES (comentarios de influencers).
  • Cada fuente solo entrena las cabezas que anota (BCE con máscara). Ningún conjunto de entrenamiento es colombiano.

Entrenamiento

  • Dónde: GPU de Colab, ≈ 13 min (778 s), noviembre de 2026.
  • Hiperparámetros: 4 épocas, batch 16 con acumulación 2, lr 2e-5, max length 128, seed 42. Mejor checkpoint en la época 3.
  • Aumentación: perturbaciones ortográficas, vista normalizada y descarte de contexto.
  • Preprocesado: pysentimiento.preprocessing.preprocess_tweet(lang="es").
  • Calibración: temperatura por cabeza (0,90 · 1,43 · 1,35), ajustada solo en DEV_EVAL.

Métricas (DEV_EVAL; TEST sin evaluar)

Cabeza n Positivos Precision Recall F1 AUC Umbral
vulgaridad 37 7 1,000 1,000 1,000 1,000 0,302
insulto 48 11 0,900 0,818 0,857 0,961 0,351
odio_grupal 4.517 548 0,754 0,664 0,706 0,932 0,824

Vulgaridad e insulto tienen muy pocas filas: estas cifras no son evidencia de desempeño.

Comparación con tatisvivass/menos-odio-a3-robertuito en las mismas filas: F1 0,706 frente a 0,689, ΔF1 = +0,016, IC 95 % [−0,012; 0,045]. Sin diferencia detectable.

Limitaciones

  • Los estereotipos regionales colombianos no se reconocen de forma fiable: “Todos los costeños son perezosos” obtiene 0,42 en odio_grupal, por debajo del umbral 0,824.
  • Vulgaridad e insulto no se entrenaron con contexto etiquetado: el efecto del contexto en esas cabezas es una observación por confirmar.
  • Marca como vulgares algunos usos educativos, periodísticos o negados.
  • No sustituye la moderación humana.

Licencia

Pendiente de verificar: la ficha de SINAI/OffendES declara licencias contradictorias y estos pesos derivan en parte de ese conjunto.

Uso

from huggingface_hub import snapshot_download
from multitarea_es import Predictor, HEADS

pred = Predictor.cargar(snapshot_download("DavidVargas-Ctrl/menos-odio-v5-multitarea"))
probs = pred.probs(["Usted es un hp"], ["Discusión acalorada por una deuda"])[0]
print(dict(zip(HEADS, probs)))

Space demo: https://huggingface.co/spaces/DavidVargas-Ctrl/menos-odio-a-la-vista

Downloads last month

-

Downloads are not tracked for this model. How to track
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support

Model tree for DavidVargas-Ctrl/menos-odio-v5-multitarea

Finetuned
(19)
this model

Datasets used to train DavidVargas-Ctrl/menos-odio-v5-multitarea