Convalida incrociata di 10 volte vs convalida incrociata con una sola uscita


25

Sto eseguendo una convalida incrociata nidificata. Ho letto che la validazione incrociata lasciata in sospeso può essere parziale (non ricordo perché).

È meglio utilizzare la convalida incrociata 10 volte o la convalida incrociata con esclusione a parte oltre al tempo di esecuzione più lungo per la convalida incrociata con interruzione unica?


1
Ti ricordi dove l'hai letto?
Richard Hardy,

5
Hai visto questo post sul pregiudizio? Inoltre, questa risposta ha una citazione da un ottimo libro che raccomanda la convalida incrociata 5 volte o 10 volte.
Eric Farng,

1
Questo post è un po 'correlato.
Richard Hardy,

1
Grazie. Quindi tutto sommato si può dire che dovrei andare con un CV di 10 volte anziché lasciare un CV unico? Questo vale anche per un piccolo set di dati?
macchinari

1
@Thomas, quando il tuo set di dati diventa troppo piccolo finisci quasi per fare LOO-CV, quindi il vantaggio di un CV di 10 volte diminuisce man mano che le dimensioni del set di dati diminuiscono.
cdeterman,

Risposte:


27

Solo per aggiungere leggermente alla risposta di @SubravetiSuraj (+1)

La convalida incrociata fornisce una stima pessimistica delle prestazioni perché la maggior parte dei modelli statistici migliorerà se l'allenamento viene ampliato. Ciò significa che la convalida incrociata di k-fold stima le prestazioni di un modello addestrato su un set di dati 100 * (k-1) / k% dei dati disponibili, anziché sul 100% di esso. Pertanto, se si esegue la convalida incrociata per stimare le prestazioni e quindi si utilizza un modello addestrato su tutti i dati per l'uso operativo, si comporterà leggermente meglio di quanto suggerito dalla stima di convalida incrociata.

La convalida incrociata senza esclusione di dati è approssimativamente imparziale , poiché la differenza di dimensioni tra il set di allenamento utilizzato in ciascuna piega e l'intero set di dati è solo un singolo modello. C'è un articolo su questo di Luntz e Brailovsky (in russo).

Luntz, Aleksandr e Viktor Brailovsky. "Sulla stima dei caratteri ottenuti nella procedura statistica di riconoscimento." Technicheskaya Kibernetica 3.6 (1969): 6-12.

Guarda anche

Stima dei tassi di errore nell'analisi discriminante Peter A. Lachenbruch e M. Ray Mickey Technometrics Vol. 10, Iss. 1,1968

Tuttavia, mentre la convalida incrociata lasciata in sospeso è approssimativamente imparziale, tende ad avere una varianza elevata (quindi otterresti stime molto diverse se ripetessi la stima con diversi campioni iniziali di dati dalla stessa distribuzione). Poiché l'errore dello stimatore è una combinazione di distorsione e varianza, se la convalida incrociata con esclusione è migliore della convalida incrociata 10 volte dipende da entrambe le quantità.

Ora la varianza nell'adattare il modello tende ad essere maggiore se è adattato a un piccolo set di dati (poiché è più sensibile a eventuali artefatti di rumore / campionamento nel particolare campione di addestramento utilizzato). Ciò significa che è probabile che la convalida incrociata 10 volte abbia una varianza elevata (nonché una distorsione più elevata) se si dispone solo di una quantità limitata di dati, poiché le dimensioni del set di addestramento saranno inferiori rispetto a LOOCV. Quindi la validazione incrociata di k-fold può avere anche problemi di varianza, ma per una ragione diversa. Questo è il motivo per cui LOOCV è spesso migliore quando le dimensioni del set di dati sono ridotte.

Comunque, la ragione principale per usare LOOCV secondo me è che è computazionalmente poco costoso per alcuni modelli (come la regressione lineare, la maggior parte dei metodi del kernel, i classificatori più vicini, ecc.), E se il set di dati non fosse molto piccolo, userei Convalida incrociata di 10 volte se rientrava nel mio budget computazionale o, meglio ancora, nella stima del bootstrap e nel bagging.


2
+1 per l'oscuro riferimento russo del 1969! Hai un buon riferimento per LOOCV con varianza elevata? Questo è affermato in Hastie et al. Ma non sono sicuro di essere convinto al 100% dall'argomento e non ho visto dimostrazioni empiriche (simulazioni).
ameba dice Ripristina Monica il

3
sì, non credo di essere d'accordo, tuttavia, poiché si presume che il modello sia stabile sotto le perturbazioni causate dall'eliminazione dei campioni di test, il che probabilmente si avvicinerà alla verità se si dispone di un set di dati molto grande (ovvero solo asintoticamente vero, ma se tu avessi così tanti dati, quasi ogni ragionevole schema di valutazione delle prestazioni ti darebbe lo stesso risultato).
Dikran Marsupial

2
+1 (sia il post che il commento più recente - seguito da un ottimo articolo ma da non accecare (come qualsiasi altro articolo)).
usεr11852 dice Reinstate Monic

2
@Dikran Questo argomento (in cui LOOCV ha la più grande varianza) è stato ripreso in una domanda separata e piuttosto interessante: stats.stackexchange.com/questions/280665 , potresti dare un'occhiata.
ameba dice di reintegrare Monica

2
K

20

A mio avviso, tralasciare una convalida incrociata è meglio quando si dispone di una piccola serie di dati di allenamento. In questo caso, non puoi davvero fare 10 pieghe per fare previsioni sull'uso del resto dei tuoi dati per addestrare il modello.

Se invece hai una grande quantità di dati di allenamento, la validazione incrociata di 10 volte sarebbe una scommessa migliore, perché ci sarebbero troppe iterazioni per lasciarne fuori una validazione incrociata, e considerando questi molti risultati per ottimizzare i tuoi iperparametri potrebbe non essere una buona idea.

Secondo l'ISL, c'è sempre un compromesso di bias-varianza tra il fare lasciare uno fuori e la convalida incrociata k. In LOOCV (lasciare un CV fuori), si ottengono stime dell'errore del test con distorsione inferiore e varianza più elevata perché ogni set di allenamento contiene esempi n-1, il che significa che si sta utilizzando quasi l'intero set di allenamento in ogni iterazione. Ciò porta anche a una varianza più elevata, poiché vi è molta sovrapposizione tra i set di allenamento e quindi le stime dell'errore del test sono altamente correlate, il che significa che il valore medio della stima dell'errore del test avrà una varianza più elevata.

È vero il contrario con k-fold CV, poiché vi è relativamente meno sovrapposizione tra i set di allenamento, quindi le stime dell'errore del test sono meno correlate, per cui il valore medio dell'errore del test non avrà la stessa varianza di LOOCV.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.