Reti Neurali

Messaggioda markowitz » 01/04/2011, 23:38

Salve sto cercando di studiare le reti neurali artificiali (RNA).
Il materiale che trovo online spiega abbastanza bene l'idea di fondo e pone esempi grafici intuitivi
ma mi servirebbe anche un'esposizione rigorosa. Il fatto, sempre vero in secondo me,
e che l'idea e l'intuizione servono solo all'inizio, se non capisco la matematica che ci sta dietro
non riuscirò ad usare lo strumento. In Matlab ho trovato spiegazioni concise ma buone.

In sostanza se ci ho capito qualcosa la RNA, ad uno strato ovvero la più semplice,
la posso interpretare come una funzione \( \displaystyle {f{:}}{\mathbb{R}}^{{n}}\to{\mathbb{R}}^{{m}} \)
definita così

\( \displaystyle {Y}={f{{\left({W}{X}+{B}\right)}}} \)

dove \( \displaystyle {Y} \) è l'output della funzione (vettore mx1), \( \displaystyle {X} \) sono i dati di input da elaborare (vettore nx1),
\( \displaystyle {W} \) (matrice mxn) è la matrice dei pesi dove le m righe sono i neuroni che rielaborano gli input e poi si ha
\( \displaystyle {B} \) vettore mx1 che viene chiamato dei bias anche se non ho capito bene il suo ruolo. Poi si passa attraverso la
funzione di trasferimento \( \displaystyle {f{{\left(\right)}}} \). La RNA, se ho ben inteso, finisce qua.
Il punto è che noi abbiamo un vettore obbiettivo m-dimensionale, diciamo \( \displaystyle {{Y}}^{\cdot} \) che vorremmo fosse uguale o
comunque simile a quello restituito dalla rete.
Allora possiamo considerare k coppie di vettori \( \displaystyle {\left[{{Y}}^{\cdot}{\left({i}\right)};{X}{\left({i}\right)}\right]} \) come dataset iniziale
e definire \( \displaystyle {e}{\left({i}\right)}={{Y}}^{\cdot}{\left({i}\right)}-{Y}{\left({i}\right)}={{Y}}^{\cdot}{\left({i}\right)}-{f{{\left({W}{X}{\left({i}\right)}+{B}\right)}}} \)
allora otteniamo gli \( \displaystyle {e}{\left({i}\right)} \) vettori m-dimensionali degli errori relativi ad una coppia di vettori (vero-fittato)
questi errori li dobbiamo somare ed otteniamo uno scalare.
Dopodiché inseriamo in un vettore k-dimensionale \( \displaystyle {E} \) la somma degli errori di tutte le coppie.
Addestrare (sinonimo di ottimizzare credo) la RNA significa minimizzare \( \displaystyle {E}'{E} \).

E' una visione corretta del problema?
markowitz
Junior Member
Junior Member
 
Messaggi: 367
Iscritto il: 14/02/2010, 21:50

Torna a Analisi Numerica e Ricerca Operativa

Chi c’è in linea

Visitano il forum: Nessuno e 0 ospiti