Che tipo di risposta vuole TCS alla domanda "Perché le reti neurali funzionano così bene?"


52

Il mio dottorato è in matematica pura, e ammetto di non sapere molto (cioè nulla) sulla CS teorica. Tuttavia, ho iniziato a esplorare opzioni non accademiche per la mia carriera e ad introdurmi all'apprendimento automatico, inciampando in affermazioni come "Nessuno capisce perché le reti neurali funzionano bene", che ho trovato interessante.

La mia domanda, in sostanza, è che tipo di risposte vogliono i ricercatori? Ecco cosa ho trovato nella mia breve ricerca sull'argomento:

  • Gli algoritmi che implementano semplici reti neurali sono piuttosto semplici.
  • Il processo di SGD è ben compreso matematicamente, così come la teoria statistica.
  • Il teorema di approssimazione universale è potente e provato.
  • C'è un bell'articolo recente https://arxiv.org/abs/1608.08225 che essenzialmente dà la risposta che l'approssimazione universale è molto più di quanto in realtà abbiamo bisogno in pratica perché possiamo fare forti assunzioni semplificanti sulle funzioni che stiamo cercando di modellare con rete neurale.

Nel suddetto articolo, affermano (parafrasando) "Gli algoritmi GOFAI sono completamente compresi analiticamente, ma molti algoritmi ANN sono solo euristicamente". I teoremi di convergenza per gli algoritmi implementati sono un esempio di comprensione analitica che sembra che abbiamo delle reti neurali, quindi un'affermazione a questo livello di generalità non mi dice molto su ciò che è noto o sconosciuto o che sarebbe considerato "una risposta ".

Gli autori suggeriscono nella conclusione che domande come limiti efficaci sulla dimensione della rete neurale necessaria per approssimare un dato polinomio sono aperte e interessanti. Quali sono altri esempi di domande analitiche matematicamente specifiche a cui sarebbe necessario rispondere per dire che "comprendiamo" le reti neurali? Ci sono domande alle quali si può rispondere in un linguaggio matematico più puro?

(Sto pensando specificamente ai metodi nella teoria della rappresentazione dovuti all'uso della fisica in questo documento --- e, egoisticamente, perché è il mio campo di studio. Tuttavia, posso anche immaginare aree come la teoria combinatoria / grafica, la geometria algebrica e topologia che fornisce strumenti fattibili.)


3
GOFAI è davvero così ben compreso? Molti GOFAI sembrano ridursi alla risoluzione SAT, l'archetipo del problema NP-completo. I solutori SAT moderni funzionano molto bene nella pratica, anche se non dovrebbero secondo la teoria esistente. Perché?
Martin Berger,

c'è davvero un apprendimento pre-profondo e uno studio post-profondo / cambiamento / storia in questo settore ed è un grande cambiamento di paradigma nel campo. l'apprendimento profondo è decollato solo nell'ultimo mezzo decennio. la semplice risposta è che le reti neurali possono rappresentare funzioni arbitrariamente complesse e che la complessità è ora a livelli molto avanzati con reti neurali profonde. un'altra risposta è che i problemi che vengono studiati, e forse anche la "realtà in generale", sono "costruiti con funzionalità" e le ANN sono ora esperte nell'apprendimento di funzionalità molto complesse.
vzn,

Non penso che le persone stiano davvero cercando "una risposta" qui. Cercano di utilizzare le reti neurali per risolvere i problemi e se il problema è effettivamente risolto, va bene. Sapere come le reti hanno raggiunto quella soluzione non è necessariamente interessante qui. A nessuno importa molto se è una scatola nera / opaca fintanto che risolve il problema.
xji,

Risposte:


38

Ci sono un sacco di teoremi di "nessun pranzo libero" nell'apprendimento automatico, affermando approssimativamente che non può esistere un algoritmo di apprendimento principale che funzioni uniformemente meglio di tutti gli altri algoritmi (vedi, ad esempio, qui http: //www.no-free- lunch.org/ ). Abbastanza sicuro, l'apprendimento profondo può essere "rotto" senza troppe difficoltà: http://www.evolvingai.org/fooling

Quindi, per essere efficacemente dimostrabile, uno studente ha bisogno di parzialità induttive --- cioè, alcune assunzioni precedenti sui dati. Esempi di distorsione induttiva includono ipotesi di scarsità di dati, o bassa dimensionalità, o che la distribuzione si manifesta bene o ha un ampio margine, ecc. Vari algoritmi di apprendimento di successo sfruttano queste ipotesi per dimostrare le garanzie di generalizzazione. Ad esempio, SVM (lineare) funziona bene quando i dati sono ben separati nello spazio; altrimenti - non così tanto.

Penso che la sfida principale con il deep learning sia capire qual è il suo pregiudizio induttivo. In altre parole, è per dimostrare teoremi del tipo: se i dati di addestramento soddisfano questi presupposti, allora posso garantire qualcosa sulle prestazioni della generalizzazione. (Altrimenti, tutte le scommesse sono disattivate.)

Aggiornamento (settembre 2019): Nei due anni trascorsi dalla mia risposta postata, sono stati fatti molti progressi nella comprensione della distorsione induttiva implicita in vari DL e algoritmi correlati. Una delle intuizioni chiave è che l'attuale algoritmo di ottimizzazione utilizzato è importante, poiché una convergenza uniforme non può spiegare perché un sistema enormemente parametrizzato come una grande ANN riesca a imparare. Si scopre che i vari metodi di ottimizzazione (come SGD) stanno implicitamente regolarizzando rispetto a varie norme (come ). Vedi questa eccellente lezione per altri esempi e molto altro: https://www.youtube.com/watch?v=zK84N6ST9sM2


Va notato che gli esempi contraddittori non sono esclusivi delle reti neurali profonde. Possono anche essere facilmente costruiti per la regressione lineare e logistica, ad esempio: arxiv.org/pdf/1412.6572.pdf
Lenar Hoyt

1
Sì, ma la regressione lineare e logistica sono molto meglio comprese teoricamente.
Aryeh,

2
Dovrebbe forse anche essere notato che i teoremi della NFL potrebbero non svolgere un ruolo importante nell'apprendimento automatico pratico perché, mentre la NFL si occupa della classe di tutte le funzioni, i problemi del mondo reale sono in genere vincolati ad es. Funzioni lisce o anche funzioni più specifiche come quelli considerati nel documento da Lin e Tegmark. Potrebbe essere possibile trovare pregiudizi induttivi che coprano tutti i problemi di apprendimento a cui siamo interessati.
Lenar Hoyt

4
Quindi dovremmo prima formalizzare questo spazio di "tutti i problemi di apprendimento che ci interessano".
Aryeh,

1
Ciò sembra sicuramente utile, soprattutto per quanto riguarda la sicurezza dell'IA. Dobbiamo essere in grado di specificare in modo affidabile ciò che un algoritmo di apprendimento automatico dovrebbe imparare.
Lenar Hoyt,

26

Ci sono due lacune principali nella nostra comprensione delle reti neurali: durezza di ottimizzazione e prestazioni di generalizzazione.

La formazione di una rete neurale richiede la risoluzione di un problema di ottimizzazione altamente non convesso in dimensioni elevate. Gli attuali algoritmi di allenamento sono tutti basati sulla discesa del gradiente, che garantisce solo la convergenza a un punto critico (minimo locale o sella). Infatti, Anandkumar & Ge 2016 hanno recentemente dimostrato che trovare un minimo locale è NP-difficile, il che significa che (supponendo P! = NP) esistono "cattivi", difficili da sfuggire, punti di sella nella superficie dell'errore.
Tuttavia, questi algoritmi di addestramento sono empiricamente efficaci per molti problemi pratici e non sappiamo perché.
Ci sono stati articoli teorici come Choromanska et al. 2016 e Kawaguchi 2016che dimostrano che, in base a determinate ipotesi, i minimi locali sono essenzialmente buoni quanto i minimi globali, ma le ipotesi che fanno sono in qualche modo irrealistiche e non affrontano la questione dei punti di sella cattivi.

L'altro divario principale nella nostra comprensione è la performance di generalizzazione: quanto bene il modello si comporta su nuovi esempi non visti durante l'allenamento? È facile dimostrare che nel limite di un numero infinito di esempi di addestramento (iid campionato da una distribuzione stazionaria), l'errore di addestramento converge all'errore atteso su nuovi esempi (a condizione che tu possa allenarti all'ottimale globale), ma dal momento che noi non abbiamo infiniti esempi di allenamento, siamo interessati a quanti esempi sono necessari per ottenere una data differenza tra allenamento e errore di generalizzazione. La teoria dell'apprendimento statistico studia questi limiti di generalizzazione.
Empiricamente, la formazione di una grande rete neurale moderna richiede un gran numero di esempi di formazione (Big Data, se vi piacciono le parole d'ordine), ma non così grandi da essere praticamente impossibili. Ma se applichi i limiti più noti della teoria dell'apprendimento statistico (ad esempio Gao & Zhou 2014 ), in genere ottieni questi numeri incredibilmente enormi. Pertanto questi limiti sono ben lungi dall'essere stretti, almeno per problemi pratici.
Uno dei motivi potrebbe essere che questi limiti tendono ad assumere molto poco sulla distribuzione generatrice di dati, quindi riflettono le prestazioni nel caso peggiore rispetto agli ambienti avversari, mentre gli ambienti "naturali" tendono ad essere più "apprendibili".
È possibile scrivere limiti di generalizzazione dipendenti dalla distribuzione, ma non sappiamo come caratterizzare formalmente una distribuzione su ambienti "naturali". Approcci come la teoria dell'informazione algoritmica sono ancora insoddisfacenti.
Pertanto non sappiamo ancora perché le reti neurali possano essere addestrate senza un eccessivo adattamento.

Inoltre, va notato che queste due questioni principali sembrano essere correlate in un modo ancora poco compreso: i limiti di generalizzazione dalla teoria dell'apprendimento statistico presuppongono che il modello sia addestrato all'ottimale globale sul set di addestramento, ma in un contesto pratico non formerebbe mai una rete neurale fino alla convergenza fino a un punto di sella, in quanto ciò causerebbe in genere un eccesso di adattamento. Invece interrompi l'allenamento quando l'errore su un set di convalida (che è un proxy per l'errore di generalizzazione) smette di migliorare. Questo è noto come "arresto anticipato".
Quindi, in un certo senso, tutta questa ricerca teorica sulla delimitazione dell'errore di generalizzazione dell'ottimale globale può essere abbastanza irrilevante: non solo non possiamo trovarlo in modo efficiente, ma anche se potessimo, non vorremmo, dal momento che peggiorerebbe nuovi esempi di molte soluzioni "non ottimali".
Può darsi che la durezza dell'ottimizzazione non sia un difetto della rete neurale, al contrario, forse le reti neurali possono funzionare proprio perché sono difficili da ottimizzare.
Tutte queste osservazioni sono empiriche e non esiste una buona teoria che le spieghi. Non esiste inoltre alcuna teoria che spieghi come impostare gli iperparametri delle reti neurali (larghezza e profondità dello strato nascosto, velocità di apprendimento, dettagli architettonici, ecc.). I professionisti usano la loro intuizione affinata dall'esperienza e da molte prove ed errori per trovare valori efficaci, mentre una teoria potrebbe permetterci di progettare reti neurali in modo più sistematico.


11

Un'altra opinione su questa domanda, da aggiungere alle osservazioni di @Aryeh: per molti altri modelli di apprendimento, conosciamo la "forma" dello spazio delle ipotesi. Le SVM ne sono il miglior esempio, in quanto quello che trovi è un separatore lineare in uno spazio di Hilbert (possibilmente di alta dimensione).

Per le reti neurali in generale, non abbiamo una descrizione così chiara né un'approssimazione. E una tale descrizione è importante per noi per capire cosa sta esattamente trovando una rete neurale nei dati.


Come definiresti la "forma" dello spazio delle ipotesi? :) Il nostro teorema 2.1 (pagina 3) risponde ad alcune delle tue domande: eccc.weizmann.ac.il/report/2017/098 ? : D
Anirbit

4

Il principio del collo di bottiglia delle informazioni è stato proposto per spiegare il successo delle reti nueral profonde.

Ecco una citazione dalla rivista Quanta

Il mese scorso, un video di YouTube di una conferenza a Berlino, ampiamente condivisa tra ricercatori di intelligenza artificiale, ha offerto una possibile risposta. Nel discorso, Naftali Tishby, uno scienziato informatico e neuroscienziato dell'Università Ebraica di Gerusalemme, ha presentato prove a sostegno di una nuova teoria che spiega come funziona il deep learning. Tishby sostiene che le reti neurali profonde apprendono secondo una procedura chiamata "collo di bottiglia delle informazioni", che lui e due collaboratori hanno descritto per la prima volta in termini puramente teorici nel 1999. L'idea è che una rete elimini i dati di input rumorosi di dettagli estranei come se premendo informazioni attraverso un collo di bottiglia, mantenendo solo le caratteristiche più rilevanti per i concetti generali.

Riferimenti:

1- Apprendimento profondo e principio del collo di bottiglia delle informazioni , Naftali Tishby e Noga Zaslavsky

2- Apertura della scatola nera delle reti neurali profonde tramite informazioni , Ravid Shwartz-Ziv e Naftali Tishby

3- Video di talk della conferenza: Teoria dell'informazione del Deep Learning di Naftali Tishby


1

Direi che dobbiamo ancora scoprire un algoritmo efficiente per l'addestramento delle reti neurali profonde. Sì, SGD funziona bene nella pratica, ma trovare un algoritmo migliore che abbia garanzie di convergere al minimo globale sarebbe molto bello.

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.