Lezione7 (1) PDF - Reti Neurali Artificiali
Document Details
Uploaded by Deleted User
Tags
Summary
This document provides an overview of artificial neural networks, touching upon their history, concepts, and applications. It is likely a lecture or course material on the topic. The document references various algorithms and concepts related to artificial neural networks. It details the components of a neural network, its operations, and examples. It also covers concepts like neuron models, learning algorithms (such as backpropagation), and the limitations of simple perceptrons and benefits of complex systems.
Full Transcript
Cosa è una rete neurale artificiale Nasce nell’ambito delle ricerche in intelligenza artificiale È un modello predittivo: Può essere usato sia per problemi di classificazione che per problemi di regressione È basato sul funzionamento...
Cosa è una rete neurale artificiale Nasce nell’ambito delle ricerche in intelligenza artificiale È un modello predittivo: Può essere usato sia per problemi di classificazione che per problemi di regressione È basato sul funzionamento del cervello umano Il cervello umano è composto da circa 100 miliardi di oggetti chiamati neuroni Ogni neurone svolge una funzione molto elementare Il numero elevato di neuroni e delle loro connessioni dà origine all’intelligenza umana 03/02/20 Data Mining - Reti neurali artificiali 2 Il neurone biologico Il neurone somma i segnali provenienti dai dendriti e “spara” un impulso dagli assoni quando si supera una certa soglia. 03/02/20 Data Mining - Reti neurali artificiali 3 Il vero neurone biologico 03/02/20 Data Mining - Reti neurali artificiali 4 Cibernetica I primi esperimenti con neuroni artificiali nascono nel campo della cibernetica. Obiettivo: costruire cervelli artificiali per capire meglio come funziona il cervello degli esseri viventi Si tratta di macchine analogiche e non di computer digitali. 1948, Elmer and Elsie, le tartarughe di W. Grey Walter. ELectroMEchanical Robot, Light- Sensitive. Robot autonomi sensibili alla luce. 03/02/20 Data Mining - Reti neurali artificiali 5 Nascita del percettrone 1957, Perceptron, Frank Rosenblatt: la prima rete neurale artificiale Il New York Times dell’8 luglio 1958 scrive: The Navy revealed the embryo of an electronic computer today that it expects will be able to walk, talk, see, write, reproduce itself and be conscious of its existence. 03/02/20 Data Mining - Reti neurali artificiali 6 Il percettrone 03/02/20 Data Mining - Reti neurali artificiali 7 Percettrone: un esempio X1 X2 X3 Y Input Black box 1 0 0 -1 1 0 1 1 X1 1 1 0 1 Output 1 1 1 1 0 0 1 -1 X2 Y 0 1 0 -1 0 1 1 1 X3 0 0 0 -1 La classe è 1 se almeno due dei tre attributi X sono 1, altrimenti è -1 03/02/20 Data Mining - Reti neurali artificiali 8 Percettrone: un esempio Input nodes Black box X1 X 2 X3 Y 1 0 0 -1 Output 1 0 1 1 X1 0.3 node 1 1 0 1 1 1 1 1 X2 0.3 0 0 1 -1 Y 0 1 0 -1 0 1 1 1 X3 0.3 t=0.4 0 0 0 -1 Y sign (0.3 X 1 0.3 X 2 0.3 X 3 0.4) 1 if x 0 where sign ( x ) 1 if x 0 03/02/20 Data Mining - Reti neurali artificiali 9 Percettrone: un esempio Input nodes Black box X1 X 2 X3 Y 1 0 0 -1 Output 1 0 1 1 X1 0.3 node 1 1 0 1 1 1 1 1 X2 0.3 0 0 1 -1 Y 0 1 0 -1 0 1 1 1 X3 0.3 t=0.4 0 0 0 -1 Y =sign(0.3 X 1 +0.3 X 2 +0.3 X 3 −0.4 ) X1 = 1, X2 = 0, X3 =1 → Y = sign(0.2) = 1 03/02/20 Data Mining - Reti neurali artificiali 10 Percettrone: un altro esempio Insieme di dati MNIST: immagini di cifre con risoluzione di 28 × 28 pixel. Vogliamo riconoscere una cifra. Un neurone per ogni cifra. wi : uno per input/pixel. Alcuni positivi, per attivarsi con la cifra cercata. Alcuni negativi, per escludere altre cifre. 03/02/20 Data Mining - Reti neurali artificiali 11 Percettrone: un altro esempio Insieme di dari MNIST: immagini di cifre con risoluzione 28 × 28. Vogliamo riconoscere una cifra. Un neurone per ogni cifra. wi : uno per input/pixel. Alcuni positivi, per attivarsi con la cifra cercata. Alcuni negativi, per escludere altre cifre. 03/02/20 Data Mining - Reti neurali artificiali 12 Come si stabiliscono i pesi? Inizializzare i pesi in maniera casuale w(0) = (w0, w1, …, wd) Ripetere Per ognuna delle istanze di addestramento (xi, yi) – Calcolare f(w(k), xi) valore di output del percettrone – Aggiornare i pesi (k +1) (k ) (k) wj =w j + λ ( y i −f ( w , x i )) xij dove λ è un iper-parametro chiamato learning rate Finché non si raggiunge una condizione di stop 03/02/20 Data Mining - Reti neurali artificiali 13 Come si stabiliscono i pesi Formula aggiornamento pesi: (k +1) (k ) (k) wj =w j + λ ( y i −f (w , x i )) xij Intuizione Ci basiamo sull’errore e = yi – f(w,xi): Consideriamo il caso xij > 0 – Se y=f(w,x), e = 0, non ci sono aggiornamenti – Se y>f(w,x), e > 0, il wj peso deve essere incrementato per ridurre l’errore – Se y