Modelli classici e modelli neurali

Neuroscienze.net

Auto-intervista critica sulla relazione tra i diversi modelli

Che cos’è un modello matematico?
Un modello matematico di un processo è l’insieme delle relazioni necessarie per conoscere l’andamento temporale delle uscite del processo in funzione degli ingressi e delle condizioni in cui si trova il sistema all’instante iniziale.

Esistono molti tipi diversi di modelli?
Sì, la forma matematica del modello dipende dalle leggi fisiche che governano il tipo di processo e quindi non è possibile a priori determinarne la struttura, tuttavia in molti casi si può fare riferimento a modelli standard di tipo lineare per i quali esiste una teoria ormai molto matura. E’ bene comunque ricordare che in natura è praticamente impossibile trovare processi che siano perfettamente lineari, perciò il ricorso ad essi è molto spesso dovuto ad una semplificazione che penalizza la precisione ma rende molto più agevole lo studio e la progettazione.

Quali sono i casi più comuni di sistemi lineari ?
La teoria dei circuiti elettrici (basata solo su resistori, condensatori e induttori) è lineare. Ciò non è più vero se si considerano i dispositivi a semiconduttore come diodi e transistor che hanno delle dinamiche rigorosamente non lineari. Esiste inoltre una forte analogia tra sistemi elettrici e sistemi meccanici basati su masse, molle e smorzatori; per cui è sempre possibile passare da un circuito ad una struttura che obbedisce alle leggi della dinamica. Naturalmente anche in quest’ultimo caso è importante tenere presente che generalmente si tratta di approssimazioni più o meno valide della realtà.

Come si perviene al modello di un sistema ?
Esistono fondamentalmente due strategie: la prima è quella di fare riferimento alle leggi fisiche (come ad esempio nel caso dell’elettronica, della meccanica e della fluidodinamica), mentre la seconda, chiamata identificazione, è una tecnica che mira alla costruzione di un modello basandosi su coppie di dati ingresso/uscita. In quest’ultimo caso si parte da una struttura generica e si cerca di ottimizzarne i parametri variabili in modo che avvenga un’interpolazione dei dati quanto più precisa possibile.

Che tipo di modello è una rete neurale ?
Le reti neurali di uso comune sono modelli non lineari che vengono ottimizzati per identificare un determinato processo. Il percettrone semplice proposto inizialmente da Rosenblatt era basato sulla classificazione di dati che potevano essere linearmente separati (per semplicità immaginiamo un esempio bidimensionale, esso poteva divedere il piano in due parti con una retta e collocare i dati in uno dei due semipiani), tuttavia si notò che questo tipo di rete era inadeguata a svolgere molti compiti che richiedevano una separaione non-lineare come ad esempio lo XOR binario. Per questo motivo si decise di passare a reti a più strati (MLP – Multi Layer Perceptrons) con dinamiche tipicamente sigmoidali o a tangente iperbolica. Per questo tipo di reti venne inventato il famoso algoritmo di Back-Propagation che serviva proprio ad modificare i parametri variabili, in questo caso i pesi sinaptici, al fine di rendere la rete capace di associare ai pattern di ingresso i pattern di uscita.

Quindi l’addestramento di una rete MLP equivale ad un’identificazione ?
Sì, tuttavia l’obiettivo che si desidera raggiungere è anche quello di rendere la rete capace di generalizzare in modo coerente alla realtà.

Che cosa si intende per capacità di generalizzazione ?
La capacità di generalizzazione è quella proprietà che permette ad una rete neurale di produrre uscite a partire da dati in ingresso non presenti nell’insieme utilizzato per l’addestramento. Naturalmente ogni rete è in grado di farlo, tuttavia ciò che conta è la coerenza di queste uscite, vale a dire la correlazione che sussiste con i pattern forniti dall’addestratore. Un esempio molto comune è quello relativo al riconoscimento di caratteri: l’insieme d’addestramento (training set) contiene una rappresentazione di tutte le lettere dell’alfabeto, dopo un certo numero di cicli l’errore si riduce al di sotto di una soglia accettabile prefissata, a questo punto la rete è pronta per la fase di test. Se la capacità di generalizzazione è buona ci si deve aspettare che fornendo l’immagine di una lettera corrotta da rumore, ma ancora riconoscibile, la rete neurale riesca a classificarla correttamente.

I modelli classici sono in grado di generalizzare ?
Quando si costruisce un modello basandosi su leggi fisiche ci si aspetta un comportamento deterministico e quindi, a patto di non effettuare eccessive semplificazioni, l’errore può essere considerato nullo. Non c’è generalizzazione poiché è come se il modello incorporasse a sè tutte le possibili coppie ingresso/uscita. Nel caso dell’identificazione invece la situazione è leggermente diversa in quanto molto spesso si parte da un modello la cui dinamica è in un certo senso “prefissata”, l’obiettivo è quello di verificare che, una volta regolati i parametri, l’uscita riesca a predire correttamente l’andamento delle variabili del processo misurate.

Quindi le reti neurali hanno un maggior numero di gradi di libertà rispetto ai modelli classici ?
In un certo senso sì. L’algoritmo di Back-Propagation è facilmente applicabile anche a reti con un numero di neuroni estremamente alto e questo, sotto opportune condizioni, garantisce un’elevata capacità di apprendimento. Tuttavia ciò potrebbe influire molto negativamente sulla capacità di generalizzazione perciò è sempre necessario cercare il compromesso migliore.

È questo allora il “segreto” delle reti neurali ?
Sicuramente le reti MLP sono molto flessibili e si adattano con facilità ai compiti più disparati, però non bisogna mai dimenticare che una rete neurale è un sistema deterministico esattamente come i modelli classici. E’ solo per comodità grafica che si rappresentano i neuroni con le relatiche interconnessioni, il tutto potrebbe essere ridotto ad una “sterile” ed estremamente complessa funzione matematica senza nulla togliere al risultato.

Che differenza c’è tra apprendimento supervisionato e non supervisionato ?
Nel primo caso si parte da un training set composto da coppie di dati ingresso/uscita e si controlla che la rete “impari” ad associarli correttamente. Nel secondo caso, invece, l’obiettivo è quello di lasciare che sia il sistema (inteso come rete + algoritmi necessari) ad auto-organizzarsi nel modo più opportuno. E’ ovvio però che anche in quest’ultimo caso l’intero processo è deterministico e procede sulla base di regole fissate dall’uomo (come la tecnica del winner takes all), l’unica reale differenza sta nel fatto che la rete neurale (in questo caso molto spesso chiamata SOM – Self Organizing Map) è più “libera” di cogliere le analogie nascoste presenti nei dati e sistemare questi ultimi di conseguenza. Questo tipo di reti hanno trovato un vasto impiego nel campo del ricoscimento di pattern, Kohonen, uno dei pionieri della ricerca, ad esempio progettò una macchina da scrivere fonetica che apprendeva autonomamente a classificare i singoli fonemi per poi convertirli in grafemi opportuni.

Ma allora quale reale differenza sussiste tra reti neurali e modelli classici ?
L’unica vera e grande differenza è l’approccio diverso alla progettazione. Le reti neurali, come anche i sistemi a logica fuzzy, hanno permesso di osservare i problemi sotto un’angolazione differente e ciò, a sua volta, ha spinto la ricerca verso lo studio di algoritmi generici in grado di manipolare i pesi sinaptici delle reti senza alcun vincolo di dimensione. Purtroppo il peso più rilevante è dovuto al costo computazionale che, nel caso dei modelli classici lineari, è estremamente ridotto, mentre una rete neurale, per funzionare correttamente, ha bisogno o di un calcolatore o di hardware dedicato. Tuttavia anche questo aspetto, grazie all’odierno abbattimento del rapporto prezzo/prestazioni, sta lentamente perdendo importanza.

Scarica il PDF 

Share

Admin

Direttore Editoriale di Neuroscienze.net

Lascia un commento