Docsity
Docsity

Prepara i tuoi esami
Prepara i tuoi esami

Studia grazie alle numerose risorse presenti su Docsity


Ottieni i punti per scaricare
Ottieni i punti per scaricare

Guadagna punti aiutando altri studenti oppure acquistali con un piano Premium


Guide e consigli
Guide e consigli


Complessità e Struttura di Reti Neurali Artificiali: Livelli, Nodi e Algoritmi, Slide di Elementi di Informatica

Una introduzione alla complessità e alla struttura di reti neurali artificiali (ANN), con un focus sui livelli, i nodi e gli algoritmi utilizzati per addestrarle. sulla relazione tra la topologia e la complessità delle ANN, il numero di livelli e la distinzione tra reti a livello singolo e a più livelli, la direzione delle informazioni e i tipi di reti (fully-connected, feedforward e recurrent), il numero di nodi e i problemi associati al loro numero, e infine, l'addestramento di una ANN attraverso l'algoritmo di backpropagation. Il documento include anche un esempio pratico di come creare e addestrare una ANN in R.

Tipologia: Slide

2019/2020

Caricato il 12/02/2020

goodvibes_
goodvibes_ 🇮🇹

4.2

(13)

54 documenti

1 / 32

Toggle sidebar

Questa pagina non è visibile nell’anteprima

Non perderti parti importanti!

bg1
Intelligenza artificiale ed
elementi di Programmazione
L18
Università degli Studi “Suor Orsola Benincasa”
Facoltà di Scienze della Formazione
Corso di Laurea in Scienze e Tecniche di Psicologia Cognitiva
A.A. 2016/2017
Prof. Roberta Presta
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14
pf15
pf16
pf17
pf18
pf19
pf1a
pf1b
pf1c
pf1d
pf1e
pf1f
pf20

Anteprima parziale del testo

Scarica Complessità e Struttura di Reti Neurali Artificiali: Livelli, Nodi e Algoritmi e più Slide in PDF di Elementi di Informatica solo su Docsity!

Intelligenza artificiale ed

elementi di Programmazione

L

Università degli Studi “Suor Orsola Benincasa” Facoltà di Scienze della Formazione Corso di Laurea in Scienze e Tecniche di Psicologia Cognitiva A.A. 2016/ Prof. Roberta Presta

Artificial Neural Network

Src: Brett Lantz. Machine Learning with R (2nd ed.), 2015, Packt Publishing, Capitolo 7

ANN – Artificial Neural Networks

u Human brain ~ 85 billion neurons u Cat brain ~ 1 billion neurons u Mouse brain ~ 75 million neurons u Cockroach ~ 1 million neurons u Fruit fly ~ 100,000 neurons u ANN (2013) ~ max several hundred neurons u è Anche il numero di neuroni delle mosche sovrasta di molto il numero di neuroni artificiali massimo che si incontra ad oggi in una ANN

ANN – Artificial Neural Networks

u Le ANN sono nate proprio con l’intento di simulare il comportamento della rete neuronale biologica nella risoluzione di problemi u Le prime rudimentali ANN furono impiegate per apprendere in modo supervisionato semplici trasformazioni quali le funzioni logiche AND e OR u Questi primi esperimenti furono usati principalmente per aiutare gli scienziati a capire il comportamento dei cervelli biologici

Dai neuroni biologici a quelli artificiali

u Neuroni biologici u I segnali in ingresso sono recepiti e pesati dai dendriti attraverso processi biochimici u Quando il nucleo della cella ha accumulato energia tramite i segnali ricevuti oltre una certa soglia, dal nucleo parte un segnale elettrochimico di uscita che è trasmesso lungo l’ assone alle terminazioni nervose u Presso le terminazioni , il segnale viene trasmesso tramite processo biochimico ai dendriti dei neuroni circostanti ( sinapsi )

Dai neuroni biologici ai neuroni

artificiali

u Neuroni artificiali (“nodi”) u Una rete direzionata definisce la relazione tra i segnali di input (come quelli percepiti dai dendriti) ed il segnale di output (come quello emesso dal corpo della cellula sull’assone) u I segnali di input (xi) sono pesati in accordo alla loro importanza (wi) u I segnali di input pesati sono sommati nel corpo della cellula (sommatoria) u Tale somma viene considerata da una certa funzione di attivazione (f) che in accordo ad essa produce il segnale di output (y) u Le ANN sono collegamenti di neuroni artificiali così definiti usati per costruire complessi modelli di dati

Tipi di ANN

Tipi di ANN

u Esistono numerose varianti di ANN u Ciascuna di loro si caratterizza in base a: u Funzione di attivazione u Trasforma la somma degli input pesati nel segnale di uscita che verrà propagato dal neurone nella rete u Topologia della rete u Descrive il numero di neuroni nella rete, il numero di livelli della rete ed il modo in cui i neuroni sono interconnessi tra loro u Algoritmo di training u Specifica come vengono determinati i pesi dei segnali di input per ogni neurone

Funzioni di attivazione

u Funzione di attivazione sigmoidale u La più comunemente impiegata (riferimento di default) u Differenziabile u È possibile cioè calcolarne la derivata e = numero di Eulero ~ 2.

Funzioni di attivazione

u Altre possibili alternative:

  • La scelta della funzione di attivazione dei neuroni artificiali caratterizza il comportamento della ANN - Es.: una funzione di attivazione lineare determina una rete che si comporta in maniera molto simile ad u modello di regressione lineare
  • Ciascuna funzione di attivazione rende la ANN più adatta per certi compiti di apprendimento piuttosto che per altri

Numero di livelli

u I livelli consentono di distinguere i nodi in base alla loro posizione della rete u Nodi di ingresso (input nodes): processano i dati di ingresso (una feature per nodo) u Nodi di uscita (output nodes): generano i segnali di risposta della rete in toto ai dati di input u Nodi nascosti (hidden nodes): processano le informazioni nel passaggio tra i nodi di ingresso e quelli di uscita u Si distingue tra: u Single-layer networks u Multi-layer networks

Numero di livelli

u Single-layer networks u Reti a livello singolo u Sono presenti i soli livelli di ingresso e di uscita u Multi-layer networks u Reti a più livelli u Tra i livelli di ingresso e di uscita esistono uno o più “hidden layers” (livelli nascosti) u Note: u Possono esserci più nodi nel livello di uscita u In questo caso, più risposte possono essere modellate simultaneamente dalla rete u Una ANN con livelli nascosti multipli è detta Deep Neural Network e la relativa pratica di addestramento è a volte chiamata “ deep learning

Numero di nodi

u La complessità di una ANN dipende dal numero di nodi nella rete u Per i livelli di ingresso e di uscita, il numero di nodi è vincolato u Nel livello di ingresso, si hanno tanti nodi quante sono le feature del dataset u Nel livello di uscita, si hanno tanti nodi quante sono le risposte da modellare u Il numero di nodi dei livelli nascosti invece è lasciato all’utente e va deciso prima di addestrare la rete u In generale, topologie di rete più complesse (cioè con più nodi) consentono l’apprendimento di modelli più complessi

Numero di nodi

u Tuttavia, al crescere del numero di nodi, si tende ad incontrare i seguenti problemi: u Overfitting dei dati di training u Aumento della complessità computazionale u Rallentamento della fase di training u Purtroppo non esiste una regola che consenta la determinazione del numero ottimo di neuroni! u La best practice è usare il minor numero di nodi che consente di raggiungere prestazioni soddisfacenti sul dataset di test u Nella maggioranza dei casi, per cominciare va bene una manciata di nodi in un singolo hidden layer