el perceptron
Las redes de pre-alimentación con niveles fueron estudiadas por primera vez a finales de la década de los 50 bajo el nombre de perceptrones. Si bien se sometieron a estudio redes de todos los tamaños y topologías, el único elemento de aprendizaje efectivo en esa época fueron las redes de un solo nivel. Actualmente el término perceptrón es sinónimo de una red de pre-alimentaciónde un solo nivel.
Una de las características importantes de esta red es que aunque es capaz de resolver problemas interesantes, existe un grupo importante de problemas que no puede resolver.
El ‘Perceptrón’ y la Separabilidad Lineal
El perceptrón fue el primer modelo de red neuronal artificial desarrollado en 1958 por Rosenblatt. Despertó un enorme interés enlos años 60 debido a su capacidad para aprender a reconocer patrones sencillos.
Está formado por varias neuronas para recibir las entradas a la red y una neurona de salida que es capaz de decidir cuándo una entrada a la red pertenece a una de las dos clases que es capaz de reconocer.
La gran limitante del perceptrón es que sólo se puede usar para problemas de clasificación que sean separableslinealmente en la salida. Esto lo vamos a explicar a detalle pero primero vamos a requerir de unas definiciones:
Un hiperplano es un objeto de dimensión n-1 que actúa en un espacio de dimensión n.
En general, un perceptrón de n entrada puede ejecutar cualquier función que está definida por un hiperplano que corte el espacio de dimensión n.
Siendo Ɵ el valor del umbral.
Entrenamiento.
Hemosdeducido que las variables que definen la convergencia de la ‘red’ son el vector de pesos (w1, w2) y el valor del umbral. Estas variables son de distinta naturaleza por lo que habría que buscar métodos apropiados para encontrar los valores de convergencia para cada una. Sin embargo esto se puede facilitar si reordenamos nuestras ecuaciones de la siguiente manera, tomando el caso bidimensional:En este caso podemos pensar que existe otra entrada x3 fija a 1 y que se tiene un peso ‘theta’ por definir. Así, se puede diseñar un algoritmo de entrenamiento que sólo considere buscar los pesos adecuados para la convergencia, y se tiene:
Representación y álgebra vectorial.
Para entender mejor el procedimiento de entrenamiento, vamos a introducir un sistema de representación vectorialdel problema.
Nuestra ecuación:
Se puede representar en términos vectoriales de la siguiente manera:
La parte izquierda de la ecuación es el producto punto entre dos vectores, lo cual tiene implicaciones gráficas muy ilustrativas en este caso. En pocas palabras el producto punto es una indicación de que tan alineados están los vectores el uno con el otro.
Análisis delresultado del producto punto, vectorialmente.
El entrenar a una neurona, como hemos visto, consiste en ajustar los valores de los pesos (o el vector de pesos) y el valor del umbral de tal manera que se realice la clasificación deseada. Para la neurona a entrenar,
Haciendo w× x = 0 define el hiperplano de decisión. Este plano es ortogonal al vector de pesos que ahora incluye la adición delvalor de umbral.
En términos vectoriales, el conjunto de entrenamiento de la neurona, consiste de un conjunto de pares {v,t}, donde v es un vector de entrada y t es la clase deseada o salida (‘1’ o ‘0’) a la que v pertenece. Este tipo de entrenamiento es de tipo supervisado porque se indica cual es el valor deseado de la salida de la red. Supongamos, en un primer caso, que se tiene un vectorinicial de pesos, w, con el cual la salida es ‘0’, y que el valor de la salida deseada para esta entrada es ‘1’. De acuerdo con las ecuaciones de arriba, para producir un ‘0’ la activación debió haber sido negativa cuando tenía que ser positiva. Aquí se tiene el caso de la figura c). Para corregir este problema, se debe afectar el vector de pesos de tal manera que quede apuntando más hacia el...
Regístrate para leer el documento completo.