Newsgroup: it.comp.ia
Titolo: la rete neurale piu grande?

per curiosita.. sapete se qualcuno ha provato a costruire una rete molto 
vasta?
o la piu vasta? c'e tipo un record di rete neurale artificiale piu grande?
grazie
Fiori 

 Fiori
Prego,
Matteo 
www.aifactory2.it
 

 Fiori
Non è tanto la grandezza il problema... ci sono algoritmi che si possono
adattare a reti di qualsiasi dimensione.
Ma 
1) più una rete è grande, più l'addestramento è lungo, e ovviamente oltre
un certo limite diventa non fattibile
2) non è che le capacità di una rete neurale si misurino in base al numero
di neuroni, dipende dal problema che si deve affrontare
Diciamo che più una rete neurale è grande, più alta è la complessità dei
problemi che, potenzialmente, può rappresentare e quindi affrontare.
Per avere in futuro delle grandi reti neurali che svolgano compiti più
complessi di quelli odierni, secondo me avremo bisogno di:
1) hardware altamente parallelo
2) nuove topologie di reti e soprattutto algoritmi di addestramento
Anche perchè nessuno, credo, si sentirebbe di investire molto per fornire
le risorse di calcolo per una grande rete neurale se gli algoritmi non
sono in grado di farle apprendere qualcosa di più complesso di quello che
sanno fare attualmente.
Speriamo che le cose cambino in futuro.
-- 
Il cervello causa la mente
questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news
 segnala gli abusi ad 
ab...@newsland.it

 1) hardware altamente parallelo
Che intendi per "hardware altamente parallelo"?
Cioč, che cosa c'č nel parallelismo attuale che non va? Puoi fare degli 
esempi specifici cosě capisco un po' meglio?
C++U,
   GiO

 Che intendi per "hardware altamente parallelo"?
http://www.neuricam.com/main/ProductNFE.asp?SubM=catalog&Sub2M=Intelligent_Vision_Chip&Sub3M=Neural_Networks&Sub4M=NC3003&Lang=E
oppure pronto da installare
http://www.neuricam.com/main/ProductNFE.asp?SubM=catalog&Sub2M=Intelligent_Vision_Chip&Sub3M=Neural_Networks&Sub4M=TotemPCI-BD-2-25&Lang=E
(roba italiana: trentina e friulana) ;-)
-- 
Sani
Inviato con MesNews, NR free, ora anche in italiano. Sito: 
http://beam.to/mesnews

 
http://www.neuricam.com/main/ProductNFE.asp?SubM=catalog&Sub2M=Intelligent_Vision_Chip&Sub3M=Neural_Networks&Sub4M=NC3003&Lang=E
 
[...]
Non ho capito se questo sarebbe un esempio di hardware altamente 
parallelo o no.
Se sì, l'intervento significa che l'hardware altamente parallelo già 
esiste. Io, a parte i costi, non capisco la differenza tra questo e 
altri hardware (senza nulla togliere al prodotto che secondo me può 
essere bellissimo e sono contento che sia italiano).
Se no, significa che non esiste, ma non spiega cos'ha che non va. (che 
era la mia altra domanda).
Grazie per il chiarimento eventuale. :)
C++U,
   GiO

    GiO
Se non sbaglio il topic è intitolato "la rete neurale più grande?".
Quello che ho risposto, forse non con sufficiente chiarezza, è che ora
come ora non hanno senso "grandi" reti neurali senza algoritmi che
sappiano sfruttarle e hardware parallelo che le addestri in tempi
ragionevoli (condizione numero 2, necessaria ma non sufficiente).
Il fatto che esistano tuttoggi chip (alcuni operano in parallelo, altri
sono semplici circuiti programmati) che vengono utilizzati con reti di una
manciata di neuroni (non so quanti ne utilizzino quei chip per la visione,
ma in altri articoli del genere ho letto numeri assolutamente "non
grandi") per svolgere compiti che, pur validissimi e interessanti, non
sono rivoluzionari rispetto alle applicazioni di una rete neurale
software, non ha valore ai fini del discorso.
Ribadisco: quello che intendevo è che reti neurali con un numero di
neuroni considerevolmente più elevato di quello che viene considerato
utile oggi avranno un senso se anche i modelli di rete neurale e il modo
in cui vengono implementati (leggasi: con un'implementazione hardware che
valorizzi il parallelismo) saranno più evoluti di quelli attuali,
permettendo campi di applicazione che vadano davvero al di là di quelli
delle semplici reti feed-forward.  
Un intervento come quello di Lidrie ha a mio avviso due possibili
interpretazioni:
1) "svegliatevi, l'hardware parallelo esiste già"
ma non ho mai detto che l'hardware parallelo, da solo, rivoluzioni il
campo delle reti neurali e renda utili reti più grandi
2) "l'hardware parallelo esiste ma le grandi reti neurali no"
il che è dovuto proprio al fatto che non ci sono validi modelli matematici
che rendano utile a qualcosa di __nuovo__ un hardware del genere (che
invece sarà utilissimo per inserire in dispositivi portatili un sistema
per la visione).
Se poi mi sono perso qualcosa, sono lieto di aggiornare le mie conoscenze.
Tornando alla domanda di FIORIURLANTI, prenditi una libreria o tool che
implementa reti neurali e prova ad addestrarne una grande quanto vuoi,
magari con un fantastico "acceleratore neurale" hardware nuovo di zecca:
non ne caverai fuori nulla; prova invece ad utilizzare una rete
ragionevole per un compito ragionevole, e ti stupirai di cosa si possa
ottenere da cinque neuroni.
p.s.
non so dirti quanti neuroni abbia la rete neurale più grande mai
utilizzata, ma penso si sia capito che non ritengo interessante la
questione della grandezza in sè :) 


 questione della grandezza in sè :) 
Su questo sono d'accordo anch'io, d'altra parte credo fosse una semplice 
curiosità.
C++U,
   GiO

 ottenere da cinque neuroni.
allora anche il 3003 non è da buttare ;-)
"32-neuron parallel processor chip, 256 weights per neuron"
Ovviamente sono daccordo che qualunque macchina non basta se non è 
pilotata da un sw adeguato.
-- 
L'alternativa free ad OE per usenet, ora anche in italiano: 
http://beam.to/mesnews

 pilotata da un sw adeguato.
Meno male :)


    GiO


 implementazione hardware non tradizionale possa essere vantaggiosa.
Vabbe', detta così è piuttosto generica.
cmq io credevo che stessimo parlando di applicazioni pratiche, non di 
pure teorie (io tendo a non interessarmi alla simulazione del cervello, 
ma alla soluzione di problemi - ovviamente rispetto le tendenze diverse).
C++U,
   GiO

 ma alla soluzione di problemi - ovviamente rispetto le tendenze diverse).
Le reti neurali artificiali oggi non sono altro che un modello di calcolo,
nato dalla matematica e che risolvono problemi matematici.
Allo stato attuale sono macchine assolutamente deterministiche e
prevedibili.
A parte le differenze strutturali e quantitative (che sono enormi), il
cervello biologico da generazioni e generazioni è esposto a grandi
quantità di informazione dall'ambiente naturale ed è stato protagonista
dell'evoluzione.
Mi sembra chiaro che sia difficile mettere un computer nelle stesse
condizioni.
Non è che io abbia una "tendenza diversa", finora ho applicato le reti
neurali solo a problemi di controllo, riconoscimento, classificazione...
Ma nei primi post ho detto che in reti neurali "grandi" si potrebbe
osservare l'emergere di caratteristiche nuove e interessanti.
Mentre per le nostre "comuni applicazioni" ci serve una manciata di
neuroni, anzi un numero maggiore del necessario danneggerebbe la capacità
di generalizzazione.
Ciao


 osservare l'emergere di caratteristiche nuove e interessanti.
Sono d'accordo. Ho l'impressione che la capacità per affrontare
problemi "reali" sia un risultato diretto della complessità.
Paco

 problemi "reali" sia un risultato diretto della complessità.
Già.
Se ci pensi la complessità è definita anche in termini di informazione.
Nel caso delle reti neurali, la complessità è quella riferita
all'interazione neurale (cioè al mutuo scambio di informazione).
C'è anche chi riconduce la coscienza direttamente alla complessità
dell'informazione a cui il sistema è sensibile.
Per esempio uno in coma non percepisce gli stimoli nè reagisce
consciamente.
Credo che oltre all'informazione percepita si debba tener conto della
complessità della sua elaborazione, ovvero come questa informazione viene
gestita all'interno del sistema (che poi è di nuovo riconducibile al
concetto di scambio di informazione).
E' probabile che se oggi potessimo dare alla luce delle reti neurali con
milioni di neuroni, commetteremmo degli errori come ad esempio un
eccessivo scambio di informazione che porta al disordine (che non è la
complessità).
Ciao.


 di generalizzazione.
Sì, concordo. Il mio "cruccio" era solo capire se e come nell'hardware 
attuale si potessero introdurre delle migliorie di architettura (esclusi 
quindi i problemi di costo e puramente implementativi).
C++U,
   GiO

    GiO


 neurale (digitale e non analogico) indicato da Lidrie è un esempio.
Ok. Nel post da cui è nato il thread mi sembrava di aver letto che allo 
stato attuale le architetture hardware non erano sufficienti ad 
implementare un buon parallelismo e avevo chiesto cosa non andasse - a 
quanto pare, non c'è niente che non vada nelle architetture, ma, 
ovviamente, siamo ancora lontani dal poter avere sistemi molto estesi e 
realtime allo stesso tempo e a costi ragionevoli.
C++U,
   GiO