Capítulo 2: Qualidade e Curadoria dos Dados
Construindo Conjuntos de Dados de Treinamento de Alta Qualidade
A qualidade dos dados determina a qualidade do modelo. Este capítulo aborda filtragem, limpeza e curadoria de conjuntos de dados.
Dimensões de Qualidade
| Dimensão | Descrição | Verificação |
|---|---|---|
| Precisão | Factual e correta | Revisão humana |
| Relevância | Relacionada ao seu caso de uso | Alinhamento de domínio |
| Diversidade | Abrange diferentes cenários | Análise de distribuição |
| Consistência | Formato e estilo uniformes | Verificações automáticas |
| Completude | Respostas completas e coerentes | Filtragem por tamanho |
Pipeline de Filtragem de Dados
def filter_quality(example):
"""Filter low-quality examples."""
output = example.get("output", "")
# Length check
if len(output) < 50:
return False
if len(output) > 4000:
return False
# Language check
if not is_english(output):
return False
# Format check
if contains_only_code(output) and not is_coding_task(example):
return False
return True
dataset = dataset.filter(filter_quality)
Remoção de Duplicatas
Remova exemplos duplicados ou quase duplicados:
from datasets import load_dataset
# Exact deduplication
seen = set()
def deduplicate(example):
key = hash(example["instruction"] + example["output"])
if key in seen:
return False
seen.add(key)
return True
dataset = dataset.filter(deduplicate)
Pontuação de Qualidade
Utilize um modelo de pontuação:
def score_quality(example):
"""Score example quality 1-5."""
# Could use a classifier or LLM
prompt = f"""Rate this response quality 1-5:
Q: {example['instruction']}
A: {example['output']}
Score:"""
score = scoring_model.generate(prompt)
return {"quality_score": int(score)}
dataset = dataset.map(score_quality)
dataset = dataset.filter(lambda x: x["quality_score"] >= 4)
Diretrizes de Tamanho de Conjunto de Dados
| Caso de Uso | Tamanho Recomendado |
|---|---|
| Adaptação de estilo | 100-500 exemplos |
| Especialização de tarefa | 500-2.000 exemplos |
| Especialização de domínio | 2.000-10.000 exemplos |
| Instrução geral | 10.000+ exemplos |
Principais Pontos
✅ Qualidade > Quantidade sempre
✅ Filtre agressivamente para alta qualidade
✅ Remova duplicatas
✅ Garanta diversidade nos exemplos
✅ Revisão humana para aplicações críticas