🇧🇷 MISO-BR BERTimbau Base - Detector de Misoginia
Este modelo é uma versão fine-tuned do BERTimbau Base especificamente treinada para detectar misoginia em textos em português brasileiro.
📊 Performance
| Métrica | Valor |
|---|---|
| Accuracy | 83.33% |
| F1-macro | 83.33% |
| Precision-macro | 83.35% |
| Recall-macro | 83.33% |
| ROC-AUC | 89.93% |
| AUC-PR | 91.07% |
| F1-positivo (misógino) | 83.15% |
| Precision-positivo | 84.09% |
| Recall-positivo | 82.22% |
🎯 Uso
from transformers import AutoTokenizer, AutoModelForSequenceClassification
import torch
# Carregar modelo e tokenizer
model_name = "fabiopassos/misobr-bertimbau-base"
tokenizer = AutoTokenizer.from_pretrained(model_name)
model = AutoModelForSequenceClassification.from_pretrained(model_name)
def predict_misogyny(text):
inputs = tokenizer(text, return_tensors="pt", truncation=True, padding=True, max_length=128)
with torch.no_grad():
outputs = model(**inputs)
predictions = torch.nn.functional.softmax(outputs.logits, dim=-1)
labels = ["Não-misógino", "Misógino"]
confidence = predictions[0][1].item() # Confiança para classe misógina
prediction = labels[predictions.argmax().item()]
return {
"prediction": prediction,
"confidence": confidence,
"probabilities": {
"Não-misógino": predictions[0][0].item(),
"Misógino": predictions[0][1].item()
}
}
# Exemplo de uso
texto = "Essa mulher é uma vagabunda"
resultado = predict_misogyny(texto)
print(f"Predição: {resultado['prediction']}")
print(f"Confiança: {resultado['confidence']:.4f}")
⚙️ Configurações de Treinamento
Hiperparâmetros utilizados:
- Modelo base:
neuralmind/bert-base-portuguese-cased(109M parâmetros) - Learning rate: 5e-05
- Train batch size: 16
- Eval batch size: 16
- Seed: 42
- Optimizer: AdamW Torch Fused (betas=(0.9,0.999), epsilon=1e-08)
- LR scheduler type: linear
- Warmup steps: 500
- Épocas: 20
- Max length: 128 tokens
- Early stopping: 3 épocas de paciência
- Métrica de seleção: F1-macro
Resultados durante o treinamento:
| Época | Step | Validation Loss | Accuracy | F1 Macro | Precision Macro | Recall Macro | F1 Positive | Precision Positive | Recall Positive |
|---|---|---|---|---|---|---|---|---|---|
| 1.0 | 45 | 0.6900 | 0.5111 | 0.4117 | 0.5343 | 0.5111 | 0.6535 | 0.5061 | 0.9222 |
| 2.0 | 90 | 0.6337 | 0.6722 | 0.6710 | 0.6748 | 0.6722 | 0.6509 | 0.6962 | 0.6111 |
| 3.0 | 135 | 0.5049 | 0.7667 | 0.7648 | 0.7754 | 0.7667 | 0.7439 | 0.8243 | 0.6778 |
| 4.0 | 180 | 0.4051 | 0.8056 | 0.8055 | 0.8056 | 0.8056 | 0.8045 | 0.8090 | 0.8000 |
| 5.0 | 225 | 0.4363 | 0.7833 | 0.7833 | 0.7836 | 0.7833 | 0.7869 | 0.7742 | 0.8000 |
| 7.0 | 315 | 0.7491 | 0.8333 | 0.8330 | 0.8360 | 0.8333 | 0.8404 | 0.8061 | 0.8778 |
| 13.0 | 585 | 1.2368 | 0.8333 | 0.8333 | 0.8335 | 0.8333 | 0.8315 | 0.8409 | 0.8222 |
Tabela mostra épocas selecionadas do treinamento. Melhor resultado obtido na época 13.
Versões das bibliotecas:
- Transformers: 4.57.0
- PyTorch: 2.8.0+cu126
- Datasets: 4.0.0
- Tokenizers: 0.22.1
🔍 Classes
- 0: Não-misógino (texto que não contém misoginia)
- 1: Misógino (texto que contém misoginia)
Melhor época (13): Precisão de 84.09% para classe misógina e Recall de 82.22%
⚠️ Limitações
- Contexto específico: Treinado principalmente em comentários de redes sociais brasileiras
- Definição de misoginia: Baseada em critérios específicos do dataset MISO-BR
- Variações linguísticas: Pode ter performance reduzida em outros registros do português
- Viés temporal: Dados coletados em período específico (2019-2025)
🏷️ Labels e Definições
Misógino: Textos que apresentam:
- Ataques baseados no gênero feminino
- Linguagem objetificante ou degradante
- Estereótipos negativos específicos de mulheres
- Discriminação explícita ou implícita
Não-misógino: Textos que:
- Não contêm elementos discriminatórios de gênero
- Podem ser neutros ou até mesmo críticos, mas sem base misógina
- Incluem linguagem ofensiva geral (não específica de gênero)
📄 Citação
Se você usar este modelo ou dataset, por favor cite:
@misc{misobr2025,
author = {Fábio Passos},
title = {MISO-BR: Corpus Anotado de Misoginia em Português Brasileiro},
year = {2025},
publisher = {Hugging Face},
howpublished = {\url{https://huggingface.co/fabiopassos/misobr-bertimbau-base}},
note = {Dataset disponível em: \url{https://huggingface.co/datasets/fabiopassos/miso-br}}
}
📜 Licença
Este modelo está licenciado sob a Licença MIT. O dataset MISO-BR está disponível sob Creative Commons CC BY 4.0.
Desenvolvido para pesquisa acadêmica em detecção de discurso de ódio e misoginia em português brasileiro.
- Downloads last month
- 7
Model tree for fabiopassos/misobr-bertimbau-base
Base model
neuralmind/bert-base-portuguese-casedDataset used to train fabiopassos/misobr-bertimbau-base
Evaluation results
- Accuracy on MISO-BRself-reported0.833
- F1-macro on MISO-BRself-reported0.833
- Precision-macro on MISO-BRself-reported0.834
- Recall-macro on MISO-BRself-reported0.833
- ROC-AUC on MISO-BRself-reported0.899