Validazione incrociata leave-one-out

term_id: leave_one_out_cross_validation

Category: basic_concepts

Definition

La validazione incrociata leave-one-out (LOOCV) è un caso specifico della validazione incrociata k-fold in cui k è uguale al numero di campioni nel dataset. Fornisce una stima quasi non distorta delle prestazioni del modello.

Summary

Una tecnica rigorosa di ricampionamento in cui il modello viene addestrato su tutti i dati tranne uno e testato su quell’unico campione escluso, ripetuto per ogni punto dati.

Key Concepts

  • Ricampionamento
  • Valutazione del modello
  • Trade-off bias-varianza
  • Costo computazionale

Use Cases

  • Valutazione di modelli su piccoli dataset medici
  • Ottimizzazione degli iperparametri quando i dati sono scarsi
  • Confronto rigoroso delle prestazioni degli algoritmi

Code Example

1
2
3
4
5
6
7
from sklearn.model_selection import LeaveOneOut
loo = LeaveOneOut()
for train_index, test_index in loo.split(X):
    X_train, X_test = X[train_index], X[test_index]
    y_train, y_test = y[train_index], y[test_index]
    model.fit(X_train, y_train)
    score = model.score(X_test, y_test)