Perché le reti neurali hanno bisogno di così tanti esempi di formazione per esibirsi?


64

Un bambino umano all'età di 2 anni ha bisogno di circa 5 istanze di un'auto per essere in grado di identificarlo con ragionevole accuratezza indipendentemente dal colore, dalla marca, ecc. Quando mio figlio aveva 2 anni, era in grado di identificare tram e treni, anche se aveva visto solo alcune. Dato che di solito si confondeva l'uno con l'altro, apparentemente la sua rete neurale non era abbastanza allenata, ma comunque.

Cosa manca alle reti neurali artificiali che impediscono loro di apprendere in modo più rapido? Il trasferimento sta imparando una risposta?


23
Gli elefanti potrebbero essere un esempio migliore delle auto. Come altri hanno notato, un bambino potrebbe aver visto molte macchine prima di sentire l'etichetta, quindi se la loro mente definisce già "tipi naturali" ora ha un'etichetta per uno. Tuttavia, un bambino occidentale sviluppa indiscutibilmente un buon sistema di classificazione degli elefanti sulla base di pochi dati.
JG

70
Cosa ti fa pensare che il cervello di un bambino umano funzioni come una rete neurale?
Paul Wasilewski,

16
A NN può essere mostrata l'immagine di un'auto. Il tuo bambino riceve un film in 3D completo da diverse prospettive, per diversi tipi di auto. Probabilmente anche tuo figlio ha esempi simili per distinguere un'auto. Per esempio il loro passeggino, i giocattoli, ecc. Senza quelli, penso che tuo figlio avrebbe avuto bisogno di più esempi.
Stian Yttervik,

20
@MSalters Nel senso di una rete neurale artificiale? Probabilmente no.
Firebug

28
"Un bambino umano all'età di 2 anni ha bisogno di circa 5 casi di un'auto per essere in grado di identificarlo con ragionevole accuratezza" Un bambino del genere ha avuto due anni di esperienza con cose che non sono automobili. Sono certo che abbia un ruolo significativo.
DarthFennec,

Risposte:


100

Metto in guardia dal prevedere una forte somiglianza tra reti neurali biologiche e artificiali. Penso che il nome "reti neurali" sia un po 'pericoloso, perché induce le persone ad aspettarsi che i processi neurologici e l'apprendimento automatico debbano essere gli stessi. Le differenze tra reti neurali biologiche e artificiali superano le somiglianze.

Come esempio di come ciò possa andare storto, puoi anche capovolgere il ragionamento nel post originale. Puoi addestrare una rete neurale per imparare a riconoscere le auto in un pomeriggio, a condizione che tu abbia un computer abbastanza veloce e una certa quantità di dati di allenamento. Puoi renderlo un'attività binaria (auto / non auto) o un'attività multi-classe (auto / tram / bici / aereo / barca) e avere ancora fiducia in un alto livello di successo.

Al contrario, non mi aspetto che un bambino possa scegliere un'auto il giorno - o anche la settimana - dopo la sua nascita, anche dopo aver visto "tanti esempi di allenamento". Qualcosa è ovviamente diverso tra un bambino di due anni e un bambino che spiega la differenza nelle capacità di apprendimento, mentre una rete neurale di classificazione delle immagini alla vaniglia è perfettamente in grado di raccogliere la classificazione degli oggetti immediatamente dopo la "nascita". Penso che ci siano due differenze importanti: (1) i volumi relativi dei dati di allenamento disponibili e (2) un meccanismo di autoapprendimento che si sviluppa nel tempo a causa di abbondanti dati di allenamento.


Il post originale espone due domande. Il titolo e il corpo della domanda chiedono perché le reti neurali necessitino di "tanti esempi". Rispetto all'esperienza di un bambino, le reti neurali addestrate utilizzando benchmark di immagini comuni hanno dati relativamente scarsi.

Rielaborerò la domanda nel titolo

"In che modo la formazione di una rete neurale per un benchmark di immagine comune è paragonabile e contrastante con l'esperienza di apprendimento di un bambino?"

Per fare un confronto, prenderò in considerazione i dati CIFAR-10 perché è un benchmark di immagine comune. La parte etichettata è composta da 10 classi di immagini con 6000 immagini per classe. Ogni immagine è di 32x32 pixel. Se in qualche modo impilassi le immagini etichettate da CIFAR-10 e realizzi un video standard a 48 fps, avresti circa 20 minuti di riprese.

Un bambino di 2 anni che osserva il mondo per 12 ore al giorno ha circa 263000 minuti (più di 4000 ore) di osservazioni dirette sul mondo, incluso il feedback degli adulti (etichette). (Queste sono solo figure da ballpark - Non so quanti minuti ha trascorso un tipico bambino di due anni ad osservare il mondo.) Inoltre, il bambino sarà esposto a molti, molti oggetti oltre le 10 classi che comprendono CIFAR- 10.

Quindi ci sono alcune cose in gioco. Uno è che il bambino ha un'esposizione complessiva a più dati e una fonte di dati più diversificata rispetto al modello CIFAR-10. La diversità e il volume dei dati sono riconosciuti come prerequisiti per modelli robusti in generale. Alla luce di ciò, non sembra sorprendente che una rete neurale sia peggiore in questo compito rispetto al bambino, perché una rete neurale addestrata su CIFAR-10 è positivamente affamata di dati di allenamento rispetto al bambino di due anni. La risoluzione dell'immagine disponibile per un bambino è migliore delle immagini CIFAR-10 32x32, quindi il bambino è in grado di apprendere informazioni sui dettagli fini degli oggetti.

Il confronto da CIFAR-10 a due anni non è perfetto perché il modello CIFAR-10 sarà probabilmente addestrato con passaggi multipli sulle stesse immagini statiche, mentre il bambino vedrà, usando la visione binoculare, come sono disposti gli oggetti in tre mondo tridimensionale mentre ci si sposta e con condizioni di illuminazione e prospettive diverse sugli stessi oggetti.

L'aneddoto sul figlio di OP implica una seconda domanda,

"Come possono le reti neurali diventare autodidatta?"

Un bambino è dotato di un certo talento per l'autoapprendimento, in modo che nuove categorie di oggetti possano essere aggiunte nel tempo senza dover ricominciare da capo.

  • L'osservazione di OP nomina un tipo di adattamento del modello nel contesto dell'apprendimento automatico.

  • Nei commenti, altri utenti hanno sottolineato che l'apprendimento one-and-shot-shot * è un'altra area di ricerca sull'apprendimento automatico.

  • Inoltre, l' affronta i modelli di autoapprendimento da una prospettiva diversa, consentendo essenzialmente ai robot di intraprendere una sperimentazione di prova ed errore per trovare strategie ottimali per risolvere problemi specifici (ad esempio, giocare a scacchi).

È probabilmente vero che tutti e tre questi paradigmi di apprendimento automatico sono fondamentali per migliorare il modo in cui le macchine si adattano ai nuovi compiti di visione artificiale. Adattare rapidamente i modelli di apprendimento automatico a nuove attività è un'area di ricerca attiva. Tuttavia, poiché gli obiettivi pratici di questi progetti (identificare nuove istanze di malware, riconoscere gli impostori nelle foto dei passaporti, indicizzare Internet) e i criteri per il successo differiscono dagli obiettivi di un bambino che impara a conoscere il mondo e dal fatto che si fa un computer che usa la matematica e l'altro è fatto in materiale organico usando la chimica, i confronti diretti tra i due rimarranno carichi.


A parte questo, sarebbe interessante studiare come invertire il problema CIFAR-10 e addestrare una rete neurale per riconoscere 6000 oggetti da 10 esempi di ciascuno. Ma anche questo non sarebbe un paragone equo con il bambino di 2 anni, perché ci sarebbe ancora una grande discrepanza nel volume totale, nella diversità e nella risoluzione dei dati di allenamento.

* Al momento non abbiamo tag per l'apprendimento one-shot o l'apprendimento pochi-shot.


34
Per renderlo un po 'più specifico, un bambino umano ha già avuto anni di allenamento con decine di migliaia di esempi che gli hanno permesso di determinare l'aspetto degli oggetti visti da angolazioni diverse, come identificare i loro confini, la relazione tra dimensione apparente e dimensione effettiva , e così via.
David Schwartz,

25
Il cervello di un bambino è attivo all'interno dell'utero . Il bambino può identificare i genitori con il suono , dopo che il suono viene filtrato attraverso l' acqua . Un neonato aveva mesi di dati con cui lavorare prima di nascere, ma hanno ancora bisogno di anni in più prima di poter formare una parola, quindi un paio di anni prima di poter formare una frase, quindi accoppiarsi di più per una frase grammaticalmente corretta , ecc ... l'apprendimento è molto complicato .
Nelson,

5
@EelcoHoogendoorn spiega il contrasto 'bambino' contro 'rete neurale' che è stato usato nella domanda. La risposta è che questo è solo un evidente contrasto. Le reti neurali non hanno bisogno di tanti esempi, poiché i bambini ne ottengono anche molti (ma solo in modo diverso) prima che siano in grado di riconoscere le auto.
Sesto Empirico,

4
@Nelson, non sono sicuro di quale sia il motivo del tuo commento, ma puoi cambiare "anni" in "anno". Con 1 anno i bambini parlano parole, con 2 anni vengono pronunciate le prime frasi e con 3 anni la grammatica, come il passato e i pronomi, viene utilizzata correttamente.
Sesto Empirico,

1
@EelcoHoogendoorn Penso che la premessa della domanda sia un caso di ragionamento da un'analogia difettosa, quindi affrontare direttamente l'analogia è reattivo. Anche le reti neurali biologiche e artificiali contrastanti sono reattive, perché la risposta evidenzierebbe come le reti neurali biologiche e artificiali siano più simili nel loro nome (contengono entrambe la frase "reti neurali") ma non simili nelle loro caratteristiche essenziali, o almeno le caratteristiche assunto dalla domanda.
Ripristina Monica il

48

Prima di tutto, all'età di due anni, un bambino conosce molto il mondo e applica attivamente questa conoscenza. Un bambino fa molto "trasferimento dell'apprendimento" applicando questa conoscenza a nuovi concetti.

In secondo luogo, prima di vedere quei cinque esempi "etichettati" di automobili, un bambino vede molte macchine per strada, in TV, macchinine, ecc., Quindi anche un sacco di "apprendimento senza supervisione" avviene in anticipo.

Infine, le reti neurali non hanno quasi nulla in comune con il cervello umano, quindi non ha molto senso confrontarle. Si noti inoltre che esistono algoritmi per l'apprendimento one-shot e attualmente si svolgono praticamente ricerche su di esso.


9
4 ° punto, un bambino ha anche oltre 100 milioni di anni di selezione evolutiva verso l'apprendimento in modo efficiente / accurato.
csiz

39

Un aspetto importante che non vedo nelle risposte attuali è l' evoluzione .

Il cervello di un bambino non impara da zero. È simile a chiedere come i bambini di cervi e giraffe possono camminare pochi minuti dopo la nascita. Perché sono nati con il cervello già predisposto per questo compito. Naturalmente è necessaria una messa a punto, ma il cervo non impara a camminare dall'inizializzazione casuale.

Allo stesso modo, il fatto che esistano grandi oggetti in movimento e di cui è importante tenere traccia è qualcosa con cui siamo nati.

Quindi penso che il presupposto di questa domanda sia semplicemente falso. Le reti neurali umane hanno avuto l'opportunità di vedere tonnellate di - forse non automobili ma - oggetti 3D in movimento, rotanti con trame e forme difficili ecc., Ma ciò è accaduto attraverso molte generazioni e l'apprendimento è avvenuto tramite algoritmi evolutivi, cioè quelli il cui cervello era meglio strutturato per questo compito, poteva vivere per riprodursi con maggiori probabilità, lasciando la generazione successiva con un cablaggio cerebrale sempre migliore dall'inizio.


8
Divertimento a parte: ci sono prove che quando si tratta di discriminare tra diversi modelli di auto, in realtà sfruttiamo il centro specializzato di riconoscimento facciale del nostro cervello . È plausibile che, sebbene un bambino non possa distinguere tra diversi modelli, la presenza implicita di una "faccia" su un oggetto mobile può far sì che le auto vengano classificate come un tipo di creatura e quindi favorite per essere identificate dall'evoluzione, dal momento che riconoscono il mobile gli oggetti con i volti sono utili per la sopravvivenza.
Dan Bryant,

7
Questa risposta si rivolge esattamente a quello che stavo pensando. I bambini non nascono come liste vuote . Sono dotati di funzionalità che rendono alcuni schemi più facili da riconoscere, alcune cose più facili da imparare, ecc.
Eff

1
Mentre gli animali che escono dal grembo materno sono davvero affascinanti, si ritiene che un tale cablaggio evolutivo sia all'estremo opposto dell'apprendimento umano, che si ritiene sia l'estremo dell'apprendimento guidato dall'esperienza nel mondo naturale. Certamente le auto avranno lasciato un minimo impatto evolutivo sull'evoluzione del nostro cervello.
Eelco Hoogendoorn,

5
@EelcoHoogendoorn La capacità di apprendere e comprendere l'ambiente è stata selezionata in modo evolutivo. Il cervello è stato creato dall'evoluzione per essere estremamente efficiente nell'apprendimento. La capacità di collegare i punti, vedere i motivi, comprendere forme e movimenti, fare inferenze, ecc.
Eff

3
Questo è un buon punto, ma è anche vero che quando i ricercatori arrivano a capirlo, costruiscono NN che hanno strutture codificate che facilitano determinati tipi di apprendimento. Considera che un NN convoluzionale ha campi ricettivi codificati che accelerano notevolmente l'apprendimento / migliorano le prestazioni in compiti visivi. Quei campi potrebbero essere appresi da zero in una rete completamente connessa, ma è molto più difficile. @EelcoHoogendoorn, i cervelli umani sono pieni di struttura che facilita l'apprendimento.
gung - Ripristina Monica

21

Non so molto sulle reti neurali ma conosco un bel po 'sui bambini.

Molti bambini di 2 anni hanno molti problemi su come dovrebbero essere le parole generali. Ad esempio, è abbastanza comune a quell'età per i bambini usare il "cane" per qualsiasi animale a quattro zampe. È una distinzione più difficile della "macchina": basti pensare a quanto è diverso un barboncino da un grande danese, per esempio, eppure sono entrambi "cani" mentre un gatto non lo è.

E un bambino di 2 anni ha visto molti più di 5 esempi di "macchina". Un bambino vede decine o addirittura centinaia di esempi di auto ogni volta che la famiglia va in macchina. E molti genitori commenteranno "guarda la macchina" più di 5 volte. Ma i bambini possono anche pensare in modi in cui non è stato detto loro. Ad esempio, per strada il bambino vede molte cose in fila. Suo padre dice (di uno) "guarda la macchina splendente!" e il bambino pensa "forse tutte quelle altre cose in fila sono anche macchine?"


3
Altri esempi: taxi, auto per lezioni di guida e auto della polizia sono uguali. Ogni volta che un'auto è rossa, allora è un camion dei pompieri. I camper sono ambulanze. Un camion con una gru caricatrice viene classificato come un escavatore. L'autobus che è appena passato va alla stazione ferroviaria, quindi anche l'autobus successivo, che sembra lo stesso, deve andare alla stazione ferroviaria. E vedere la luna in pieno giorno è un evento molto speciale.
Sesto Empirico,

10

Questa è una domanda affascinante su cui ho riflettuto molto e che può dare alcune spiegazioni sul perché.

  • Le reti neurali non funzionano come il cervello. La backpropagation è unica per le reti neurali e non si verifica nel cervello. In questo senso, semplicemente non conosciamo l'algoritmo di apprendimento generale nel nostro cervello. Potrebbe essere elettrico, potrebbe essere chimico, potrebbe anche essere una combinazione dei due. Le reti neurali potrebbero essere considerate una forma di apprendimento inferiore rispetto al nostro cervello a causa della loro semplificazione.
  • Se le reti neurali sono davvero come il nostro cervello, allora i bambini umani subiscono un ampio "allenamento" dei primi strati, come l'estrazione di caratteristiche, nei loro primi giorni. Quindi le loro reti neurali non sono davvero addestrate da zero, ma piuttosto l'ultimo strato viene riqualificato per aggiungere sempre più classi ed etichette.

9

Un bambino umano all'età di 2 anni ha bisogno di circa 5 istanze di un'auto per poterlo identificare con ragionevole accuratezza indipendentemente dal colore, dalla marca, ecc.

Il concetto di "istanze" si confonde facilmente. Mentre un bambino può aver visto 5 istanze uniche di un'auto, in realtà ha visto migliaia di migliaia di fotogrammi, in molti ambienti diversi. Probabilmente hanno visto macchine in altri contesti. Hanno anche un'intuizione per il mondo fisico sviluppato nel corso della loro vita - probabilmente qui avviene un apprendimento sui trasferimenti. Eppure, concludiamo tutto in "5 istanze".

Nel frattempo, ogni singolo frame / immagine che passi a una CNN è considerato un "esempio". Se applichi una definizione coerente, entrambi i sistemi utilizzano davvero una quantità molto più simile di dati di allenamento.

Inoltre, vorrei notare che le reti neurali convoluzionali - le CNN - sono più utili nella visione artificiale rispetto alle ANN, e in effetti avvicinano le prestazioni umane in compiti come la classificazione delle immagini. Il deep learning non è (probabilmente) una panacea, ma funziona egregiamente in questo campo.


5

Come sottolineato da altri, l'efficienza dei dati delle reti neurali artificiali varia in modo sostanziale, a seconda dei dettagli. È un dato di fatto, ci sono molti cosiddetti metodi di apprendimento one-shot, che possono risolvere il compito di etichettare i tram con una precisione abbastanza buona, usando solo un singolo campione etichettato.

Un modo per farlo è attraverso il cosiddetto apprendimento di trasferimento; una rete addestrata su altre etichette è di solito molto efficacemente adattabile alle nuove etichette, poiché il duro lavoro sta abbattendo i componenti di basso livello dell'immagine in modo sensato.

Ma non abbiamo bisogno di tali dati etichettati per svolgere tale compito; proprio come i bambini non hanno bisogno di quasi tutti i dati etichettati delle reti neurali che stai pensando di fare.

Ad esempio, uno di questi metodi senza supervisione che ho applicato con successo anche in altri contesti, è quello di prendere una serie di immagini senza etichetta, ruotarle in modo casuale e addestrare una rete per prevedere quale lato dell'immagine è "in alto". Senza sapere quali sono gli oggetti visibili o come vengono chiamati, questo costringe la rete ad apprendere un'enorme quantità di struttura sulle immagini; e ciò può costituire una base eccellente per un successivo apprendimento etichettato molto più efficiente in termini di dati.

Mentre è vero che le reti artificiali sono abbastanza diverse da quelle reali in modi probabilmente significativi, come l'assenza di un ovvio analogo di backpropagation, è molto probabilmente vero che le reti neurali reali fanno uso degli stessi trucchi, del cercare di imparare struttura nei dati implicita da alcuni semplici priori.

Un altro esempio che ha quasi certamente un ruolo negli animali e ha anche mostrato una grande promessa nella comprensione dei video, è l'assunto che il futuro dovrebbe essere prevedibile dal passato. Solo partendo da quel presupposto, puoi insegnare molto a una rete neurale. O a livello filosofico, sono propenso a credere che questo presupposto sia alla base di quasi tutto ciò che consideriamo "conoscenza".

Non sto dicendo nulla di nuovo qui; ma è relativamente nuovo nel senso che queste possibilità sono troppo giovani per aver trovato ancora molte applicazioni e non si sono ancora concentrate sulla comprensione da manuale di "cosa può fare una ANN". Quindi, per rispondere alla domanda dei PO; Le ANN hanno già colmato gran parte del gap che descrivi.


4

Un modo per addestrare una rete neurale profonda è trattarla come una pila di auto-codificatori ( macchine Boltzmann limitate ).

In teoria, un codificatore automatico apprende in modo non supervisionato: richiede dati di input arbitrari e senza etichetta e li elabora per generare dati di output. Quindi prende quei dati di output e prova a rigenerare i suoi dati di input. Modifica i parametri dei suoi nodi fino a quando non si avvicina al round trip dei suoi dati. Se ci pensate, l'autocodificatore sta scrivendo i propri test di unità automatizzati. In effetti, sta trasformando i suoi "dati di input senza etichetta" in dati con etichetta : i dati originali fungono da etichetta per i dati con round trip.

Dopo che gli strati degli auto-codificatori sono stati addestrati, la rete neurale viene messa a punto utilizzando i dati etichettati per eseguire la funzione prevista. In effetti, si tratta di test funzionali.

Il poster originale chiede perché sono necessari molti dati per addestrare una rete neurale artificiale e li confronta con la presunta bassa quantità di dati di addestramento necessari per un essere umano di due anni. Il poster originale mette a confronto mele-arance: il processo di formazione generale per la rete neurale artificiale, rispetto alla messa a punto con le etichette per il bambino di due anni.

Ma in realtà, il bambino di due anni ha addestrato i suoi auto-codificatori su dati casuali e auto-etichettati da più di due anni. I bambini sognano quando sono in utero . (Lo stesso vale per i gattini.) I ricercatori hanno descritto questi sogni come coinvolgimenti di neuroni casuali nei centri di elaborazione visiva.


1
Concordato; a parte il fatto che gli auto-codificatori in pratica non sono strumenti molto potenti per fare molto apprendimento senza supervisione; tutto ciò che sappiamo indica che c'è qualcosa in più, quindi suppongo che l'espressione "il bambino di due anni abbia addestrato i suoi codificatori automatici" non dovrebbe essere presa alla lettera.
Eelco Hoogendoorn,

4

Non impariamo a "vedere le macchine" finché non impariamo a vedere

Ci vuole molto tempo e molti esempi per un bambino per imparare a vedere gli oggetti in quanto tali. Successivamente, un bambino può imparare a identificare un particolare tipo di oggetto da alcuni esempi. Se si confronta un bambino di due anni con un sistema di apprendimento che inizia letteralmente da una lavagna vuota, si tratta di un confronto di mele e arance; a quell'età il bambino ha visto migliaia di ore di "riprese video".

Allo stesso modo, ci vogliono molti esempi di reti neurali artificiali per imparare "come vedere", ma dopo ciò è possibile trasferire tale conoscenza a nuovi esempi. Il trasferimento dell'apprendimento è un intero dominio dell'apprendimento automatico e sono possibili cose come "apprendimento one-shot": puoi creare ANN che impareranno a identificare nuovi tipi di oggetti che non ha mai visto prima da un singolo esempio o a identificare un persona particolare da una singola foto del loro viso. Ma fare bene questa parte iniziale "imparare a vedere" richiede parecchi dati.

Inoltre, ci sono alcune prove che non tutti i dati di allenamento sono uguali, vale a dire, quei dati che "scegli" mentre l'apprendimento è più efficace dei dati che ti vengono semplicemente forniti. Ad esempio, l'esperimento con gemelli Held e Hein. https://www.lri.fr/~mbl/ENS/FONDIHM/2013/papers/about-HeldHein63.pdf


4

Una cosa che non ho visto finora nelle risposte è il fatto che un '"istanza" di un oggetto del mondo reale che viene visto da un bambino umano non corrisponde a un'istanza nel contesto dell'allenamento della NN.

Supponi di trovarti a un incrocio ferroviario con un bambino di 5 anni e di vedere passare 5 treni in 10 minuti. Ora, potresti dire "Mio figlio ha visto solo 5 treni e può identificare in modo affidabile altri treni mentre un NN ha bisogno di migliaia di immagini!". Anche se questo è probabilmente vero, stai completamente ignorando il fatto che ogni treno che tuo figlio vede contiene MOLTE più informazioni di una singola immagine di un treno. In effetti, il cervello di tuo figlio sta elaborando diverse dozzine di immagini del treno mentre passa, ognuna da un angolo leggermente diverso, ombre diverse, ecc., Mentre una singola immagine fornirà alla NN informazioni molto limitate. In questo contesto, tuo figlio ha persino informazioni che non sono disponibili per la NN, ad esempio la velocità del treno o il suono prodotto dal treno.

Inoltre, tuo figlio può parlare e CHIEDERE DOMANDE! "I treni sono molto lunghi, vero?" "Sì.", "E sono anche molto grandi, giusto?" "Sì.". Con due semplici domande, tuo figlio impara due funzioni essenziali in meno di un minuto!

Un altro punto importante è il rilevamento di oggetti. Il bambino è in grado di identificare immediatamente su quale oggetto, ovvero su quale parte dell'immagine, deve concentrarsi, mentre un NN deve imparare a rilevare l'oggetto rilevante prima di poter tentare di classificarlo.


3
Aggiungo anche che il bambino ha un contesto : vede un treno sulle rotaie, che si tratti di una stazione, passaggio a livello ecc. Se vede un enorme pallone (dimensioni zeppelin) modellato e dipinto per sembrare un treno nel cielo, non dirà che è un treno. Dirà che sembra un treno, ma non gli assegnerà un'etichetta "treno". Sono scettico che un NN restituirà in questo caso un'etichetta "palloncino simile a un treno". Allo stesso modo, un bambino non confonderà un cartellone con un treno su di esso con un treno reale. L'immagine di un'immagine di un treno è l'immagine di un treno per un NN - restituirà l'etichetta "treno".
corey979,

3

Direi che la performance non è così diversa come ci si potrebbe aspettare, ma fai una grande domanda (vedi l'ultimo paragrafo).

Come accennate all'apprendimento del trasferimento: per confrontare le mele con le mele dobbiamo guardare quante immagini in totale e quante immagini della classe di interesse "vede" una rete umana / neurale.

1. Quante immagini guarda un essere umano?

Il movimento dell'occhio umano impiega circa 200 ms, che potrebbe essere visto come una specie di "foto biologica". Guarda il discorso dell'esperto di visione del computer Fei-Fei Li: https://www.ted.com/talks/fei_fei_li_how_we_re_teaching_computers_to_understand_pictures#t-362785 .

Lei aggiunge:

Quindi a 3 anni un bambino avrebbe visto centinaia di milioni di foto.

In ImageNet, il database leader per il rilevamento di oggetti, ci sono ~ 14 milioni di immagini etichettate . Quindi una rete neurale in fase di formazione su ImageNet avrebbe visto tutte le immagini di un bambino 14000000/5/60/60/24 * 2 ~ 64 giorni, quindi due mesi (supponendo che il bambino sia sveglio per metà della sua vita). Ad essere onesti, è difficile dire quante di queste immagini siano etichettate. Inoltre, le immagini, vede un bambino, non sono così diverse come in ImageNet. (Probabilmente il bambino vede sua madre avere del tempo, ...;). Tuttavia, penso che sia giusto dire che tuo figlio avrà visto centinaia di milioni di foto (e quindi applica l'apprendimento del trasferimento).

Quindi, di quante immagini abbiamo bisogno per imparare una nuova categoria data una solida base di immagini correlate da cui è possibile (trasferire) imparare?

Il primo post sul blog che ho trovato è stato questo: https://blog.keras.io/building-powerful-image-classification-models-using-very-little-data.html . Usano 1000 esempi per classe. Potrei immaginare 2,5 anni dopo anche molto meno è richiesto. Tuttavia, 1000 umani possono vedere 1000 immagini in 1000/5/60 in 3,3 minuti.

Hai scritto:

Un bambino umano all'età di 2 anni ha bisogno di circa 5 istanze di un'auto per poterlo identificare con ragionevole accuratezza indipendentemente dal colore, dalla marca, ecc.

Sarebbe equivalente a quaranta secondi per istanza (con vari angoli di quell'oggetto per renderlo comparabile).

Per riassumere: come ho già detto, ho dovuto formulare alcune ipotesi. Ma penso, si può vedere che le prestazioni non sono così diverse come ci si potrebbe aspettare.

Tuttavia, credo che tu faccia una grande domanda ed ecco perché:

2. Le reti neurali funzionerebbero meglio / diversamente se funzionassero più come i cervelli? (Geoffrey Hinton dice di sì).

In un'intervista https://www.wired.com/story/googles-ai-guru-computers-think-more-like-brains/ , alla fine del 2018, confronta le attuali implementazioni delle reti neurali con il cervello. Egli menziona, in termini di pesi, che le reti neurali artificiali sono più piccole del cervello di un fattore 10.000. Pertanto, il cervello ha bisogno di molte meno iterazioni di allenamenti per imparare. Per consentire alle reti neurali artificiali, di funzionare più come il nostro cervello, segue un'altra tendenza nell'hardware, una startup con sede nel Regno Unito chiamata Graphcore. Riduce i tempi di calcolo con un modo intelligente di memorizzare i pesi di una rete neurale. Pertanto, è possibile utilizzare più pesi e il tempo di allenamento delle reti neurali artificiali potrebbe essere ridotto.


2

Sono un esperto in questo. Sono umano, ero un bambino, ho una macchina e faccio l'IA.

Il motivo per cui i bambini prendono le auto con esempi molto più limitati è l'intuizione. Il cervello umano ha già strutture per gestire le rotazioni 3D. Inoltre, ci sono due occhi che forniscono la parallasse per la mappatura di profondità che aiuta davvero. Puoi intuire tra un'auto e un'immagine di un'auto, perché non c'è profondità effettiva nell'immagine. Hinton (ricercatore AI) ha proposto l'idea di Capsule Networks, che sarebbe in grado di gestire le cose in modo più intuitivo. Sfortunatamente per i computer, i dati di addestramento sono (di solito) immagini 2D, array di pixel piatti. Per non adattarsi eccessivamente, sono necessari molti dati, quindi l'orientamento delle auto nelle immagini è generalizzato. Il cervello del bambino può già farlo e può riconoscere un'auto con qualsiasi orientamento.

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.