2.1 PERCEPTRÓN

2.1.3 Regla de aprendizaje: El Perceptrón es un tipo de red de aprendizaje supervisado, es decir necesita conocer los valores esperados para cada una de las entradas presentadas; su comportamiento está definido por pares de esta forma:

(2.1.5)

Cuando pes aplicado a la red, la salida de la red es comparada con el valor esperado t, y la salida de la red esta determinada por:

(2.1.6)

Los valores de los pesos determinan el funcionamiento de la red, estos valores se pueden fijar o adoptar utilizando diferentes algoritmos de entrenamiento de la red.

Como ejemplo de funcionamiento de una red neuronal tipo Perceptrón, se solucionará el problema de la función OR, para esta función la red debe ser capaz de devolver a partir de los cuatro patrones de entrada, a qué clase pertenece cada uno; es decir para el patrón 00 debe devolver la clase cero y para los restantes la clase 1, según la gráfica 2.1.5

Figura 2.1.5 Función OR

Para este caso las entradas a la red serán valores binarios, la salida de la red esta determinada por

(2.1.7)

Si w1p1+w2p2es mayor que 0 la salida será 1, en caso contrario la salida será –1 (función escalón unitario). Como puede verse la sumatoria que se le pasa a cada parámetro (entrada total) a la función hardlim (función de salida o de transferencia) es la expresión matemática de una recta, donde w1y w2son variables y p1 y p2son constantes. En la etapa de aprendizaje se irán variando los valores de los pesos obteniendo distintas rectas, lo que se pretende al modificar los pesos de las conexiones es encontrar una recta que divida el plano en dos espacios de las dos clases de valores de entrada, concretamente para la función OR se deben separar los valores 01, 10, y 11 del valor 00; la red Perceptrón que realiza esta tarea y la gráfica característica pueden observarse en la figura 2.1.6 allí puede verse como las posibles rectas pasarán por el origen de coordenadas, por lo que la entrada 00 quedará sobre la propia recta.

Figura 2.1.6 Perceptrón aplicado a la función OR

Se aplicará este método para resolver también el problema de la función AND, el cual se describe en la siguiente figura

Figura 2.1.7 Espacio de salida de una compuerta AND

Analizando el comportamiento de la AND se llega a la conclusión de que es imposible que una recta que pase por el origen, separe los valores 00,01 y 10 del valor 11, por lo que se hace necesario introducir un término independiente para realizar esta tarea, a este término se le da el nombre de ganancia y se representa por la letra b, al cual por lo general se le asigna un valor inicial de 1 y se ajusta durante la etapa de aprendizaje de la red; este nuevo término permite desplazar la recta del origen de coordenadas dando una solución para el caso de la función AND y ampliando el número de soluciones de la función OR

Ahora la salida de la neurona esta dada por

(2.1.8)

Las soluciones obtenidas para las funciones AND y OR se observan en la figura 2.1.8

Figura 2.1.8 Solución para una función AND y una OR

En el proceso de entrenamiento el Perceptrón se expone a un conjunto de patrones de entrada y los pesos de la red son ajustados de forma que al final de entrenamiento se obtengan las salidas esperadas para cada unos de esos patrones de entrada.

El algoritmo de entrenamiento del Perceptrón puede resumirse en los siguientes pasos:

  1. Se inicializa la matriz de pesos y el valor de la ganancia, por lo general se asignan valores aleatorios a cada uno de los pesos wi y al valor b

  2.  
  3. Se presenta el primer patrón a la red, junto con la salida esperada en forma de pares entrada/salida
  4. Se calcula la salida de la red por medio de

  5.  

     
     
     

(2.1.9)

donde f puede ser la función hardlim o hardlims

    Cuando la red no retorna la salida correcta, es necesario alterar el valor de los pesos, tratando de llevarlo hasta p y así aumentar las posibilidades de que la clasificación sea correcta, una posibilidad es adicionar p a w haciendo que el vector w apunte en la dirección de p, y de esta forma después de repetidas presentaciones de p a la red, w se aproximará asintoticamente a p; este es el procedimiento adoptado para la regla de aprendizaje del Perceptrón.
El proceso de aprendizaje del Perceptrón puede definirse en tres reglas, las cuales cubren la totalidad de combinaciones de salidas y sus correspondientes valores esperados. Estas reglas utilizando la función de transferencia hardlim, se expresan como sigue:

(2.1.10)

(2.1.11)

(2.1.12)

Las tres condiciones anteriores pueden ser escritas en forma compacta y generalizarse para la utilización de las funciones de transferencia hardlimo hardlims, generalización que es posible introduciendo el error en las reglas de aprendizaje del Perceptrón:

(2.1.13)

Por lo tanto:

(2.1.14)

(2.1.15)

(2.1.16)

En una sola expresión la ley puede resumirse así:

(2.1.17)

Y extendiendo la ley a las ganancias

(2.1.18)

Para ilustrar la regla de aprendizaje del Perceptrón, se dará solución al problema de clasificación de patrones ilustrado en la figura 2.1.9

Figura 2.1.9 Patrones de entrenamiento




En este caso las salidas toman valores bipolares de 1 o –1, por lo tanto la función de transferencia a utilizar será hardlims. Según la dimensiones de los patrones de entrenamiento la red debe contener dos entradas y una salida.

Figura 2.1.10 Red Perceptrón que resolverá el problema de clasificación de patrones

Para decidir si una red tipo Perceptrón puede aplicarse al problema de interés, se debe comprobar si el problema es linealmente separable, esto puede determinarse gráficamente de la figura 2.1.9, en donde se observa que existe un gran número de líneas rectas que pueden separar los patrones de una categoría de los patrones de la otra, el siguiente paso es asumir arbitrariamente los valores para los pesos y ganancias iniciales de entrada a la red; el proceso terminará cuando se hayan obtenido los pesos y ganancias finales que permitan a la red clasificar correctamente todos los patrones presentados.

Los valores iniciales asignados aleatoriamente a los parámetros de la red son:

Con base en el procedimiento descrito anteriormente, el proceso de aprendizaje de la red es el siguiente:

La red clasificara los patrones de entrenamiento según la característica de decisión mostrada en la figura 2.1.11, la cual depende de los valores de los pesos y ganancias iniciales.

Interceptos con los ejes: 

Figura 2.1.11 Clasificación de los patrones de acuerdo a la iteración 0


Como puede verse, la característica de decisión es ortogonal al vector de pesosW. La red clasifica incorrectamente los patrones p1, p3 yp4; en esta iteración; a continuación presentamos a la red el patrón de entrenamiento p1.

De la iteración 0p1estaba mal clasificado, la actualización de pesos permite que este patrón sea clasificado correctamente.

La iteración 1 lleva a la característica de decisión de la figura 2.1.12

Interceptos con los ejes: 

Como se observa el patrón de entrenamientop1 ha sido clasificado correctamente, y casualmente los patronesp2 y p3fueron correctamente ubicados, pues aun no han sido presentados a la red.

Figura 2.1.12 Característica de decisión de la iteración 1


Se presenta p2a la red, y es clasificado correctamente, como se observo gráficamente

Este patrón ha sido clasificado correctamente y por lo tanto no hay actualización del set de entrenamiento

Se presenta p3a la red y es clasificado correctamente, como se observó gráficamente

Como se esperaba, no hubo error en la clasificación de este patrón, y esto lleva a que no haya actualización de los pesos de la red

Se presenta a la redp4,

La red ha clasificado incorrectamente este patrón y por lo tanto deben modificarse pesos y ganancias

En esta iteración la red se comportara de acuerdo a la característica de decisión de la figura 2.1.13

Interceptos con los ejes:

Figura 2.1.13 Característica de decisión final

De la figura 2.1.13 se observa que la red ha clasificado correctamente los patrones de entrenamiento, después de entrenada la red con los pesos y ganancias finales, cualquier otro valor de entrada será clasificado según la característica de decisión mostrada.

Es de importancia notar que en este caso los patrones de entrada se encuentran en dos dimensiones y por lo tanto es fácil determinar gráficamente cuando han sido clasificados correctamente, en el caso que los patrones se encuentren en tres dimensiones esta visualización se dificulta y en el caso de que los patrones sean de orden superior la visualización resulta imposible; para estos casos se debe comprobar matemáticamente que el error correspondiente a cada patrón de entrenamiento para los pesos finales es nulo.