convalida incrociata è quando si riserva una parte dei dati da utilizzare nella valutazione del modello. Esistono diversi metodi di convalida incrociata. Il concetto più semplice è quello di prendere solo il 70% (basta creare un numero qui, non deve essere il 70%) dei dati e utilizzarlo per l'allenamento, e quindi usare il restante 30% dei dati per valutare il modello prestazione. La ragione per cui sono necessari dati diversi per la formazione e la valutazione del modello è la protezione dal sovradattamento. Esistono altre tecniche di convalida incrociata (leggermente più coinvolte), ovviamente, come la convalida incrociata di k-fold, che spesso viene utilizzata nella pratica.
Ricerca griglia significa che si dispone di un insieme di modelli (che si differenziano tra loro nei valori dei parametri, che si trovano su una griglia). Quello che fai è quindi allenare ciascuno dei modelli e valutarlo utilizzando la convalida incrociata. Quindi seleziona quello che ha funzionato meglio.
Per fornire un esempio concreto, se si utilizza una macchina vettoriale di supporto, è possibile utilizzare valori diversi per gamma
e C
. Ad esempio, potresti avere una griglia con i seguenti valori per (gamma, C)
: (1, 1), (0.1, 1), (1, 10), (0.1, 10)
. È una griglia perché è come un prodotto di [1, 0.1]
per gamma
e [1, 10]
per C
. Grid-search fondamentalmente formerebbe un SVM per ciascuno di questi quattro valori di (gamma, C)
, quindi lo valuterà usando la convalida incrociata e selezionerà quello che ha fatto meglio.
fonte
2013-10-12 20:15:21
Beh, ho capito. Ma nell'Esempio di scikit-learn c'è dapprima una divisione del data_set facendo 'X_train, X_test, y_train, y_test = train_test_split ( X, y, test_size = 0.5, random_state = 0' e quindi nella ricerca della griglia 'clf = GridSearchCV (SVC (C = 1), tuned_parameters, cv = 5, scoring = score)' questo significa che il primo step split per es. 1000 allenamento impostato su 500 treni e 500 oggetti di prova e dopo di che la ricerca della griglia divide la formazione di 500 in "cv = 5" 5 volte la convalida incrociata? Quindi i 500 oggetti dove divisi in forse 250 e 250 o 400 e 100 e così via ?! – Linda
Sì, è vero. Metà dei dati viene riservata per la valutazione ** dopo ** la selezione del modello di ricerca della griglia (che utilizza la convalida incrociata 5 volte). La ragione è che non vogliono solo selezionare il modello migliore, ma anche avere una buona stima per quanto bene si generalizza (quanto bene si comporta sui nuovi dati). Non puoi semplicemente utilizzare il punteggio dalla convalida incrociata della ricerca della griglia, perché hai scelto il modello che ha ottenuto il punteggio più alto, quindi potrebbe esserci una sorta di bias di selezione incorporato nel punteggio. Ecco perché mantengono parte dei dati da testare al termine della ricerca della griglia. –