Capítulo 3: Estudos de Ablation
Entendendo o que Funciona e Por Quê
Estudos de ablation testam sistematicamente componentes para entender sua contribuição.
O que Ablacionar
| Componente | Variações para Testar |
|---|---|
| LoRA Rank | 4, 8, 16, 32, 64 |
| Módulos Alvo | Mínimo → Completo |
| Taxa de Aprendizado | Escala logarítmica |
| Tamanho dos Dados | 100, 500, 1K, 5K |
| Épocas | 1, 2, 3, 5 |
Framework de Ablation
def run_ablation(base_config, param_name, param_values):
"""Run ablation for a single parameter."""
results = []
for value in param_values:
config = base_config.copy()
config[param_name] = value
# Train
model = train_model(config)
# Evaluate
score = evaluate_model(model)
results.append({
param_name: value,
"score": score,
})
return results
Relatando Resultados
| LoRA Rank | Pontuação da Tarefa | Tempo de Treinamento |
|---|---|---|
| 4 | 85,2% | 45 min |
| 8 | 87,1% | 50 min |
| 16 | 88,3% | 55 min |
| 32 | 88,5% | 65 min |
| 64 | 88,4% | 80 min |
Insight: Rank 16 oferece o melhor equilíbrio entre qualidade e eficiência.
Boas Práticas
- Altere uma coisa de cada vez
- Use a mesma seed para reprodutibilidade
- Execute múltiplas seeds para resultados finais
- Documente tudo
- Foque nas diferenças práticas