Está en la página 1de 37

Captulo 5

EXPLORACIN y SELECCIN

U na vez los datos estn recopilados, integrados y limpios, todava no estamos listos (en
muchos casos) para realizar una tarea de minera de datos. Es necesario, adems,
realizar un reconocimiento o anlisis exploratorio de los datos con el objetivo de conocerlos
mejor de cara a la tarea de minera de datos. Incluso esta fase es imprescindible cuando se
realiza minera de datos" abierta", ya que tenemos todo el volumen de datos pero hemos
de determinar los datos a seleccionar y las tareas a realizar sobre esos datos.
Este captulo cubre un conjunto de tcnicas diversas: algunas tcnicas simples del
anlisis exploratorio de datos, tcnicas de visualizacin previa, de agrupamiento
exploratorio, tcnicas de seleccin, ya sea horizontalmente, eliminando filas (muestreo), o
verticalmente, eliminando atributos, interfaces grficas y tcnicas de consulta y agregacin
. (ya sean ms tradicionales al estilo de SQL, herramientas OLAP o incluso lenguajes de
consulta para minera de datos).
La salida o resultado de las tcnicas presentadas en este captulo ya es una "vista
minable con tarea asignada", o dicho de otra manera, una vista minable tipada (entradas,
salidas) con instrucciones sobre qu datos trabajar, qu tarea realizar y de qu manera
obtener el conocimiento.

5.1Introduccin. El contexto de la vista minable


Imagneseque le cae del cielo una base o almacn de datos con una nota: "extraiga usted
conocimiento de aqu". Aparte de la sorpresa natural de ver llover bases de datos, que
achacar posiblemente al cambio climtico, usted se preguntar, entre otras cosas, lo
siguiente:
. Qu parte de los datos es pertinente analizar?
. Qu tipo de conocimiento se desea extraer y cmo se debe presentar?

"-
98 Introduccin a la Minera de Datos

. Qu conocimiento puede ser vlido, novedoso e interesante?


. Qu conocimiento previo me hace falta para realizar esta tarea?
Lgicamente, usted no ser capaz de extraer conocimiento si no se le responde a dichas
preguntas. Del mismo modo, una herramienta de minera de datos, no puede digerir un
conjunto de datos y producir algo razonable, si no se le orienta. La razn fundamental del
porqu esto es as radica no slo en la incapacidad actual de las herramientas de realizar
algunas tareas de una manera completamente automtica, sino, fundamentalmente, en que
la extraccin de conocimiento viene a cubrir unas necesidades y expectativas, que deben
indicarse, en cierto modo, de forma interactiva. Usted puede realizar la compra en un
supermercado, por Internet, o se la puede hacer su mayordomo, pero, en ningn caso,
podr realizar una compra si no indica lo que quiere.
Por tanto, es necesario expresar y proporcionar las respuestas a las cuatro preguntas
anteriores, ya sea mediante lenguajes de minera de datos, ya sea interactivamente en
herramientas especializadas o seleccionando aquellas herramientas necesarias. Resulta,
adems, que incluso conociendo los datos y el dominio del que provienen, responder a
algunas de ellas no es sencillo. Es necesario, en muchos casos, explorarlos datos, el contexto
y los usuarios de la informacin.
Las cuatro preguntas anteriores son, en realidad, una manera de clasificar el conjunto
de preguntas que se podran realizar, ya que, en el fondo, son preguntas que estn
interrelacionadas. Por ejemplo, si no se sabe el conocimiento que puede ser til no se puede
decidir qu parte de los datos lo pueden proporcionar. Por el contrario, si no se selecciona y
se estudia un subconjunto de datos no se puede saber qu validez pueden tener los
modelos extrados y si finalmente van a ser tiles. Otro ejemplo similar es determinar el
mtodo de minera de datos; observando los datos puedo ver qu mtodo puede ser ms
aconsejable. Slo al determinar el mtodo se puede saber si hay ciertos atributos que har
falta cambiar o eliminar. De modos diversos se interrelacionan estas preguntas acerca del
qu, del dnde y del cmo.

MINABLE 1"'"
~
\~, .~

?
TAREA Y CRITERIOS
DE EVALUACIN

PRESENTACIN DEL
CONOCIMIENTO

Figura 5.1. De los datos, dominio y usuarios a la vista minable y elementos asociados.
Captulo 5. Exploraciny seleccin99

La Figura 5.1 intenta esquematizar el proceso que lleva de los datos, del conocimiento del
dominio y de los usuarios a los cuatro aspectos anteriores que son necesarios para llevar a
cabola fase propia de minera de datos.
Como vemos, no es slo necesario obtener la vista minable (una tabla con los atributos
relevantes) sino que debe ir acompaada de la tarea a realizar sobre ella y cmo evaluada,
as como la forma de presentar el resultado final y, en su caso, el conocimiento previo
necesario.Demos nombre y extendamos las cuatro preguntas anteriores
. Vista minable: qu parte de los datos es pertinente analizar? Una vista minable
[Ng et al. 1998] consiste en una vista en el sentido ms clsico de base de datos: una
tabla. La mayora de mtodos de minera de datos, como veremos, son slo capaces
de tratar una tabla en cada tarea. Por tanto, la vista minable ha de recoger toda (y
slo) la informacin necesaria para realizar la tarea de minera de datos.
. Tarea, mtodo y presentacin: qu tipo de conocimiento se desea extraer y cmo
se debe presentar? Se trata de decidir qu tarea (clasificacin, regresin, agrupa-
miento, reglas de asociacin, etc.), cules son las entradas y las salidas (en las tareas
predictivas), con qu mtodo, entre los existentes para cada tarea (rboles de deci-
sin, redes neuronales, regresin logstica, etc.) y de qu manera se van a presentar
o se van a navegar los resultados (grficamente, como un rbol, como un conjunto
de reglas, etc.).
. Criterios de calidad: qu conocimiento puede ser vlido, novedoso e interesante?
En muchos casos hay que establecer unos criterios de comprensibilidad de los mo-
delos (nmero de reglas mximo), criterios de fiabilidad (basados en medidas como
la confianza para las reglas de asociacin, la precisin para la clasificacin, el error
cuadrtico medio para la regresin, etc.), criterios de utilidad (basados en medidas
de cundo son aplicables, como el soporte, qu beneficios se obtiene, a partir de
matrices de costes, etc.), y criterios de novedad o inters (basados en medidas ms o
menos subjetivas).
. Conocimiento previo: qu conocimiento previo me hace falta para realizar esta
tarea? Tanto a la hora de construir la vista minable final o para ayudar al propio
algoritmo de minera de datos puede ser necesario establecer e incluso expresar de
una manera formal cierto conocimiento previo. Por ejemplo, las jerarquas de con-
ceptos o de dimensiones OLAP permiten trabajar con los datos y generar atributos,
existen funciones que pueden utilizarse en medidas de similitud o a la hora de ex-
presar los modelos, se pueden aadir otras tablas como conocimiento previo o in-
cluso se pueden aadir otros modelos anteriores como apoyo o sobre los cuales
revisar o construir uno nuevo.
Por ejemplo, supongamos que hemos recolectado la informacin sobre diagnsticos y
recetas de atencin primaria de toda una zona sanitaria. Nuestro objetivo es extraer
conocimiento de estos datos. En primer lugar, antes incluso que mirar los datos,
estaplecemos una serie de entrevistas con los jefes de servicio de atencin primaria de la
zona. Entre las cosas que salen a la luz en las entrevistas es su preocupacin porque una
multitud de nuevos medicamentos han aparecido recientemente para una serie de
dolencias crnicas, y la mayora de mdicos prescriben de una manera aleatoria de entre
los medicamentos generalmente efectivos, o como mucho, siguiendo patrones globales de
-
100 Introduccin a la Minera de Datos

xito de cada medicamento (prueba el "a" antes que el "b", etc.). Esto tiene como
consecuencia que, en muchos casos, a los pocos das el paciente vuelve a la consulta, y el
mdico le receta otro medicamento, hasta que dan con el medicamento realmente efectivo y
que no muestre contraindicaciones no previstas. Entre las necesidades que aparecen en las
reuniones, por tanto, se encuentra la de realizar modelos que determinen, segn el paciente,
qu medicamento prescribir primero, con el objetivo de resolver cuanto antes el problema
sanitario del paciente, evitar nuevas visitas de los pacientes (reduccin de visitas) y
reduccin de costes farmacuticos.
A partir de este ejemplo, podemos establecer los componentes de la Figura 5.1. Como
se pueden estudiar varias patologas, si nos centramos en una sola, tendremos que la vista
minable va a formarse a partir de los diagnsticos de dicha patologa y los medicamentos
prescritos. El medicamento satisfactorio es el ltimo prescrito, ya que, se supone, que si no
hay ms registros del mismo paciente y patologa, el ltimo medicamento fue bien. Por
tanto habr que realizar un tipo de consulta que nos seleccione el ltimo medicamento
prescrito a los pacientes de una patologa (excluyendo los de menos de un mes, para tener
ms perspectiva). Los factores que vamos a incluir de los antecedentes son todos aquellos
existentes del historial del paciente: parmetros generales: edad, tensin..., anlisis de
sangre, etc.
La tarea a realizar es una tarea de clasificacin, ya sea completa o parcial (por ejemplo
se podra realizar un subconjunto de reglas de asociacin que ayudarn en los casos ms
claros). Debido a la caracterstica de los usuarios (mdicos) y a la exigencia de comprensibi-
lidad de los modelos (para su validacin facultativa), se decide que los patrones extrados
estarn expresados en forma de rboles de decisin, ya que los mdicos estn acostumbra-
dos a seguir este tipo de rboles a la hora de hacer diagnsticos o prescribir medicamentos.
Los criterios de calidad se establecen a partir de la situacin anterior. En primer lugar,
el porcentaje de xito acumulado es el criterio ms importante. Es decir, que el nmero
medio de medicamentos recetados (o intentos) sea menor. Esto est muy relacionado con la
precisin del modelo, pero, como veremos en el Captulo 17, existen medidas que ayudan a
evaluar este tipo de problemas. Tambin se incluirn matrices de costes, con el objetivo de
incluir tambin los costes de las visitas y de los medicamentos. Adicionalmente se buscan
modelos con pocas reglas y que se puedan aplicar con parmetros sencillos de los pacientes,
sin necesidad de realizar pruebas caras o dolorosas, o pruebas que no se puedan realizar a
todos los pacientes, para determinar el mejor medicamento.
Finalmente, existe una gran cantidad de conocimiento previo, extrado fundamental-
mente del dominio y de las entrevistas con los especialistas. Por ejemplo, del dominio se
puede extraer que la zona sanitaria habitual del paciente es fundamental a la hora de hacer
la vista minable, ya que los pacientes que vienen de otras zonas pueden realizar la segunda
visita en su zona de origen (por estar de vacaciones o ir de urgencias) y por tanto el criterio
de considerar el "no retorno" como xito puede ser un error. El conocimiento previo nos
puede ayudar tambin en la transformacin y seleccin de atributos relevantes. Los rboles
de decisin no aceptan conocimiento previo, pero otros mtodos si que podran
beneficiarse.
En realidad no debe cundir el desnimo ante la Figura 5.1, el ejemplo y la cantidad de
aspectos a esclarecer. Lo que se intenta ilustrar es que obtener la vista minable, la tarea, el
mtodo, el conocimiento previo necesario, etc., es un proceso iterativo, que ir siendo ms

~ I
LJ
Captulo 5. Exploraciny seleccin101
1

'
11

sencilloa medida que se conocen los datos, el contexto, los usuarios y lgicamente, las
tcnicasde exploracin y de minera de datos. Como del ltimo aspecto ya quiera dar
cabida cuenta este libro, vamos a comentar qu se puede hacer para conocer mejor los 1'11

datos,el contexto y los usuarios. I

I
11
Englobemos el reconocimiento en dos aspectos principales:
. Reconocimiento del dominio y de los usuarios: debemos reconocer el conocimien-
to que podra ser til, adems de intentar obtener las reglas ya existentes, ya sea
para utilizadas como conocimiento previo como para reemplazadas por reglas y
modelos mejores obtenidas por tcnicas de minera de datos. Es importante deter-
minar las decisiones que se toman frecuentemente y a partir de qu modelos se
toman, si stos tienen una base slida o son simples reglas de negocio en la cabeza "I
!

de uno o ms directivos. Es importante determinar quin usar el conocimiento


obtenido y qu tipo de presentacin puede ser ms aconsejable.
. Reconocimiento y exploracin de los datos: de los datos seguimos transformando
y seleccionando con el objetivo de obtener una "vista minable", lista ya para ser
tratada por las herramientas de minera de datos. A diferencia de las herramientas
del captulo anterior, las herramientas de exploracin y seleccin requieren saber
las expectativas y necesidades del dominio o, de una forma ms concreta, la tarea y
el conocimiento previo pueden influir ms en estas transformaciones y selecciones.
Pasemosa extender los dos aspectos anteriores. .

11
5.1.1Reconocimiento del dominio y de los usuarios
Comohemos visto en el ejemplo anterior, para conocer qu se puede hacer con unos ciertos i,~
datos es necesario conocer el dominio y los usuarios. Si usted es el gerente o un directivo
1\1
de una empresa o departamento que conoce bien, probablemente no necesite realizar este
reconocimiento. Pero si usted es (o va a ser) un profesional de las tecnologas de la 11
informacin,un estadstico o un profesional de una asesora que va a dedicarse a minera
de datos de varios clientes, usted ser ajeno al dominio. Una de las primeras tareas a !I
realizarser, por tanto, conocer y reconocer el dominio y los usuarios.
El procedimiento ms similar a este reconocimiento para la minera de datos es el '1
establecimiento de requerimientos realizado por un analista de software. A diferencia del
'1
casodel software, en las entrevistas (o cuestionarios) no buscaremos aqu casos de uso y
I
escenarios de las operaciones mecnicas clsicas de los sistemas software, sino que
buscaremoslos casos de usos y escenarios de las tomas de decisin.
Para ello, realizaremos preguntas del estilo: qu aspectos son cruciales en su negocio? 11
Qu reglas o modelos de decisin estn utilizando? Se pueden mejorar dichas reglas?
Qubase tienen .dichas reglas? Existen decisiones que se toman de una manera arbitraria
o basndose en reflexiones personales no explcitas? Existe documentacin sobre
decisiones anteriores? Quines toman las decisiones? Qu decisiones son crticas? Los
modelos deben ser comprendidos y validados por expertos? Qu otros requerimientos
exigiramos a los patrones extrados? Qu conocimiento previo suele utilizar para
apoyarse en sus decisiones? Utiliza otras fuentes de datos externas para fundamentarse en
sus decisiones? Y un largo etctera de preguntas de este estilo. Algunas de estas cuestiones
tambin son tiles y se pueden realizar a la hora de construir un almacn de datos o en el
102 Introduccin a la Mineria de Datos

momento de integracin. Como veremos en el Captulo 22 este reconocimiento se puede


establecer como una fase previa a la minera de datos, en la que se establecen los
requerimientos y objetivos de negocio.
Con una entrevista o cuestionario de este estilo se dar cuenta de que muchas decisio-
nes se realizan con reglas informales, subjetivas y, en muchos casos, excesivamente
simplistas o generalistas. Por ejemplo, la mayora de aseguradoras de vehculos utilizan
reglas generales del estilo "recargo por menos de dos aos el carn o por menos de
veinticinco aos", sin entrar en otros aspectos que, personalizando, podran dar mejores
resultados (por ejemplo por ser mujer, estudiante, no fumador, etc.). Muchas campaas de
publicidad se enfocan a grupos de poblacin ("jvenes", "amas de casa", "nios", etc.)
cuya solidez puede dejar mucho que desear.
El resultado de este "reconocimiento" puede resumirse en una documentacin u
organizarse de una manera esquemtica, estableciendo prioridades de anlisis, destacando
aquellas reglas de decisin importantes, que pueden mejorarse de manera significativa y
para las cuales parece que disponemos de datos.
En general, se van descubriendo mayores posibilidades a medida que se va conociendo
el dominio. Como hemos dicho al principio de este captulo, sin este reconocimiento es
imposible esclarecer las tareas, los mtodos, los criterios de calidad, explorar los datos y el
conocimiento previo.

5.1.2 Reconocimiento y exploracin de los datos


Adems del reconocimiento del dominio, debemos reconocer los datos. Para ello,
lgicamente debemos conocer lo que significan y esto slo es posible si quien lo realiza
conoce el dominio o los datos (ya sea porque son sus propios datos y dominio o porque ha
hecho el reconocimiento del dominio). El reconocimiento de los datos por tanto viene
guiado por el inters y las necesidades establecidas en el reconocimiento de dominio. Sin
ste, no se puede saber qu datos son relevantes ni qu tareas pueden ser tiles.
El reconocimiento de datos se suele conocer con distintos nombres en ingls (data
survey,exploratorydataanalysis,data fishing...).De modo similar, en castellano, tambin se
pueden utilizar trminos diversos: exploracin, prospeccin...
No obstante, hay que distinguir que el trmino "anlisis exploratorio de datos"
(exploratorydataanalysis,EDA), definido como "una serie de tcnicas para investigar los
datos para ver tendencias, patrones, errores y caractersticas" [Tukey 1977] tiene un
enfoque diferente o ms restrictivo al que vamos a ver aqu para la minera de datos. Gran
parte de lo que se realiza en EDA existe en herramientas que no son de minera de datos,
especialmente los Executive Information Systems (EIS) y, lgicamente, en herramientas
estadsticas generales. En realidad, de nuevo no se puede marcar una lnea de separacin
entre EDA y minera de datos, aunque se podra decir que EDA tiene un carcter ms
"explicativo", de caracterizacin de los datos y no suele incluir modelos complejos ni
predictivos.
Muchos de los grficos que hemos comentado en el captulo anterior se utilizan en este
tipo de anlisis. Pero, adems, las herramientas informatizadas de EDA permiten
interactuar con los grficos. Por ejemplo, seleccionar un grupo que se ve en un grfico de
dispersin, hacer rotar un grfico tridimensional (en su proyeccin en dos dimensiones)...

L
"O

11I

Captulo 5. Exploracin y seleccin 103

'~II

Elobjetivo de la exploracin para la minera de datos es obtener una vista minable, con
una tarea asignada. Para ello, se pueden utilizar distintas tcnicas para obtener o refinar
dicha vista: visualizacin, descripcin, generalizacin, agregacin y seleccin. En los
puntos siguientes veremos estas tcnicas. Todas ellas requieren, como hemos dicho III~

anteriormente,conocer el dominio y el significado de los datos.


illl

5.2Exploracin mediante visualizacin "111

En el captulo anterior vimos algunos tipos de tablas, como la tabla de resumen de


caractersticas,y algunas grficas, como los histogramas y las grficas de distribucin. Estas
grficas,en general se centran en uno o dos atributos, a lo sumo, y el objetivo principal era,
11II

comovimos, la limpieza de datos. En este apartado veremos algunas grficas ms con un


objetivodiferente, intentar sugerir tareas de minera de datos o patrones que puedan
1111

extraerse.Las grficas que vamos a ver en este apartado se pueden caracterizar por dos
aspectos:o bien son interactivas y permiten una exploracin activa, o bien son multidimen- 11

sionales,con lo que permiten observar muchos atributos a la vez.


Recientemente, ha aparecido el trmino "minera de datos visual" (visual data mining)
[Wong 1999] con el significado de una minera de datos que se realiza manejando e
interactuando con grficos (otra interpretacin es la del uso de interface s visuales para la
minera de datos, de lo que hablaremos al final del captulo). En nuestra opinin el
conceptode "minera de datos visual" es interesante como hbrido entre la minera de
~~

datos y la visualizacin de datos ms tradicional [Cleveland 1993], pero, en general, no se


puedehacer minera de datos slo con grficas. Precisamente lo que caracteriza la minera I~

de datos de tcnicas anteriores o de la perspectiva ms clsica del anlisis de datos es que


los modelos son extrados por algoritmos y, por tanto, no son vistos o descubiertos '11

visualmentepor el usuario (y posteriormente simplemente validados estadsticamente).


II~I
No creemos por tanto que sea conveniente dedicar un captulo a las herramientas
visualeso a las grficas (aunque existan libros dedicados, como por ejemplo [Fayyad et al. 11

2002]). Son herramientas que son tiles en distintas fases y de distintas maneras y que se 111

verna lo largo de todo el libro (como empezamos en el captulo anterior). 11

Lastcnicas de visualizacin de datos se utilizan fundamentalmente con dos objetivos:


. Aprovechar la gran capacidad humana de ver patrones, anomalas y tendencias a II~

partir de imgenes y facilitar la comprensin de los datos.


. Ayudar al usuario a comprender ms rpidamente patrones descubiertos automti- 111

camente por un sistema de KDD. I~

Estos dos objetivos marcan dos momentos diferentes del uso de la visualizacin de los
11
datos(no excluyentes):
. Visualizacin previa (sta es la que normalmente recibe el nombre de minera de
datos visual): se utiliza para entender mejor los datos y sugerir posibles patrones o
qu tipo de herramienta de KDD utilizar. La visualizacin previa se utiliza frecuen-
temente por picapedreros,para ver tendencias y resmenes de los datos, y por
exploradores,para ver 'filones' que investigar.
. Visualizacin posterior al proceso de minera de datos: se utiliza para mostrar los
patrones y entenderlos mejor. La visualizacin posterior se utiliza frecuentemente
104 Introduccin a la Mineria de Datos

para validar y mostrar a los expertos los resultados de la extraccin de conocimien-


to. De sta trataremos en el Captulo 19.
El primer tipo de visualizacin previa ya lo vimos en el Captulo 4 y se trata de la visin
multidimensional de las herramientas OLAP. Aunque realmente no se muestran grficas,
los datos s que se muestran de manera visual (al menos parcialmente) y se puede
interactuar con ellos, navegando por las dimensiones.
Existen otros tipos de visualizaciones ms grficas donde podemos apoyamos para la
preparacin de datos. En general, las herramientas de minera de datos o estadsticas no
nos van a sugerir qu grfica utilizar, con lo que en general se requerir de cierta
experiencia y conocimiento de la herramienta para seleccionar qu grfico nos interesa
utilizar entre las decenas de grficas que proporcionan los sistemas actuales.
Por ejemplo, incluso las hojas de clculo permiten representar grficos tridimensionales
como los de la parte izquierda de la Figura 5.2. Lo que no podemos hacer en muchos casos
es interactuar con la grfica y obtener datos derivados a partir de ella. Por ejemplo, algunas
herramientas estadsticas o de minera de datos, nos permiten desplazar un plano de corte
sobre un eje e ir viendo los cortes instantneamente, como se ve en la parte derecha de la
Figura 5.2. En este caso podra ser til para discretizar un atributo (entre un valor menor o
mayor que el plano) para facilitar el agrupamiento. Por ejemplo, en la parte derecha de la
Figura 5.2 se ven dos grupos de una manera mucho ms clara que en la parte izquierda. Si
esos dos grupos son los que realmente nos interesan podemos pasar el corte (convertido en
un nuevo problema bidimensional, utilizando el atributo discretizado como filtro) a un
mtodo de agrupamiento (en este caso bastara con un mtodo lineal simple).
Resultado del corte

Plano de
corte

Figura 5.2. Interactuando con un grficopara obtener una vista ms simplificada.


Diferentes sistemas de estadstica o minera de datos, tales como Statistica o Statistica Data
Miner de StatSoft, SAS System oSAS Enterprise Miner, IBM Intelligent Miner, disponen de
tipos de grficas adecuadas para diferentes propsitos, que se pueden navegar, rotar,
modificar o combinar.

5.2.1 Visualizacin multidimensional


La representacin grfica debe limitarse a las pantallas o al papel, que son bidimensionales.
La grfica de la izquierda de la Figura 5.2 no es ms que una proyeccin de tres
dimensiones en dos dimensiones, que se ayuda de la tonalidad o del color (ste s que se
puede considerar una tercera dimensin real) para que sea ms inteligible. Sin embargo, en
Captulo 5. Exploraciny seleccin105

1111

muchassituaciones tenemos ms de tres dimensiones, lo que plantea grandes problemas


de caraa la visualizacin.
La tcnica de visualizacin de datos multidimensionales ms conocida es la visualiza-
cin de coordenadas paralelas [Inselberg & Oimsdale 1990]. Se mapea el espacio k-
dimensional en dos dimensiones mediante el uso de k ejes de ordenadas (escalados
linealmente) por uno de abscisas. Cada punto en el espacio k-dimensional se hace
corresponder con una lnea poligonal (polgono abierto), donde cada vrtice de la lnea
poligonal intersecta los k ejes en el valor para la dimensin. La Figura 5.3 muestra un
espacio6-dimensional representado de esta forma. 11,

10
9
8
7
!II:
6
5
I
4
3
2
1 '1'
O"
2 3 4 5 6

Figura 5.3. Grfica de seis coordenadasparalelas con muchos ejemplos.

Aunqueun gran nmero de ejemplos convierte la grfica en una maraa, aun as, podemos
~
detectar patrones. Por ejemplo, se puede observar que los atributos 1 y 2 no estn
correlacionados,mientras que el 2 y 3 estn positivamente correlacionados, el 3 y e14 estn
inversamente correlacionados, as como existe una relacin entre la magnitud de 4 y las II
categorasdel atributo nominal 5. Los atributos nominales 5 y 6 tienen una correspondencia 1'1
claraentre categoras (en realidad el atributo 6 es dependiente del 5). Un grfico similar es
el grficode reconocimiento (survey plot), donde se muestran todos los ejemplos ordenados
y la amplitud de cada lnea muestra el valor para cada atributo (vase por ejemplo [Fayyad
et al.2002]).En general es ms apropiado para valores numricos. 1\1
li11
En general, si los datos no correlacionan (que suele ocurrir para la mayora de atribu-
tos) se ve una maraa de lneas. Otra cosa que suele suceder es que el orden de las
dimensiones (atributos) es muy significativo para saber si hay relaciones. Por ejemplo, en la
grficaanterior no vemos si el atributo 6 y el1 tienen relacin o no. 1
Incluso en el caso de que existan relaciones, un nmero excesivo de ejemplos puede
"'1
hacerque los puntos se "apien" o se tapen. Por ejemplo, en la parte derecha de la Figura
5.3los valores nominales se montan unos sobre otros y se ven slo cuatro lneas (aunque,
en realidad, hay decenas de ejemplos). Este problema se conoce como overplotting. Esto se
puede solucionar parcialmente con colores o haciendo un muestreo (mostrando slo un
subconjunto aleatorio de los ejemplos). En los casos que existan muchos ejemplos con los
mismos valores, podemos incluir un grado de aleatoriedad en las magnitudes (esto se
conocecomo jitter), para que unos puntos no aparezcan exactamente encima de otros. Este
trucopermite ver la cardinalidad de ejemplos en cada sitio.
,.......

106 Introduccin a la Minera de Datos

El grfico anterior se puede utilizar tambin cuando hay pocos ejemplos. Por ejemplo,
en la Figura 5.4, se muestran las caractersticas de doce pacientes de enfermedades
cardiovasculares: el nivel de tabaquismo, colesterol, tensin, obesidad, alcoholismo,
precedentes, estrs y riesgo estimado de enfermedades coronarias, normalizados de Oa 10.
10 ,,!I. . t ~ 'r

o 7

Tbco. ClstrL Tnsn. Obsd. Alcl. Prcd. Strss. Rsg


Figura 5.4. Grfica de ocho coordenadas paralelas con pocos ejemplos.

En este caso se puede realizar un seguimiento de cada ejemplo.


Una variante del caso anterior cuando hay pocos ejemplos es la representacin radial o
circular,como se muestra en la Figura 5.5:
Tabaquismo

Alcoholismo Obesidad

Tensin Estrs

Figura 5.5. Grfica radial de cinco dimensiones y cuatro ejemplos.

En realidad es similar al de coordenadas paralelas, con lo que no aporta mucho si se usa de


esta manera. Frecuentemente, en vez de mostrar todos los valores en la radial, mostramos
uno a uno, con lo que tenemos diferentes figuras para comparar los ejemplos. ste es un
uso ms ilustrativo, comose ve en la Figura 5.6.
Tabaquismo
Tabaquismo
Tabaquismo
Alcoholismo Obesidad
Alcoholismo

Alroho"'mO~~"kl",
Tensin~strs
Estrs
Tensin

Figura 5.6. Tres pacientes diferentes vistos mediante grfica radial.


Captulo 5. Exploraciny seleccin107

Esta grfica permite diferenciar individuos, o si se realizan medias, permite comparar


grupos.Este tipo de representaciones con distintas formas que se da a diferentes objetos
puede llevarse ms all mediante el uso de representaciones icnicas, en las cuales se
utilizanfiguras fciles de reconocer por seres humanos (animales, caras, casas, etc.) y cada
dimensinrepresenta una caracterstica de la figura. Por ejemplo, en el caso de los animales,
unatributo puede representar el tamao de la cabeza, otro el de las piernas, el del rabo, etc.
Segnsus partidarios, con este tipo de representaciones icnicas uno puede, de un solo
vistazo, darse cuenta del tipo de individuo o grupo con el que estamos tratando.
11
Lgicamente,cada representacin icnica requiere una cierta familiarizacin previa para
ser efectiva.
Otra de las ventajas de las representaciones icnicas frente a las radiales es que se
puedencombinar ms convenientemente valores discretos y continuos. Por ejemplo tener o
notenerbigote puede utilizarse para un atributo binario, podemos representar un atributo
concuatro valores con cuatro tipos de nariz, etc.

5.3 Sumarizacin, descripcin, generalizacin y pivota-


miento
La construccin de la vista minable es un proceso iterativo que pasa por conocer y
visualizarlos datos, combinados de diferentes maneras. Para esta combinacin podemos
utilizaroperadores de consultas de bases de datos y operadores OLAP. Los datos con los
quese trabaja en minera de datos son, muy frecuentemente, datos histricos que, por tanto,
puedenagregarse a diferentes niveles de detalle temporal. Si, adems, la estructura de los
datos es multidimensional (por ejemplo un datamart) o existen campos de agregacin,
podemosobtener dif~rentes vistas concatenando (juntando o enlazando) diferentes tablas y
111
agregandoal nivel que deseemos.
11

Una pregunta que aparece generalmente en el entorno de la minera de datos es la .~

siguiente:"si ya he decidido qu tablas y atributos son relevantes, por qu debo construir


una nica tabla derivada, denominada vista minable? No es suficiente con marcar dichos I11
1
atributosy dejar a la herramienta de minera de datos que trabaje sobre las base de datos?".
11
Existendos razones fundamentales para contestar a esta pregunta. La primera es que dadas 11,

varias tablas, incluso aunque tenga claves ajenas definidas, existen muchas maneras de 11

concatenarlas,es decir, de combinar la informacin que contienen. Por tanto, es ms difcil 11


definirtareas concretas si no se clarifica exactamente la informacin sobre la que se van a
definir.La segunda razn es quizs ms importante: la mayora de mtodos de minera de 11

datos slo tratan con una nica tabla. Si bien es cierto que veremos herramientas de la
programacin lgica inductiva y la minera de datos relacional en el Captulo 12 que s
empiezana ser capaces de trabajar con varias tablas, la mayora de tcnicas (en el caso de
estelibro, el resto de tcnicas) slo son capaces de trabajar con representaciones del estilo
atributo-valor,es decir, una tabla.
Por tanto, debemos definir una consulta o vista minable. Para ello, las operaciones
necesariasson aquellas de un lenguaje relacional (como por ejemplo el SQL), concatenacio-
108 Introduccin a la Minera de Datos

nes (joinsl0), selecciones, proyecciones, agrupamientos/agregaciones, etc. La Figura 5.7


muestra precisamente la construccin de una vista minable a partir de un conjunto de
tablas. Aunque las tablas tienen una estructura multidimensional y podamos apoyamos en
herramientas OLAP, en realidad, las operaciones necesarias son las tpicas de una consulta
SQL: concatenacin, seleccin, proyeccin y agrupamiento.
Dirne!)s(j!!

Dm;ensiGn
Tiempo

VENTA IDproveedor
IDartculo nombre
IDsuper ciudad
IDhora Dimensin
importe
cantidad Lugar
:r;o~o~epago1:'
...
PAs
ID~ais
..n~'~aM
~n
nomure;

Nombre= 'Espaa'
t" ""
VISTA
Pas.Nombre Da.Nombre Laborable %(modode paQo)=tarjeta
MINABLE
Espaa lunes s 34,5%
Espaa martes s 32,1%
Espaa mircoles s 33,8%
ESDaa ueves s 31,7%
Espaa vernes s 36,3%
Espaa sbado no 53,2%
Espaa domnQo no 61,4%

Figura 5.7. Seleccin de tablas,atributos, condiciones y niveles de agregacinpara obtener una vista minable.
Es quiz la concatenacin de tablas aquella que permite juntar en una tabla la informacin
proveniente de varias. Este proceso generalmente obtiene vistas desnormalizadas, en las
que, por ejemplo, la tabla ciudad y pas se funden en una sola, donde aparece el nombre de
la ciudad y el nombre del pas. Este tipo de desnormalizaciones contienen redundancia y,
por tanto, patrones. Por tanto, hay que ser consciente de ellos, porque si incluyramos
todos los atributos para reglas de asociacin, por ejemplo, tendremos patrones redescubier-
tos del estilo de dependencias funcionales como "ciudad ~ pas" o, en el ejemplo anterior
"da.nombre ~ laborable".

5.3.1 Sumarizacin
La sumarizacin o agregacin muestra los datos de una manera ms resumida,
permitiendo, precisamente, calcular valores agregados, que no son los datos directos
registrados, sino datos derivados de ellos. Se puede considerar, en cierto modo, una
generalizacin de los datos y, por tanto, suele facilitar el aprendizaje. Pero no es slo una
cuestin de eficiencia, sino, muchas veces, una necesidad. En la mayora de eventos fsicos,

10 El trmino ingls join, que significa conectar dos tablas por el valor de uno o ms atributos de ambas
tablas, ha sufrido mltiples y variadas traducciones en castellano: "juncin", juntura, junta, "yuncin",
reunin, combinacin.
Captulo 5. Exploracin y seleccin 109
11'

cuando ms se detallan los datos menos patrones suelen encontrarse. Esto es patente, por
ejemplo,en los fenmenos meteorolgicos: no podemos establecer un patrn de si har sol 111

el da 31 de diciembre de 2015 en Valparaso (Chile), pero s que podemos afirmar que en el


mes de diciembre de 2015 la temperatura media ser ms alta que la temperatura media de
II1I
julio.Tampoco podemos predecir cuntos pacientes ingresarn en urgencias el sbado que I!
viene por la noche de 3:00h a 4:00h, pero podemos asegurar que los sbados por la noche
hay muchas ms urgencias que el resto de noches de la semana. Para establecer estos
Ilrl
patrones, debemos agregar los datos.
Adems, de la agregacin aparecen nuevos atributos, que pueden ser mucho ms
significativos que los atributos ms detallados. Por ejemplo, podemos tener los atributos
tpicos de los clientes (edad, estado civil, direccin...). En otras tablas podemos tener 111
I

informacin sobre los productos que han comprado anteriormente y cundo. Nos puede
interesar generar nuevos atributos como por ejemplo "gasto medio por mes", "nmero de
productos comprados por ao", etc. Estos atributos son, en realidad, nuevos atributos por 'l'
: I
i
l
agregacin y sumarizacin (jeatureaggregation).
La sumarizacin se puede utilizar no slo para construir la vista minable directamente,
~,'
sino para realizar un anlisis exploratorio, similar, en cierto modo, a las grficas del punto
anterior. Una aplicacin muy prctica de la sumarizacin es la comparacin o discrimina-
cin de clases. Consiste en sumarizar para dos o ms clases, es decir agrupar, y ver las
caractersticas para las sub muestras formadas. Las clases pueden ser las que finalmente van 11

a servir para una tarea de clasificacin o puede ser cualquier atributo nominal (o numrico
separado por intervalos) elegido para realizar el "contraste". Por ejemplo, siguiendo con el
tema de los pacientes de enfermedades cardiovasculares, podramos querer ver cul es la II

distribucin por sexos de algunos de los otros atributos:


Edad Colesterol Obesidad Fumador
Sexo Cardo Media Desv. Media Desv. Media Desv. S No ill
H 2341 (80,6%) 47,6 12,3 190,1 51,1 1,8 0,6 1803 (77%) 538 (23%) !
M 563 (19,4%) 58,1 9,7 230 58,7 2,3 0,4 242 (43%) 321 (57%)
Todos 2904 49,6 11,7 197,8 54,2 1,9 0,5 2045 (70,4%) 859 (29,6%) I~:

Esto sirve en muchos casos para comparar cardinalidades (en este caso hay-muchos ms
hombres que mujeres con este tipo de enfermedades), para comparar las distribuciones de 11
otros atributos numricos (por ejemplo la obesidad parece ms determinante en las mujeres
que en los hombres) o las frecuencias de valores de atributos (el tabaquismo es mucho ms
alto en los hombres que en las mujeres), etc. Puede ser muy til de cara a ver relevancias y
dependencias de atributos. A veces se realiza un contraste de una clase con respecto a las
dems, o respecto a todas (la distribucin global).
Este tipo de operaciones se realizan ms eficientemente con tcnicas OLAP y de
consultas que permitan calcular medias, cuentas, etc., eficientemente. No obstante, es de
resaltar que este tipo de operaciones se pueden realizar con SQL bsico (vase por ejemplo
[Trueblood & Lovett 2001]).
Otra forma de realizar una sumarizacin es determinar los "tipos" de individuos ms
frecuentes de cada clase.
Edad: 45-60, Colesterol> 150, Fumador=s. Abarca el 50,2% de los hombres.
Edad: 60-inf. Abarca el 22,3% de los hombres
110 Introduccin a la Minera de Datos

Edad: 30-45, Colesterol> 200. Abarca el 13,9% de los hombres.


Edad: 45-60, Colesterol> 150, Fumador=no. Abarca el 6,6% de los hombres.
Resto: 7% de los hombres.
y lo mismo para la otra clase, para ver los casos tpicos de cada clase.
Para hacer los resmenes anteriores, son necesarias herramientas ya ms especficas de
sumarizacin, para establecer estos grupos frecuentes o tambin para establecer grupos
cuyas distribuciones se separan de la general (subgrupos diferenciados). De hecho, muchos
autores consideran la sumarizacin como una tarea propia de minera de datos. Nosotros la
veremos desde el punto de vista de la tarea de agrupamiento y la de reglas de asociacin.

5.3.2 Generalizacin y descripcin


La generalizacin se puede realizar fundamentalmente mediante agregacin por
dimensiones, como se ha visto en el apartado anterior (mediante herramientas OLAP u
otros medios ms tradicionales) o se puede realizar mediante lo que a veces se llama
"induccin orientada al atributo". Este tipo de generalizacin se denomina a veces
"descripcin de conceptos" (concept description) e incluye: generalizacin multinivel,
sumarizacin, caracterizacin y comparacin (como la vista en el punto anterior). Es un
tipo de tcnicas de consulta explorativas que pueden considerarse como un paso previo a
la minera de datos (sta es la perspectiva tomada en este libro) o se puede considerar como
un tipo muy bsico de minera de datos descripcional.
Este tipo de generalizacin multinivel o descripcin de conceptos se basa fundamen-
talmente en la definicin de niveles conceptuales o jerarquas. stas se pueden definir para
los valores, ms que para los atributos, y de manera ms flexible que las jerarquas de
dimensiones de los datamarts, generalizando a travs de los atributos descriptivos de las
dimensiones. Veamos un ejemplo: podemos tener atributos para la fecha, el mes, el ao, etc.,
dentro de una jerarqua de una dimensin. Moverse en estos atributos se realiza mediante
operadores drill y roIl como vimos en el Captulo 3. En cambio, podemos hacer una
generalizacin conceptual cuando distinguimos no entre la fecha A y la fecha B, o el mes A
y el mes B, o la semana A o la semana B, sino cuando distinguimos entre "martes" y
"jueves" o distinguimos entre" das festivos" y "das laborables", utilizando para ello
jerarquasde valor de la propia fecha. Como consecuencia de esto se puede eliminar la fecha
(18/11/2007,por ejemplo), ya que es irrelevante.
Este tipo de jerarquas de valor se pueden definir, adems de las jerarquas de la
dimensin. Esto permite que algunas operaciones se puedan automatizar, en especial para
los atributos nominales:
. Si un atributo tiene muchos valores y se puede generalizar, considerar las posibles
generalizaciones. Por ejemplo, si tenemos las fechas (muy numerosas lgicamente),
pero podemos generalizar en "das festivos", "das laborables", o en meses del ao,
etc., se debe considerar de estas generalizaciones cul se ajusta ms a la tarea a rea-
lizar.
. Si un atributo tiene muchos valores y no se puede generalizar, considerar borrar el
atributo. Por ejemplo, los nmeros de telfono, si no tienen generalizacin, tal vez
sea conveniente borrados.
Captulo 5. Exploraciny seleccin 111

. Si un atributo tiene pocos valores, dejar el atributo intacto. Por ejemplo, el estado
civil de un cliente puede no requerir generalizacin.
. Si despus de las generalizaciones existen atributos con muchos valores que ya no
se pueden generalizar, considerar borrar el atributo.
. Para los atributos numricos se puede utilizar generalizacin por intervalos, en
varias escalas significativas.
El problema de la tcnica anterior es, lgicamente, definir las jerarquas, aspecto que ya
tratamosen el Captulo 3, para las jerarquas de dimensiones y para los atributos de valor.
La definicin de estas jerarquas requiere, en muchos casos, obtener datos externos. Por
ejemplo,buscar el calendario de festividades de los aos de anlisis (para saber si las fechas
eranfestivas o no), obtener datos del nivel de ventas del mismo ramo para saber si era ao
de recesin o ao de bonanza, etc. Este proceso de creacin de jerarquas ayudado por
informacinexterna se llama enriquecimiento (enrichmento enhancement).

5.3.3Pivotamiento
Una operacin muy usual a la hora de preparar la vista minable se conoce como
pivotamiento y, como vimos en el Captulo 3, forma parte de los operadores OLAP. La
operacin de pivotamiento cambia filas por columnas y, por tanto, realiza un cambio
verdaderamente radical para una representacin basada en pares" atributo-valor".
El ejemplo ms clsico de pivotamiento es de la cesta de la compra. Supongamos que
unos grandes almacenes guardan una gran tabla de cestas de la compra, donde cada
atributo indica si el producto se ha comprado o no. Existen unos 10.000 productos en los
grandes almacenes y millones de cestas semanales. El objetivo del anlisis es ver qu
productosse compran conjuntamente (regla de asociacin).
Lgicamente, los datos no caben en memoria, con lo que hay que ir trabajando en disco.
Para tener algo de fiabilidad en las reglas hay que mirar al menos la raz cuadrada de todas
las cestas, eso obliga a seleccionar unas 1.000 filas (aleatoriamente) de la tabla para cada
a
dosatributos que queramos evaluar.
Sieste tipo de anlisis se van a realizar frecuentemente, puede merecer la pena cambiar
filaspor columnas, como se muestra en la Figura 5.8.
S No
No No
Pivot No No
No S
S S

No I S 1... I S 11 No S No S

Figura 5.8. Pivotamiento: cambio de filas por columnas.

Ahora,para observar si dos productos estn asociados es slo necesario tomar dos filas de
la tabla y realizar, por ejemplo, un "o exclusivo" (XOR) entre las dos filas, para ver si estn 111

asociadaso no.
Las herramientas de reglas de asociacin (como veremos en el Captulo 9) hoy en da
111
sonmuy eficientes y en muchos casos no necesitan este pivotamiento (o incluso puede ser

-
112 Introduccin a la Minera de Datos

que si se realiza el pivotamiento, la tarea no se pueda definir), pero la idea sigue siendo
vlida para otras tareas o para sistemas especficos.

5.4 Seleccin de datos


La seleccin de datos es algo ms que decidir qu tablas (o archivos, en su caso) se van a
necesitar para la minera de datos y de qu manera concatenarlas. Esto podra estar ya
decidido, pero todava no sabemos qu atributos/variables necesitamos y cuntas
instancias (ejemplos) van a ser necesarias. Dicho de otra manera, puede ser que no todas las
columnas, ni todas las filas sean necesarias. El problema existente es precisamente que si
seleccionamos como "vista minable" todo aquello que pueda ser relevante podemos acabar
con una vista minable de cientos de columnas/atributos y millones de filas/registros. El
tamao de una tabla como sta desborda la capacidad de muchas de las tcnicas de minera
de datos que veremos en la Parte III de este libro. Hemos de ser capaces de ver si podemos
obtener unos primeros modelos (o incluso mejores modelos) con un sub conjunto de las
instancias y de las variables.
La seleccin de datos no tiene nicamente como objetivo la reduccin del tamao para
obtener una minera de datos ms rpida sino que, en muchos casos, puede permitir
mejorar el resultado (tanto en precisin o en coste, por ejemplo utilizando muestreo
estratificado o en comprensibilidad, por ejemplo utilizando reduccin de dimensionalidad).
El proceso de seleccin de datos muchas veces se engloba dentro de un concepto ms
amplio, denominado reduccin de datos (data reduction),aunque este trmino tambin
puede incluir la agregacin (por ejemplo si pasamos de instancias de cada da a instancias
agregadas mensualmente), la generalizacin (por ejemplo si reemplazamos el atributo
ciudad por regin, siguiendo por ejemplo la jerarqua de alguna dimensin), o incluso la
compresin de datos (por ejemplo eliminando datos redundantes).
En general, cuando tratamos de datos del estilo atributo-valor (es decir, una tabla), hay
dos tipos de seleccin aplicables: seleccin horizontal (muestreo), donde se eliminan
algunas filas (individuos) y seleccin vertical (reduccin de dimensionalidad), donde se
eliminan caractersticas de todos los individuos. Pasemos a ver estos dos tipos de seleccin.

5.4.1 Tcnicas de muestreo


La manera ms directa de reducir el tamao de una poblacin o conjuntos de individuos es
realizar el muestreo. La gran mayora de medidas y tcnicas estadsticas y de sus
aplicaciones, se basan en el concepto de muestra, es decir, no se trabaja sobre toda la
poblacin sino sobre un subconjunto de la misma. Un ejemplo diario es la realizacin de
encuestas; con unos cientos o miles de llamadas se puede extrapolar a una poblacin total
de millones de personas.
En el caso de la minera de datos nos podemos plantear dos situaciones, dependiendo

.
de la disponibilidad de la poblacin:
Se dispone de la poblacin: en este caso se ha de determinar qu cantidad de datos
son necesarios y cmo hacer la muestra. En muchos casos, por ejemplo, una mues-
tra aleatoria no es lo ms aconsejable. Por ejemplo, en el caso de una encuesta, se
intenta escoger al menos un mnimo de individuos de cada tipologa (edades, sexos,
Captulo 5. Exploraciny seleccin113
11111

nivel econmico, rural/urbano, etc.). No obstante, sta es la situacin ideal, ya que


se dispone (con mayor o menor facilidad) de la poblacin total.
. Los datos son ya una muestra de realidad, por ejemplo, los datos recogidos en una 111'1

base de datos y slo representan una parte de la realidad. Por ejemplo, las reclama-
ciones realizadas a travs de la web quedan registradas, mientras que el resto de
reclamaciones no se registran. Es importante tener claro que el hecho de que est en
una base de datos no quiere decir que sea una muestra de realidad. Generalmente, Itl~

la informacin de pedidos, clientes, proveedores, etc., de una empresa representan


la "poblacin total" de pedidos, clientes, proveedores, etc. sta es la situacin co-
mentada anteriormente.
~~III
Yasea en uno u otro caso existen otras razones para querer realizar un muestreo sobre los
datos disponibles (ya sean, a su vez, un muestre o o el total de la poblacin). Entre las
razones estn, principalmente, la reduccin del tamao (con el objetivo de facilitar y
agilizarlos algoritmos de minera de datos), pero existen otras muchas (balanceado de
clases,cobertura equilibrada del espacio, facilitar la visualizacin...). .
I~tll
,

Dependiendo de estas razones existen varios tipos de muestreo: aleatorio, estratificado,


porgrupos o exhaustivo. Veamos con detalle estos tipos de muestreo.
. Muestreo Aleatorio Simple. La premisa de este muestreo es que cualquier instan- IIII~
cia tiene la misma probabilidad de ser extrada en la muestra. Puede ser con o sin
reemplazamiento. La manera ms sencilla de realizar un muestreo sin reemplaza-
miento de este estilo es asignar un nmero aleatorio a cada instancia y despus
11111
ordenarlos por este valor. Se seleccionan los n primeros y tenemos una muestra de
n instancias sin reemplazamiento. Para realizar un muestreo con reemplazamiento,
una manera sencilla es, dado un total de m instancias, generar aleatoriamente un
valor i entre 1 y m. Con este valor i se elige la i-sima instancia del conjunto. Esta
operacin se repite hasta tener n valores. Lgicamente, existen maneras ms efecti- ;I~I

vas de realizar ambos tipos de muestre o cuando no se desea ordenar una tabla
grande ni se desea realizar n barridos de la misma tabla. Por ejemplo, se puede rea-
lizar un muestreo "sistemtico" o "intercalado", en el que se calcula un valor k=m/n ~~
donde m es el tamao total de los datos y n es el tamao de la muestra deseada.
Una vez obtenido este valor, se genera un valor aleatorio i entre 1 y k. Se escoge la
instancia i y despus se van eligiendo la i+k, i+2k, oo.,hasta i+(n-l)k, haciendo un
total de n instancias muestreadas. No obstante, este muestreo puede, en algunos ~I'

casos, crear sesgos, aunque, en otros, es una solucin bastante prctica. En ningn
caso, sin embargo, se pueden realizar muestreos del estilo "los n primeros de la
tabla"; aunque muy eficientes, generalmente pueden suponer un sesgo muy impor-
tante, ya que el orden en el que las instancias estn almacenadas en la tabla puede
depender de muchos factores: fechas, ndices, mtodos de optimizacin propios del
sistema de gestin de bases de datos, etc. .

. Muestreo Aleatorio Estratificado. El objetivo de este muestreo es obtener una


muestra balanceada con suficientes elementos de todos los estratos, o grupos. Lgi-
camente, para poder hacerlo es necesario conocer los estratos o grupos de inters.
Esto generalmente ocurre con problemas de clasificacin, donde estos estratos son
precisamente las clases existentes, y puede ser que se tengan pocas instancias de
unas clases o muchas instancias de otras. No obstante, se puede plantear realizar un
114 Introduccin a la Mineria de Datos

agrupamiento previo al muestreo para descubrir los estratos. Sea como sea, el
muestreo aleatorio estratificado se puede realizar de muchas maneras, dependien-
do del nmero de elementos que se quiera para cada estrato. Por ejemplo, si existen
suficientes ejemplos de todos los estratos y queremos n elementos de cada estrato,
realizaremos un muestreo aleatorio simple sin reemplazamiento de cada estrato
hasta obtener los n elementos de ese estrato. Finalmente, tendremos n.e donde e es
el nmero de estratos. Sin embargo, muchas veces no tenemos suficientes ejemplos
de todos los estratos. En esta situacin lo mejor es realizar un muestreo aleatorio
simple con reemplazamiento de aquellos estratos minoritarios. Como resultado,
para algunos estratos tendremos ms instancias de las que haba originalmente en
el estrato (sobremuestreo) y para otros estratos tendremos menos instancias de las
que haba originalmente en el estrato (submuestro). Las ventajas del muestreo es-
tratificado no es slo que se cubren suficientes estancias de todos los estratos, sino
que adems es estadsticamente aconsejable, especialmente cuando se realiza sub-
muestreo, ya que los elementos del mismo estrato suelen ser similares y, por tanto,
de alguna manera, se mantiene ms diversidad en la muestra. Dicho de otra mane-
ra, es preferible pocos elementos, pero de todos los estratos, a tener muchos, pero
de slo algunos estratos. De ah la manera en la que se suelen realizar los sondeos
de opinin. En el Captulo 17 veremos de nuevo las aplicaciones de la estratifica-
cin, especialmente cuando se tienen en cuenta costes de clasificacin.
. Muestreo de Grupos. En cierto modo inverso al anterior, el muestreo de grupos
consiste en elegir slo elementos de unos grupos. El objetivo de este muestreo es
generalmente descartar ciertos grupos que, por diversas razones, pueden impedir
la obtencin de buenos modelos.
. Muestreo Exhaustivo. Se trata de una exageracin del muestreo estratificado, con
motivaciones similares. Se procede de la siguiente manera: para los atributos nu-
mricos (normalizados) se genera al azar un valor en el intervalo posible; para los
atributos nominales se genera al azar un valor entre los posibles. Con esto obtene-
mos una instancia ficticia. El quid del procedimiento es que ahora buscamos la ins-
tancia real ms similar a la ficticia. Se repite este proceso hasta tener n instancias.
Ntese que el objetivo de este mtodo es cubrir completamente el espacio de ins-
tancias y evitar poner muchos ejemplos de las zonas muy densas. Lgicamente,
puede haber zonas donde no haya instancias, pero buscaremos de los alrededores
la ms cercana. Existen variantes de este tipo de muestreo, como por ejemplo el
muestreo por cuadrcula, en el que las instancias ficticias no se calculan aleatoria-
mente sino como una cuadrcula o grid sobre el espacio de instancias. Otra variante
ms sofisticada es ir modificando la probabilidad de extraer una instancia a medida
que se van extrayendo instancias, de forma que las instancias ms prximas a las
instancias ya extradas tengan menos probabilidad que las dems.
En la Figura 5.9 se muestran las diferencias, realmente apreciables, que se pueden producir
por utilizar diferentes tipos de muestreo (aleatorio simple, aleatorio estratificado, por
grupos, exhaustivo), todos ellos con un tamao de 20 instancias muestreadas. Tambin se
muestra punteada una posible clasificacin realizada por una tcnica simple (vecino ms
prximo), que ilustra, todava ms claramente, que los patrones detectadas por el modelo
pueden variar drsticamente dependiendo de la forma en la que se haya hecho el muestreo.
'1111

Captulo 5. Exploracin y seleccin 115

Sepuede observar que, en el ejemplo, el muestreo por grupos elimina la clase tringulo,
queno parece respetar ningn patrn y slo hace que empeoren los modelos. El muestreo
exhaustivoparece tambin mostrar buenos resultados, debido especialmente a que hay
zonas densas y muy desrticas en el espacio, y este muestreo corrige este tipo de
situaciones.Lgicamente, tambin se podra utilizar una combinacin de ambos tipos de
muestreo.
. ...."..
.. ..

".." ..
..

"::..:..:.."
=x" IJ.
x XX IJ
X XX X
x~xlJ IJIJ
Xx Xx IJ
X 1fbx
xx X IJ-DIJ
X
X
XX
X 'CJIJIJ
IJ IJ IJ ~dlii
1
11

Muestreo Muestreo :I'II


aleatoriosimple exhaustivo
!II
.. .. ..
.. li:
..

.
..
.
.... .. 11

x x IJ

x Illill
IJ

IJ IJ
IJ IJ
IJ IJ IJ IJ
IJ

1~11!
Figura 5.9. Representacin de diferentes tipos de muestreo.

A veces se pueden realizar varios muestreos en cascada, el primero, por ejemplo aleatorio
simple, para poder analizar mejor los datos y determinar grupos y, el segundo,
L
;

estratificado, dependiendo del resultado anterior.


En algunos de los casos anteriores hemos hablado de que se puede realizar sobremues-
treo, es decir "duplicacin" de algunos ejemplos. Este concepto, en el que una misma
instancia puede repetirse, admite muchsimas aplicaciones, adems de nivelar las
distribuciones de clases (balanceo), y muchsimas variantes. Por ejemplo, se pueden
realizar copias que no sean exactamente iguales, como puede ser introduciendo un poco de
ruido (errores aleatorios), para facilitar la generalizacin, o, directamente, generar ejemplos I1111
aleatorios utilizando la distribucin de los atributos observados en los datos reales. En el
caso de problemas de clasificacin, se puede optar por generarlos etiquetados o no
etiquetados. Este tipo de tcnicas se utilizan justamente en el caso contrario del que hemos
comentado antes, cuando hay pocos datos. Otro uso cada da ms popular del muestreo es
el realizar muestras dispares para obtener modelos diferentes y despus combinarlos. El
objetivo es bien diferente, obtener muestras que varen significativamente entre s. Por
]
tanto, estas tcnicas (como el bootstrapping usado para la tcnica bagging) se vern en el
Captulo 18.
Finalmente, vistos los tipos de muestreo existentes, nos queda la pregunta: cuntos
datos son necesarios? En el caso de validacin de hiptesis (cuando el muestreo se utiliza
para obtener el conjunto de prueba) existen tcnicas estadsticas para determinar cuntos
116 Introduccin a la Mineria de Datos

datos son necesarios para tener un nivel de confianza preestablecido (algunas, basadas en
la distribucin binomial o en la aproximacin por la normal, se vern en el Captulo 17).No
obstante, si el objetivo es determinar cuntos datos son necesarios para el entrenamiento de
un modelo, la respuesta es ms difcil. Depende, en general, del nmero de "grados de
libertad"ll que, a su vez, depende del nmero de atributos (y de los valores posibles de
cada uno). Adems, depende del mtodo de aprendizaje y (de su expresividad (por ejemplo
una regresin lineal requiere muchos menos ejemplos que una red neuronal). En general/la
tendencia en estos casos es utilizar un muestreo progresivo o incremental, en el que se va
haciendo la muestra cada vez ms grande (y diferente si es posible) hasta que se vea que
los resultados no varan significativamente entre un modelo y otro.

Estimacin de frecuencias con muestras pequeas y de alta dimensionalidad


Un problema general que se produce especialmente si tenemos muchas dimensiones y
pocos ejemplos es que ciertos valores agregados, como las frecuencias de aparicin, se
estiman mal. Por ejemplo, si tenemos los datos de ventas de productos de una empresa y
queremos saber la proporcin de sexos de los compradores por cada producto, podramos
tener algn producto con pocas ventas y obtener estimaciones dudosas. Digamos que en el
ltimo ao se han realizado 100.000 ventas, de las cuales tenemos qu~ 30.000 fueron
realizadas por hombres y 70.000 por mujeres. Supongamos que nos fijamos en un nuevo
producto que se acaba de lanzar y vemos que las ventas producidas, de momento, son slo
tres unidades, todas de compradores varones. Si estimamos la proporcin de sexos de este
producto tendremos que el 100 por cien son varones, que es cierto hasta ahora, pero cuya
extrapolacin ser muy mala para las futuras ventas. El problema es que la muestra es muy
pequea. Existe alguna manera de atenuar el problema?
En realidad este tipo de situaciones son muy frecuentes y, ms an, si se realizan
muestreos o se analizan datos cruzando unas dimensiones con otras. Para evitar este
problema, existen estimadores de frecuencias basados en suavizados (smoothing). El ms
conocido es el estimador basado en la ley de la sucesin de Laplace, que se define de la
siguiente manera:
n(sj)+l
Lapiace(s) = n(s) + alt
La estimacin de la frecuencia vendr dada por los casos favorables + 1 (es decir n(sf)+l)
dividido por los casos totales ms el nmero de posibilidades o alternativas (es decir
n(s)+alt). Si aplicamos el suavizado de Laplace al caso anterior, tenemos que la frecuencia
estimada ser de:
, 3+1 = -4 . 0+1 = -1
1"
(varon ) = - f, (muJer ) = -
J Lapiace 3+ 2 5' Lapiace 3+2 5
que es diferente del 100 por cien y del cero por ciento que tenamos sin correccin.
Cuando el valor de la muestra es grande, la correccin de Laplace no afecta prctica-
mente, como es de esperar, ya que si tuviramos muchos casos, en la frecuencia sin

11 Los grados de libertad representan, aproximadamente, cuantas cosas pueden hacer cambiar el estado o
salida de un sistema. Cuantas ms haya, es ms probable que algn patrn falso, por mera casualidad,
pueda conectar la salida con algunas de las entradas.
mI,

Captulo 5. Exploraciny seleccin117 u

correccinse puede suponer una buena estimacin. Cuando el valor es pequeo, como en
estecaso, se corrige la estimacin acercndose ligeramente a una distribucin a priori, 11

supuestasta uniforme (50 por ciento para hombres y para mujeres).


La correccin de Laplace asume una distribucin a priori uniforme, y no es muy
ajustableen el caso de que queramos suavizar ms o menos. El m-estimado es una
generalizacinde la correccin de Laplace que permite mayor flexibilidad. Supongamos Jlt
quetenemosuna frecuencia a priori para el evento iPRIod..s).El m-estimado se define de la
siguientemanera:

I(s) = n(s f) + m-!PRlORI(s) ,n


I
n(s)+m
La estimacin de la frecuencia vendr ahora dada por los casos favorables ms una
constantem multiplicada por la frecuencia a priori del evento dividido por los casos totales 11
+ m. Si aplicamos el m-estimado al caso anterior, en primer lugar debemos obtener la '1.

!PRIOu(S)que, segn todos los productos, es delpRIomCvarn)= 30 por ciento yiPRIomCmujer) =


70porciento.Por tanto, usando m=2,tenemos que la frecuencia estimada ser de:
, 3+2/3' . 0+27j 111

fm-estimada(varon)=3+2 -0,733, Im-estimada(muJer)=3+2 =0,267


Comovemos, los resultados pueden variar segn la frecuencia o distribucin a priori y el
valordem.A mayor valor de m tenemos un suavizado mayor. En general se suele escoger
1~I!j
unvalorde m entre 2 y 10.
La relacin entre el m-estimado y el suavizado de Laplace es clara. El suavizado de
Laplacees un caso particular del m-estimado cuando m es igual al nmero de alternativas o
posibilidadesy la distribucin original es uniforme.
Los suavizados son una de las primeras tcnicas de estimacin, ya que permiten 11111

extrapolarfrecuencias futuras y, en cierto modo, predecir frecuencias de sucesos. Estos


suavizadospermiten corregir patrones que podran verse por tener unas muestras muy
pequeas.El uso de estos estimadores suavizados es fundamental en mtodos bayesianos, I -~~

comoveremos en el Captulo lO, ya que se realizan productos de muchas probabilidades y


los suavizados anteriores evitan que ninguna de las probabilidades sea cero, ya que
siemprehay un valor mayor que cero en el numerador.
:'1 II~

5.4.2Seleccin de caractersticas relevantes. Reduccin de


dimensionalidad lO

/ lil
Laseleccinde caractersticas,variables o atributos (featureselection,en ingls) tiene cuatro
objetivosprincipales. En primer lugar, permite reducir el tamao de los datos, al eliminar
caractersticaso atributos de todos los ejemplos que puedan ser irrelevantes o redundantes.
Ensegundo lugar, una buena seleccin de caractersticas puede mejorar la calidad del 1:11

modelo, al permitir al mtodo de minera de datos centrarse en las caractersticas


relevantes.En tercer lugar, una buena seleccin de caractersticas permite expresar el
modeloresultante en funcin de menos variables; esto es especialmente importante cuando
se desean modelos comprensibles (rboles de decisin, regresin lineal, etc.). En cuarto
lugar,se puede requerir una reduccin de dimensionalidad a dos o tres caractersticas
118 Introduccin a la Minera de Datos

exclusivamente, con el propsito de representar los datos visualmente. Existen otras


razones para eliminar atributos, por ejemplo, cuando existen muchos datos errneos o
faltantes en un atributo, y es preferible deshacerse de l. Tambin es necesario para realizar
anlisis de componentes principales (visto en el captulo anterior), porque si no eliminamos
atributos identificadores estos pesarn ms que ningn otro.
CLlENTE-VEH
IDcliente
DNI
Nombre
Apellido1
CLlENTE-VEH
Apellido2
Apellido3 Cd.Postal
Direccin Seleccin FechaNac.
Cd.Postal TipoLicencia
Telfono1 FechaLicencia
Telfono2 TipoVehculo
FechaNac.
TipoLicencia
FechaLicencia
MatrculaVeh
TipoVehculo

Figura 5.10. Seleccin de caractersticas (atributos).

En principio, si disponemos de un problema con muchos atributos puede parecer que


siempre ser mejor que cuando tenemos pocos atributos. Por ejemplo, cuanta ms
informacin tengamos de cada cliente puede parecer que podremos hacer mejores
decisiones sobre las ofertas o productos que se le puedan dirigir. El problema es que la
gran mayora de mtodos de minera de datos pueden perderseentre tantas caractersticas
en un espacio que al tener alta dimensionalidad resulta estar ms desierto (especialmente si
las hay irrelevantes, redundantes o con valores errneos) y obtener modelos que se ajustan
a particularidades de los datos de entrenamiento y no de los datos en general. Esto ocurre
especialmente cuando existen muchas dimensiones pero no tenemos un nmero suficiente
de ejemplos para reducirlos "grados de libertad".
Algunos atributos son fciles de eliminar, por ejemplo si un atributo es constante, es
decir, tiene el mismo valor para todas las instancias es claramente eliminable. En general,
sin embargo, no es tan sencillo. Empecemos por los casos relativamente simples.
Considrese, por ejemplo, el caso de una compaa de seguros que intenta clasificar
entre clientes aptos para un tipo de seguro de vehculo y clientes no aptos. Si en los datos
de entrenamiento tenemos el identificador personal como atributo (por ejemplo, la clave
primaria de la tabla, el nmero del documento de identidad o de la licencia de conduccin,
el pasaporte, etc.), algunos mtodos de minera de datos pueden obtener reglas del estilo: si
el identificador= "12345678" entonces "apto". Lgicamente, esta regla sirve para "cubrir" los
datos de entrenamiento, pero es completamente intil para nuevos datos, ya que no habr
otro cliente futuro (aparte de l mismo), sobre el cual queramos utilizar el modelo, que
tenga el mismo identificador. Dicho de otra manera, el mtodo de aprendizaje ha sido
engaadoy el modelo se sobre ajusta o se especializa para los datos de entrenamiento, pero
no tiene ningn poder predictivo para otros datos. Debemos, por tanto, eliminar este
identificador antes del entrenamiento para permitir que el mtodo de minera de datos
Captulo 5. Exploracin y seleccin 119

obtengaotras reglas que se basen en la edad, en el sexo, en el nmero de aos de licencia


deconducir,etc.
Existen dos reglas generales para eliminar caractersticas, en especial los atributos
nominales,que resultarn familiares a aquellos que conozcan la tecnologa y terminologa
debasesde datos:
. Eliminacin de (partes de) claves can di datas: la regla general es eliminar cualquier
atributo que pueda ser clave primaria de la tabla (o que sea clave candidata o inclu-
so parte de clave candidata, parcial o totalmente). Por ejemplo, hay que eliminar
nmeros de documentos de identificacin, cdigos internos, nombre y apellidos,
direcciones (exceptuando, quiz, los cdigos postales), telfonos, e incluso fechas (si
stas no son relevantes). Para aquellos que no son familiares con la tecnologa de
bases de datos, una manera sencilla de saber si un atributo nominal es demasiado
especfico y debe ser eliminado es ver si tiene casi tantos valores como ejemplos. Si
no se elimina este tipo de atributos puede ser especialmente problemtico para ta-
reas de clasificacin o de regresin.
. Eliminacin de atributos dependientes: en la teora de la normalizacin de bases
de datos, cuando existen dependencias funcionales entre atributos se intenta nor-
malizar en varias tablas. Por ejemplo, cuando se tiene el cdigo postal, la ciudad, la
regin y el pas de un individuo, sabemos que con el cdigo postal tenemos la ciu-
dad y la regin, con la regin tenemos el pas, con lo que podemos establecer una
serie de dependencias funcionales que se deben normalizar en cuantas tablas sean
necesarias. Dado que los datos con los que trabajamos para minera de datos pue-
den provenir de una "vista minable" que ha desnormalizado los datos, muchas
veces debemos decidir si realmente necesitamos todos los atributos, ya que muchos
de ellos son redundantes. En este caso, una buena opcin puede ser mantener slo
el cdigo postal o, si el nivel de detalle es excesivo, puede interesar mantener slo
la ciudad o la regin. No eliminar los atributos dependientes es especialmente ne-
fasto a la hora de establecer reglas de asociacin o para las tareas de agrupamiento.
Aunque determinar los atributos anteriores (claves candidatas y atributos dependientes) no
es sencillo en muchos casos, es mucho ms fcil que determinar otras caractersticas que
tampoco son relevantes o son redundantes. Por ejemplo, en el caso de la compaa de
seguros podemos pensar que la procedencia del cliente puede ser irrelevante y luego no
serio, o puede serio para algunas tareas de minera de datos pero no para otras. En general,
detectados los atributos irrelevantes y redundantes, debemos utilizar tcnicas ms
sofisticadas si queremos seguir reduciendo la dimensionalidad, en particular para los
atributos numricos. Existen dos tipos generales de mtodos para seleccionar caractersti-

.
cas.
Mtodos de filtro o mtodos previos: se filtran los atributos irrelevantes antes de
cualquier proceso de minera de datos y, en cierto modo, independiente de l. Las
tcnicas, como veremos, son fundamentalmente estadsticas (medidas de informa-
cin, distancia, dependencia o inconsistencia). El criterio para establecer el subcon-
junto de caractersticas "ptimo" se basa en medidas de calidad previa que se cal-
culan a partir de los datos mismos.
120 Introduccin a la Minera de Datos

. Mtodos basados en modelo o mtodos de envolvente (wrapper):la bondad de la


seleccin de atributos se evala respecto a la calidad de un modelo de minera de
datos o estadstico extrado a partir de los datos (utilizando, lgicamente, algn
buen mtodo de validacin). Lgicamente, este tipo de tcnicas requieren mucho
ms tiempo que las otras, ya que para evaluar hay que entrenar un modelo. Ntese
que el mtodo de minera de datos utilizado para hacer la seleccin de atributos no
tiene por qu ser el mtodo de minera de datos que se utilizar finalmente. Por
ejemplo, se puede utilizar una red neuronal para determinar los atributos ms sig-
nificativos y, una vez determinados, utilizar un rbol de decisin para obtener un
modelo comprensible utilizando slo las caractersticas seleccionadas para generar
las reglas del modelo. Tambin se puede utilizar directamente un rbol de decisin
y examinar qu atributos no se utilizan o se utilizan en menos reglas (y menos im-
portantes). Tambin se puede analizar slo la particin superior y eliminar los atri-
butos cuyas particiones produzcan menos ganancia de informacin o la medida
que se utilice generalmente como criterio de particin en el rbol de decisin (se
ver en el Captulo 11).
Sean de filtro o basados en modelo, ambos mtodos pueden ser iterativos, es decir, se van
eliminando atributos y se va observando el resultado (sobre la medida de calidad previa o
la medida de calidad del modelo). Se van recuperando o eliminando ms atributos de una
manera iterativa, hasta que se obtiene una combinacin que maximiza la calidad. Existen
muchas maneras de realizar este procedimiento, por ejemplo, empezando con un atributo y
elegir el que d mayor calidad de la seleccin con atributos, despus aadir el atributo que
d mayor calidad de seleccin con dos atributos, y as hasta que no se mejore la calidad o se
llegue al nmero deseado de atributos (estrategia forward). La manera inversa (comenzar
con todos e ir eliminando) o maneras mixtas tambin se pueden utilizar. Otra manera, ms
simple pero ms costosa, consiste en realizar selecciones aleatorias de atributos, hasta que
se encuentra una seleccin satisfactoria (estrategia backward).El objetivo en los dos casos es
el mismo, obtener un sub conjunto de atributos representativo (que contenga la mayor parte
de la informacin que exista en el conjunto inicial) y que no exista la menor correlacin
entre los atributos seleccionados.
Veamos brevemente algunos mtodos clsicos que se utilizan para establecer la
independencia o importancia de las variables originales. En algunos casos hablaremos de
que las tcnicas se aplican para valores nominales y en otros para valores numricos,
aunque, en realidad, la mayora de tcnicas para valores nominales tambin se pueden
utilizar para valores numricos utilizando discretizacin y viceversa, usando numerizacin
(como vimos en el captulo anterior). Cuando existen variables numricas y nominales, lo
ms normal es convertidas todas a numricas (despus de un primer filtro de las variables
nominales que, como hemos visto, es ms sencillo).
La primera tcnica que vamos a ver consiste en realizar una matriz de correlaciones,
conocida tambin como anlisis correlacional. Considrese, por ejemplo, el caso en el que
tenemos donantes de sangre en un hospital con los siguiente atributos numricos: edad,
tensin (sangunea), (ndice de) obesidad, colesterol, (nivel de) tabaquismo, (nivel de)
alcoholismo, pulsaciones (por minuto en reposo) y hierro (en sangre).
En la Tabla 5.1 se muestran las correlaciones entre los atributos para una poblacin de
800 individuos (la matriz es simtrica, lgicamente, ya que la correlacin tambin lo es):
Captulo 5. Exploracin y seleccin 121

Esta informacin de pacientes sanos puede utilizarse para ver qu atributos estn ms
estrechamenteasociados y qu atributos parecen ser ms independientes. En este caso,
podemosobservar que los dos atributos ms correlacionados son obesidad y tabaquismo,
tensiny tabaquismo, as como colesterol y obesidad. En algn caso se podra pensar en
utilizaraquellos que sean ms fciles de obtener con fiabilidad (por ejemplo, tensin y
obesidad)y eliminar el tabaquismo para obtener otros modelos.
ATRIBUTO Edad Tensin Obeso Colest. Tabaq. Alcohol. Puls. Hierro 111
Edad 0,63 0,34 0,42 -0,02 0,15 0,12 -0,33
Tensin 0,63 0,22 0,56 0,72 0,43 0,27 -0,08
Obesidad 0,34 0,22 1\11%" 0,67 0,72 0,32 0,32 0,21
Colesterol 0,56 0,67 %i% 0,52 0,27 0,40 0,45
0,42
Tabaquismo -0,02 0,72 0,72 0,52 0,58 0,39 -0,12
Alcoholismo 0,15 0,43 0,32 0,27 0,58 0,23 -0,22
Pulsaciones 0,12 0,27 0,32 0,40 0,39 0,23 !i! -0,15
Hierro -0,33 -0,08 0,21 0,45 -0,12 -0,22 -0,15
Tabla 5.1. Matriz de correlaciones.

Tambinse observan atributos aparentemente independientes, como el tabaquismo y la


edad.Estoen ningn caso sugiere que si se desea predecir el tabaquismo, la edad se ha de
eliminar(la relacin puede existir a distintos segmentos de edad o puede tener forma de
campana).La informacin anterior es suficientemente ilustrativa para ayudar en la
seleccin,aunque siempre hay que realizado de manera cautelosa. En realidad, un estudio
correlacionalpermite, adems de ayudar en la seleccin, comprender los datos y, por tanto,
formaparte de la exploracin de datos que estamos tratando en este captulo.
El siguiente paso en sofisticacin en el caso de atributos numricos es pasar a una
tcnicabasada en modelo(y no defiltro, como la anterior), en concreto un anlisis por
il
modelolineal. Si el objetivo fuera predecir el azcar en sangre a partir de los atributos
anteriores,podramos realizar una regresin lineal, es decir una funcin del estilo:
y = ao + ax + a2x2 +... + anxn
dondelas Xison los atributos originales y los ason los coeficientes estimados (veremos en
detallela regresin lineal y no lineal en los captulos 7 y 8, de hecho el mtodo es
igualmente vlido para regresiones no lineales). Por ejemplo, podramos tener los
siguientescoeficientes (suponiendo que hemos normalizado los valores anteriormente en
unaescalade Oal):

Podemosver que el atributo que ms influye en el modelo es la obesidad y el que menos


(enrealidad, nada) el nmero de pulsaciones. Al ser un modelo conjunto, las variables
dependientesse compensan unas con otras y aunque el nmero de pulsaciones pudiera
correlacionarpositivamente con el azcar, el modelo lineal destaca que la influencia se
puedeextraer de otras variables. Esto, en realidad, es slo el principio de mltiples tcnicas
del anlisis multivariante (multivariate analysis). Por ejemplo, si quisiramos saber si el
colesterol,el tabaquismo y las pulsaciones no influyen en el azcar y, son, por tanto,
descartables, deberamos usar, por ejemplo, el Anlisis de la Varianza (conocido
122 Introduccin a la Minera de Datos

popularmente como ANOVA y que puede encontrarse en muchsimos libros de texto


[Glantz & Slinker 2000; Pea 2002b]).
Una forma diferente de ver el problema, en especial cuando los atributos son nominales,
es realizar un anlisis de frecuencias, es decir, ver para cada combinacin de valores de
atributos cuntos casos hay12. Por ejemplo, supongamos una empresa de vigilancia que
tiene ciertos sensores instalados en un comercio, registrando como atributos: "luz", con
valores {oscuridad, penumbra, claridad), "horario", con valores {abierto, cerrado},
"presencia zona 1", con valores {s,no}, "presencia zona 2", con valores {s,no} y "ruido",
con valores {nada, poco, bastante, mucho}. Los valores de los atributos se registran cada
diez segundos, y dan como resultado 8.640 ejemplos diarios, muchos de los cuales,
lgicamente, estarn repetidos. Podemos representar los 60.480 ejemplos de toda una
semana en una tabla de frecuencias multidimensional:
Pr.1 s 00
Pro2 s I 00 s 00
Ruido o I D b mi o p I b m o D I b m I o I D b 1m
Horario Luz
oscuridad 3 22 173 84 12 77 41 33 5 16 70 30 20 2 35 13
abierto IDeoumbra 34 522 1253 227 41 222 533 227 32 532 330 134 4 229 251 53
claridad 137 1623 2357 5262 137 123 325 1062 30 634 631 732 . 25 103 225 362
oscuridad 31 7 2 o 131 87 32 5 2031 537 178 36 389. 1284 332 95
cerrado IDeoumbra 63 22 7 1 223 5 o O 823 325 77 22 3035 1852 210 43
claridad 171 124 163 122 136 124 67 12 271 341 478 327 771 924 1267 766

En la tabla anterior, se pueden observar algunas combinaciones mucho ms frecuentes que


otras y qu combinaciones son ms frecuentes y, sobre todo, cules son ms improbables
(quiz son stas las que se desea estudiar para detectar problemas de seguridad). Tambin
podemos agregar teniendo en cuenta slo un par de atributos (esto sera similar a utilizar
los operadores OLAPslicey roll-across, vistos en el captulo anterior):
Luz
oscuridad penumbra claridad
I s 740 3380 11945
Preso 1 I no 28576 7952 7887

Cuando nos centramos en slo dos variables, esta tabla de frecuencias se denomina matriz
de incidencias o tablas de contingencia bidimensionales (two-way contingency tables).Dicha
tabla tambin se puede representar grficamente con un histograma, como los vistos en el
captulo anterior. Los anlisis que parten de este tipo de matriz se denominan anlisis de
correspondencias (correspondenceanalysis), que nuevamente se engloba, junto otras tcnicas,
dentro de lo que se denomina anlisis multivariante (multivariate analysis), por tener una
base algebraica, como algunas tcnicas vistas en el captulo anterior (anlisis de
componentes principales). El anlisis de correspondencias se basa en realizar tests ji-

12 Sitenemos en cuenta todos los atributos, en general el nmero de instancias por combinacin es Oo 1,
suponiendo que no hay ejemplos repetidos. La cosa cambia cuando consideramos un sub conjunto de
atributos o es un dominio donde se realiza medidas muy frecuentes y pueden aparecer datos repetidos.

""""---
Captulo 5. Exploracn y seleccin 123 ,
111

cuadrado13 (X2)para saber si el efecto de los valores de una variable es independiente de los
valoresde la otra. En general, se puede transformar la tabla anterior en una matriz de
distanciasji-cuadrado, que permite, de un solo vistazo, ver qu valores influyen en otros y 111

siestoes significativo. En el Captulo 9 de reglas de asociacin veremos un ejemplo sencillo


del test ji-cuadrado para determinar reglas de dependencias. Ms informacin sobre el
anlisisde correspondencias se puede obtener en [Greenacre 1984; Berthold & Hand 2003]
o en libros de anlisis multivariante, como [Pea 2002b; Johnson 1999; Krzanowski 1988].
Existenmtodos basados tambin en el ji-cuadrado, como el mtodo CHAID (chi-square .1

automatic interactiandetectian), que, aunque, en realidad, es un sistema de construccin de


rbolesde decisin para clasificacin y regresin, se utiliza, fundamentalmente, para
detectarla interaccin entre variables [Kass 1975].
En cierto modo este tipo de "correspondencias" se parecen a las reglas de asociacin, a
las que se dedica el Captulo 9. No obstante, no hay que confundidas. Por ejemplo, las
asociacionesde valor no sirven, en general, para determinar qu variables son redundantes.
En realidad, adems de las medidas de soporte y precisin, podramos ver si las
asociacionesson significativas utilizando un anlisis de correspondencias.
Siguiendo en sofisticacin, los modelos lineales generalizados, en particular los
I
modelos lag-linear, tambin pueden utilizarse para analizar atributos nominales y, en I
particular,tablas de frecuencia. En concreto, a un modelo lineal, se asume que, adems de
unasalida logartmica, tenemos una distribucin de Poisson sobre los elementos para cada
combinacinde elementos. Ms formalmente,
y ';:jPoisson(Jl) donde log(Jl) = ao + ax + a2x2 +... + anxn
Laidea es que el modelo determina la cardinalidad o la frecuencia de cada casilla de la
tablade frecuencias multidimensional. Lo interesante no es predecir estos valores (que los
sabemos)sino estimar la. influencia de cada valor y factor en el modelo, con el objetivo de
ver los atributos y pares de atributos que son ms relevantes. Para ello se utiliza una
medidadenominada "desviacin" (deviance).Los atributos o interacciones de atributos con
mayordesviacin se preservan. El resto se descartan. Una idea similar es el uso de otros
modelos lineales generalizados, como por ejemplo un modelo logstica. Para ms
informacinsobre el uso de modelos lineales generalizados para la seleccin de atributos,
sepuede consultar [McCullagh & Nelder 1989]. Adems, en la Seccin 7.7 trataremos los
modeloslineales generalizados.
Existen muchsimos otros mtodos para realizar seleccin de atributos, y algunos de
elloslos comentaremos brevemente junto con algunas tcnicas de la Parte 111(como por
ejemplociertas tcnicas evolutivas que se comentarn en el Captulo 15 (Seccin 15.3.3).
Muestra de esta variedad es el ejemplo que veremos a continuacin en el que una
herramienta de minera de datos puede tener decenas de mtodos de seleccin. Un buen
textode referencia sobre seleccin de atributos es [Liu & Motoda 1998b]. Respecto a la
automatizacin de este anlisis exploratorio de datos, se puede consultar [Becher et al.
2000].

13 Ji-cuadrado es el nombre correcto de esta distribucin, por la pronunciacin de la letra griega X. No


obstante, cada vez se utiliza ms frecuentemente el trmino "Chi-cuadrado" para referirse a esta
distribucin,probablemente por influencia del ingls.
124 Introduccin a la Mineria de Datos

Para terminar, hay que resaltar que la caracterstica principal y la gran ventaja de los
mtodos de reduccin de dimensionalidad mediante seleccin de caractersticas (a
diferencia de los basados en transformacin o sustitucin de unos por otros, como el
anlisis de componentes principales) es que el conjunto final de caractersticas es un
sub conjunto de los atributos originales y, por tanto, los modelos extrados con posteriori~
dad se definirn en funcin de (parte de) los atributos originales del problema y, por tanto,
no perdern comprensibilidad.

5.4.3 Ejemplo de seleccin de atributos


Vamos a realizar un ejemplo de seleccin de atributos utilizando la herramienta WEKA
(vase el Apndice A). Vamos a utilizar para ello el conjunto de datos "labor" (vase el
Apndice B), que recoge informacin (16 atributos: ocho nominales y ocho numricos)
sobre acuerdos sindicales, indicando si stos fueron buenos o malos (la clase). El conjunto
slo recoge 57 instancias, por lo que, para poder extraer un modelo fiable, sera interesante
realizar una seleccin de atributos previa para aumentar la proporcin entre nmero de
ejemplos y nmero de atributos. En este ejemplo vamos a analizar la relevancia respecto a
la clase,es decir vamos a intentar identificar un subconjunto de atributos que estn
fuertemente relacionados con la clase (y por tanto ayuden a su prediccin) y., adems, estn
poco relacionados entre s.
El sistema WEKA incorpora una gran cantidad de mtodos para estudiar la relevancia
de atributos y realizar una seleccin automtica de los mismos. Para utilizar estos mtodos,
una vez cargados los datos, es necesario elegir uno de estos mtodos de seleccin (en el
entorno "Explorer", se encuentran en la pestaa "Select Attributes"). Existen una serie de
evaluadores, entre los que, adems de los componentes principales, hay dos tipos:
"SubSetEval" (evaluadores de sub conjuntos o selectores) y "AttributeEval" (prorrateadores
de atributos). Los primeros necesitan elegir un mtodo o estrategia de bsqueda de los
sub conjuntos ("Search Method"), como los que hemos visto antes (jorward o backward),
adems de una estrategia exhaustiva (prueba todos los sub conjuntos posibles) y otras. Los
segundos slo pueden combinarse con un "Ranker", ya que no seleccionan atributos sino
que los ordenan por relevancia.
Veamos cmo se comportan distintos mtodos de seleccin con este conjunto de datos.
La siguiente tabla muestra una serie de mtodos y los atributos seleccionados por ellos:
Estrategia de Atributos
Mtodo de seleccin Filtro/Modelo Opciones bsqueda seleccionados
CfsSubSetEval Filtro Valores por defecto "ExhaustiveSearch" 2,3,11,13
"ExhaustiveSearch" Muy lento
"ForwardSelection" 2,11
Modelo j4.8.j4.8, "BestFirst" 2,11
valores por defecto
"GeneticSearch" 3,6,7,13
WrapperSubSetEval Modelo
"RankSearch" 2,3,11
Modelo "ForwardSelection" 2,6,10,13
LogisticRegression, "GeneticSearch" 3,6,8,10,13,14
valores por defecto "RankSearch" 2,3,11,13
ConsistentSubSetEval Filtro Valores por defecto "ExhaustiveSearch" 2,310,16
Tabla5.2. Selecionesrealizadas con WEKA con mtodos "Search".
Captulo 5. Exploracin y seleccin 125

Comose puede observar, se han utilizadomtodos de filtro y mtodos que utilizan modelo
(envolventes,wrappers).Entre estos mtodos de modelo, hemos elegido como modelo el
J4.8(la versin del WEKA del clasificador por rboles de decisin C4.5, vase el Captulo
11)y la clasificacin por regresin logstica (vase el Captulo 7).
Para analizar mejor las selecciones anteriores vamos a utilizar ahora prorrateadores de
atributos (para todos ellos hay que elegir "Ranker" como estrategia de bsqueda). En la
Tabla5.3 se muestra el orden de los 16 atributos segn varios mtodos de identificacin de
larelevanciade atributos disponibles en WEKA.
A la vista de las dos tablas tenemos bastante informacin para tomar una decisin a la "11
,
hora de seleccionar los atributos ms relevantes. Los atributos 2 y 3, que representan los
incrementos salariales en los dos primeros aos de contrato, son los dos atributos ms 111 1I

relevantespara llegar a un buen acuerdo, ya que aparecen en casi todas las selecciones y
aparecenen primer lugar en la mayora de los rankings.
InI!

Filtro I Estrategia de
Mtodode evaluacin Orden de los atributos
Modelo bsqueda
RelieFAttributeEval Filtro "Ranker" 14,2,3,12,16,4,7,13,11,9,8,6,10,5,15,1 !!l1
InfoGainAttributeEval Filtro "Ranker" 2,3,11,14,16,12,13,9,7,5,15,4,10,8,1,6
GainRatioAttributeEval Filtro "Ranker" 2,3,11,13,14,16,9,15,12,7,5,4,10,8,1,6 1111,
SymUncertAttributeEval Filtro "Ranker" 2,3,11,14,16,13,12,9,15,7,5,4,10,8,1,6
OneRAttributeEval Filtro "Ranker" 13,11,16,7,10,2,3,5,14,9,15,6,12,4,1,8
ChiSQuaredAttributeEval Filtro "Ranker" 2,3,11,14,16,12,13,9,7,5,15,4,10,8,1,6 11

Modelo "ForwardSelection" con


WrapperSubSetEval 2,11,1,10,8,4,5,3,15,12,6,9,13,7,16,14
i4.8.i4.8 qenerateRankinq="true"
Modelo "ForwardSelection" con
WrapperSubSetEval 2,13,10,6,15,5,4,3,7,9,14,16,1,8,11,12 I!I
Logistic generateRanking="true"
Tabla 5.3. Seleciones realizadas con WEKA con mtodos "Ranker",
~jl
Siguiendo con los atributos, el atributo 11 suele tambin aparecer seleccionado o bien
colocadopor los distintos mtodos anteriores. No es dificil ver, tampoco, que cuando el ",11
I
atributo11 ("vacaciones") aparece mal colocado, el atributo 10 ("facilidades de formacin")
aparece muchas veces en su lugar, sugiriendo que ambos estn relacionados. Para vedo
11lid
podramos estudiar ambos atributos separadamente. Para ello, como ellO es nominal y el 11

11es numrico, deberamos o bien convertir ellO a numricos (y estudiar la correlacin) o


bien convertir el 11 a nominal (y estudiar las frecuencias conjuntas). Teniendo en cuenta , ,il,
estas consideraciones, podramos seguir mirando para determinar qu subconjunto nos
interesams. En cualquier caso siempre es preferible elegir una de las selecciones ya hechas 1111

que realizar esta seleccin manualmente, por ejemplo la realizada por el mtodo
CfsSubSetEval(2,3,11,13),que incluye los atributos 2,3 Y 11. Una seleccin hecha por algn ,11
mtodoasegura poca relacin entre los atributos elegidos.

5.5 Lenguajes, primitivas e interface s de minera de datos


A lo largo de los dos ltimos captulos y, en especial, en este ltimo, hemos visto que
podemos realizar una serie' de exploraciones, transformaciones, vnculos, modificaciones,
selecciones,etc., con el objetivo de obtener una vista minable, acompaada de una tarea a
realizar y un mtodo para llevada a cabo, una evaluacin de calidad, un conocimiento
previo y una manera de presentar los patrones obtenidos, como vimos en la Figura 5.1.
126 Introduccin a la Minera de Datos

Todo ello es necesario para realizar el proceso de minera de datos. La pregunta que surge I
es la siguiente: cmo especificamos este conjunto de elementos? Para ello, podemos
utilizar tres tipos de medios para especificar los componentes: lenguajes de consulta,
conjunto de primitivas o interfaces integrados.
. Lenguajes de consulta: llamados tambin lenguajes de consulta inductivos o de
minera de datos, permite enfocar el proceso de minera de datos de una manera
similar al proceso de consulta de una base de datos. Ya sea en una o ms instruc-
ciones del lenguaje, estas consultas obtienen "modelos" o conjuntos de reglas a
partir de los datos, siguiendo las especificaciones establecidas en las consultas.
. Conjuntos de primitivas o interfaces middleware: en vez de proporcionar un
lenguaje, se proporciona una serie de primitivas que, junto a un lenguaje de pro-
gramacin (C++,Java, Python, etc.), permiten especificar los componentes o realizar
todos los pasos previos a la minera de datos y la minera de datos propiamente
dicha. Generalmente este conjunto de primitivas se organizan en interfaces de pro-
gramacin de aplicaciones (API, Application ProgrammingInterface).Otro tipo de
interfaces son aquellos que permiten interrelacionar servidores OLAP con aplica-
ciones que realicen anlisis a travs de un modelo cliente/servidor.
. Interfaces o entornos integrados visuales: basados en la idea de flujo de da-
tos/informacin/conocimiento, presentan una serie de nodo s que tienen una serie
de entradas y una serie de salidas, lo que permite interconectarlos. Esto permite ver
todo el proceso como un flujo que se origina en la informacin y que termina en los
patrones o en su evaluacin. Las herramientas grficas, de seleccin, de transfor-
macin, de modelado, de evaluacin, etc., son "nodos" del sistema.
Aunque no existe una distincin estricta entre ellos (de hecho existen interfaces integradas
que tienen lenguajes de macros que estn basados en primitivas) vamos a describir las tres
aproximaciones separadamente.
La gran ventaja de las dos primeras aproximaciones es que permiten definir estndares
(sobre los cuales se puedan realizar interfaces). Como veremos a continuacin, es
sorprendente que exista ms consenso en las interfaces y entorno s visuales (el parecido
entre ellos es muy alta) que entre los lenguajes y primitivas (cuya disparidad es alta, como
veremos).

5.5.1 Lenguajes de consulta de minera de datos


Cuando hablamos de vista minable, nos puede parecer que podramos utilizar un lenguaje
de consulta como el SQL y alguna herramienta "reports" para realizar estas vistas minables.
Presentadas las transformaciones y la exploracin requerida, podramos considerar utilizar
herramientas OLAP, ya que permiten transformar y agregar los datos de una manera ms
flexible, cmoda y, sobre todo, eficiente. Si bien todo esto es cierto, estos lenguajes o
herramientas no son suficientes para especificar todos los elementos vistos en la Figura 5.l.
Con el objetivo de especificar no slo la vista minable, sino adems todos los elementos
asociados, han aparecido una serie de lenguajes para la minera de datos. Algunos de estos
lenguajes ven el descubrimiento de conocimiento en bases de datos como un procesode
consulta a una base de datos [Imielinski & Manilla 1996].Dependiendo del lenguaje se
especifican unas cosas u otras, aunque todos los lenguajes, al menos, permiten especificar
Captulo 5. Exploraciny seleccin127

1I

la vistaminable,el tipo de patrn o reglas a extraer y algunos criterios de evaluacin a


cumplir.Aunque la mayora de lenguajes de consulta de minera de datos tienen sus
orgenesa mitad de los aos 90, diez aos despus, a la hora de escribir este texto, la
situacines similar a la situacin de mltiples propuestas que aconteci en los 60 y 70 hasta
queel SQL se instaur poco a poco corno el lenguaje de consultas estndar para bases de III!I

datosrelacionales (y hoy en da objeto-relacionales).


Por tanto, veamos simplemente unas pinceladas de estos lenguajes en forma de
ejemploscomentados. El lector puede seguir las fuentes y los enlaces para seguir el estado
actualde estos lenguajes y de su estandarizacin. 1I1
Comencemos por la propuesta M-SQL, que se origin a mediados de los 90 [Imielinski
et al. 1996].Este lenguaje se centraba inicialmente en pocos tipos de patrones, bsicamente
reglasde asociacin. En la Figura 5.11 se muestra que la vista minable se delega a unos
parntesis,donde se pone el nombre de una tabla o una vista (en el ejemplo con nombre 11
"T").Esto significa que la vista minable se construye con SQL estndar. Lo que s se I
permite especificar en la consulta son restricciones sobre la forma del modelo (en el
ejemploque en el consecuente de las reglas de asociacin debe aparecer el atributo" Age").
Tambinse pueden especificar restricciones sobre la calidad o la evaluacin del mismo. En
estecaso, que el soporte sea mayor que 1.000 (el nmero de instancias en las que la regla a
111'
extraerse aplica satisfactoriamente) y que la confianza sea mayor que 0,65 (que de las que
sepueda aplicar, el 65 por ciento de las veces se aplique con xito).
I ''''''''''''''''''''''''''''''''~'''''''''''''~ VISTAMINABLE
SELEC~,r.~~~,
,~!,~~!.L,~..""",.."..".."
WHERE :,~:~g,I'!~~9~~!1,t..:=.J..5,~~,~~..=:..:),J}+""''''''''.RESTR. DE FORMA DEL MODELO
:R:sp'po'rF';: '1000"'" ':
:R,Confidence
'"'''''' , > 0.65'
"..", ..l. :..., ~ , RESTR.DECALIDAD
Figura 5.11. Ejemplo de consulta de minera de datos en el lenguaje M-SQL.

Sepueden indicar otras restricciones sobre el antecedente (R.Body). 1I11

Otra propuesta se denomina DMQ o DMQL (Data Mining Query Language), original- l'

mente presentado en [Ng et al. 1998] y extendido en [Han & Kamber 2001]. ste es un
lenguajemucho ms completo y permite expresar la vista minable (especificando tablas e
I

incluso base de datos de origen), el tipo de conocimiento a extraer (asociaciones,


clasificacin,etc.), las medidas de evaluacin o de inters para determinar los patrones
~
vlidos y la manera de presentar el resultado. Entre los aspectos ms destacables del
lenguajepodemos citar el hecho de que se puede definir conocimiento previo en forma de
jerarquas,para los procesos de generalizacin.
MINE :~i.A~'~if.rCAfio':""""""""""""" .."",.."..,. TAREA
'1In \;...,..'u',.. "~,",i,~"'" :""""""""",..,,'.
[
:1\I~1\T
LI:l~l.Ve.LMl.esgo :., .., ,. FORMA DEL MODELO
:~~==~fi~fiYfi~P:~: (entradas y salidas)
:rROMCliente
:1P=: MW;r=!%~=!%!:=~f:9M MP:IJ,:
C, Compra M :
;vHERE
C.codcli = M.codcli AND ~...~ VISTA MINABLE
: k.MM,'::;;=..~.Q,A~A,k.Ma(;I..-;..4C>.:
I .
,..,..,.."",..".
:O'iS'PLAy"S' ':Yes"..: , , '1"'''''''''''''' PRESENTACION DEL MODELO

Figura 5.12. Ejemplo de consulta de minera de datos en el lenguaje DMQL.


Enla Figura 5.12 se muestra una consulta para clasificar el riesgo de crdito a partir de dos
atributos (ingresos y ocupacin) de los clientes que hayan hecho compras y que tengan
128 Introduccin a la Minera de Datos

entre 30 Y 40 aos. Para ms informacin de esta propuesta, se puede consultar [Han &
Kamber 2001].
Una de las propuestas que se ha hecho ms popular (como no poda ser de otra manera,
debido al proponente) es el "OLE DB for Data Mining" de Microsoft, que es, en realidad,
una extensin del protocolo de acceso a bases de datos OLE DB. En realidad es una
extensin del SQL de este protocolo para trabajar con modelos de minera de datos (DMM,
Data Mining Model). El proceso se estructura en tres fases: crear un modelo vaco, entrenar
el modelo y realizar predicciones.
La manera de crear un modelo vaco se ilustra en la Figura 5.13.
I CREATE MINING MODEL(~~,~~Rg~~'~,q'~~'?:}
,...,...,..I, NOMBRE DEL MODELO
(
[IDCliente] LONG KEY,
:,'f F;rC;fe'si'Y""" TEXT""'" D'!S'CiET'E;""""'" ":
:. [Ingresos] TEXT DISCRETE, :...
,
""'" FORMA DEL M~DELO
y salidas)
; [Edad] 1 11"""" (entradas

LONG CONTINUOUS,; .

~.J.~Ay~,~~.~~.~~}?
J.., .~~,~!..,.,.., 9.I.~~~!=.T!="~,~~R~.q!,~:
)
USING :"
. ['Micros'of"t"De'ci'slon"Tree
, ,J":"'''''''''''''''''
., ~ TAREA Y MTODO

Figura 5.13. Creacin de un modelo vacio en "OLE DB for Data Mining".

En realidad, esto simplemente le da un nombre al DMM y cules van a ser sus entradas y
sus salidas (la forma que va a tener). A continuacin, lgicamente, hay que entrenar el
modelo. Para ello, y de una manera bastante peculiar y original al mismo tiempo, se utiliza
una variacin de la sentencia INSERTINTO del SQL,como se ve en la Figura 5.14.
I

INSERT INTO [RiesgoCrdito]


( [IDCliente],[Profesin],[Ingresos],
[Edad], [NivelRiesgo] )
OPENROWSET(' [Provider= ,MSOLESQL , ,

'usuario', 'contrasea',
{S'ELECT"
,
[i"oc"ii'e;iie'j:' [p'ro'fe's i6;;j ',"""""': .
: [Ingresos],[Edad] ,[NivelRiesgo] :'~""'~VISTA MINABLE
.
: FROM [Cliente]I

) ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
.:
Figura 5.14. Entrenamiento de un modelo en "OLE DB for Data Mining".

A diferencia del INSERT del SQL (que inserta datos en una tabla normal) lo que realmente
esta instruccin hace es analizar los casos que le introduzcamos (la vista minable) y
construir el contenido del DMM.
Finalmente, para usar el modelo, ste se aplica a nuevos datos. La manera de hacerla es
similar a la concatenacin (juncin) de dos tablas relacionales, considerando el modelo
como una tabla y los datos a predecir como otra tabla. El resultado es una nueva tabla con
los datos que queramos (todos o slo las predicciones). Esta ltima parte se ilustra en la
Figura 5.15.
11,,,
11111

,",,1

Captulo 5. Exploracin y seleccin 129

SELECT ClienteIDl, R.NivelRiesgo,


PredictProbability(R.NivelRiesgo)
APLICACiN A
FROMRiesgoCrdito R fpi~D"icTio'"joiN'cii"~~'t~'~'~'~' C
OTROS DATOS
ON R. Profesin=c':Pi"of'es"iO'ri..mm,...m m ..m 111

1111

AND R.Ingresos=C.Ingresos 111

AND R.Edad=C.Edad
111

Figura 5.15. Usodeun modeloen "OLE DB for Data Mining".


Estaparte permite, por ejemplo, si en el SELECT aadimos C.NivelRiesgo, obtener una 111

tablacon dos columnas, una para el valor predicho y otra para el valor real, con lo que
podramosutilizada para validacin. Illilll'
,1
Quizla propuesta de Microsoft es una de las ms difundidas, aunque existen algunas
propuestasms recientes de estandarizacin. In

Otrapropuesta interesante es el estndar a incluir en el SQL sobre minera de datos, en


concreto(SQUMM Part 6: Data Mining). Esta propuesta, en estandarizacin por el
ISO/IEC,define mediante tipos definidos por el usuario (UDTs, User Defined Types), varios
modelosde minera de datos, parmetros para los algoritmo s, modos de aplicar el modelo
aunafilade una tabla, etc.
Vemoslocon un ejemplo; creemos en primer lugar la vista minable:
:visiaMi'riabi'~"'EW"
Dr(MiiiingDat'a'(,:c''"te',;)"""""" '.
: References: table Cliente DEFINICiN
: Field 1: name "Profesin", alias "A1", type: CAT DE LA VISTA
Field 2: name "Ingresos", alias "A2", type: CAT MINABLE

\ ',...Field 3: ,.,..,..,
name "Edad", alias ,........................
"A3", type: NUM

Figura 5.16. Definicin de la vista minable con "5QL!MM Part 6: Data Mining".

La definicin de "alias" viene motivada porque hay que realizar un mapeo entre esta vista
minable y la tabla de destino (mediante DM_MiningMapping(...)), y los nombres deben "
coincidir.A continuacin hemos de elegir entre cuatro tareas bsicas: reglas de asociacin 1,
(Rule),agrupamiento (Clus), clasificacin (Clas) y regresin (Reg). Hemos de determinar
tambin los parmetros de cada mtodo. Por ejemplo, supongamos que tenemos definido
un mapeo con nombre "Mapeo"; para definir y entrenar un modelo de reglas de asociacin
sehara de la siguiente manera:
RESTRICCiN DE ::1
Parametros= (((NEW DM_RuleSettings()) 11

FORMA DEL
.
DMJuleUseMapping (Mapeo) ) ...""
""'''''''''''''''''''''''''''''' ................ MODELO
~

:. DM rUleSetGroup ("A2") ~...".. "


'u,o..;t;.,o.'J'J'J'.'.!'N.!'."J'w"J','NJ','J',',o.'.!'.'V'"""", RESTRICCiN
:. DMJuleSetMinSupport (0.05)
"""""""""""""""""""" .':..m m m DE CALIDAD

DEFINICiN
Tarea= (DM_defRuleTask (VistaMinable, Parametros)) DE LA TAREA
'''''''OO'
. ,...,.
:Modelo= Tarea.DM IIIJ
' ... -;buildRuleModel()
, ,."..,.., ,. ENTRENAMIENTO
:11111

Figura 5.17. Definicin de tarea y entrenamiento del modelo con "5QL!MM Part 6: Data Mining". III'!II

A partir de aqu, el modelo se puede exportar en formato textual (en el estndar PMML
que veremos en el Captulo 19) o aplicado a filas de otra tabla, mediante el mapeo
130 Introduccin a la Minera de Datos

correspondiente y los objetos DM_ClasResult, DM_ClusResult o DM_RegResult. Los


modelos "Clas" o "Reg" pueden exportar los resultados de una validacin con un conjunto
de datos, mediante el objeto DM_ClasTestResult o DM_RegTestResult.
Para acabar, hay que destacar que este estndar slo es una especificacin y no propor-
ciona una implementacin de estos mtodos.
Los lenguajes anteriores se basan en decidir el tipo de patrn a extraer y, en cierto
modo, se ajustan a ciertos patrones de consulta. Es decir, si un lenguaje no tiene definido el
agrupamiento, no hay manera en el lenguaje de definir tal tarea. Existen otras propuestas
ms flexibles (tambin ms complejas de entender y usar) en las que uno puede formalizar
las tareas a realizar. Por ejemplo, la propuesta LDL+ [Shen et al. 1996] se basa en un
lenguaje lgico de orden superior que permite expresar gran variedad de restricciones de
reglas utilizando esquemas de orden superior. Los esquemas se llaman metaconsultas
(metaqueries).Una propuesta todava ms abierta, aunque en cierto modo ms difcil de
manejar, es la propuesta RDM (RelationalData Mining) de Luc De Raedt [De Raedt 1998a].
Esta propuesta usa Prolog para definir patrones de muy diverso tipo.
Pese a la gran cantidad de lenguajes y propuestas que hemos visto, es importante
enfatizar que la definicin de lenguajes de consulta ms flexibles (llamados lenguajes de
consulta inductivos) que cubran y automaticen las tareas y fases de la extraccin de
conocimiento de bases de datos est todava abierta.

5.5.2 Conjuntos de primitivas de minera de datos


Los lenguajes de consulta de minera de datos pueden utilizarse interactivamente o pueden
utilizarse dentro de algn lenguaje de programacin. ste es el caso de, por ejemplo, el
"OLE DB for Data Mining" o el SQL/MM. Si lo que deseamos es realizar minera de datos a
travs de una aplicacin, puede ser preferible disponer de un conjunto de primitivas que se
puedan utilizar, a forma de API, en nuestros programas. sta suele ser la eleccin ms
aconsejable y eficiente para programadores. Otras veces se necesitan interfaces entre
aplicaciones y servidores, constituyendo estndares, en cierto modo, de lo que se ha venido
llamando middleware.
Cuando hablamos de conjuntos de primitivas nos referimos a propuestas con un cierto
nivel de abstraccin y de portabilidad. Por ejemplo, existen libreras, como las MLC++,
XELOPES o WEKA, que van creciendo con el tiempo, cuya especificacin es prcticamente
la de la implementacin en C++ o Java, respectivamente. De este tipo de libreras
hablaremos en el Apndice A. En este punto vamos a tratar de propuestas de especificacio-
nes de primitivas de minera de datos, que puedan ser utilizadas para realizar el proceso de
extraccin de conocimiento.
Para aclarar el concepto, vamos a empezar con el ejemplo ms paradigmtico. A partir
de la versin 9i del sistema de gestin de bases de datos Oracle, se incluy una API en Java
para poder realizar minera de datos en las aplicaciones realizadas en Oracle, que permite a
estas aplicaciones realizar ciertas tareas bsicas de minera de datos con Oracle. Sin
desvincularse completamente de Oracle, esta API sufri posteriormente un proceso de
estandarizacin a travs de una JavaSpecificationRequest 73 OSR-73)con el nombre de Java
Data Mining ODM) que permite y promueve que otros fabricantes incluyan la misma API.
Por eso se le conoce tambin como JDMAPI. JDM no es una propuesta cerrada, ya que tiene

...............
Captulo 5. Exploraciny seleccin131

unaseriede caractersticas principales y una serie de paquetes opcionales que pueden ser
incluidoso no por cada implementacin. Para permitir flexibilidad y evitar problemas
debido a este hecho, se puede saber en tiempo de ejecucin si una determinada
implementacintiene una cierta caracterstica. Para ello existe el mtodo "supportsCapabi-
lity" que permite saber, en tiempo de ejecucin, qu caractersticas estn implementadas.
Enla primera versin del estndar se incluyeron las tareas de clasificacin, regresin,
asociacin,agrupamiento, as como el anlisis de importancia de atributos. Tambin
permite,adems de construir los modelos, aplicados, validados, importados y exportados.
Enlas siguientes versiones se consideran aspectos como la minera de datos no estructura-
dos(textose imgenes), ensembles,extraccin de caractersticas y algunas otras.
Brevemente,comentemos otras propuestas. "XML for Analysis" (http://xmla.org) es un
conjuntode interfaces de mensajes XML que utilizan el estndar SOAP (Simple Object
Protocol)
Access para definir el accesoe interaccin con los datos entre una aplicacincliente
y un proveedor de datos analtico (una herramienta OLAP o un servidor de minera de
datos)que estn separados, por ejemplo, por Internet.
Una propuesta ms centrada, de momento, en los almacenes de datos, es el OMG
CommonWarehouseMetadata (CWM) del OMG (ObjectManagement Group, http://www.omg.
QIg).Este estndar est definido en UML (Unified Modeling Language)y puede considerarse
comouna extensin del UML para modelar almacenes de datos. No obstante, aunque en
principio puede parecer que es slo un estndar de modelado en UML, su objetivo
principales permitir el intercambio de metadatos entre almacenes de datos y repositorios
demetadatos o conocimiento previo con herramientas clientes, ya sean herramientas OLAP
o herramientas de minera de datos. Para ello incorpora un estndar de intercambio,
definido, cmo no, en XML, as como una interfaz de especificacin para el acceso de
distintos entornos. La importancia de cara a la minera de datos viene por la capacidad de
utilizareste estndar para la definicin de la vista minable.
Existen lenguajes para representacin de modelos, como el PMML, que se tratar en el
Captulo 19, con bastante interrelacin con los lenguajes e interface s OMG CWM, SQL/DM
Part 6 DM, OLE DB for DM y JSR-073. Existen otros estndares de minera de datos para el
procesoglobal de minera de datos (como el CRISP-DM), que se tratarn en el Captulo 22.
Aunque la "XELOPES Data Mining Library" se describir en el Apndice A es quizs
otra muestra de la integracin a la que estn llegando muchos de estos estndares. Por
ejemplo, esta librera incluye soporte para CWM, PMML, OLE DB for DM, JDMAPI,
MLC ++ y WEKA.

5.5.3Interfaces visuales de minera de datos


Uno de los aspectos que ha hecho popularizar la minera de datos en la ltima dcada es la
aparicin de unas interface s visuales que facilitan en gran medida la realizacin de todo el
proceso de extraccin de conocimiento. Recordemos que parte de los usuarios potenciales
de la minera de datos no son informticos ni profesionales de las tecnologas de la
informacin, sino que pueden ser directivos o analistas. En vez de tener que aprender
lenguajes al estilo del SQL que, si lo conocen, probablemente les cost aprender, o, todava
peor, conjuntos de primitivas, existen actualmente herramientas visuales que permiten
realizar el proceso de extraccin de conocimiento de una manera visual, indicando con el
132 Introduccin a la Minera de Datos

ratn qu transformaciones, procesos y procedimientos aplicar, de una manera relativa-


mente sencilla.
Los ejemplos ms paradigmtico s de esta manera de trabajar quiz sean las interfaces
del SPSS Clementine y del SAS Enterprise Miner, ambas muy similares. Por ejemplo, en la
Figura 5.18 se muestra un ejemplo de un proceso de extraccin de conocimiento con SPSS
Clementine. Como se puede ver en la parte superior izquierda, la informacin parte de un
nodo denominado "titanic.dat" y se le van aplicando nodos, transformndose, analizando,
seleccionando, partiendo, visualizando en distintas ramas, que se pueden seguir por las
flechas que conectan los nodos. Esto hace ver el proceso de minera de datos como un flujo
de trabajo ("workflow"), donde cada nodo transforma informacin en otra informacin.

e-e -- 0--0--.--.
"x.t
111. ... A .
"",.
...
'"f"" ..,,,e"d2 '"/''b''~Io'''
..tod"'i=
A. ~
.

""../' '"tr~ A.
:!!:...
~'0>Ir"""2
"ol';;;

e ~ ~"102
e

~ ~ ~~. ~'!!1'102
A
~.. ~~ ,., I "'''' .A :",,
e
"b"",1o"2

"ES
.
.,,02 A. A. ~"'''''Wl'l02

A
o,''' . A1'"'"
d_. ."".. ..oct
'A
q
~'~1'~02
&;1 ""'. "':""102
11

Figura 5.18. Ejemplo de interfaz visual del paquete de minera de datos SPSS Clementine.
Como se ve en la parte inferior de la Figura 5.18 existen varios tipos de nodos. En el caso
del Clementine, tenemos nodos "orgenes" para poder leer o incorporar los datos, tenemos
nodos "oper. con registros" y "oper. con campos" para realizar operaciones de seleccin,
proyeccin, transformacin, muestreos, concatenacin, etc., sobre las tablas, nodos
"grficos" para representar los datos con distintas grficas, nodos de "modelado" para
aplicar distintos mtodos de minera de datos y nodos de "salida", para evaluar, visualizar
o exportar los modelos extrados. En el Apndice A hablaremos con ms detalle de los
sistemas y comentaremos otros aspectos de los mismos, como el nivel de acoplamiento con
la base de datos o almacn de datos.
Existen otro tipo de funciones que se pueden hacer de una manera visual, incluidas en
otros sistemas, como la definicin de jerarquas y el establecimiento de conocimiento
previo, el diseo de experimentos y de validacin, operadores OLAP, etc. A medida que
avanzan las versiones de los sistemas, van incorporando cada vez ms herramientas
(traducidas en nodos u opciones de los mismos).

-
Captulo 5. Exploracin y seleccin 133

Las interfaces visuales tienen sus desventajas. La primera es que el usuario se acostum-
bra a utilizar una herramienta y acaba dependiendo de ella. Adems, se dificulta en gran
medida el poder portar a otras herramientas el flujo o trabajo de minera de datos realizado.
En segundo lugar, estos entornos visuales estn diseados para que las operaciones y el
flujo se vayan construyendo a mano. Afortunadamente, el segundo problema se resuelve
ill,l. -
en gran medida si la herramienta proporciona un lenguaje de macros o de scripts. Adems, li,
si este lenguaje sigue algn tipo de estndar, se resolvera tambin el primer problema.
Esta parece ser la tendencia de cara al futuro, tener lenguajes y primitivas estndar y, por
encima de ellas, interface s visuales sobre las herramientas.
Irl
' '
1

11
ill
11
111'111

,llllil

IIIIJI
I

I:tl
l.: il

d
11

I
11

'I~
I1
111 11

!IIII

11

'11

'111