File size: 5,008 Bytes
e5e246d e7cf6f0 fe64af0 e5e246d e7cf6f0 e5e246d e7cf6f0 e5e246d e7cf6f0 e5e246d e7cf6f0 e5e246d e7cf6f0 e5e246d e7cf6f0 e5e246d e7cf6f0 e5e246d e7cf6f0 e5e246d e7cf6f0 e5e246d e7cf6f0 e5e246d e7cf6f0 e5e246d e7cf6f0 e5e246d e7cf6f0 e5e246d e7cf6f0 e5e246d e7cf6f0 e5e246d e7cf6f0 e5e246d e7cf6f0 e5e246d e7cf6f0 e5e246d e7cf6f0 e5e246d e7cf6f0 e5e246d e7cf6f0 e5e246d e7cf6f0 e5e246d e7cf6f0 e5e246d e7cf6f0 e5e246d e7cf6f0 e5e246d e7cf6f0 e5e246d e7cf6f0 e5e246d e7cf6f0 e5e246d e7cf6f0 e5e246d e7cf6f0 e5e246d e7cf6f0 e5e246d e7cf6f0 e5e246d e7cf6f0 e5e246d e7cf6f0 e5e246d e7cf6f0 e5e246d e7cf6f0 e5e246d e7cf6f0 e5e246d e7cf6f0 fe64af0 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 |
---
library_name: transformers
tags:
- legal
- licitação
- editais
license: apache-2.0
language:
- pt
metrics:
- accuracy
- f1
- precision
- recall
- perplexity
base_model:
- google-bert/bert-base-uncased
pipeline_tag: fill-mask
datasets:
- vic35get/bidCorpus
---
# HelBERT: Modelo BERT para Contratações Públicas
O **HelBERT** é um modelo de linguagem baseado na arquitetura BERT, pré-treinado com mais de **1,4 bilhão de tokens** extraídos de **editais de licitação, contratos públicos e legislações brasileiras**, com foco exclusivo no domínio jurídico de **contratações públicas**.
Foi desenvolvido para superar modelos genéricos e jurídicos existentes em tarefas específicas do setor público, como **classificação de objetos de contratação** e **identificação de indícios de fraude em editais**.
---
## 🧠 Detalhes do Modelo
- **Arquitetura:** BERT-Base (12 camadas, 110M parâmetros)
- **Tarefa de pré-treinamento:** Masked Language Modeling (MLM)
- **Tokenizador:** WordPiece especializado em domínio jurídico
- **Corpora:** Comprasnet, TCE-PI, PNCP, Leis de Licitação
- **Tamanho do vocabulário:** 33 mil subpalavras
- **Precisão:** 95.87% F1 na classificação de objetos e 91.65% F1 na detecção de fraudes
---
## 🧪 Avaliação
| Tarefa | F1-Weighted | Accuracy |
|-----------------------------------------|-------------|----------|
| Classificação de objetos de contratação | 95.87% | 95.87% |
| Classificação de indícios de fraude | 91.65% | 86.08% |
### Outras métricas:
- **Perplexidade:** 3.4–3.5 nos datasets jurídicos
- **Fertilidade do tokenizador:** 1.17–1.18 (baixo número de subpalavras por palavra)
---
## ✅ Como usar
```python
from transformers import AutoTokenizer, AutoModelForMaskedLM
tokenizer = AutoTokenizer.from_pretrained("seu-usuario/helbert")
model = AutoModelForMaskedLM.from_pretrained("seu-usuario/helbert")
input_text = "A proposta será avaliada com base no critério do [MASK]."
inputs = tokenizer(input_text, return_tensors="pt")
outputs = model(**inputs)
```
## 📚 Dados de Treinamento
- **Documentos utilizados:** mais de 460 mil, incluindo editais de licitação, contratos administrativos, termos de referência, atas e legislações.
- **Fontes:** COMPRASNET, Portal Nacional de Contratações Públicas (PNCP), Tribunal de Contas do Estado do Piauí (TCE-PI) e portais de transparência do governo.
- **Total de tokens:** aproximadamente 1,49 bilhão.
- **Conjunto de treino:** 9,7 milhões de amostras.
- **Conjunto de validação:** 100 mil amostras.
- **Pré-processamento aplicado:**
- Remoção de ruído estrutural (headers, URLs, assinaturas).
- Padronização de entidades como CNPJs, números, datas e e-mails.
- Normalização de vocabulário e unificação de sinônimos.
- Segmentação de sentenças com o NLTK.
---
## ⚙️ Configuração de Treinamento
- **Épocas de pré-treinamento:** 6
- **Batch total:** 128 (32 por etapa × 4 de accumulation)
- **Max length por sequência:** 128 tokens
- **Otimizador:** AdamW (β₁=0.9, β₂=0.999, ε=1e−6)
- **Weight decay:** 0.01
- **Taxa de aprendizado:** 1e-4
- **Precisão:** FP16 (mixed precision)
- **Tempo total de treinamento:** ~72 horas
- **Hardware:** GPU Quadro RTX 4000 (8 GB)
---
## 📌 Aplicações Recomendadas
### 🧩 Uso Direto (sem fine-tuning)
- Preenchimento de lacunas em textos jurídicos (MLM)
- Geração de embeddings especializados para domínios públicos
- Suporte a tarefas de recuperação de informação jurídica
### 🏷️ Ajuste Fino (downstream tasks)
- Classificação do tipo de objeto em editais de licitação
- Detecção automática de indícios de fraude ou risco em contratações públicas
- Análise de cláusulas contratuais e segmentação semântica
---
## ❗ Limitações
- O modelo foi treinado exclusivamente com documentos do setor público, podendo apresentar viés ao ser aplicado fora desse domínio (como contratos privados ou sentenças judiciais).
- Linguagem com forte padrão normativo e técnico pode dificultar a generalização para contextos mais informais.
- Restrições computacionais limitaram o número de épocas e a variedade de batch sizes testados.
---
## 🌱 Impacto Ambiental
Estimativas aproximadas baseadas na ferramenta [Machine Learning CO2 Impact](https://mlco2.github.io/impact#compute):
- **Tipo de hardware:** GPU Quadro RTX 4000 (8GB)
- **Tempo de uso:** ~72 horas
- **Região de computação:** Local (Brasil)
- **Emissão estimada de CO₂eq:** ~21.6 kg
---
<!-- ## 📜 Citação
Se este modelo for útil para você, por favor, cite da seguinte forma:
```bibtex
@misc{ribeiro2025helbert,
title={HelBERT: Um Modelo de Linguagem pré-treinado para o domínio de Contratações Públicas},
author={Victor Ribeiro da Silva and Ricardo de Andrade Lira Rabelo},
year={2025},
howpublished={\url{https://huggingface.co/seu-usuario/helbert}}
} --> |