o que faz das redes neurais um modelo de classificação não linear?

18

Estou tentando entender o significado matemático dos modelos de classificação não linear:

Acabei de ler um artigo falando sobre redes neurais sendo um modelo de classificação não linear.

Mas eu apenas percebo que:

insira a descrição da imagem aqui

A primeira camada:

h1=x1wx1h1+x2wx1h2

h2=x1wx2h1+x2wx2h2

A camada subsequente

y=bwby+h1wh1y+h2wh2y

Pode ser simplificado para

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

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

Uma rede neural de duas camadas É apenas uma regressão linear simples

=b+x1W1+x2W2

Isso pode ser mostrado para qualquer número de camadas, pois a combinação linear de qualquer número de pesos é novamente linear.

O que realmente torna uma rede neural um modelo de classificação não linear?
Como a função de ativação afetará a não linearidade do modelo?
Você pode me explicar?

Alvaro Joao
fonte

Respostas:

18

Acho que você esquece a função de ativação nos nós da rede neural, que não é linear e tornará todo o modelo não linear.

Na sua fórmula não está totalmente correto, onde,

h1w1x1+w2x2

mas

h1=sigmoid(w1x1+w2x2)

onde sigmoid funciona assim,sigmoid(x)=11+ex

insira a descrição da imagem aqui

Vamos usar um exemplo numérico para explicar o impacto da função sigmóide, suponha que você tenha e . Por outro lado, suponha que você tenha , e é quase o mesmo que , que não é linear.sigmóide ( 4 ) = 0,99 w 1 x 1 + w 2 x 2 = 4000 sigmóide ( 4000 ) = 1 sigmóide ( 4 )w1x1+w2x2=4sigmoid(4)=0.99w1x1+w2x2=4000sigmoid(4000)=1sigmoid(4)


Além disso, acho que o slide 14 deste tutorial pode mostrar exatamente onde você cometeu um erro. Para por favor, não o otuput não é -7,65, mas sigmóide ( - 7,65 )H1sigmoid(7.65)

insira a descrição da imagem aqui

Haitao Du
fonte
1
Como a função de ativação afetará a não linearidade do modelo? Você pode me explicar?
Alvaro Joao
3

Você está certo de que várias camadas lineares podem ser equivalentes a uma única camada linear. Como as outras respostas disseram, uma função de ativação não linear permite a classificação não linear. Dizer que um classificador é não linear significa que ele tem um limite de decisão não linear. O limite de decisão é uma superfície que separa as classes; o classificador preverá uma classe para todos os pontos em um lado do limite de decisão e outra classe para todos os pontos no outro lado.

yhwb

y=σ(hw+b)

σ1c

c={0y0.51y>0.5

hW+by

Eu disse anteriormente que o limite de decisão não é linear, mas um hiperplano é a própria definição de um limite linear. Mas, estamos considerando o limite como uma função das unidades ocultas imediatamente antes da saída. As ativações da unidade oculta são uma função não linear das entradas originais, devido às camadas ocultas anteriores e suas funções de ativação não linear. Uma maneira de pensar sobre a rede é que ela mapeia os dados de maneira não linear em algum espaço de recurso. As coordenadas neste espaço são dadas pelas ativações das últimas unidades ocultas. A rede então executa a classificação linear neste espaço (regressão logística, neste caso). Também podemos pensar no limite de decisão em função das entradas originais. Esta função será não linear, como conseqüência do mapeamento não linear de entradas para ativações de unidades ocultas.

Este post do blog mostra algumas figuras e animações interessantes desse processo.

user20160
fonte
1

A não linearidade vem da função de ativação sigmóide, 1 / (1 + e ^ x), onde x é a combinação linear de preditores e pesos que você referenciou na sua pergunta.

A propósito, os limites dessa ativação são zero e um porque o denominador fica tão grande que a fração se aproxima de zero ou e ^ x se torna tão pequeno que a fração se aproxima de 1/1.

Ryan Zotti
fonte