Perceptron — Guia

La neurona artificial: donde el aprendizaje encuentra la geometria
Abrir simulacion
Una neurona = un clasificador lineal
Que es un Perceptron?

El Perceptron es el modelo mas simple de neurona artificial: una funcion que traza una linea (o hiperplano) para dividir el espacio en dos regiones. Es un clasificador binario que aprende de ejemplos.

Clasificador binario Frontera lineal Aprendizaje supervisado Rosenblatt 1957

La intuicion geometrica

El perceptron encuentra una linea que separa puntos rojos de azules. Los pesos determinan la orientacion de la linea. El bias la desplaza. La "receta" de la linea se ajusta con cada error hasta que clasifica correctamente.

Que observar

  • La linea de decision rota y se desplaza.
  • Cada error causa un ajuste visible.
  • La convergencia depende de la separabilidad.
  • XOR es el enemigo clasico del perceptron.

Regla de aprendizaje del Perceptron

El perceptron ajusta sus pesos solo cuando se equivoca:

Si y_pred != y_real:
  w = w + α * y_real * x
  b = b + α * y_real

donde α = learning rate (tasa de aprendizaje)

Intuicion: Si clasificamos un punto rojo como azul, "empujamos" la linea hacia el lado rojo. El learning rate controla la magnitud del empujon.

Teorema de convergencia

Datos linealmente separablesConverge siempre
Datos NO separablesOscila infinitamente

Novikov 1962: Si existe un hiperplano que separa las clases, el perceptron lo encontrara en un numero finito de pasos. El numero de errores esta acotado por (R/γ)² donde R = radio de los datos, γ = margen de separacion.

Geometria de la frontera

La ecuacion w·x + b = 0 define la frontera de decision:

  • w es el vector normal a la frontera (perpendicular)
  • b controla la distancia al origen
  • Cambiar w rota la linea
  • Cambiar b la desplaza paralelamente

En 2D la frontera es una linea. En 3D, un plano. En n dimensiones, un hiperplano de n-1 dimensiones.

El problema XOR: limites fundamentales

El XOR no es linealmente separable:

  • (0,0) → 0  y  (1,1) → 0   (clase 0)
  • (0,1) → 1  y  (1,0) → 1   (clase 1)

No existe ninguna linea recta que separe las clases 0 y 1. Esta limitacion, demostrada por Minsky y Papert (1969), casi mato el campo de redes neuronales por decadas.

XOR requiere no-linealidad
Laboratorio

Experimentos guiados

Cada experimento revela un aspecto del aprendizaje del perceptron.

1

Aprendiendo AND y OR

Hipotesis: El perceptron puede aprender las funciones logicas AND y OR porque son linealmente separables.

  1. Coloca puntos para la funcion AND: (0,0)→azul, (0,1)→azul, (1,0)→azul, (1,1)→rojo
  2. Entrena el perceptron — observa cuantas epocas toma
  3. Verifica que la linea separa correctamente
  4. Ahora reconfigura para OR: solo (0,0)→azul, resto→rojo
  5. Compara: cual es mas facil de separar?

AND requiere que la linea este cerca de la esquina (1,1). OR requiere que este cerca de (0,0). Ambas son separables, pero las lineas optimas son muy diferentes.

AND y OR convergen siempre
2

El fracaso con XOR

Hipotesis: El perceptron nunca convergera para XOR porque ninguna linea puede separar las clases.

  1. Coloca los 4 puntos XOR: (0,0)→azul, (1,1)→azul, (0,1)→rojo, (1,0)→rojo
  2. Entrena el perceptron durante 100+ epocas
  3. Observa como la linea oscila sin converger
  4. Detente y analiza: que puntos estan siempre mal clasificados?
  5. Dibuja mentalmente: existe alguna linea que funcione?

El perceptron entra en un ciclo: corrige un error, causa otro. Los puntos diagonalmente opuestos estan en la misma clase, pero no son "vecinos" — imposible de separar linealmente.

XOR oscila indefinidamente
3

El efecto del learning rate

Hipotesis: Un learning rate muy alto causa oscilaciones, uno muy bajo hace la convergencia lenta, pero ambos eventualmente convergen si los datos son separables.

  1. Crea un dataset linealmente separable (ej: dos clusters alejados)
  2. Entrena con learning rate = 0.01 — cuenta epocas
  3. Reinicia y entrena con learning rate = 1.0
  4. Observa: cual converge mas rapido? cual oscila mas?
  5. Prueba learning rate = 0.001 — que pasa?

El learning rate es un hiperparametro. No se aprende de los datos — tu lo eliges. Este balance entre velocidad y estabilidad aparece en todo machine learning.

Regla practica: Empieza con α=0.1. Si oscila, reduce. Si es muy lento, aumenta.

Probar en la simulacion
Conexiones con EigenLab

El perceptron en contexto

La neurona artificial conecta con modelos de toda la ciencia.

La neurona biologica: el modelo original

El perceptron es una simplificacion extrema de la neurona real. Las dendritas reciben senales (entradas), el soma las integra (suma ponderada), y el axon dispara si supera el umbral (funcion signo). El modelo de Hodgkin-Huxley captura la dinamica real; el perceptron captura la esencia.

Simulacion relacionada: Neurona — potencial de accion con ecuaciones diferenciales.

Compuertas logicas: el perceptron como hardware

Un perceptron puede implementar AND, OR y NOT pero no XOR. Las compuertas logicas son "perceptrones fijos" — no aprenden, estan pre-programados. La equivalencia revela que el perceptron tiene el mismo poder expresivo que los circuitos sin memoria.

Simulacion relacionada: Logic Gates — construye AND y OR con compuertas, luego comparalos con el perceptron.

Seleccion natural: aprendizaje por retroalimentacion

El perceptron ajusta pesos basandose en errores — retroalimentacion negativa. La seleccion natural "ajusta" genotipos basandose en fitness. Ambos son algoritmos de optimizacion iterativa: probar, evaluar, corregir. El algoritmo genetico es la version estocastica y paralela del perceptron.

Simulacion relacionada: Algoritmo Genetico — optimizacion por seleccion.

Equilibrio de Le Chatelier: sistemas que se corrigen

Cuando un sistema quimico en equilibrio es perturbado, se ajusta para contrarrestar la perturbacion. El perceptron hace lo mismo: un error causa un ajuste que reduce el error. Ambos son sistemas con realimentacion negativa que buscan un punto estable.

Simulacion relacionada: Le Chatelier — equilibrio quimico como optimizacion.

Limitaciones

Donde falla el perceptron

La solucion historica: Redes multicapa (MLP) con backpropagation (1986) resolvieron XOR y mucho mas. Cada capa agrega no-linealidad, permitiendo fronteras arbitrariamente complejas.

Historia

Del hype al invierno y de vuelta

El perceptron es ahora el "Hello World" del machine learning: simple, instructivo, y punto de partida para todo lo demas.

Preguntas para reflexionar

  1. El perceptron ajusta pesos cuando se equivoca. Que pasaria si tambien ajustara cuando acierta (refuerzo positivo)?
  2. XOR requiere al menos 2 perceptrones en una capa oculta. Como se conectarian para resolver el problema?
  3. El teorema de convergencia garantiza que el perceptron encuentra una solucion, pero no la "mejor". Como definirias "mejor"?
  4. Las neuronas biologicas tienen miles de sinapsis y dinamicas temporales. Que simplificaciones hace el perceptron y que se pierde?