• Non ci sono risultati.

TP t = Close t + High 3 t + Low t

CAPITOLO 2: RETI NEURALI ARTIFICIAL

2.1 Caratteristiche general

2.1.2 Principali architetture e modell

Seppur nel paragrafo precedente è stata presa in considerazione una rete neurale elementare a tre strati, è evidente come sia possibile definire un elevato numero di configurazioni possibili; in particolare, dalla scelta del numero di strati, del numero di neuroni, del tipo di algoritmo di apprendimento, etc… può dipendere la capacità stessa della rete di fornire risposte corrette allo specifico problema.

2.1.2.1 Modello elementare: il Neurone Formale (PE)

Il Neurone Formale, o Processing Element, è l’unità fondamentale, nonché elemento di calcolo più elementare, di ogni rete neurale ed è stato proposto per la prima volta nel 1943 da Warren Sturgis McCulloch e da Walter Pitts.

Galati, L. and Gabbi, G., eds. 1999. La previsione nei mercati finanziari: trading system, modelli

24

Come si può notare dalla figura, ogni neurone riceve in input n segnali

, da altrettanti n neuroni, tramite connessioni di intensità (pesi

sinattici), fornendo un solo segnale in uscita. I segnali in input vengono elaborati e consolidati tramite una media ponderata dalla quale nasce il “potenziale post-

sinattico”:

,

Mentre il dato in output nasce da una opportuna funzione di trasferimento o attivazione:

,

Dove corrisponde ad una soglia che risulta essere specifica per ciascun neurone. La funzione di trasferimento è generalmente una funzione non lineare che assume per la maggior parte dei casi valori limitati per appartenere al campo reale [0,1] o [-1,1]. Non tutte le funzioni non lineari sono adattabili come funzioni di trasferimento:

x

1

, x

2

, . . . x

j

, . . . x

n

w

i

y

P =

n i=1

(w

i

x

i

)

y = f (P − θ)

θ

per esserlo devono infatti incrementare il proprio valore al crescere del valore di somma pesata dei valori provenienti dalle connessioni precedenti e devono inoltre risultare continue e derivabili per consentire l’applicazione dell’algoritmo di riduzione dell’errore .25

Ad oggi, la funzione più utilizzata è la “sigmoide” o “curva logistica”: ,

In cui è il parametro che conferisce più o meno rapidità alla funzione a seconda che sia più o meno grande; in particolare la sigmoide può assumere due strutture estreme:

-

Per la sigmoide coincide con la funzione gradino;

-

Per la sigmoide coincide con la funzione lineare;

Ma in genere si utilizza .

Il neurone formale descritto ha dunque la funzione di classificazione delle diverse corrispondenze che si hanno tra determinati gruppi di input ed i rispettivi output attraverso la opportuna variazione dei persi . Vengono in questo modo

implicitamente ricostruite le regole di associazione tra input e output in modo tale da essere successivamente impiegate per dedurre output incogniti da input nuovi.

2.1.2.2 Modello multistrato: il Multi Layer Perceptron (MLP)

Un MLP non è altro che un insieme di unità elementari di calcolo (i Processing Element) interconnesse tra loro: in particolare, ciascuna unità elementare va a costituire un nodo e ciascun nodo va a posizionarsi all’interno di uno dei tipici tre “settori” che compongono una rete neurale multistrato;

f = 11 + A

x

A

A + inf

A − inf

A = e = 2,71828283

w

i

Hajek, S. 2003. L’automa finanziario: il supporto della soft computing all’investimento consapevole.

25

Come si può notare osservando la figura, si ha un livello in input in cui si trovano i nodi che forniscono i pattern iniziali alla rete e in cui non avviene alcun tipo di

calcolo, un numero n di livelli intermedi detti anche Hidden layers in cui ogni i-esima unità è connessa con tutte le unità dei livelli i+1 e i-1 ed infine un livello di output in cui le unità restituiscono gli output dell’intera rete.

Come avveniva già nel modello elementare analizzato in precedenza, anche il

funzionamento del MLP si fonda sul concetto di ottimizzazione dei pesi che avviene a livello di ciascun nodo, ma la maggiore complessità di questa struttura richiede necessariamente l’utilizzo di metodologie di ottimizzazione più complesse, la più frequente di esse è quella della “Discesa del Gradiente” o “Back Propagation”: in

questo modello proposto da David E. Rumelhart negli anni ’80, ad ogni modifica dei

pesi il ricalcolo dell’errore viene effettuato partendo dal livello di output e risalendo attraverso i livelli intermedi.

L’algoritmo Back Propagation prevede che il meccanismo di determinazione dei pesi per i quali la rete meglio approssima una serie di dati osservati riproduca il principio secondo cui “sbagliando si impara”: una rete neurale apprende dai propri errori esaminando un dato numero di esempi di associazioni input/output (anche se in fase di addestramento sarebbe più consono considerare gli output come “target”). Nella pratica le reti hanno inizialmente dei pesi scelti casualmente tra valori

normalizzati compresi tra 0 e 1 che vengono poi ciclicamente aggiustati. Dopo un certo numero di confronti, che deve essere sufficientemente grande, tra gli output stimati e quelli reali una rete è in grado di generare un output corretto per ciascun input selezionato.

Risulta importante specificare che derivando da un processo intrinsecamente “approssimativo” la risposta di una rete non è mai netta, ma essa tenderà invece a fornire esiti nell’intorno di quello esatto. Questa tolleranza può essere percepita tanto come un limite del comportamento della rete, quanto come l’imprescindibile effetto della sua capacità di fornire risposte verosimili anche qualora si trovi a dover classificare esempi inediti.

Come già accennato, i risultati positivi dipendono dall’addestramento che si è compiuto sui dati; per addestrare una rete neurale è necessario presentarle un certo numero di volte, generalmente nell’ordine delle migliaia, un determinato numero di diversi pattern per ognuno dei quali verranno modificati i pesi in modo da diminuire l’errore ed avvicinare i valori di output al target. Tale procedimento si protrarrà poi finché l’errore non risulta sufficientemente basso, tipicamente in riferimento ad un certo valore prefissato.

Una volta completato l’addestramento la rete sarà pronta per ricevere nuovi input da analizzare, per i quali non sono noti i target, e fornire successivamente un output. Uno spunto interessante per quanto concerne l’applicazione di questi algoritmi si ha con riguardo al loro utilizzo nel trattamento delle serie storiche, cioè nel tentativo di prevedere un dato (es: il prezzo di una azione quotata in Borsa) acquisendo in input dati a questo omogenei posti in sequenza temporale: a questo fine risulta essere fortemente vantaggioso includere tra gli input anche l’output ottenuto

dall’applicazione della medesima rete ad un pattern precedente; in sintesi: .

Un modello ricorsivo come questo infatti consente di aumentare l’accuratezza della stima del valore atteso introducendo nella funzione approssimante un fattore

correttivo ricavato dagli esiti della funzione stessa, incorporandone e soppesandone puntualmente l’errore.

Questa correzione permette, qualora la rete tenda a produrre valori troppo alti nella sua parte regressiva pura, di assestarsi in fase di addestramento nella sua fase ricorsiva, in maniera da compensare la sopravvalutazione; viceversa in caso di sottovalutazione.

y

t

= f (x, y

t−1

)

Documenti correlati