Impariamo le reti neurali da zero con ESPertino

Retu_neurali_da_zero_Espertino_000

Scopo di questo articolo è affrontare i principali concetti che stanno alla base delle reti neurali artificiali (ANN), aspetti peraltro ricorrenti sia nel mondo del machine learning che del deep learning. Mostreremo inoltre come ESPertino, pur essendo una board basata su un normale microcontrollore, possa essere utilizzata per implementare, addestrare e testare una rete neurale artificiale

Introduzione

Nonostante la teoria delle reti neurali artificiali (note anche come ANN, acronimo di Artificial Neural Network) sia stata formulata parecchi anni or sono, soltanto recentemente si è manifestato un crescente interesse verso questo tipo di tecnologia. Il motivo, come spesso accade, è da imputarsi alla attuale disponibilità di computer, CPU e soprattutto GPU con prestazioni sempre più elevate. Grazie all'avvento delle architetture multi core e alla possibilità di eseguire algoritmi anche molto complessi sfruttando l'esecuzione parallela, siamo oggi in grado di definire, addestrare e validare anche le reti più complesse utilizzate nelle applicazioni di deep learning. In questo articolo cominceremo ad esaminare i concetti basilari delle reti neurali, che saranno poi approfonditi ed estesi nei prossimi articoli, più orientati alle tecniche di ML (Machine Learning) e DL (Deep Learning).

Le Reti Neurali Artificiali

Storicamente, il concetto di rete neurale artificiale ha origine nel 1943, con il lavoro pubblicato da Warren McCulloch e Walter Pitts, in cui venne proposto il primo modello di neurone artificiale. La caratteristica principale di questo modello consisteva nel confrontare la somma pesata di tutti i segnali in ingresso al neurone con una determinata soglia: se la somma è maggiore o uguale alla soglia, l'uscita del neurone è pari a 1, altrimenti l'uscita è pari a 0. I due studiosi dimostrarono come le reti composte da tali neuroni potessero, in linea di principio, risolvere ogni tipo di funzione matematica oppure logica. Qualche anno più tardi, Donald Hebb ipotizzò per primo la presenza di un meccanismo di apprendimento nei neuroni biologici. La prima applicazione pratica delle reti neurali artificiali fu proposta verso la fine degli anni '50, con l'introduzione del modello di percettrone (perceptron). Frank Rosenblatt e i suoi colleghi realizzarono infatti una rete di percettroni, dimostrando la loro capacità di eseguire il riconoscimento di pattern. Per neurone artificiale si intende un modello computazionale il cui comportamento si ispira a quello del neurone naturale. Come visibile nello schema semplificato di Figura 1, nel neurone naturale possiamo identificare tre parti significative ai fini della trasmissione dell'impulso: [...]

ATTENZIONE: quello che hai appena letto è solo un estratto, l'Articolo Tecnico completo è composto da ben 2846 parole ed è riservato agli abbonati MAKER. Con l'Abbonamento avrai anche accesso a tutti gli altri Articoli Tecnici MAKER e potrai fare il download (PDF) dell'EOS-Book del mese. ABBONATI ORA, è semplice e sicuro.

Abbonati alle riviste di elettronica

7 Commenti

  1. Andrea Garrapa Andrea Garrapa 14 marzo 2019
  2. idominici@geoweb.it 14 marzo 2019
    • Stefano Lovati Stefano Lovati 14 marzo 2019
      • idominici@geoweb.it 19 marzo 2019
        • Stefano Lovati Stefano Lovati 19 marzo 2019
  3. Stefano Lovati Stefano Lovati 14 marzo 2019
  4. Roberta Fiorucci Roberta Fiorucci 15 marzo 2019

Scrivi un commento