Ecco l'accordo:
Tecnicamente hai scritto frasi vere (entrambi i modelli possono approssimare qualsiasi funzione 'non troppo pazza' dati parametri sufficienti), ma quelle frasi non ti portano da nessuna parte!
Perché? Bene, dai un'occhiata più da vicino alla teoria universale dell'approssimazione, o qualsiasi altra prova formale che una rete neurale può calcolare qualsiasi f (x) se ci sono abbastanza neuroni.
Tutti quei tipi di prove che ho visto usano solo un livello nascosto.
Dai un'occhiata qui http://neuralnetworksanddeeplearning.com/chap5.html per un po 'di intuizione. Ci sono lavori che dimostrano che in un certo senso il numero di neuroni necessari cresce in modo esponenziale se si utilizza solo uno strato.
Quindi, mentre in teoria hai ragione, in pratica, non hai una quantità infinita di memoria, quindi non vuoi davvero addestrare una rete di 2 ^ 1000 neuroni, vero? Anche se tu avessi una quantità infinita di memoria, quella rete si sovraccaricherà di sicuro.
A mio avviso, il punto più importante di ML è il punto pratico! Espandiamo un po 'su questo. Il vero grande problema qui non è solo come i polinomi aumentano / diminuiscono molto rapidamente al di fuori del set di allenamento. Affatto. A titolo di esempio, il pixel di qualsiasi immagine rientra in un intervallo molto specifico ([0,255] per ciascun colore RGB) in modo da poter essere certi che qualsiasi nuovo campione sarà compreso nell'intervallo di valori del set di allenamento. No. Il grosso problema è: questo confronto non è utile per iniziare (!).
Ti suggerisco di sperimentare un po 'con MNIST e di provare a vedere i risultati reali che puoi ottenere usando un solo livello.
Le reti pratiche usano più di un livello nascosto, a volte dozzine (beh, Resnet ancora di più ...) di livelli. Per una ragione. Questa ragione non è provata e, in generale, la scelta di un'architettura per una rete neurale è una zona calda di ricerca. In altre parole, mentre dobbiamo ancora saperne di più, entrambi i modelli che hai confrontato (regressione lineare e NN con un solo livello nascosto), per molti set di dati, non sono affatto utili!
A proposito, nel caso in cui entrerai in ML, c'è un altro teorema inutile che in realtà è un 'area di ricerca' attuale: la dimensione PAC (probabilmente approssimativamente corretta) / VC. Espanderò su questo come bonus:
Se l'approssimazione universale afferma sostanzialmente che, data la quantità infinita di neuroni, possiamo approssimare qualsiasi funzione (grazie mille?), Ciò che PAC dice in termini pratici è, data (praticamente!) Infinita quantità di esempi etichettati che possiamo avvicinarci desidera la migliore ipotesi all'interno del nostro modello. È stato assolutamente divertente quando ho calcolato l'effettiva quantità di esempi necessari affinché una rete pratica fosse all'interno di un certo tasso di errore desiderato pratico con qualche probabilità accettabile :) Era più del numero di elettroni nell'universo. PS per potenziarlo presuppone anche che i campioni siano IID (che non è mai vero!).