Skip to content

Latest commit

 

History

History
53 lines (52 loc) · 3.66 KB

README.md

File metadata and controls

53 lines (52 loc) · 3.66 KB

Perceptron

1. Introduzione

Il percettrone venne proposto da Frank Rosenblatt nel 1958. La struttura è la seguente:


Considerando un numero p di predittori, il vettore X = [x1, x2, ... , xp] rappresenta l'input del percettrone. Quest'ultimo viene poi moltiplicato per il vettore dei pesi W = [w1, w2, ... , wp] . Detto ciò, l'output può essere espresso matematicamente dalla formula:

output neurone

in cui la funzione g(), detta funzione di attivazione , è spesso rappresentata dalla funzione sigmoidea matematicamente esprimibile in questo modo:

funzione sigmoide

Quest'ultima ha un dominio di valori nel range [0,1] rendendo così il percettrone un classificatore binario. In particolare, supponendo di avere due classi A e B, il valore ritornato dalla funzione sigmoidea esprime la probabilità di appartenenza dell'esempio X alla classe A o B.

Di estrema importanza è il vettore dei pesi W. Il loro valore viene determinato durante la fase di apprendimento (training) , in maniera tale che la differenza (target - output) sia la più piccola possibile. Ma quanto piccola? Considerando (target - output) come la funzione di loss, l'obiettivo è quello di raggiungere il minimo globale . In particolare con il termine target ci riferiamo al valore con cui labelliamo l'osservazione X (valore atteso) , al contrario, con il termine output ci riferiamo al valore restituito dal percettrone (predizione) .
I pesi vengono determinati attraverso la regola di aggiornamento delta rule (discesa del gradiente). Considerando un solo neurone (appunto il percettrone) possiamo esprimere la delta rule in questo modo:

delta rule

el i conseguente aggiornamento del vettore peso:

aggiornamento pesi


2. Regressione

Modificando la funzione di attivazione possiamo ottenere un modello regressivo. In particolare, sostituiamo la funzione sigmoidea con la funzione ReLU. Quest'ultima viene ad esprimersi matematicamente:
<
formula relu

Detto ciò, il nostro percettrone costituirà un modello definito dal seguente hyperpiano:

hyperpiano

in cui w0 rappresenta l'intercetta mentre w1, ... , wp le relative pendenze.


3. Plot residui

Di seguito posto il plot dei residui calcolato sul training set sia del percettrone sia eseguendo una LinearRegression. Il dataset utilizzato è Boston house-prices

PerceptronLinearRegression