Você está na página 1de 5

Captulo 5

Redes Neuronales II:


Mapas autoorganizados

5.1. Introduccion
En este ejercicio vamos a intentar obtener una representacion simplicada
en dos dimensiones de un conjunto de datos multidimensional. En realidad,
la reduccion de dimensiones va a ser pequena (de cuatro a dos) puesto que
partimos de un problema sencillo, pero el metodo seguido es valido en general
para cualquier dimensionalidad de partida.
Hemos de recordar aqu que la construccion de un mapa bidimensional au-
toorganizado se realiza comparando los vectores de atributos de cada instancia
con los vectores de pesos de las neuronas que componen el mapa y modican-
do el vector de pesos de la neurona mas proxima al vector de entrada y los
de sus vecinas de forma que se aproximen aun mas a dicho vector de entrada.
Toda esta denicion (redundante para mayor claridad) indica que los conceptos
de proximidad y distancia son centrales en el algoritmo de construccion. En
primer lugar se selecciona la neurona mas proxima para actualizar sus pesos.
La neurona mas proxima es aquella cuyo vector de pesos se encuentra a menor
distancia del vector de entrada. Como se mide esa distancia? Tradicionalmente
se ha empleado la distancia eucldea: dados dos vectores de n componentes cada
uno x y y , la distancia eucldea entre ellos esta denida como

(y1 x1 )2 + (y2 x2 )2 + ... + (yn xn )2 (5.1)

Antes de describir los datos de partida de esta practica, intente contestar a


esta pregunta: son parecidos los vectores de dos componentes (10, 1) y (3, 34)?
y los vectores (10, 1) y (9.9999, 1.0001)? y los vectores (10,1) y (100,10)? La
respuesta a esta ultima pregunta le ayudara a entender el ultimo apartado de
la practica.
Comenzamos el ejercicio con una base de datos obtenida del Sloan Digital
Sky Survey (SDSS). El SDSS es un proyecto que pretende observar una cuarta

33
34CAPITULO 5. REDES NEURONALES II: MAPAS AUTOORGANIZADOS

parte del cielo con un telescopio robotico, almacenando las observaciones de


todos los objetos astronomicos que encuentre. Nuestra base de datos contiene
solo una seleccion de los millones de objetos que actualmente forman parte de
la base de datos del SDSS: 419 cuasares y 1883 enanas blancas de dos tipos,
1731 de tipo A y 154 de tipo B. Los cuasares son galaxias (es decir, conjuntos
de cientos de miles de millones de estrellas) lejanas que albergan un agujero
negro muy masivo en su interior, mientras que las enanas blancas los nucleos
de estrellas que han agotado sus vidas y que han expulsado sus capas externas
al espacio interestelar. Por supuesto la base de datos del SDSS contiene muchos
millones de objetos que no son ni cuasares ni enanas blancas: simplemente hemos
generado una mini-base de datos con el proposito de ilustrar el empleo de los
mapas autoorganizados.
El chero de partida, sdss.dat, contiene las 2304 instancias con 7 atributos:
1. La ascension recta y la declinacion: son las dos coordenadas que nos in-
dican la posicion del objeto en el cielo. Para que os resulte mas facil de
entender, son como la latitud y la longitud que empleamos para dar la
posicion de un punto sobre la esfera terrestre pero, en este caso, la esfera
es la esfera celeste.
2. Las magnitudes u,g,r,i,z. Una magnitud es una medida del brillo de una
estrella. Para cada color podemos medir una magnitud que nos dice si un
objeto emite mucha o poca energa en ese color particular. En el SDSS
tenemos medidas del brillo de los objetos en cinco colores o bandas espec-
trales: u, g, r, i y z, cada una con su color asociado.
3. Una etiqueta que nos indica la clase de cada objeto: QSO para cuasar,
WDA para el tipo A de enanas blancas y WDB para el tipo B.
En problemas de agrupamiento o clustering no se tiene por lo general infor-
macion de clase. En este ejercicio hemos incluido esa informacion en el ultimo
atributo con el n de que podamos comprobar visualmente la bondad de nue-
stros mapas.
Para la interpretacion de los ejercicios que os proponemos a continuacion es
importante que recordeis los siguientes puntos. La informacion que os ofrecemos
a continuacion procede del experto en el campo (un astronomo) y evidencia la
importancia de no realizar minera de datos a ciegas, sino tras un estudio lo mas
exhaustivo posible de los datos que se manejan. Los puntos que debeis recordar
son:

1. Las coordenadas de ascension recta y declinacion de un objeto no nos


dicen nada de importancia respecto a la naturaleza de ese objeto. Tanto
los cuasares como las enanas blancas pueden tener cualquier posicion sobre
la esfera celeste.
2. Los errores en las medidas de las magnitudes u, g, r, i y z tampoco son
relevantes para caracterizar un objeto. Solo dependen de si el objeto es
brillante o debil.
5.2. OBJETIVOS 35

3. Las magnitudes en s mismas tampoco son utiles para caracterizar los


objetos. Un cuasar brillante y lejano puede tener la misma magnitud que
una enana blanca debil pero proxima. Entonces os preguntareis, que nos
queda de interes para analizar nuestras instancias? La respuesta es la resta
de las magnitudes. Las magnitudes en s mismas no son utiles, pero las
restas g u, r g, i r y z i s son caractersticas de cada tipo de objeto.

As pues, con estos conocimientos, vamos a intentar realizar un mapa de


nuestros datos. Partimos de un conjunto de 12 atributos mas la clase y vamos
a terminar con un mapa bidimensional de los datos.

5.2. Objetivos
Este apartado pretende ensenar al alumno mediante un ejemplo real el mane-
jo de aplicaciones para la generacion de mapas autoorganizados y la importancia
del conocimiento previo de los datos para el diseno de un preprocesado adecua-
do. Para ello, se le pedira que repita la construccion de un mapa autoorganizado
a partir de datos cada vez mejor procesados y que compare los mapas obtenidos
a partir de las diferentes etapas del preprocesado.

5.3. Material
1. El simulador neuronal SOM PAK

2. Los cheros sdss*.dat

5.4. Actividades
1. Construir el mapa autoorganizado de los datos originales (chero sdss.dat).
Para ello,

a) Comience generando 20 mapas autoorganizados con distintas inicial-


izaciones mediante el comando vnd y los siguientes parametros:
Number of trials: 20
Give the input data file name:sdss.dat
Give the input test file name:sdss.dat
Give the output map file name:sdss.map
Give the topology type:hexa
Give the neighborhood type:gaussian
Give the x-dimension:8
Give the y-dimension:4
Give the training length of first part:
Give the training rate of first part:0.05
Give the radius in first part:15
36CAPITULO 5. REDES NEURONALES II: MAPAS AUTOORGANIZADOS

Give the training length of second part:


Give the training rate of second part:0.02
Give the radius in second part:3
Rellene los campos

Give the training length of first part:


Give the training length of second part:
de manera que realice 100 pasadas completas del conjunto de entre-
namiento en el primer caso y 1000 en el segundo.
Anote el error de cuantizacion del mejor mapa obtenido.
b) Calcule una calibracion del mejor mapa resultante (almacenado en
sdss.map) empleando las etiquetas que contiene sdss.dat:
vcal -din sdss.dat -cin sdss.map -cout sdss.lmap -numlabs 2
c) Genere el chero postscript encapsulado con la codicacion en gris
de las distancias entre los vectores de pesos de cada neurona y los de
sus vecinas.
umat -cin sdss.lmap > sdss.eps

2. Repita los pasos del apartado anterior con el chero sdss-magnitudes.dat


que contiene solo las columnas de sdss.dat correspondientes a las magni-
tudes (esto es, se han eliminado de sdss.dat las dos primeras columnas cor-
respondientes a la ascension recta y la declinacion. Puede realizar esta op-
eracion mediante el ltro java weka.lters.unsupervised.attribute.Remove
-R 1-2 . Para poder leer los cheros en Weka debera generar la correspon-
diente cabecera en estilo ar.
3. Repita los pasos del apartado anterior con el chero sdss-restas.dat obtenido
a partir de sdss-magnitudes.dat restando las columnas $2-$1, $3-$2,$4-$3
y $5-$4. Puede realizar la primera de estas operaciones mediante el ltro
java weka.lters.unsupervised.attribute.AddExpression -E a2-a1 -N g-u
4. Repita los pasos del apartado anterior con el chero sdss-norm.dat obtenido
a partir de sdss-restas.dat normalizando los vectores de atributos de ca-
da instancia. Puede realizar esta operacion mediante el ltro java we-
ka.lters.unsupervised.attribute.instance.Normalize -N 1.0 -L 2.0. Reptalo
tambien con el chero sdss-std-norm.dat obtenido a partir de sdss-restas.dat
aplicando una estandarizacion de cada atributo y normalizando el resul-
tado.
5. Modique el tamano del mapa y aumentelo hasta 50 unidades horizontales
y 20 verticales. Que ocurre con el mapa resultante?
6. Aumente el valor de la tasa de aprendizaje (training rate) en las dos fases
de construccion del mapa por separado y describa cualitativamente los
cambios en el mapa obtenido. No supere el valor de 1.0.
5.5. CONCLUSIONES 37

7. Aumente el tamano de la vecindad inicial de la neurona ganadora (neu-


ronas proximas a aquella cuyo vector de pesos esta mas proximo al vector
de entrada) en las dos fases por separado y describa cualitativamente los
cambios en el mapa obtenido.

5.5. Conclusiones
Los mapas autoorganizados son herramientas utiles para el analisis de los
datos de alta dimensionalidad. Aunque en este ejemplo partimos de datos de
baja dimensionalidad (cuatro atributos cuando hemos preprocesado adecuada-
mente la base de datos inicial), en general se pueden conseguir disminuciones
mas signicativas si los datos se encuentran realmente agrupados. Sin embargo,
hemos visto que para que los mapas sean realmente informativos debemos elim-
inar variables que no sean relevantes porque pueden sesgar completamente el
mapa obtenido. En nuestro ejemplo, la ascension recta y la declinacion podran
hacer que apareciesen como diferentes objetos similares solo por encontrarse en
lugares diferentes del cielo.
Pero la leccion mas importante que se ha de aprender de esta practica es
que los atributos deben estar debidamente normalizados. La aproximacion mas
aconsejable sera estandarizar cada atributo por separado (con el ltro we-
ka.lters.unsupervised.attribute.Standardize, por ejemplo) y luego normalizar
el vector de atributos de cada instancia para que tenga longitud 1. De lo con-
trario, las distancias y proximidades que calcula el algoritmo pueden estar ses-
gadas hacia los atributos con valores de mayor valor absoluto. Sin embargo,
este procedimiento general puede dar problemas si los datos de partida con-
tienen marginales (datos que se desvan mucho de una distribucion normal o
gaussiana).

Você também pode gostar