AppuntiLezioniOrarioPercorsoEsami
C1C2Entrambi
Accedi
Appunti/Programmazione Matematica

Capitolo 10 · C1

Il neurone artificiale

Perceptron, Classificatore lineare, Addestramento, Funzione logistica, XOR e reti di neuroni

8 pagine (6 numerate). Aggiornato il 10 ottobre 2026.

Scarica PDF290 KB

Indice

  1. Il Perceptron1
  2. Un classificatore lineare1
  3. Addestrare un neurone2
  4. Una funzione di errore derivabile2
  5. Lo XOR e le reti di neuroni3
  6. Esercizi5
  7. Soluzioni6
Testo del capitolo

Testo estratto dal PDF compilato: le formule perdono l'impaginazione (apici, pedici, frazioni, matrici) e le figure mancano. Per una formula esatta, apri la pagina nel lettore. Anche in Markdown.

Pagina 1

1 Il Perceptron Definizione – Perceptron Il Perceptron è il modello di neurone con ingressi x = (x1, . . . , xn), pesi v = (v1, . . . , vn) e soglia θ ∈ R, la cui uscita è F (x; v, θ) = GvTx − θ = G  nX i=1 vixi − θ  , dove G è la funzione di attivazione a gradino: G(t) = (1 se t ≥ 0, 0 se t < 0. Il modello imita il neurone biologico: riceve segnali da altri neuroni, ciascuno moltiplicato per un peso sinaptico, e si attiva quando la somma pesata raggiunge la soglia. Il neurone vale 1 (attivo) se P i vixi ≥ θ, 0 (inattivo) altrimenti. x1 x2 xn ... Σ v1 v2 vn −θ G vTx − θ F (x; v, θ) Il Perceptron: somma pesata degli ingressi, meno la soglia, passata attraverso il gradino G. 2 Un classificatore lineare Proposizione – Il neurone divide il piano con una retta Con n = 2 e (v1, v2)̸ = (0, 0), l’insieme {(x1, x2) ∈ R2 : v1x1 + v2x2 = θ} è una retta. Il neurone dà uscita 1 nel semipiano v1x1 + v2x2 ≥ θ e uscita 0 nel semipiano v1x1 + v2x2 < θ. Per questo il Perceptron è un classificatore lineare: separa gli ingressi in due classi con una superficie di separazione lineare, la retta per n = 2 e l’insieme {x ∈ Rn : vTx = θ} in generale. Pesi e soglia decidono dove sta la retta. Canale 1 · Prof. Marco Sciandrone 1

Pagina 2

Esempio – Pazienti a rischio Di ogni paziente si misurano due caratteristiche, pressione arteriosa x1 e fluidità del sangue x2: il paziente è un punto di R2. Dopo cinque anni si assegna l’etichetta 1 a chi ha avuto un evento ischemico e 0 agli altri. Una retta che separa i due gruppi permette di classificare un paziente nuovo dal semipiano in cui cade. x1 x2 v1x1 + v2x2 = θ + + + + + + uscita 1 uscita 0 Pazienti con etichetta 1 (croci) e 0 (cerchi): la retta lascia le croci nel semipiano dove il neurone vale 1. 3 Addestrare un neurone Definizione – Training set Il training set è un insieme di P coppie di dati T = (x(p), y(p)) : p = 1, . . . , P , dove x(p) ∈ Rn è il vettore delle caratteristiche e y(p) ∈ {0, 1} la sua etichetta nota. Addestrare il neurone significa scegliere v e θ in modo che classifichi correttamente i dati noti: F (x(p); v, θ) = y(p), p = 1, . . . , P. I dati (x(p), y(p)) sono parametri assegnati; le variabili sono i pesi e la soglia, n + 1 numeri. Le P equazioni si trasformano in un problema di minimo. Si misura l’errore sul campione p ep(v, θ) = F (x(p); v, θ) − y(p) , che è nullo solo se il neurone classifica bene x(p), e si somma su tutti i campioni: min v∈Rn, θ∈R PX p=1 ep(v, θ). Il problema si risolve con un algoritmo, come il metodo del gradiente (Capitolo 8), che usa le derivate della funzione da minimizzare. Canale 1 · Prof. Marco Sciandrone 2

Pagina 3

4 Una funzione di errore derivabile L’errore così scritto non è continuo. Fissato un campione con y(p) = 1, si guardi ep come funzione della soglia θ, con s = vTx(p): ep = (0 se θ ≤ s, 1 se θ > s. L’errore salta da 0 a 1 in θ = s, come il gradino G in 0. Un algoritmo che usa le derivate non si può applicare. Le due cause si correggono una alla volta. 1. Attivazione. Il gradino si sostituisce con la funzione logistica σ (definizione sotto), che ha andamento simile ma è continua e derivabile. 2. Errore. Il valore assoluto |t| non è derivabile in t = 0: si sostituisce con il quadrato t2, che come |t| è nullo solo per t = 0 e cresce con |t|. Definizione – Funzione logistica La funzione logistica è σ(t) = 1 1 + e−t , t ∈ R. σ è continua e derivabile su R, con valori in (0, 1), σ(0) = 1 2 , σ(t) → 0 per t → −∞ e σ(t) → 1 per t → +∞. t 1 1 2 G(t) σ(t) Il gradino G salta in 0; la logistica σ passa da 0 a 1 senza salti. Con queste due sostituzioni il neurone diventa F (x; v, θ) = σ(vTx − θ) e il problema di addestramento è min v∈Rn, θ∈R PX p=1  σvTx(p) − θ − y(p) 2 La funzione da minimizzare è continua e derivabile rispetto a ciascun peso vi e alla soglia θ, tenendo fisse le altre variabili: un algoritmo con le derivate si può applicare. Canale 1 · Prof. Marco Sciandrone 3

Pagina 4

5 Lo XOR e le reti di neuroni Lo XOR (o esclusivo) assegna a due ingressi binari l’etichetta 1 se sono diversi e 0 se sono uguali: x1 x2 y 0 0 0 0 1 1 1 0 1 1 1 0 Proposizione – Un neurone non basta Non esistono v1, v2, θ tali che il Perceptron classifichi correttamente i quattro punti dello XOR. Dimostrazione Se esistessero, da G(t) = 1 ⇐⇒ t ≥ 0: 1. da (0, 0) 7 → 0: −θ < 0, cioè θ > 0; 2. da (1, 0) 7 → 1 e (0, 1) 7 → 1: v1 ≥ θ e v2 ≥ θ, quindi v1 + v2 − θ ≥ θ > 0; 3. da (1, 1) 7 → 0: v1 + v2 − θ < 0, contro il passo 2. □ In termini geometrici, nessuna retta lascia (0, 1) e (1, 0) da una parte e (0, 0) e (1, 1) dall’altra. Una rete di tre neuroni risolve il problema. I neuroni N1 e N2 ricevono x1, x2; le loro uscite z1, z2 sono gli ingressi del neurone N3, che dà l’uscita della rete: z1 = Gx1 + x2 − 3 2 , z2 = Gx1 + x2 − 1 2 , y = G−z1 + z2 − 1 2 . Per l’ingresso (0, 1): x1 + x2 = 1, quindi z1 = G(−1 2 ) = 0, z2 = G(1 2 ) = 1 e y = G(1 2 ) = 1. Gli altri tre ingressi sono l’Esercizio 1. Canale 1 · Prof. Marco Sciandrone 4

Pagina 5

x1 x2 N1 N2 N3 1 1 1 1 z1 −1 z2 1 y θ1 = 3 2 θ2 = 1 2 θ3 = 1 2 x1 x2 N2 N1 + + A sinistra la rete, con i pesi sulle frecce e le soglie. A destra le rette di N2 (x1 + x2 = 1 2 ) e di N1 (x1 + x2 = 3 2 ): la rete vale 1 nella striscia fra le due, dove stanno (0, 1) e (1, 0). I pesi e le soglie della rete sono 9 numeri, 3 per neurone. Qui sono stati scelti a mano; in pratica li sceglie l’addestramento, minimizzando come nella Sezione 4 una funzione di errore di 9 variabili sui dati dello XOR. Riepilogo • Perceptron: F (x; v, θ) = G(vTx − θ), con G(t) = 1 per t ≥ 0 e 0 per t < 0. • Classificatore lineare: uscita 1 nel semipiano v1x1 + v2x2 ≥ θ, 0 nell’altro. • Training set: T = {(x(p), y(p))}, con y(p) ∈ {0, 1}. • Addestramento: scegliere v, θ con F (x(p); v, θ) = y(p), minimizzando la somma degli errori. • Regolarità: il gradino e |t| rendono l’errore discontinuo o non derivabile. • Logistica: σ(t) = 1/(1 + e−t), continua e derivabile. • Errore derivabile: minv,θ P p σ(vTx(p) − θ) − y(p)2. • XOR: un neurone non basta; una rete di tre neuroni (9 parametri) sì. 6 Esercizi Esercizio 1 – La rete dello XOR Verificare che la rete di tre neuroni della Sezione 5, z1 = Gx1 + x2 − 3 2 , z2 = Gx1 + x2 − 1 2 , y = G−z1 + z2 − 1 2 , dà l’uscita dello XOR sui quattro ingressi (0, 0), (0, 1), (1, 0), (1, 1). Soluzione a pagina 6 → Canale 1 · Prof. Marco Sciandrone 5

Pagina 6

7 Soluzioni Soluzione dell’Esercizio 1 – La rete dello XOR z1 e z2 dipendono solo da s = x1 + x2: z1 = 1 se e solo se s ≥ 3 2 , z2 = 1 se e solo se s ≥ 1 2 . (x1, x2) s z1 z2 −z1 + z2 − 1 2 y (0, 0) 0 0 0 −1 2 0 (0, 1) 1 0 1 1 2 1 (1, 0) 1 0 1 1 2 1 (1, 1) 2 1 1 −1 2 0 La colonna y coincide con l’etichetta dello XOR in tutti e quattro i casi. N1 vale 1 solo se entrambi gli ingressi sono 1, N2 se almeno uno lo è; N3 vale 1 quando N2 è attivo e N1 no. ← Torna all’Esercizio 1, pagina 5 Canale 1 · Prof. Marco Sciandrone 6

Capitolo precedente9 Limiti lungo successioni e restrizioni, continuità

Il neurone artificiale

Disposizione delle pagine
Zoom
Scarica PDF290 KB
Entrambi

10 Il neurone artificialeC1

Indice

  1. Il Perceptron1
  2. Un classificatore lineare1
  3. Addestrare un neurone2
  4. Una funzione di errore derivabile2
  5. Lo XOR e le reti di neuroni3
  6. Esercizi5
  7. Soluzioni6
Capitolo precedente9 Limiti lungo successioni e restrizioni, continuità
Apertura del capitolo