Qual è la differenza tra "apprendimento profondo" e modellazione multilivello / gerarchica?


31

"Apprendimento profondo" è solo un altro termine per la modellazione multilivello / gerarchica?

Ho molta più familiarità con il secondo rispetto al primo, ma da quello che posso dire, la differenza principale non è nella loro definizione, ma nel modo in cui vengono utilizzati e valutati nel loro dominio di applicazione.

Sembra che il numero di nodi in una tipica applicazione di "deep learning" sia maggiore e utilizzi una forma gerarchica generica, mentre le applicazioni della modellazione multilivello in genere usano relazioni gerarchiche che imitano il processo generativo che viene modellato. L'uso di una gerarchia generica in un dominio statistico applicato (modellizzazione gerarchica) sarebbe considerato come un modello "errato" dei fenomeni, mentre la modellizzazione di una gerarchia specifica del dominio potrebbe essere considerata come sovversione dell'obiettivo di creare una macchina generica per l'apprendimento profondo.

Queste due cose sono davvero le stesse macchine con due nomi diversi, usate in due modi diversi?

Risposte:


38

Somiglianza

Fondamentalmente entrambi i tipi di algoritmi sono stati sviluppati per rispondere a una domanda generale nelle applicazioni di apprendimento automatico:

X1,X2,...,Xp

Xp+1=X1X2,Xp+2=X1X3,...

Sia la modellazione multilivello che gli algoritmi di apprendimento profondo rispondono a questa domanda introducendo un modello di interazioni molto più intelligente. E da questo punto di vista sono molto simili.

Differenza

Ora lasciami provare a dare la mia comprensione su quale sia la grande differenza concettuale tra di loro. Per dare una spiegazione, vediamo i presupposti che facciamo in ciascuno dei modelli:

1

2

La differenza fondamentale deriva dalla frase "la struttura delle interazioni non è nota" nel Deep Learning. Possiamo assumere alcuni priori sul tipo di interazione, ma l'algoritmo definisce tutte le interazioni durante la procedura di apprendimento. D'altra parte, dobbiamo definire la struttura delle interazioni per la modellazione multilivello (apprendiamo solo successivamente i parametri del modello).

Esempi

X1,X2,X3{X1}{X2,X3}

X1X2X1X3X2X3

Nell'apprendimento profondo, ad esempio nelle macchine Boltzmann limitate multistrato ( RBM ) con due strati nascosti e funzione di attivazione lineare, avremo tutte le possibili interazioni polinomiali con grado inferiore o uguale a tre.

Vantaggi e svantaggi comuni

Modellazione multilivello

(-) necessità di definire la struttura delle interazioni

(+) i risultati sono generalmente più facili da interpretare

(+) può applicare metodi statistici (valutare gli intervalli di confidenza, controllare le ipotesi)

Apprendimento approfondito

(-) richiede un'enorme quantità di dati per la formazione (e anche il tempo per la formazione)

(-) i risultati sono generalmente impossibili da interpretare (forniti come una scatola nera)

(+) nessuna conoscenza di esperti richiesta

(+) una volta ben addestrato, di solito supera la maggior parte degli altri metodi generali (non specifici dell'applicazione)

Spero che possa aiutare!


Perché una rete neurale profonda richiede un'enorme quantità di dati per la formazione? Non ne ho mai sentito parlare prima.
Jase,

1
Le reti neurali di @Jase di solito hanno molti parametri, quindi in molti casi se si utilizza un set di dati di piccole dimensioni, probabilmente si sarà semplicemente sovrautilizzato. Naturalmente, tutto dipende dall'attività, ma la maggior parte dei risultati NN più impressionanti al giorno d'oggi utilizza set di dati estremamente enormi.
Dmitry Laptev,

Sono d'accordo sul fatto che i risultati impressionanti siano su enormi set di dati, ma non sono sicuro che non possiamo usare dropout e altri trucchi per farlo generalizzare bene da piccoli set di dati.
Jase,

1
@Jase Certo, ci sono diverse euristiche che puoi usare. Ma fino alla mia esperienza con l'elaborazione delle immagini, quasi tutti introducono una certa regolarizzazione, che è sostanzialmente equivalente all'introduzione di alcuni pregiudizi precedenti e quindi. Che non è sempre quello che vuoi.
Dmitry Laptev,

Presumibilmente non è necessario definire la struttura delle interazioni se si utilizza prima non parametrici, ad esempio un Dirichlet gerarchico.
Astrid,

2

Mentre questa domanda / risposta è stata in circolazione per un po ', ho pensato che potesse essere utile chiarire alcuni punti della risposta. In primo luogo, la frase sollevata come una grande distinzione tra metodi gerarchici e reti neurali profonde "Questa rete è fissa". non è corretto. I metodi gerarchici non sono più "fissi" rispetto alle reti neurali alternative. Vedi, ad esempio, l'articolo Deep Learning with Hierarchical Convolutional Factor Analysis, Chen et. al.. Penso che scoprirai anche che l'obbligo di definire le interazioni non è più un punto distintivo. Un paio di punti che non sono elencati come un vantaggio con la modellazione gerarchica sono, dalla mia esperienza, il problema significativamente ridotto del sovradimensionamento e la capacità di gestire set di allenamento molto grandi e molto piccoli. Un punto fondamentale è che quando si usano metodi gerarchici bayesiani, gli intervalli di confidenza e il test di ipotesi non sono generalmente metodi statistici che verrebbero applicati.

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.