cosa rende le reti neurali un modello di classificazione non lineare?


18

Sto cercando di capire il significato matematico dei modelli di classificazione non lineari:

Ho appena letto un articolo che parla delle reti neurali come modello di classificazione non lineare.

Ma mi rendo conto che:

inserisci qui la descrizione dell'immagine

Il primo strato:

h1=x1wx1h1+x2wx1h2

h2=x1wx2h1+x2wx2h2

Il livello successivo

y=bwby+h1wh1y+h2wh2y

Può essere semplificato a

=b+(x1wx1h1+x2wx1h2)wh1y+(x1wx2h1+x2wx2h2)wh2y

=b+x1(wh1ywx1h1+wx2h1wh2y)+x2(wh1ywx1h1+wx2h2wh2y)

Una rete neurale a due strati è solo una semplice regressione lineare

=b+x1W1+x2W2

Questo può essere mostrato a qualsiasi numero di strati, poiché la combinazione lineare di qualsiasi numero di pesi è di nuovo lineare.

Cosa rende davvero una rete neurale un modello di classificazione non lineare?
In che modo la funzione di attivazione influirà sulla non linearità del modello?
Mi puoi spiegare?

Risposte:


18

Penso che dimentichi la funzione di attivazione nei nodi nella rete neurale, che non è lineare e renderà l'intero modello non lineare.

Nella tua formula non è del tutto corretto, dove,

h1w1x1+w2x2

ma

h1=sigmoid(w1x1+w2x2)

dove sigmoid funziona in questo modo,sigmoid(x)=11+ex

inserisci qui la descrizione dell'immagine

Facciamo un esempio numerico per spiegare l'impatto della funzione , supponiamo di avere quindi . D'altra parte, supponiamo di avere , ed è quasi uguale a , che non è lineare.w1x1+w2x2=4sigmoid(4)=0.99w1x1+w2x2=4000sigmoid(4000)=1sigmoid(4)


Inoltre, penso che la diapositiva 14 di questo tutorial possa mostrare dove hai sbagliato esattamente. Per , non otuput non è -7,65, maH1sigmoid(7.65)

inserisci qui la descrizione dell'immagine


1
In che modo la funzione di attivazione influirà sulla non linearità del modello? Mi puoi spiegare?
Alvaro Joao,

3

Hai ragione nel dire che più livelli lineari possono essere equivalenti a un singolo livello lineare. Come hanno detto le altre risposte, una funzione di attivazione non lineare consente la classificazione non lineare. Dire che un classificatore è non lineare significa che ha un limite di decisione non lineare. Il confine decisionale è una superficie che separa le classi; il classificatore pronosticherà una classe per tutti i punti su un lato del confine decisionale e un'altra classe per tutti i punti sull'altro lato.

Consideriamo una situazione comune: eseguire la classificazione binaria con una rete contenente più strati di unità nascoste non lineari e un'unità di uscita con una funzione di attivazione sigmoidale. fornisce l'output, è un vettore di attivazioni per l'ultimo strato nascosto, è un vettore dei loro pesi sull'unità di output e è il bias dell'unità di output. L'output è:yhwb

y=σ(hw+b)

dove è la funzione sigmoid logistica. L'output viene interpretato come la probabilità che la classe sia . La classe prevista è:σ1c

c={0y0.51y>0.5

Consideriamo la regola di classificazione rispetto alle attivazioni di unità nascoste. Possiamo vedere che le attivazioni di unità nascoste sono proiettate su una linea . La regola per assegnare una classe è una funzione di , che è monotonicamente correlata alla proiezione lungo la linea. La regola di classificazione equivale quindi a determinare se la proiezione lungo la linea è minore o maggiore di qualche soglia (in questo caso, la soglia è data dal negativo del bias). Ciò significa che il limite di decisione è un iperpiano ortogonale alla linea e interseca la linea in un punto corrispondente a quella soglia.yhW+by

Ho detto prima che il limite di decisione non è lineare, ma un iperpiano è la definizione stessa di un confine lineare. Ma abbiamo considerato il confine come una funzione delle unità nascoste appena prima dell'uscita. Le attivazioni di unità nascoste sono una funzione non lineare degli input originali, a causa dei precedenti livelli nascosti e delle loro funzioni di attivazione non lineari. Un modo di pensare alla rete è che mappa i dati in modo non lineare in uno spazio di funzionalità. Le coordinate in questo spazio sono date dalle attivazioni delle ultime unità nascoste. La rete esegue quindi una classificazione lineare in questo spazio (regressione logistica, in questo caso). Possiamo anche pensare al limite decisionale in funzione degli input originali. Questa funzione sarà non lineare, come conseguenza della mappatura non lineare dagli input alle attivazioni di unità nascoste.

Questo post sul blog mostra alcune belle figure e animazioni di questo processo.


1

La non linearità deriva dalla funzione di attivazione sigmoidea, 1 / (1 + e ^ x), dove x è la combinazione lineare di predittori e pesi a cui si fa riferimento nella domanda.

A proposito, i limiti di questa attivazione sono zero e uno perché o il denominatore diventa così grande che la frazione si avvicina a zero, o e ^ x diventa così piccolo che la frazione si avvicina a 1/1.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.