Sobes.tech
Middle — Senior

Como usar a validação cruzada para avaliar um modelo?

sobes.tech IA

Resposta da IA

A validação cruzada é um método de avaliação da qualidade de um modelo de aprendizagem automática que ajuda a verificar quão bem o modelo funcionará com novos dados. A ideia principal é dividir o conjunto de dados original em várias partes (folds), treinar o modelo em algumas partes e testá-lo nas restantes.

A variante mais comum é a validação cruzada k-fold:

  1. Dividir os dados em k partes iguais.
  2. Para cada uma das k partes:
    • Treinar o modelo nas outras k-1 partes.
    • Testar o modelo na parte atual (conjunto de validação).
  3. O valor médio das métricas em todas as k iterações fornece uma avaliação mais confiável da qualidade do modelo.

Isto ajuda a evitar o sobreajuste e obter uma avaliação mais objetiva do que uma simples divisão em conjuntos de treino e teste.

Exemplo em Python usando scikit-learn:

from sklearn.model_selection import cross_val_score
from sklearn.ensemble import RandomForestClassifier
from sklearn.datasets import load_iris

iris = load_iris()
X, y = iris.data, iris.target
model = RandomForestClassifier()
scores = cross_val_score(model, X, y, cv=5)  # validação cruzada de 5 dobras
print(f"Precisão média: {scores.mean():.2f}")