Neurônio artificial: combinação linear + não linearidade
Um neurônio artificial (ou unidade) recebe um vetor de entradas e produz uma saída aplicando dois passos: (1) uma combinação linear (soma ponderada) e (2) uma não linearidade (função de ativação). A forma mais comum de escrever é:
z = w · x + b (pré-ativação)\ny = φ(z) (saída)Onde x é o vetor de entrada, w é o vetor de pesos, b é o viés (bias), · é o produto escalar e φ é a ativação. No perceptron clássico, a ativação é uma função degrau (decisão dura), que transforma a soma ponderada em uma classe.
Componentes e interpretação
- Entrada como vetor:
x = [x1, x2, ..., xd]. Cada componente é uma característica (feature). - Pesos:
w = [w1, w2, ..., wd]. Controlam o quanto cada entrada influencia a decisão. Pesos positivos “puxam” a decisão para um lado; negativos, para o outro. - Produto escalar:
w · x = Σ (wi * xi). Mede alinhamento entrewex: quanto mais alinhados, maior o valor. - Viés (b): desloca a fronteira de decisão sem precisar mudar os pesos. É como um “intercepto” em 2D.
- Limiar de decisão: no perceptron, decide-se a classe comparando
zcom um limiar (tipicamente 0). Ex.:y = 1sez ≥ 0, senãoy = 0.
Perceptron como classificador linear
O perceptron é um neurônio com ativação degrau, usado para classificação binária. Uma forma comum:
z = w · x + b\ny = 1, se z ≥ 0\ny = 0, se z < 0Isso cria uma fronteira de decisão linear: o conjunto de pontos onde z = 0. Em 2D, essa fronteira é uma reta; em dimensões maiores, é um hiperplano.
Exemplo em 2D: reta de separação
Considere x = [x1, x2], w = [w1, w2]. A fronteira é:
- Ouça o áudio com a tela desligada
- Ganhe Certificado após a conclusão
- + de 5000 cursos para você explorar!
Baixar o aplicativo
w1*x1 + w2*x2 + b = 0Se w2 ≠ 0, podemos isolar x2:
x2 = -(w1/w2)*x1 - b/w2Isso mostra que:
- Inclinação da reta depende da razão
-(w1/w2). - Intercepto depende de
-b/w2.
Interpretação geométrica dos pesos (normal do hiperplano)
O vetor de pesos w é perpendicular (normal) à fronteira w·x + b = 0. Isso ajuda a interpretar:
- Alterar a direção de
wgira a reta/hiperplano. - Aumentar a magnitude
||w||(mantendo a direção) torna a transição em termos dezmais “rápida” ao atravessar a fronteira (embora o degrau ainda seja uma decisão dura). - O viés
bdesloca a fronteira ao longo da direção dew.
Margem: distância ao hiperplano
Mesmo no perceptron (decisão dura), é útil pensar em quão “seguro” está um ponto em relação à fronteira. A distância assinada de um ponto x ao hiperplano é:
dist(x) = (w · x + b) / ||w||O sinal indica de que lado do hiperplano o ponto está; o valor absoluto indica quão longe está da fronteira. Pontos com distância pequena estão próximos da decisão e são mais sensíveis a ruído.
Passo a passo prático: calculando a decisão do perceptron
Para classificar um ponto x:
- Calcule o produto escalar:
s = w · x = Σ (wi * xi). - Some o viés:
z = s + b. - Aplique a regra de decisão: se
z ≥ 0, classe 1; caso contrário, classe 0.
Exemplo numérico (2D):
w = [2, -1]\nb = -0.5\n\nPara x = [1, 2]:\ns = 2*1 + (-1)*2 = 0\nz = 0 + (-0.5) = -0.5 => y = 0\n\nPara x = [2, 1]:\ns = 2*2 + (-1)*1 = 3\nz = 3 - 0.5 = 2.5 => y = 1Separação linear: quando o perceptron funciona
Um conjunto de dados é linearmente separável se existe alguma reta (em 2D) ou hiperplano (em dimensões maiores) que separa perfeitamente as duas classes. Nesse caso, o perceptron consegue representar uma regra de decisão que separa as classes, pois sua fronteira é exatamente um hiperplano.
Exemplo geométrico em 2D (separável)
Imagine pontos da classe A concentrados “à esquerda” e pontos da classe B “à direita”. Uma reta vertical (ou levemente inclinada) pode separar os grupos. O perceptron encontra algum w e b que definem uma reta que deixa A de um lado (z < 0) e B do outro (z ≥ 0).
Por que o perceptron falha em padrões não linearmente separáveis
Se não existe uma única reta/hiperplano que separe as classes, o perceptron não consegue resolver o problema, porque sua fronteira de decisão é necessariamente linear.
Exemplo clássico em 2D: padrão XOR
Considere quatro pontos:
| x1 | x2 | classe |
|---|---|---|
| 0 | 0 | 0 |
| 0 | 1 | 1 |
| 1 | 0 | 1 |
| 1 | 1 | 0 |
Geometricamente, as classes ficam em cantos alternados de um quadrado. Qualquer reta que tente separar os pontos de classe 1 inevitavelmente colocará um ponto de classe 0 no mesmo lado. Logo, não há hiperplano que resolva.
Intuição: o XOR exige uma fronteira “dobrada” (não linear), como duas regiões separadas, o que um único perceptron não consegue criar.
Hiperplano em 2D: visualizando a fronteira e o papel de w e b
Em 2D, a fronteira w1*x1 + w2*x2 + b = 0 é uma reta. Para entender o efeito dos parâmetros, observe:
- Mudar b desloca a reta paralelamente (sem mudar a inclinação).
- Mudar a razão w1/w2 altera a inclinação (gira a reta).
- Trocar o sinal de w e b não muda a reta (a equação multiplicada por -1 define o mesmo conjunto de pontos), mas inverte o lado considerado classe 1 vs 0.
Exemplo rápido: se w = [1, 1] e b = -1, a fronteira é x1 + x2 - 1 = 0, isto é, x2 = 1 - x1. Pontos com x1 + x2 ≥ 1 caem na classe 1.
Atividade: cálculo manual da saída do neurônio
Faça os cálculos à mão seguindo os passos (produto escalar, soma do viés, decisão). Use a regra: y = 1 se z ≥ 0, senão y = 0.
Parte A (2D)
Considere w = [1.5, -2] e b = 0.5. Calcule z e y para:
x(1) = [0, 0]x(2) = [1, 0]x(3) = [0, 1]x(4) = [2, 1]
Parte B (interpretação geométrica)
Com os mesmos w e b, encontre dois pontos diferentes que estejam exatamente na fronteira de decisão (isto é, satisfaçam w·x + b = 0). Dica: escolha um valor para x1 e resolva x2.
Parte C (mudança de viés)
Mantenha w = [1.5, -2] e altere o viés para b = -1.5. Recalcule apenas para x(4) = [2, 1] e compare a classe obtida com a Parte A. Explique, em uma frase, o que o viés fez com a decisão.