Korsvalidering med utelatt én observasjon

term_id: leave_one_out_cross_validation

Category: basic_concepts

Definition

Korsvalidering med utelatt én observasjon (LOOCV) er et spesielt tilfelle av k-fold korsvalidering der k er lik antall prøver i datasettet. Det gir en nesten ubestridelig estimat av modellens ytelse ved å bruke hver enkelt observasjon som testsett nøyaktig én gang, mens resten brukes til trening. Dette gir en lav skjevhet i estimatet, men kan være beregningsmessig kostbart.

Summary

En grundig resamplingsmetode der modellen trenes på alle unntatt én prøve og testes på den enkelt utelatte prøven, gjentatt for hvert datapunkt.

Key Concepts

  • Resamplingsmetoder
  • Modellvurdering
  • Skjevhet-varians-handelsavtale
  • Beregningsekostnad

Use Cases

  • Vurdering av modeller på små medisinske datasett
  • Finjustering av hyperparametre når data er knappe
  • Rigorøs sammenligning av algoritmenes ytelse

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)