Vai alla Home Page About me Courseware Federica Living Library Federica Federica Podstudio Virtual Campus 3D Le Miniguide all'orientamento Gli eBook di Federica La Corte in Rete
 
 
Il Corso Le lezioni del Corso La Cattedra
 
Materiali di approfondimento Risorse Web Il Podcast di questa lezione

Roberto Prevete » 7.Capacità rappresentativa delle reti neurali - parte prima


Introduzione

Nella presente lezione cercheremo di capire quale è la capacità rappresentativa delle reti Feed-Forward, con funzione di attivazione a soglia (funzione di Heaviside).

1 nodo e funzione di attivazione di Heaviside

Analizziamo, ora, la capacità rappresentativa di una rete neurale feed-forward costituita da un sol nodo e con funzione di attivazione pari alla funzione di Heaviside.

In questo caso abbiamo:

z=θ (a) con a=∑k wk xk dove xk sono i valori di input più il parametro di bias e

θ(x) è la funzione di Heaviside.

Osserviamo che in questo caso la rete Feed-Forward si riduce al neurone di MacCulloch & Pitts.

Funzione di Heaviside

Tale funzione, assume valore:

  • 1, se l’argomento è maggiore di zero
  • 0, in tutti gli altri casi.
Funzione di Heaviside.

Funzione di Heaviside.


Output della rete

L’output della rete è dato, allora, da:

z=θ (a) con a=∑k wk xk

z assumerà valori diversi quando a passa da valori negativi a valori positivi,
quindi “il confine di decisione” è dato da a=0, cioè k wk xk =0.

Se abbiamo, quindi, d input il confine di decisione è un iperpiano d-dimensionale in uno spazio (d+1)-dimensionale.

Cerchiamo di essere più chiari.

Output della rete (segue)

Supponiamo di voler utilizzare tale rete per risolvere un problema di classificazione a due classi C1 e C2. In questo caso abbiamo una sola funzione discriminante F(x) e l’algoritmo di classificazione è il seguente:

Se F(x)>0 → elemento rappresentato da x appartiene alla classe C1
altrimenti F(x)<0 → elemento rappresentato da x appartiene alla classe C2

Supponiamo di voler approssimare F(x) tramite la nostra rete z=y(x)=θ (k wk xk).

Ci dobbiamo chiedere, quali confini di decisione la nostra rete è capace di rappresentare ?

Tali confini di decisione permettono di risolvere il problema, cioè z=θ (k wk xk) può approssimare F(x)?

Output della rete (segue)

Dato che la risposta del neurone si differenzia quando l’input risulta essere minore o maggiore della soglia, il confine di decisione rappresentabile dalla nostra rete è dato allora dalla equazione

k wk xk =0

Tale equazione corrisponde un (d-1)-iperpiano in uno spazio d-dimensionale

Ad esempio se d=2 abbiamo:

w1 x1 + w2 x2 + w0 =0

che altro non è che l’equazione di una retta.

Quindi una rete neurale Feed-Forward costituita da un solo neurone e con funzione di attivazione di Heaviside può risolvere solo problemi di classificazione che sono linearmente separabili, cioè possiamo rappresentare solo funzioni discriminanti che hanno come confine di decisione un iper-piano.

Una interpretazione geometrica

Osserviamo che l’equazione

k wk xk =0

può essere riscritta come

wTx+w0=0

dove wTx è il prodotto scalare tra i vettori

w=(w1,w2, …,wd) e x=(x1,x2, …,xd) e w0 è il bias.

Una interpretazione geometrica (segue)

Allora Se xA e xB sono due punti apprtenenti dell’iperpiano

wTx+w0=0

Allora, risulta

wTxA+w0=0= wTxB+w0

quindi

wT xA – wT xB= wT (xA – xB)=0

così w è un vettore perpendicolare ad ogni vettore giacente nell’iperpiano e quindi all’iperpiano stesso.

Una interpretazione geometrica (segue)

La distanza dell’iperpiano dall’origine è, inoltre, data da:

l= |w0| / || w ||.

Osserviamo ancora che xTw= ||x|| ||w|| cosα
dove ||x|| è la norma (la lunghezza) del vettore x , α è l’angolo compreso tra il vettore x e il vettore w.

Tale prodotto scalare può essere interpretato come la lunghezza del vettore proiezione di x lungo la direzione di w moltiplicato per la lunghezza di w.

Se indichiamo con xw la lunghezza del vettore proiezione di x lungo la direzione di w possiamo scrivere:
xTw= xw ||w||
xw= (xTw)/||w||


Una interpretazione geometrica (segue)

Possiamo dire, allora, che:

Fissato il valore di w e w0, per i valori di input tale che xTw+ w0=0, dato che w e w0 sono costanti, la proiezione

xw =(xTw)/||w||= – w0/||w||

è costante.

Quindi i valori di x che soddisfano xTw+ w0=0, per dei fissati valori di w e w0, corrispondono ai punti la cui proiezione su w da il valore – w0/ ||w|| , tali punti corrispondono ad un iperpiano perpendicolare a w e che lo interseca nel punto – w0/ ||w||.

Una interpretazione geometrica (segue)

Dato, allora, un generico vettore x ci sono due casi:

xw > -w0/ ||w||,
questo significa che il vettore x deve giacere oltre il piano perpendicolare e
risulta x_w>-w0

xw < -w0/ ||w||,
questo significa che il vettore x deve giacere prima della perpendicolare e
risulta xw<-w0

Feed-forward a due strati e funzione di output di Heaviside

Consideriamo, ora, reti neurali feed-forward multistrato full-connected costituite da

  • d input,
  • uno strato di m neuroni interni con funzione di output di Heaviside e
  • un neurone z di output con funzione di output g che realizza un AND logico dei neuroni interni (per tutti i nodi supponiamo una funzione di attivazione pari all’identità).

Tale rete realizza la seguente funzione:

z(x)=g(h w”hθ (k w’hk xk)) con k=1,2, …,d e h=1,2, …m.

dove abbiamo incluso il bias nella sommatoria.

Feed-forward a due strati e funzione di output di Heaviside (segue)

Reti così fatte, possono rappresentare una regione di decisione semplicemente connessa e convessa (Ricordo che: Un sottoinsieme di Rd è detto semplicemente connesso se è fatto di un “pezzo solo” e se non ha “buchi”. Un sottoinsieme di Rd si dice convesso se per ogni coppia di punti x,y appartenenti al sottoinsieme il segmento che li congiunge è interamente contenuto nel sottoinsieme stesso. Un insieme convesso è semplicemente connesso).

Osserviamo che ciascun nodo interno definisce un confine di decisione coincidente con un iper-piano (una retta nel caso di d=2), quindi gli m iper-piani definiti dagli m nodi interni vanno a definire una unica regione di decisione (chiusa o aperta) convessa. Il nodo di output permette di decidere, così, se un punto appartiene oppure no alla regione di decisione individuata dagli m nodi interni, cioè se gli m nodi interni hanno valore di output pari a 1 l’input x appartiene alla regione di decisione altrimenti no.

Feed-forward a due strati e funzione di output di Heaviside (segue)

Dimostriamo che la regione di decisione K definita da tale rete è convessa (1).

Data una rete con unità a soglia con m nodi interni (ciascuno rappresentante un confine di decisione dato da un iper-piano) e con un nodo di output che realizza un AND logico, tale rete definisce una regione di decisione, K, convessa.

Per dimostrare ciò dobbiamo dimostrare che comunque presi due punti xA e xB appartenenti alla regione K allora se scelgo un punto xC appartenente al segmento congiungente, tale punto appartiene ancora alla regione K.

Feed-forward a due strati e funzione di output di Heaviside (segue)

Dimostriamo che la regione di decisione K definita da tale rete è convessa (2).

un punto xC appartenente al segmento congiungente xA e xB può essere così espresso:

xC =αxA + (1-α)xB con 0≤ α≤1

Sappiamo che il valore di output della rete per i due punti xA e xB è

z(xA)>0 e z(xB)>0,

quindi, per come è costruita la rete, per ciascun nodo interno si ha

k w’hk xAk >0 e k w’hk xBk>0

(ricordo che la funzione g realizza un AND logico e che, quindi, affinché dia 1 come valore di uscita deve essere θ θ(k w’hk xk)=1 per ogni h)

Feed-forward a due strati e funzione di output di Heaviside (segue)

Dimostriamo che la regione di decisione K definita da tale rete è convessa (3).

Allora possiamo scrivere

k w’hk xCk=

k w’hk (αxAk + (1-α)xBk)=

αk w’hk xAk+(1-α) k w’hk xBk

dato che k w’hk xAk>0 e k w’hk xBk>0

risulta, così, k w’hk xCk>0 per ogni h.

Quindi xC appartiene alla regione K.

Feed-forward a due strati e funzione di output di a soglia

Facciamo notare che:

  • Se rilassiamo la condizione di avere un AND logico come output possiamo avere anche regioni di decisione più complesse, ma non ogni tipo di regioni di decisione.
  • Reti neurali che hanno tre strati di pesi possono generare qualunque regioni di decisione (Lippmann, 1987).

L’ultimo punto ci dice che con una rete neurale costituita da 3 strati di pesi, o equivalentemente 2 strati di nodi interni, e con funzione di output dei nodi di tipo “a soglia”, può generare qualunque regioni di decisione, e quindi può, almeno in linea teorica, risolvere qualunque problema di classificazione con la condizione di avere un numero sufficiente di nodi interni.

Una interpretazione geometrica

In figura è mostrato un esempio di confine di decisione che non può essere rappresentato da una rete neurale con due strati di nodi (o due strati di pesi).

In questo caso, tale regione può essere approssimata bene quanto si vuole solamente da una rete neurale con due strati di nodi interni (se c’e’ un numero sufficiente di nodi)

Un esempio di un confine di decisione che non può essere rappresentato da una rete con due strati di unità a soglia (Gibson e Cowan, 1990).

Un esempio di un confine di decisione che non può essere rappresentato da una rete con due strati di unità a soglia (Gibson e Cowan, 1990).


  • Contenuti protetti da Creative Commons
  • Feed RSS
  • Condividi su FriendFeed
  • Condividi su Facebook
  • Segnala su Twitter
  • Condividi su LinkedIn
Progetto "Campus Virtuale" dell'Università degli Studi di Napoli Federico II, realizzato con il cofinanziamento dell'Unione europea. Asse V - Società dell'informazione - Obiettivo Operativo 5.1 e-Government ed e-Inclusion