0 risultati
video suggerito
video suggerito
20 Novembre 2022
18:30

Reti neurali artificiali: cosa sono, come funzionano e perché vengono costruite

Un sistema che mima la struttura delle connessioni nel cervello. Come funziona una delle tecnologie che più caratterizzano il mondo delle intelligenze artificiali?

1.033 condivisioni
Reti neurali artificiali: cosa sono, come funzionano e perché vengono costruite
rete neurale

Con la dicitura “rete neurale artificiale” o in inglese “artificial neural network” (abbreviato ANN o solamente NN) nel settore dell'apprendimento automatico ci si riferisce a un modello matematico che punta a somigliare – nel senso più ampio del termine – alle reti neurali biologiche, presenti nell’essere umano o negli animali, e che è costituito da neuroni artificiali costruiti virtualmente o, talvolta, fisicamente. L’obiettivo di questa tecnologia è quello di contribuire alla risoluzione di problemi di tipo informatico e, nello specifico, a problemi legati all’ambito delle intelligenze artificiali. Per poter trovare soluzioni sempre più precise le reti neurali vengono addestrate tramite diverse tipologie di machine learning che si differenziano a seconda dello scopo specifico per cui vengono prodotte.
Capiamo quindi come si è tentato di emulare il modello naturale dei neuroni, come funziona una rete neurale e perché c’è stata l’esigenza di produrre questo tipo di tecnologia.

Come i neuroni artificiali si ispirano a quelli biologici

Per capire come possano funzionare i neuroni artificiali è necessario avere in mente una struttura semplificata del funzionamento dei neuroni biologici.

Come funziona una rete neurale biologica

Come si vede nell’immagine qui sotto un neurone presente nel nostro cervello è composto dal soma (corpo cellulare in cui è inserito il nucleo) da cui fuoriescono i dendriti, un assone (sempre collegato al corpo cellulare ma più spesso e robusto dei dendriti) e le terminazioni dell’assone. Dobbiamo immaginare che nel nostro cervello esiste una vera e propria rete composta da centinaia di milioni di neuroni costituiti da questa stessa struttura.

Immagine
Credit: DanieleDF1995, CC BY–SA 3.0.

Ora, quello che accade per il neurone biologico è che nel momento in cui arriva un impulso attraverso i dendriti il corpo cellulare viene caricato di energia elettrica, fa come una specie di condensatore e accumula le cariche elettriche. Ma chiaramente, il soma ha un limite di accumulo e quindi, una volta raggiunta la quantità massima di energia elettrica che può accumulare, entra in gioco l’assone. Quest’ultimo fa da canale di fuoriuscita, il corpo cellulare scarica l’energia elettrica nell’assone. Questo, a sua volta, trasporterà quell’energia ai dendriti di un altro neurone! Questa dinamica del passaggio dell’impulso elettrico dall’assone ai dendriti prende il nome di sinapsi. Pensate che di meccanismi di questo tipo ne abbiamo centinaia di migliaia per ogni secondo!

Immagine

In questo modo il nostro cervello riesce a elaborare enormi quantità di informazioni: la sua peculiarità sta nel fatto che la sinapsi riesce a ad avvenire attivando numerose aree (è un'elaborazione multipla) e lo fa contemporaneamente (è anche simultanea).
I computer, invece, funzionano processando dati in modo sequenziale, svolgendo un compito alla volta per poi passare al successivo, e lo fanno in un unico luogo alla volta. Proprio per questo motivo, a chi si occupava di informatica, è risultata interessante l’opportunità di riprodurre il sistema biologico in una creazione del tutto artificiale.

Come funziona una rete neurale artificiale

Data la struttura di una rete neurale biologica, si è tentato di riprodurre – in modo semplificato – un sistema simile che potesse funzionare altrettanto bene per l'elaborazione di informazioni.
La rete neurale artificiale è composta da nodi o neuroni formali che sono delle unità computazionali fondamentali e che, essendo interconnessi, formano un grafo composto almeno da uno strato di ingresso e uno strato di uscita. Anche questa rete ha come obiettivo quello di elaborare dati e informazioni e funziona con un input (che possiamo paragonare all’impulso elettrico per il neurone biologico) che arriva al nodo dello strato d’ingresso.

Immagine

A questo punto, attenendoci solo al principio di funzionamento di base, il neurone artificiale viene attivato tramite questo input e anche per lui c’è una quantità massima di “stimolo” ricevibile. Ogni nodo ha un valore di soglia superato il quale si ha il passaggio dell’informazione ricevuta allo strato di output! Un po’ come accade tra corpo cellulare e assone quando, superata una certa quantità di energia accumulata, questa viene scaricata sull’assone e poi su un altro neurone adiacente. Qui la differenza sta nel fatto che la trasmissione è di informazioni sotto forma di numeri che vengono comunicati tramite delle funzioni matematiche. In questo passaggio si svolge l’elaborazione del dato fornito inizialmente.
Per far sì che questo meccanismo sia efficace, e quindi che l’elaborazione dei dati sia precisa, vengono studiati dei metodi di apprendimento automatico (di machine learning o più specifici di deep learning) che servono proprio ad addestrare la rete neurale e a farla diventare sempre “più brava” a compiere la sua elaborazione. Più si allena una rete neurale, più si svilupperà un algoritmo per un funzionamento migliore.

Tipologie di reti neurali 

Esistono varie tipologie di reti neurali che sono state costruite dagli anni '50 ad oggi. Per quanto si possa pensare che si tratti di una tecnologia recentissima, in realtà gli studi su questa materia sono in atto da più di 70 anni! Vediamo di seguito i vari tipi di reti neurali ad oggi utilizzate:

  • il primo tra tutti gli esempi è quello del percettrone, una rete neurale realizzata inizialmente dallo psicologo Frank Rosenblatt nel 1958 e composta fondamentalmente da un solo nodo che riceveva input, elaborava il segnale tramite una funzione e poi restituiva un output;
Immagine
Schema di un percettrone.
  • esistono poi le reti feed forward che sono caratterizzate da un passaggio di informazioni che va in un’unica direzione. Queste si distinguono in reti monostrato, se si ha solo uno strato di input e uno di output, e reti multistrato se ci sono più strati intermedi di nodi che restano “nascosti”.
    Nel caso delle reti multistrato, poiché esistono dei livelli nascosti,  si parla di reti neurali deep allenate da algoritmi di deep learning;
Immagine
Schema semplificato di una rete feed forward multistrato. Credit: Glosser.ca, CC BY–SA 3.0.
  • una terza tipologia è composta dalle reti neurali ricorrenti (RNN) che sono di fatto delle reti multistrato, in cui però i segnali che fuoriescono dai nodi di uno strato di livello superiore diventano input per strati di livello inferiore. Solitamente questo meccanismo dell'uso dell'output di un livello come input per quello inferiore è utilizzato per creare una memoria nella stessa rete;
Immagine
Esempio di strato ricorrente in una rete neurale.
Credit: Chrislb, CC BY–SA 3.0.
  • un'ultima tipologia, ancora più complessa, è quella delle reti neurali convoluzionali (CNN oppure ConvNet). Queste sono in realtà uno specifico tipo di rete feed forward multistrato costituito almeno da cinque diversi strati (uno di input, una serie di strati nascosti e uno di output).
    Alcuni di questi strati nascosti prendono il nome di "strati convoluzionali" che svolgono una particolare funzione di calcolo atta a produrre una vera e propria mappa di caratteristiche dell'input ricevuto dallo strato precedente. Questa mappa viene utilizzata come un'informazione "in più" da aggiungere allo strato successivo, in modo da restituire un output estremamente più preciso e dettagliato.  Essendo un tipo di rete neurale molto complesso e multistrato viene allenato con algoritmi di deep learning ed è utilizzato per elaborare dati più complessi.
Immagine
Credit: Typical_cnn Aphex34, CC BY–SA 4.0.

Per cosa si usano le reti neurali artificiali?

Abbiamo visto cosa sono, da che idea nascono e – in termini semplificati – come funzionano. Ora la domanda che resta è: a che servono? Le strutture delle reti neurali possono essere utilizzate con grande successo in svariati ambiti, soprattutto se si ha a disposizione un'ampia quantità di dati che è necessario elaborare da fornire come input per i nodi. I casi più noti di applicazione sono il riconoscimento di immagini (come il riconoscimento del volto della stessa persona in tante foto diverse), ma anche della voce o dei testi.
Tra i numerosi ambiti di applicazione di questa tecnologia troviamo anche: il marketing, le previsioni finanziarie, il controllo della qualità dei cibi, la diagnostica medica, i sistemi di cyber security, il riconoscimento di targhe e banconote, le previsioni sul consumo di energia e tantissimi altri. A seconda della mansione da svolgere ogni rete neurale viene addestrata con un tipo di apprendimento specifico che varia dal machine learning più "semplice" (apprendimento supervisionato, non supervisionato e per rinforzo) fino alle tecniche più complesse di deep learning.
Quello che è certo è che la ricerca continuerà a evolvere su questi aspetti relativi al mondo delle intelligenze artificiali e che spesso non ci rendiamo neanche conto di quanti diversi campi del nostro quotidiano possano essere fertili per l'applicazione di queste nuove tecnologie.

Avatar utente
Camilla Ferrario
Redattrice
L’universo è un posto strano e il modo che abbiamo di abitarlo cattura continuamente la mia attenzione. “Sii curiosa” è il mio imperativo: amo provare a ricostruire indizio per indizio il grande enigma in cui ci troviamo. Sono laureata in Filosofia, ho fatto la speaker in una web radio e adoro il true crime. Di cosa non posso fare a meno? Del dialogo aperto con gli altri e della pasta alle vongole.
Sfondo autopromo
Cosa stai cercando?
api url views