Você está na página 1de 5

INSTITUTO POLITECNICO NACIONAL

ESCUELA SUPERIOR DE INGENIERIA MECANICA Y ELECTRICA


UNIDAD CULHUACAN


Maestra en Ciencias de Ingeniera en Microelectrnica

MATERIA: Redes Neuronales VLSI

PRACTICA 2 MEMORIA ASOCIATIVA LINEAL (LAM)

Mondragn de la Luz Francisco Jess














INTRODUCCION

En 1972, el articulo Correlation matrix memories escrito por Kohonen introdujo
el primer modelo de memoria asociativa basado en un asociador lineal Kohonen. En este
modelo la informacin era almacenada en una matriz por medio de correlaciones
(productos). Este mtodo bsicamente sustituyo la matriz de aprendizaje de Steinbuch por
una matriz de correlacin entre patrones en la siguiente figura se muestra el trabajo original
de Kohonen.


Ese mismo ao, el neurofisilogo James A. Anderson escribi el artculo A simple
neural network generating an interactive memory. Al igual que el modelo de Kohonen,
Anderson asumi que las parejas de patrones eran lo suficiente ortogonales entonces, dado
un patrn de entrada, el patrn de salida podra ser reconstruido por medio de un simple
producto entre la matriz de aprendizaje y el patrn de entrada.

En general, en ambos modelos se proponen una generalizacin de la regla de Hebb.
Segn Anderson, el cambio de una valor sinptico era proporcional al producto entre las
actividades pre-sinpticas y pos-sinpticas. Segn Kohonen el cambio de una valor
sinptico era proporcional a la correlacin entre el patrn de entrada y salida.

Tambin en este ao, Kaoru Nakano introduce otro modelo asociativo en su articulo
Associatron a model of association memory. En este modelo, varios patrones
representados por entidades son almacenados en una misma regin y cada entidad puede
ser recuperada a partir de cualquier parte de la entidad. Entre ms partes de una entidad
estimulen a la memoria asociativa, la calidad del patrn recuperado ser mejor. Este
modelo se basare funciones de auto-correlacin. Para evitar tener una matriz por cada
asociacin almacenada, Nakano propone una memoria comn para todas las asociaciones
asumiendo que estas son sumas que forman una sola matriz de aprendizaje.

Una red de memoria asociativa es matemticamente un mapeado de un espacio de
entrada sobre uno de salida. Las redes de memoria asociativa se pueden usar tanto para las
aplicaciones auto asociativas como para las heteroasociativas. En las aplicaciones auto
asociativas la dimensin del espacio de entrada es igual al de salida. En las aplicaciones
heteroasociativas la dimensin del espacio de entrada y del espacio de salida son en general
diferentes. Los valores de entrada y de salida pueden ser reales o binarios.

Una LAM es una red de una capa de propagacin. La LAM se deriva de un conjunto
de pares de patrones de entrada/salida *

+. Aqu la entrada
es

y la salida es

. El objetivo de la LAM es
recuperar el patrn de salida basado en la informacin total o parcial del patrn de entrada.


Si las entradas son binarias (1/0), entonces los elementos de la matriz de pesos W, de N x K
dimensiones, que se calculan como:

)(


Esta frmula permite que la condicin de ortogonalidad sea impuesta ms apropiadamente.
Para producir una salida binaria, los elementos del vector

se ajustan primero por sus


umbrales respectivos:


Luego son procesados por alguna unidad no lineal en los nodos de salida. Si el valor
ajustado es positivo entonces la salida ser 1, de cualquier otro modo, ser 0.


OBJETIVO

Analizar y comprender el funcionamiento de la memoria asociativa lineal (LAM),
para hacer un programa en matlab usando la (LAM) para identificar colores por medio de
un vector binario.

DESARROLLO

CODIGO
clc,clear all;
numpat=input('tecle el numero de patrones deseanentrenar: ');
for i=1:numpat
ent(i,:)=input('teclea la entrada en corchetes: ');
sal(i,:)=input('teclea la salida en corchetes: ');
end
lon=length(ent(1,:));
acu=zeros(lon,lon);
for z=1:numpat
vecent=(ent(z,:));
vecsal=(sal(z,:));
for j=1:lon
for k=1:lon
w(j,k)=(((2*vecent(j))-1)*((2*vecsal(k))-1));
end
end
acu=acu+w;
end
wfin=acu;
theta=-.5*sum(acu');
for l=1:numpat
we=ent(l,:)*wfin;
y(l,:)=hardlim(we'+theta')
end

IMPLEMENTACION
El programa que se muestra a continuacin simula una pequea base de datos, el
cual tiene 8 pares de vectores donde los vectores de entrada representan un nmero
asignado a ese nmero a continuacin se presentan los diferentes pares de vectores:
NUMERO (entrada) COLOR (salida)
0->[0 0 0 0] Rojo->[1 0 0 0]
1->[0 0 0 1] Azul->[1 0 0 1]
2->[0 0 1 0] Naranja->[1 0 1 0]
3->[0 0 1 1] Caf->[1 0 1 1]
4->[0 1 0 0] Negro->[1 1 0 0]
5->[0 1 0 1] Rosa5->[1 1 0 1]
6->[0 1 1 0] Gris->[1 1 1 0]
7->[0 1 1 1] Morado->[1 1 1 1]
PROGRAMA
clc,clear all;
ent=[0 0 0 0;0 0 0 1;0 0 1 0;0 0 1 1;0 1 0 0;0 1 0 1;0 1 1 0;0 1 1 1];
sal=[1 0 0 0;1 0 0 1;1 0 1 0;1 0 1 1;1 1 0 0;1 1 0 1;1 1 1 0;1 1 1 1];
lon=length(ent(1,:));
acu=zeros(lon,lon);
for z=1:length(ent);
vecent=(ent(z,:));
vecsal=(sal(z,:));
for j=1:lon
for k=1:lon
w(j,k)=(((2*vecent(j))-1)*((2*vecsal(k))-1));
end
end
acu=acu+w;
end
wfin=acu;
theta=-.5*sum(acu');
for l=1:length(ent);
we=ent(l,:)*wfin;
y(l,:)=hardlim(we'+theta');
end
com=input('teclea el codigo del color en corchetes: ');
ya=com*wfin;
ya=hardlim(ya'+theta');
if y(1,:)==ya'
disp('"el color es rojo"')
elseif y(2,:)==ya'
disp('"el color es azul"')
elseif y(3,:)==ya'
disp('"el color es naranja"')
elseif y(4,:)==ya'
disp('"el color es cafe"')
elseif y(5,:)==ya'
disp('"el color es negro"')
elseif y(6,:)==ya'
disp('"el color es rosa"')
elseif y(7,:)==ya'
disp('"el color es gris"')
elseif y(8,:)==ya'
disp('"el color es morado"')
end

RESULTADOS


CONCLUSIONES

La memoria de asociacin lineal (LAM) correlaciona pares de vectores binarios
creando una matriz pesos en la cual va contenida la informacin de los pares de vectores,
de este modo usando las entradas y la matriz se puede hallar las salidas, una aplicacin que
puede tener seria en la codificacin de informacin ya que se pueden enviar las entradas y
la matriz para que pueda ser decodificada por el receptor.

BIBLIOGRAFIA

M en C. Roberto Antonio Vzquez Espinoza de los Monteros. Un modelo de memoria
asociativa dinmica basada en aspectos neurolgicos. Mxico D.F. 2009. 242p.
http://www.elprisma.com/apuntes/ingenieria_de_sistemas/redesneuronales/default3.asp
http://www.gc.ssr.upm.es/inves/neural/ann2/unsupmod/fixweigh/ffamn.htm

Você também pode gostar