Leave-one-out-crossvalidering

term_id: leave_one_out_cross_validation

Category: basic_concepts

Definition

Leave-one-out-crossvalidering (LOOCV) är ett specifikt fall av k-faldig crossvalidering där k är lika med antalet prover i datamängden. Den ger en nästan opartisk uppskattning av modellens prestanda genom att iterativt använda varje enskild observation som valideringsset medan de återstående används för träning.

Summary

En rigorös resampling-teknik där modellen tränas på alla utom ett prov och testas på det enskilda borttagna provet, upprepat för varje datapunkt.

Key Concepts

  • Resampling
  • Modellutvärdering
  • Bias-varians-tradeoff
  • Beräkningskostnad

Use Cases

  • Utvärdering av modeller på små medicinska datamängder
  • Hyperparameteroptimering när data är bristfällig
  • Rigorös jämförelse av algoritmers prestanda

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)