Documentos de Académico
Documentos de Profesional
Documentos de Cultura
1 1
APLICACIÓN:
DIAGNÓSTICO DE FALLOS EMPLEANDO UNA RED NEURONAL ARTIFICIAL HOPFIELD ANTE DATOS
INCOMPLETOS
En cada caso, hay tres variables, dos clases y cada una de ellas tiene 50 datos, para un total de 100
muestras por cada conjunto de datos.
DISEÑO Y CONFIGURACIÓN DE HOPFIELD
Se utilizó la distancia Euclídea por su sencillez y por ser la distancia más empleada en las redes neuronales
artificiales
DISEÑO Y CONFIGURACIÓN DE PNN
(Probabilistic Neural Network)
Se determinó utilizar para el cálculo de la densidad de probabilidad, el kernel Gaussiano, que constituye el
kernel normal estándar más utilizado. El parámetro de dispersión toma valor entre 0 y 1, por lo que se
seleccionó σ = 0:5 Como el número de neuronas en la capa de entrada coincide con la cantidad de variables
que se midan en el proceso, al igual que Hopfield, PNN tiene tres neuronas en la capa de entrada, en la capa
de datos tiene 100 neuronas, debido a que son 2 clases, constituidas por 50 datos, la capa sumatoria presenta
dos neuronas porque son dos clases las que se diagnostican y la capa de decisión está constituida por una
sola neurona que brinda la clase a la que pertenece el dato de entrada.
DISEÑO DE EXPERIMENTOS
Los resultados obtenidos aplicando el método de validación cruzada se muestran en la Tabla 1, donde para
cada uno de los conjuntos de datos, se obtiene el porciento de error de clasificación de las arquitecturas
empleadas.
Los resultados para el experimento con datos incompletos se muestran en las Tablas 2 para cuando las clases
están separadas y en III cuando están mezcladas, donde para cada uno de estos casos, se obtiene el porciento
de error de clasificación de las arquitecturas ante el 10%, 20% y 30% de pérdida de información. Para el
conjunto 1:
RESULTADOS Y DISCUSIÓN
Teniendo en cuenta los resultados obtenidos en cada experimento, el desempeño de Hopfield ante las diferentes
situaciones que se presentaron es mejor que el de la Red Neuronal Probabilística, presentando buena robustez
ante datos incompletos, siendo esta una característica deseada en un sistema de diagnóstico de fallos. Por lo cual la
red neuronal artificial Hopfield puede ser aplicada con ´éxito al diagnóstico de fallos.
Para futuras investigaciones se desea utilizar otras distancias además de la Euclídea en el mecanismo de
clasificación de Hopfield con el objetivo de comprobar si la distancia empleada afecta o no la clasificación, utilizar
otros métodos para estimar datos incompletos y continuar comparando con otras arquitecturas.
2 2
APLICACIÓN:
RECONOCIMIENTO DE CARÁCTERES
Se desea entrenar una Red de Hopfield bastante sencilla, que sea capaz de reconocer información
(patrones) de imágenes formadas por cuatro pixeles, en una matriz de 2x2. En la figura siguiente se
muestran ejemplos de patrones que podrían utilizarse como entradas a la red:
Los pixeles negros podrían representarse mediante el valor binario 1, y los blancos con el valor binario -1. En
este caso, las informaciones serían dos vectores de cuatro elementos (N = 4) que contienen los valores de los
pixeles. La red, por tanto, tendría 4 neuronas para que cada una reciba el valor de un pixel. Aplicaremos el
algoritmo detallado anteriormente para los patrones de entrada 1 y 2.
Los valores de los vectores de entrada que representan cada patrón son:
El aprendizaje de estas dos informaciones consiste en la obtención de los pesos de la red (matriz W).
Utilizaremos la fórmula
Una vez finalizada la fase de aprendizaje (entrenamiento), la red podría ser utilizada como memoria
asociativa de acceso por contenido, de tal forma, que al presentarle una información más parecida a la
almacenada durante el aprendizaje
Fase de Evaluación:
Por ejemplo, ser podría comprobar lo que ocurre con el patrón de entrada siguiente:
El vector es
Inicialmente, la salida corresponde a la propia información de entrada. Entonces se produce la primera iteración,
obteniéndose las siguientes nuevas entradas en cada neurona:
Si suponemos una función de activación de cada neurona de tipo escalón centrada en el origen (desplazamiento
Ѳ1= 0), la salida de la red después de esta primera iteración será:
Aplicando igualmente la función de activación a este nuevo resultado (segunda iteración de EW), la salida
obtenida es:
Observemos que se repite la salida de la primera iteración, entonces se ha llegado a una situación de estabilidad,
en la que la red ha generado como salida el patrón más parecido al presentado como entrada:
En este ejemplo, para la descripción del aprendizaje se ha utilizado el modelo discreto, la forma de calcular los
pesos para el modelo continuo es similar, si se utiliza la red como memoria asociativa. Si la red se utiliza para
resolver problemas de optimización, el cálculo de los pesos dependerá del problema concreto. Además, en el
modelo continuo se suele considerar la existencia de conexiones auto concurrentes, con lo que no siempre Wii = 0.
3 3
APLICACIÓN:
RED HOPFIELD COMO SOLUCIÓN A PROBLEMAS DE OPTIMIZACIÓN
Supóngase que hay N ciudades: A,B,C,D etc... a visitar y que las distancias entre ellas está dada por el valor dxy
que es la distancia de la ciudad x a la ciudad y .
Un tour posible para el agente viajero se puede representar como un conjunto de N renglones (uno por cada
ciudad) de 0´s y 1´s donde en cada renglón hay un solo 1, el cual indica la posición de esa ciudad en el tour. Un
tour válido tiene sólo un uno por renglón y un uno por columna.
Por ejemplo, suponiendo que el agente debe visitar 4 ciudades A,B,C y D podemos definir a un posible "tour" con
la siguiente matriz:
La cual representa al tour C-A-D-B.
Esta matriz se puede representar en un vector de una
dimensión con N2 elementos. Dicho vector puede
representarse en una red de Hopfield de N2 neuronas.
El objetivo de la red de Hopfield es hacer converger la red
hacia un tour válido en el cual exista la mínima energía
posible. El problema esta entonces en definir ahora que es
la “energía” del sistema.
FUNCIÓN DE ENERGÍA
Podemos notar que la representación escogida del problema establece la restricción que hay un solo uno por renglón y
un sólo uno por columna, Además, sabemos que el objetivo es minimizar la distancia entre ciudades.
Hopfield y Tank definieron la siguiente fórmula de energía que contiene dichas restricciones, que es la siguiente
Donde Vx,y representa la salida de la neurona que muestra que la ciudad x está en la posición y.
En la función se puede notar lo siguiente:
el primer término es cero si y sólo si hay un solo "uno" en cada renglón. De otra manera, el término toma en
valor mayor que cero.
- el 2º término es cero si y sólo si hay sólo un uno en cada columna.
- el 3º término será cero si y sólo si hay exactamente N 1´s en la matriz tour.
- el 4º término representa la longitud un tour válido. Considérese que los subíndices de V están definidos
en términos de módulo n, esto es:
Vj+n =Vj
CÁLCULO DE LA RED
La salida de cada nodo se calcula de la siguiente forma:
Donde x,i representa la entrada de cada neurón. Su valor deberá cambiar de manera que se
reduzca la energía del sistema, este cambio se puede escribir como:
VALORES DE LOS PARAMETROS
A, B, C, D, o, t y deben tomar un valor inicial.
Desgraciadamente la convergencia de la red va a depender de estos valores, los cuales son realmente difíciles de
establecer.
Hopfield y Tank han sugerido que el valor inicial sea: = 1/N añadiendo un poco de ruido para romper la
simetría, esto es:
= + noise(0.1* inicial)
Donde
noise(x) = # al azar entre 0 y x
En algunas pruebas que realizaron Hopfield y Tank utilizaron los siguientes valores: A=1000
B= 1000
D= 1000
= 1.5*N C=0.75*D*N
o= 0.02
t= 1
Dt= 20000
Hopfield y Tank mostraron sus resultados con un experimento con 10 ciudades. De 20 corridas que hicieron, 16
dieron tours válidos y cerca del 50 % de las 50 soluciones fueron de las más cortas halladas por el método
exhaustivo.
APLICACIÓN
DE UNA RED
NEURONAL
BAM
1 1
APLICACIÓN:
EVASIÓN DE OBSTÁCULOS EN UN ROBOT MÓVIL
Estas cuatro reglas se representan como cuatro pares de patrones entrada y salida, que se almacenan sobre una
red neuronal tipo perceptrón. Si se expresan como vectores binarios, tenemos el siguiente conjunto de pares
entrada-salida que cumplen con las cuatro reglas simples anteriores:
El primer termino de X, corresponde al estado del sensor izquierdo y el segundo, al estado del sensor derecho. Los dos
primeros términos de Y corresponden al estado del motor izquierdo y los dos últimos, al estado del motor derecho.
Este perceptrón se puede entrenar de forma grafica,
marcando puntos donde la señal de entrada binaria aplicada
por la columna debe activar alguna salida que se aplica por
la fila en la parte inferior (par entrada-salida). En algunos
casos se marca en el mismo punto y aparece concéntrica la
marca. Esto significa refuerzo de conexión como se propone
Con la información propuesta para entrenar este
comportamiento, la teoría de las redes neuronales impide
caracterizar los cuatro casos anteriores, ya que la clásica
desigualdad siguiente no se cumple:
Se investiga ahora por un método formal que sea útil para entrenar una red de dos capas con patrones de
entrenamiento en procedimiento supervisado, esto con el fin de ser embebido en la memoria y sistema operativo
implementado sobre un popular microcontrolador barato de ocho bits
tipo PIC16F84A. El algoritmo buscado debe adaptarse a la siguiente topología:
• Dos capas.
• Pesos sobre una matriz cuadrada.
• Memorice patrones normales y negados.
• Bidireccional.
El procedimiento seleccionado apunta a una red neuronales asociativas tipo B.A.M. En este tipo de redes los
elementos de ambas capas están interconectados entre si. Las unidades pueden o no tener conexiones de
realimentación consigo mismas.
Sin perder la generalidad de las redes neuronales, en estas arquitecturas tipo B.A.M. hay pesos asociados a las
conexiones entre elementos del proceso. A diferencia de muchas otras arquitecturas, estos pesos se pueden
determinar por anticipado si es posible identificar todos los vectores de entrenamiento.
Se puede tomar el modelo de un asociador lineal para construir la matriz de pesos. Dados L pares de vectores que
constituyen el conjunto de ejemplares que se desean almacenar, se construye la matriz:
En este caso la matriz de pesos es cuadrada y simétrica. Una vez que se ha construido la matriz de pesos, la B.A.M. se
puede emplear para recordar información. De hecho si la información tiene ruido o está incompleta la B.A.M. sería
capaz de completar la información. Para recordar información empleando esta red, se llevan a cabo los pasos
siguientes:
1. Se aplican el par de vectores Xo, Yo a los elementos del proceso de la B.A.M.
2. Se propaga la información de la capa X a la capa Y, y se actualizan los valores de las unidades de la capa.
3. Se vuelve a propagar esta información y se actualiza hasta la capa X, y se actualizan las unidades que se
encuentren allí.
4. Se repiten los pasos 2,3 hasta que no hayan cambios en las unidades de ambas capas.
Este algoritmo da a la B.A.M. la naturaleza bidireccional.
La siguiente ecuación se usa para calcular una matriz que asocia entradas con salidas de acuerdo a la siguiente
expresión:
siendo,
M, la matriz de asociación,
X, el vector fila de entradas,
Y, el vector columna de salida
Los elementos de la matriz representan los pesos de las conexiones de la red. Se realiza el cálculo de la matriz M con los
valores de los cuatro patrones que se deben cumplir en las cuatro reglas de navegación anteriores. Se toman los valores
normales y complementarios para construir un nuevo vector columna o vector ampliado y para el vector fila, se toman los
valores originales propuestos para la salida deseada en la red. Los vectores de entrada siguientes se obtienen colocando en
las filas 2 y 4 los términos negados de las filas 1 y 3. Luego efectuamos el cálculo de las sub-matrices Mi, para cada caso.
Cuando no colisiona avanza adelante
Esta matriz asocia los cuatro comportamientos simples. Dicho en otras palabras, representa el conocimiento o
experiencia que permiten que el robot no colisione. Se hace la prueba de la matriz de asociación M con los cuatro
patrones de entrada y se obtiene lo siguiente:
Usando un limitador duro para detectar números mayores que el peso de la conexión (dos) como función de activación,
se cumple y se concluye que reconoce los cuatro patrones almacenados.
Si el lector compara la topología de esta matriz con la topología de la red neuronal perceptrón de la Figura 3, aprecia
una semejanza muy interesante: Los elementos ceros indican no conexión y el número sobre cada elemento de la matriz
da el peso de la conexión en la red (grado de refuerzo).
Con este razonamiento se ha probado que al tratar de obligar a la red binaria tipo perceptrón, que asocie patrones y sus
complementos, se logra que se comporte como una red tipo B.A.M. Además, al ser particularmente simétrica y
cuadrada, consolidan la transformación a una red
2 2
APLICACIÓN:
Escribir aquí
3 3
APLICACIÓN:
Escribir aquí