• Non ci sono risultati.

Il neurone artificiale: analisi vettoriale

Capitolo 4: Descrizione quantitativa del neurone artificiale

4.3 Il neurone artificiale: analisi vettoriale

Considerando che la risposta data una semplice unitร  lineare รจ:

๐‘ฆ = ๐‘Ž (โˆ‘ ๐‘ค๐‘–๐‘ฅ๐‘– ๐‘

๐‘–

) ๐‘Ž = 1

questa relazione puรฒ essere vista come il prodotto interno tra il vettore ๐ฐ, rappresentante i valori sinaptici, e il vettore ๐ฑ degli input:

๐‘ฆ = ๐ฐ โˆ™ ๐ฑ

Il valore scalare ๐‘ฆ corrisponde alla risposta dell'unitร , ovvero una misura della somiglianza tra il vettore di input e il vettore dei valori sinaptici. Sapendo infatti che la norma di un vettore ne stabilisce la sua lunghezza

โ€–๐ฑโ€– = โˆš๐ฑ โˆ™ ๐ฑ = โˆš๐‘ฅ12+ ๐‘ฅ22+. . . +๐‘ฅ๐‘›2

e che l'angolo ๐œ— (piรน precisamente il coseno) formato dai due vettori ๐ฐ e ๐ฑ รจ dato da:

๐‘๐‘œ๐‘ (๐œ—) = ๐ฐ โˆ™ ๐ฑ โ€–๐ฐโ€–โ€–๐ฑโ€– 0 โ‰ค ๐œ— โ‰ค ๐œ‹ [4.3.1] [4.3.2] [4.3.3] [4.3.4]

attraverso dei semplici calcoli algebrici, si giunge a definire il prodotto dato dalla [4.3.2] come

๐ฐ โˆ™ ๐ฑ = โ€–๐ฐโ€–โ€–๐ฑโ€–๐‘๐‘œ๐‘ (๐œ—)

Con questo si vuole affermare che se si immagina di traslare nello spazio i due vettori, mantenendo inalterata a loro lunghezza, allora il loro prodotto interno รจ proporzionale al coseno dell'angolo ๐œ— formatosi tra i due vettori nello spazio. Per questo se:

Quindi la risposta data dal neurone (il prodotto) sarร  tanto maggiore quanto piรน piccola รจ la distanza angolare che vi รจ tra il vettore degli input e il vettore sinaptico all'interno del medesimo quadrante. Se la risposta di unโ€™unitร  risulta essere nulla allora i due vettori formano, tra di loro, un angolo di 90ยฐ (c.d. ortogonali); se invece la distanza risulta essere maggiore di 90ยฐ l'unitร  assume valori negativi.

Un generico neurone che utilizza una funzione di attivazione a gradino ๐šฝ(๐‘ฅ) โˆˆ {0,1}36 e con una soglia fissata sul valore zero evidenzia perciรฒ se il vettore degli input si trova ad una distanza minore (la risposta risulta essere uguale ad 1) o maggiore (risposta uguale ad 0) di

36 Questa tipologia di unitร  รจ chiamata neurone di McCulloch e Pitts (Floreano, Mattiussi, 2002). ๐œ— = 0ยฐ โ†’ ๐‘๐‘œ๐‘ (๐œ—) = 1

๐œ— = 90ยฐ โ†’ ๐‘๐‘œ๐‘ (๐œ—) = 0 ๐œ— = 180ยฐ โ†’ ๐‘๐‘œ๐‘ (๐œ—) = โˆ’1

Figura 10: rappresentazione vettoriale di pesi sinaptici e pattern di input appartenenti ad un'unitร  con due sinapsi Fonte: Floreano, Mattiussi, 2002

un angolo retto dal proprio vettore sinaptico. Da sottolineare รจ che in una rete con molte unitร , per osservare quale di questa possieda un vettore sinaptico simile al pattern di input, ci si deve basare sul livello di attivazione solamente se i vettori sinaptici sono stati normalizzati (Floreano, Mattiussi, 2002).

Generalmente una rete neurale artificiale รจ utilizzata per poter classificare dei pattern. Nel caso appena visto si sta trattando un neurone binario, ovvero unโ€™unitร  che opera una classificazione imparando ad attivarsi solamente se vi รจ un determinato gruppo di pattern in ingresso ma rimanendo inattiva in tutti gli altri casi. Per apprendere si deve sviluppare un vettore di valori sinaptici atto a tracciare una linea di demarcazione nello spazio dellโ€™input in modo tale che tutti i pattern di un gruppo si trovino da una parte della linea mentre tutti gli altri nel lato opposto. Se in un dato nodo sussistono solamente due connessioni in ingresso allora รจ opportuno parlare di linea di separazione, se ve ne sono tre si deve fare riferimento ad un

piano mentre se vi sono piรน di tre connessioni si fa riferimento ad un iperpiano di separazione

nello spazio dimensionale dell'input. Se si presenta una di queste tre opzioni per la classificazione dei gruppi di input in due categorie allora tale separazione puรฒ essere definita

lineare. Questo si presenta come un elemento importante anche per la scelta dell'architettura

relativa alla rete neurale artificiale; per esempio tutte le reti neurali che presentano solamente uno strato di sinapsi non riescono a classificare in modo adeguatamente corretto i vettori di input che non possano essere linearmente separabili (Floreano, Mattiussi, 2002).

Sia che si parli di linea, di piano o di iperpiano, questi sono tutti perpendicolari rispetto ai pesi sinaptici del singolo nodo. Nei grafici sottostanti si riporta la linea di separazione di uno spazio di input la quale viene caratterizzata da un neurone con due connessioni di ingresso poste uguali a 1. Nel grafico di sinistra la soglia ๐œ— รจ posta uguale a 1 mentre in quello di destra รจ uguale a 0. In entrambi i grafici si puรฒ individuare: la linea di separazione (linea grossa) e la linea del vettore sinaptico (linea tratteggiata).

Figura 11: Linea di separazione dello spazio di input in due neuroni con due connessioni d'ingresso. Nella figura a sinistra la soglia ๐œ— = 1 mentre in quello a destra la soglia ๐œ— = 0. La linea nera evidenzia la linea di separazione mentre la linea tratteggiata la direzione del vettore sinaptico.

Quindi un nodo ad attivazione bipolare il quale abbia due connessioni in ingresso, rende una risposta (o output) pari a:

๐‘ฆ = ๐šฝ(๐ด) = ๐šฝ (โˆ‘ ๐‘ค๐‘—๐‘ฅ๐‘—โˆ’ ๐œ— ๐’‹

)

mentre la linea di separazione che individua due regioni nelle quali in una ๐ด > 0 e nell'altra ๐ด < 0 รจ definibile secondo la relazione:

๐‘ค1๐‘ฅ1+ ๐‘ค2๐‘ฅ2โˆ’ ๐œ— = 0

con ๐œ— pari al valore della soglia. Procedendo algebricamente si ricava l'equazione:

๐‘ฅ2= ๐œ— ๐‘ค2 โˆ’๐‘ค1 ๐‘ค2 ๐‘ฅ1

In questa relazione la soglia e i pesi sinaptici sono determinati dall'algoritmo di apprendimento. In ๐ด > 0 tutti i vettori di informazioni in input provocheranno un output pari a 1 mentre tutti gli altri pattern, classificati nella regione ๐ด < 0, avranno come output โˆ’1.

Dallโ€™ultimo grafico riportato si puรฒ notare che se ๐œ— = 0 la soglia non รจ presente poichรจ la linea di separazione passa per l'origine dello spazio dell'input quindi il neurone potrebbe avere delle difficoltร  nella separazione tra diverse distribuzioni di pattern. Impostando allora una casuale configurazione sinaptica iniziale e una serie di pattern di input per svolgere l'apprendimento, si deve muovere il vettore sinaptico in modo che la linea di separazione classifichi correttamente i pattern nei due gruppi.

La soglia ๐œ— puรฒ quindi essere definita come un peso sinaptico di valore ๐œ— legata ad unโ€™unitร  aggiuntiva in input che abbia unโ€™attivazione costante pari a โˆ’1. In questo caso il peso legato alla sinapsi prende il nome di bias (๐‘ค0) mentre il neurone aggiuntivo prende il nome di unitร  di

bias (๐‘ฅ0). Ogni unitร  allโ€™interno della rete neurale possiede una connessione di bias mentre le unitร  di input non la posseggono in quanto la loro attivazione dipende dal corrispondente vettore di ingresso.

[4.3.6]

[4.3.7]

Con questo per poter attivare il neurone si utilizza la seguente notazione:

๐‘ฆ = ๐šฝ (โˆ‘ ๐‘ค๐‘—๐‘ฅ๐‘— ๐‘—=0

)

Dove la sommatoria viene fatta partire da zero e ๐‘ฅ0= โˆ’1. La soglia quindi viene vista come un ulteriore peso sinaptico derivante da un neurone sempre attivo; ciรฒ implica che, a seguito di un processo di apprendimento, essa puรฒ essere modificata come per gli altri pesi sinaptici della rete (Floreano, Mattiussi, 2002).