Le reti neurali modulari sono più efficaci delle reti monolitiche di grandi dimensioni in qualsiasi compito?


16

Le reti neurali modulari / multiple (MNN) ruotano attorno all'addestramento di reti più piccole e indipendenti in grado di alimentare l'una con l'altra o un'altra rete superiore.

In linea di principio, l'organizzazione gerarchica potrebbe permetterci di dare un senso a spazi problematici più complessi e raggiungere una maggiore funzionalità, ma sembra difficile trovare esempi di ricerche concrete condotte in passato al riguardo. Ho trovato alcune fonti:

https://en.wikipedia.org/wiki/Modular_neural_network

https://www.teco.edu/~albrecht/neuro/html/node32.html

https://vtechworks.lib.vt.edu/bitstream/handle/10919/27998/etd.pdf?sequence=1&isAllowed=y

Alcune domande concrete che ho:

  • Ci sono state ricerche recenti sull'uso delle MNN?

  • Ci sono attività in cui gli MNN hanno mostrato prestazioni migliori rispetto alle grandi reti singole?

  • Gli MNN potrebbero essere utilizzati per la classificazione multimodale, ovvero formare ciascuna rete su un tipo di dati fondamentalmente diverso (testo vs immagine) e passare a un intermediario di livello superiore che opera su tutti gli output?

  • Dal punto di vista dell'ingegneria del software, questi non sono più tolleranti ai guasti e facilmente isolabili su un sistema distribuito?

  • C'è stato qualche lavoro per adattare dinamicamente le topologie delle sottoreti usando un processo come Neural Architecture Search?

  • In generale, le MNN sono pratiche in qualche modo?

Mi scuso se queste domande sembrano ingenue, sono appena entrato in ML e più in generale CS da un background di biologia / neuroscienze e sono affascinato dalla potenziale interazione.

Apprezzo davvero che tu abbia dedicato del tempo e prestato la tua visione!


Avevo pensato all'implementazione di un sistema così modulare per migliorare le prestazioni e filtrare - sicuramente - dipendenze non necessarie dagli input. Ho pensato che fosse un momento eureka, ma non sapevo che fosse già una struttura consolidata.
Tobi

Risposte:


2

Esiste effettivamente un'indagine in corso su questo argomento. Una prima pubblicazione dello scorso marzo ha osservato che la modularità è stata fatta, sebbene non esplicitamente, da qualche tempo fa, ma in qualche modo la formazione continua ad essere monolitica. Questo documento valuta alcune domande principali sull'argomento e confronta i tempi di formazione e le prestazioni su reti neurali modulari e fortemente ricorrenti. Vedere:

Alcuni altri sono molto concentrati sulla modularità, ma stanno con l'addestramento monolitico (vedi la ricerca di Jacob Andrea , in particolare Imparare alla ragione è molto legata alla tua terza domanda). Da qualche parte tra la fine del 2019 e marzo del prossimo anno, dovrebbero esserci più risultati (mi capita di saperlo).

In relazione alle tue ultime due domande, stiamo iniziando a vedere ora che la modularità è una chiave fondamentale per la generalizzazione. Lascia che ti consigli alcuni documenti (puoi trovarli tutti in arxiv o google scholar):

  • Ricerca di architettura neurale adattiva stocastica per individuare le parole chiave (variazioni di un'architettura per bilanciare prestazioni e utilizzo delle risorse).

  • Rendere generalizzare le architetture di programmazione neurale tramite ricorsione (svolgono attività di sottomodularità e credo sia la prima volta che la generalizzazione è garantita nel campo delle reti neurali).

  • Padroneggia il gioco di Go con reti neurali profonde e ricerca di alberi (la topologia di rete è in realtà l'albero di ricerca stesso, puoi vedere di più se cerchi reti neurali grafiche).


1

Un confronto comparativo di sistemi costituiti da reti addestrate separatamente rispetto a singole reti più profonde non rivelerebbe probabilmente una scelta migliore universalmente applicabile. 1 Possiamo vedere in letteratura l'aumento del numero di sistemi più grandi in cui sono combinate più reti artificiali, insieme ad altri tipi di componenti. È prevedibile. La modularizzazione man mano che i sistemi crescono in complessità e le esigenze in termini di prestazioni e capacità crescono sono vecchie quanto l'industrializzazione.

Il nostro laboratorio lavora con controllo robotico, strumentazione termodinamica e analisi dei dati, le reti artificiali sono componenti in questi contesti di sistema più ampi. non abbiamo singoli MLP o RNN che da soli svolgono alcuna funzione utile.

Contrariamente alle congetture sulle gerarchie decenni fa, l'approccio topologico che sembra funzionare bene nella maggior parte dei casi segue le relazioni più comuni tra i moduli di sistema che si vedono nelle centrali elettriche, nelle fabbriche automatizzate, nell'aeronautica, nelle architetture informative aziendali e in altre creazioni ingegneristiche complesse. Le connessioni sono quelle del flusso e, se progettate correttamente, le funzioni di supervisione sono minime. Il flusso si verifica tra i moduli che coinvolgono i protocolli per le comunicazioni e ogni modulo svolge bene la sua funzione, incapsulando il livello inferiore di complessità e dettagli funzionali. Non è una rete che sovrintende a un'altra che sembra emergere nella maniera più efficace nella pratica, ma nell'equilibrio e nella simbiosi. L'identificazione di un chiaro disegno di maestro-schiavo nel cervello umano sembra essere altrettanto scivolosa.

La sfida non è trovare i percorsi informativi che compongono la topologia delle informazioni di sistema. Il flusso di informazioni è spesso evidente all'analisi dei problemi. La difficoltà sta nello scoprire le migliori strategie per formare queste reti indipendenti. Le dipendenze dell'allenamento sono comuni e spesso critiche, mentre negli animali l'addestramento avviene in situ o per niente. Stiamo scoprendo le condizioni in cui quel tipo di apprendimento nei nostri sistemi è pratico e come raggiungerlo. La maggior parte della nostra ricerca in questo senso è volta a scoprire modi per ottenere una maggiore affidabilità e un minor carico in termini di ore di ricerca per ottenerlo.

Una maggiore funzionalità non è sempre di beneficio. Spesso produce una minore affidabilità e consuma risorse di sviluppo aggiuntive con scarso rendimento. Trova un modo per coniugare automazione di livello superiore, parsimonia delle risorse e affidabilità in un unico processo di sviluppo e potresti vincere un premio e una menzione d'onore in tutto il web.

I sistemi paralleli che hanno lo stesso obiettivo sono una buona idea, ma non una nuova. In un sistema aeronautico, nove sistemi paralleli hanno lo stesso obiettivo, in gruppi di tre. Ogni gruppo utilizza un diverso approccio informatico. Se due dei sistemi che utilizzano lo stesso approccio forniscono lo stesso output e il terzo differisce, viene utilizzato l'output corrispondente e la differenza nel terzo viene segnalata come errore di sistema. Se due dei diversi approcci forniscono risultati simili e il terzo differisce sostanzialmente, viene utilizzata una fusione dei due risultati simili e il terzo viene riportato come caso d'uso per sviluppare ulteriormente l'approccio dissenziente.

La migliore tolleranza agli errori ha un costo, altri otto sistemi e risorse di elaborazione e connettività associate oltre ai comparatori alla coda, ma in sistemi che sono una questione di vita o di morte, i costi aggiuntivi sono pagati e l'affidabilità è massimizzata.

L'adattamento topologico dinamico è correlato a sistemi ridondanti e tolleranza agli errori, ma in qualche modo è abbastanza distinto. In quell'area di sviluppo, la tecnologia da seguire è il calcolo neuromorfo, che è in parte ispirato alla neuroplasticità.

Un'ultima distinzione da considerare è tra topologia dei processi, topologia dei dati e topologia dell'hardware. Queste tre cornici geometriche possono produrre una maggiore efficienza insieme se allineate in modi specifici che producono mappature più dirette tra le relazioni tra flusso, rappresentazione e meccanica. Sono, tuttavia, topologie distinte. Il significato dell'allineamento potrebbe non essere evidente senza approfondire questi concetti e i dettagli che emergono per specifici obiettivi di prodotto o servizio.

Le note

[1] Le reti profonde che vengono addestrate come una singola unità e funzionano senza connettività con altre reti artificiali non sono necessariamente monolitiche. La maggior parte delle reti profonde pratiche ha una sequenza eterogenea di strati in termini di funzioni di attivazione e spesso di tipi di cellule.

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.