Nella teoria dell'apprendimento statistico, non c'è un problema di overfitting su un set di test?


16

Consideriamo il problema relativo alla classificazione del set di dati MNIST.

Secondo la pagina MNIST di Yann LeCun , "Ciresan et al." ha ottenuto un tasso di errore dello 0,23% sul set di test MNIST utilizzando la rete neurale convoluzionale.

Indichiamo l'allenamento MNIST impostato come , il test MNIST impostato come D t e s t , l'ipotesi finale che hanno ottenuto usando D t r a i n come h 1 e il loro tasso di errore sul test MNIST impostato usando h 1 come E t e s t ( h 1 ) = 0,0023 .DtrainDtestDtrainh1h1Etest(h1)=0.0023

Nel loro punto di vista, poiché viene campionato a caso insieme di test dallo spazio di ingresso indipendentemente h 1 , possono insistere che out-of-sample agli errori del loro ipotesi finale E o u t ( h 1 ) è delimitata come seguendo dalla disuguaglianza di Hoeffding P [ | E o u t ( h 1 ) - E t e s t ( h 1 ) | < ϵ 1Dtesth1Eout(h1) dove N t e s t = | D t e s t | .

P[|Eout(h1)Etest(h1)|<ϵ|]12e2ϵ2Ntest

Ntest=|Dtest|

In altre parole, almeno la probabilità , E o u t ( h 1 ) E t e s t ( h 1 ) + 1δ

Eout(h1)Etest(h1)+12Ntestln2δ

Consideriamo un altro punto di vista. Supponiamo che una persona voglia classificare bene il test MNIST. Quindi ha prima guardato la pagina MNIST di Yann LeCun e ha trovato i seguenti risultati ottenuti da altre persone usando 8 modelli diversi,

Risultati della classificazione MNIST

g

gDtestHtrained={h1,h2,..,h8}

Etest(g)

P[|Eout(g)Ein(g)|<ϵ]12|Htrained|e2ϵ2Ntest

1δ

Eout(g)Etest(g)+12Ntestln2|Htrained|δ

Questo risultato implica che potrebbe esserci un overfitting sul set di test se scegliamo che il modello funziona meglio tra diversi modelli.

h1Etest(h1)=0.0023h1Dtesth1 sia un'ipotesi sovradimensionata sul set di test MNIST.

Eout(h1)Etest(h1)+12Ntestln2|Htrained|δ

Consequently, we got two inequalities

P[Eout(h1)Etest(h1)+12Ntestln2δ]1δ
and
P[Eout(h1)Etest(h1)+12Ntestln2|Htrained|δ]1δ
.

Howerver, it is obvious that these two inequalities are incompatible.

Where am I doing wrong? Which one is right and which one is wrong?

If the latter is wrong, what is the right way to apply the VC bound for finite hypothesis sets in this case?

Risposte:


1

Among those two inequalities, I think the later is wrong. In brief, what's wrong here is the identity g=h1 given that g is a function of the test data while h1 is a model that is independent of test data.

In fact, g is one of the 8 models in Htrained={h1,h2,...,h8} that best predicts test set Dtest.

Therefore, g is a function of Dtest. For a specific test set, Dtest (like the one you mentioned), it could happens that g(Dtest)=h1, but in general, depending on the test set, g(Dtest) could take any value in Htrained. On the other hand h1 is just one value in Htrained.

For the other question:

If the latter is wrong, what is the right way to apply the VC bound for finite hypothesis sets in this case?

Just don't replace g by h1, you will get the correct bound (for g, of course) and it will have no conflict with the other bound (which is for h1).

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.