Вы находитесь на странице: 1из 131

Extraccin Automtica de Conocimiento en Bases de Datos e Ingeniera del Software

T.2 Minera de Datos y Extraccin de Conocimiento de Bases de Datos


Jos Hernndez Orallo Csar Ferri Ramrez
Programas: Programacin Declarativa e Ingeniera de la Programacin (Dep. de Sistemes Informtics i Computaci)

Objetivos
Conocer las caractersticas especiales de la extraccin automtica de conocimiento de bases de datos.

Ver las tcnicas de aprendizaje automtico ms apropiadas y su adaptacin a estos problemas.

Temario
2.1. Nuevas Necesidades del Anlisis de Grandes Volmenes de Datos. Los Data-Warehouses y el KDD. 2.2. El Proceso de Extraccin de Conocimiento de Bases de Datos. 2.3. Mtodos Especficos de Prospeccin de Datos.

Nuevas Necesidades del Anlisis de Grandes Volmenes de Datos


El aumento del volumen y variedad de informacin que se encuentra informatizada en bases de datos digitales ha crecido espectacularmente en la ltima dcada. Gran parte de esta informacin es histrica, es decir, representa transacciones o situaciones que se han producido. Aparte de su funcin de memoria de la organizacin, la informacin histrica es til para predecir la informacin futura.

Nuevas Necesidades del Anlisis de Grandes Volmenes de Datos


La mayora de decisiones de empresas, organizaciones e instituciones se basan tambin en informacin de experiencias pasadas extradas de fuentes muy diversas. las decisiones colectivas suelen tener consecuencias mucho ms graves, especialmente econmicas, y, recientemente, se deben basar en volmenes de datos que desbordan la capacidad humana. El rea de la extraccin (semi-)automtica de conocimiento de bases de datos ha adquirido recientemente una importancia cientfica y econmica inusual
5

Nuevas Necesidades del Anlisis de Grandes Volmenes de Datos


Descubrimiento de Conocimiento a partir de Bases de Datos (KDD, del ingls Knowledge Discovery from Databases). proceso no trivial de identificar patrones vlidos, novedosos, potencialmente tiles y en ltima instancia comprensibles a partir de los datos. Fayyad et al. 1996 Diferencia clara con mtodos estadsticos: la estadstica se utiliza para validar o parametrizar un modelo sugerido y preexistente, no para generarlo. Diferencia sutil Anlisis Inteligente de Datos (IDA, del ingls Intelligent Data Analysis) que corresponda con el uso de tcnicas de inteligencia artificial en el anlisis de los datos.
6

Nuevas Necesidades del Anlisis de Grandes Volmenes de Datos


Adems el resultado de KDD debe ser COMPRENSIBLE. Se excluyen, a priori, por tanto, muchos mtodos de aprendizaje automtico (redes neuronales, CBR, k-NN, Radial Basis Functions, Bayes Classifiers...). - Cambia la Manera de Extraer el Conocimiento: - Eficiente. - Entornos de Descubrimiento (Navegacin). - Consultas Inductivas.

Nuevas Necesidades del Anlisis de Grandes Volmenes de Datos


KDD nace como interfaz y se nutre de diferentes disciplinas: estadstica. sistemas de informacin / bases de datos. aprendizaje automtico / IA. visualizacin de datos. computacin paralela / distribuida. interfaces de lenguaje natural a bases de datos.

Nuevas Necesidades del Anlisis de Grandes Volmenes de Datos


Datos poco habituales para algoritmos clsicos: nmero de registros (ejemplos) muy largo (108-1012 bytes). datos altamente dimensionales (n de columnas/atributos): 102-104. El usuario final no es un experto en ML ni en estadstica. El usuario no se puede perder ms tiempo analizando los datos: industria: ventajas competitivas, decisiones ms efectivas. ciencia: datos nunca analizados, bancos no cruzados, etc. personal: information overload... Los sistemas clsicos de estadstica son difciles de usar y no escalan al nmero de datos tpicos en bases de datos.
9

Nuevas Necesidades del Anlisis de Grandes Volmenes de Datos


Evaluacin del conocimiento: vlido? til? inteligible? novedoso? interesante? Uso del conocimiento obtenido: hacer predicciones sobre nuevos datos. explicar los datos existentes resumir una base de datos masiva para facilitar la toma de decisiones. visualizar datos altamente dimensionales, extrayendo 10 estructura local simplificada.

FASES DEL KDD


Sistema de Informacin
Preparacin de los Datos Minera de Datos

1. Determinar las fuentes de informacin que pueden ser tiles y dnde conseguirlas. 2. Disear el esquema de un almacn de datos (Data Warehouse) que consiga unificar de manera operativa toda la informacin recogida. 3. Implantacin del almacn de datos que permita la navegacin y visualizacin previa de sus datos, para discernir qu aspectos puede interesar que sean estudiados. 4. Seleccin, limpieza y transformacin de los datos que se van a analizar. La seleccin incluye tanto una criba o fusin horizontal (filas) como vertical (atributos). 5. Seleccionar y aplicar el mtodo de minera de datos apropiado. 6. Interpretacin, transformacin y representacin de los patrones extrados. 11 7. Difusin y uso del nuevo conocimiento.

Patrones
Evaluacin / Interpretacin / Visualizacin

KDD

Conocimiento

Fases y Tcnicas del KDD


Las distintas tcnicas de distintas disciplinas se utilizan en distintas fases:

12

Recogida de Datos
Las primeras fases del KDD determinan que las fases sucesivas sean capaces de extraer conocimiento vlido y til a partir de la informacin original. Generalmente, la informacin que se quiere investigar sobre un cierto dominio de la organizacin se encuentra en bases de datos y otras fuentes muy diversas, tanto internas como externas. Muchas de estas fuentes son las que se utilizan para el trabajo diario.

13

OLAP
Sobre estas mismas bases de datos de trabajo ya se puede extraer conocimiento (visin tradicional).
Se mantiene el trabajo transaccional diario de los sistemas de informacin originales (conocido como OLTP, On-Line Transactional Processing). Se hace anlisis de los datos en tiempo real sobre la misma base de datos (conocido como OLAP, On-Line Analytical Processing),

PROBLEMAS:
perturba el trabajo transaccional diario de los sistemas de informacin originales (killer queries). Se debe hacer por la noche o en fines de semana. la base de datos est diseada para el trabajo transaccional, no para el anlisis de los datos. Generalmente no puede ser en tiempo real (era AP 14 pero no OLAP).

Data-Warehousing
Para poder operar eficientemente con esos datos y debido a que los costes de almacenamiento masivo y conectividad se han reducido drsticamente en los ltimos aos, parece razonable recoger (copiar) los datos en un sistema unificado. NACE EL DATA-WAREHOUSING DATA-WAREHOUSES (Almacenes de Datos): Se separan de los datos a analizar con respecto a sus fuentes transaccionales (se copia/almacena toda la informacin histrica).
Existe toda una tecnologa creciente de cmo organizarlos y sobretodo de cmo tenerlos actualizados (cargas peridicas) respecto a los datos originales.
15

Data-Warehousing
Data-warehousing:
Facilita el anlisis de los datos en tiempo real (OLAP), No disturba el OLTP de las bases de datos originales. A partir de ahora diferenciaremos entre bases de datos para OLTP (tradicional) y almacenes de datos (KDD sobre data-warehouses).
BASE DE DATOS TRANSACCIONAL Propsito Tipo de datos Caractersticas de los datos Modelo de datos Nmero y tipo de usuarios Acceso Operaciones diarias. Soporte a las aplicaciones. Datos de funcionamiento de la organizacin. Datos de funcionamiento, cambiantes, internos, incompletos... Datos normalizados. Cientos/miles: aplicaciones, operarios, administrador de la base de datos. SQL. Lectura y escritura. ALMACN DE DATOS Recuperacin de informacin, informes, anlisis y minera de datos. Datos tiles para el anlisis, la sumarizacin, etc. Datos histricos, datos internos y externos, datos descriptivos... Datos en estrella, en copo de nieve, parcialmente desnormalizados, multidimensionales... Decenas: directores, ejecutivos, analistas (granjeros, mineros). SQL y herramientas propias (slice & dice, drill, roll, pivot...). Lectura.

16

Data-Warehousing
Segn la organizacin de la informacin copiada se distingue:
ROLAP (Relational OLAP): el almacn de datos es relacional. MOLAP (Multidimensional OLAP): el almacn de datos es una matriz multidimensional.

Aunque un MOLAP puede estar implementado sobre un sistema de gestin de base de datos relacional (RDBMS).

17

Data-Warehousing
Ejemplo de MOLAP:
Cada atributo relevante se establece en una dimensin, que se puede agregar o desagregar. La base de datos est completamente desnormalizada.
Murcia Alacant Zaragoza Valencia Barcelona Madrid

Las dimensiones se agregan:


Industria | Categora | Producto Ao Pas | | Cuatrimestre Regin / \ | Ciudad Mes Semana \ / | Supermercado Da

Zumo Cola PRODUCTO Leche Crema Pasta de Dientes Jabn

17 57 93 22 5 12

1 2 3 4 5 6

MES

Ventas en millones de Euros


18

Data-Warehousing
Ejemplo de ROLAP:
Las dimensiones, que se puede agregar o desagregar, siguiendo claves ajenas. Se conserva parte de la normalizacin...
ID ... CAj1 CAj 2 ... ... ... ... CAj K Valor1 Valor2 ... ... ... ... ... ID ... CAj1 CAj 2 ... ... ... ... CAj K Valor1 Valor2 ... ... ... ... ...

ID ...

CAj1 CAj 2 ... ...

... ...

CAj K Valor1 Valor2 ... ... ...

... ...

ID ...

CAj1 CAj 2 ... ...

... ...

CAj M Valor1 Valor2 ... ... ...

... ...

ID
ID ... CAj1 CAj 2 ... ... ... ... CAj K Valor1 Valor2 ... ... ... ... ...

CAj1 CAj 2 ... ...

... ...

CAj K Valor1 Valor2 ... ... ...

... ...

...

19

Data-Warehousing
Ejemplo de ROLAP:
MES TRIMESTRE ao trimestre nombre DA mes semana laborable nombre HORA fecha maana/tarde VENTA importe cantidad nro_clientes CIUDAD pas nombre num-habs temperatura

Dimensin Producto
ARTCULO gama proveedor nombre precio-ud

GAMA categora descripcin CATEGORA descripcin

PROVEEDOR nombre ciudad

AO

SEMANA ao

Dimensin Tiempo

SUPERMERCADO

Dimensin Lugar

PAS nombre num-habs

ciudad nivel riqueza-zona

De esta estructura suele venir el nombre de estrella...


20

Data-Warehousing
Esquemas de almacenes de datos ms comunes: estrella simple estrella jerrquica (copo de nieve). Esta estructura permite la sumarizacin, la visualizacin y la navegacin segn las dimensiones de la estrella.

21

Data-Warehousing
Sumarizacin y Operadores
Estas estructuras permiten navegar sumarizando (agregando) o desagregando. Drill. Se utiliza para desagregar dimensiones. Este operador permite entrar ms al detalle en el informe.

CATEGORA Refrescos Refrescos Refrescos Refrescos Congelados Congelados Congelados Congelados

TRIMESTRE T1 T2 T3 T4 T1 T2 T3 T4

IMPORTE 150.323 euros 233.992 euros 410.497 euros 203.400 euros 2.190.103 euros 1.640.239 euros 1.904.401 euros 2.534.031 euros

drill
categora= refrescos ciudad= {Valencia, Len}

CATEGORA Refrescos Refrescos Refrescos Refrescos Refrescos Refrescos Refrescos Refrescos

TRIMESTRE T1 T1 T2 T2 T3 T3 T4 T4

CIUDAD Valencia Len Valencia Len Valencia Len Valencia Len

IMPORTE 13.267 3.589 27.392 4.278 73.042 3.780 18.391 3.629

22

Data-Warehousing
Sumarizacin y Operadores
Roll. Operador inverso a drill. Obtiene informacin ms agregada.

CATEGORA Refrescos Refrescos Refrescos Refrescos Congelados Congelados Congelados Congelados

TRIMESTRE T1 T2 T3 T4 T1 T2 T3 T4

IMPORTE 150.323 euros 233.992 euros 410.497 euros 203.400 euros 2.190.103 euros 1.640.239 euros 1.904.401 euros 2.534.031 euros

roll
un nivel por tiempo

CATEGORA Refrescos Congelados

IMPORTE 998.212 euros 10.458.877 euros

23

Data-Warehousing
Sumarizacin y Operadores
El operador pivot permite cambiar algunas filas por columnas.

CATEGORA Refrescos Refrescos Refrescos Refrescos Congelados Congelados Congelados Congelados

TRIMESTRE T1 T2 T3 T4 T1 T2 T3 T4

Valencia 13.267 27.392 73.042 18.391 150.242 173.105 163.240 190.573

Len 3.589 4.278 3.780 3.629 4.798 3.564 4.309 4.812

pivot
categora ciudad

CATEGORA Valencia Valencia Valencia Valencia Len Len Len Len

TRIMESTRE T1 T2 T3 T4 T1 T2 T3 T4

Refrescos 13.267 27.392 73.042 18.391 3.589 4.278 3.780 3.629

Congelados 150.242 173.105 163.240 190.573 4.798 3.564 4.309 4.812

24

Data-Warehousing
Sumarizacin y Operadores
slice & dice. Este operador permite escoger parte de la informacin mostrada, no por agregacin sino por seleccin.

CATEGORA Refrescos Refrescos Refrescos Refrescos Congelados Congelados Congelados Congelados

TRIMESTRE T1 T2 T3 T4 T1 T2 T3 T4

Valencia 13.267 27.392 73.042 18.391 150.242 173.105 163.240 190.573

Len 3.589 4.278 3.780 3.629 4.798 3.564 4.309 4.812

slice & dice


trimestre = {T1, T4} ciudad = Valencia

CATEGORA Refrescos Refrescos Congelados Congelados

Trimestre T1 T4 T1 T4

Valencia 13.267 18.391 150.242 190.573

25

Data-Warehousing
Necesidad de los Almacenes de Datos: No son imprescindibles para hacer KDD pero s convenientes. Especialmente indicada para las dos tipologas de usuarios: picapedreros (o granjeros): se dedican fundamentalmente a realizar informes peridicos, ver la evolucin de determinados parmetros, controlar valores anmalos, etc. exploradores: encargados de encontrar nuevos patrones significativos utilizando tcnicas de minera de datos.

26

Data-Warehousing
Recogida de Informacin Externa: Aparte de informacin interna de la organizacin, los almacenes de datos pueden recoger informacin externa: Demografas (censo), pginas amarillas, psicografas, grficos web, informacin de otras organizaciones. Datos compartidos en una industria o rea de negocio, organizaciones y colegios profesionales, catlogos, etc. Datos resumidos de reas geogrficas, distribucin de la competencia, evolucin de la economa, informacin de calendarios y climatolgicas, programaciones televisivasdeportivas, catstofres,.. Bases de datos externas compradas a otras compaas.
27

Seleccin, Limpieza y Transformacin de Datos


Limpieza (data cleansing) y criba (seleccin) de datos: Se deben eliminar el mayor nmero posible de datos errneos o inconsistentes (limpieza) e irrelevantes (criba). Mtodos estadsticos casi exclusivamente. - histogramas (deteccin de datos anmalos). - seleccin de datos (ya sea verticalmente, eliminando atributos u horizontalmente, eliminando tuplas). - redefinicin de atributos (agrupacin o separacin). Muy relacionado con la disciplina de Calidad de Datos.
Si los datos del sistema OLTP se han recogido con cuidado, intentanto mantener su calidad (evitando datos errneos, obsoletos, inconsistencias). Mucho mejor si se tienen metadatos acerca de la calidad de datos (frec. de 28 uso, etc.)

Seleccin, Limpieza y Transformacin de Datos


El primer paso en la limpieza de datos consiste en la elaboracin de un resumen de caractersticas
ATRIBUTO TIPO # TOTAL # NULS # DIST MEDIA DESV. MODA MIN MAX

Cdigo postal Sexo Estado civil Edad Total pliza p/a Asegurados Matrcula Modelo ...

Nominal Nominal Nominal Numrico Numrico Numrico Nominal Nominal ...

10320 10320 10320 10320 17523 17523 16324 16324 ...

150 23 317 4 1325 0 0 1321 ...

1672 6 8 66 142 7 16324 2429 ...

42,3 737,24 1,31 ...

12,5 327 0,25 ...

46003 V Casado 37 680 1 O. Astra ...

01001 E Casado 18 375 0 A-0003BF Audi A3 ...

50312 M Viudo 87 6200 10 Z-9835-AF VW Polo ...

29

Seleccin, Limpieza y Transformacin de Datos


Atributos Nominales: Debemos analizar con detalle cada uno de los atributos: Podemos detectar: Valores redundantes: (Hombre,Varn) Valores despreciables (agrupar valores como otros)

30

Seleccin, Limpieza y Transformacin de Datos


Atributos Numricos: Debemos analizar con detalle cada uno de los atributos: Podemos detectar: Valores anmalos Distribuciones en los datos

31

Seleccin, Limpieza y Transformacin de Datos


Atributos Numricos: Otra alternativa para los atributos numricos son los diagramas de caja (box plot) o de bigotes (whisker plots).
max

cuartiles

mediana

min

32

Seleccin, Limpieza y Transformacin de Datos


Atributos Numricos: Otra alternativa especialmente til para los atributos numricos son las grficas de dispersin.

33

Seleccin, Limpieza y Transformacin de Datos


Atributos Numricos: Cuando tenemos ms de dos variables el grfico anterior se puede repetir para todas las combinaciones posibles.

34

Seleccin, Limpieza y Transformacin de Datos


Acciones ante datos anmalos (outliers):
ignorar: algunos algoritmos son robustos a datos anmalos (p.ej. rboles) filtrar (eliminar o reemplazar) la columna: solucin extrema, pero a veces existe otra columna dependiente con datos de mayor calidad. Preferible a eliminar la columna es reemplazarla por una columna discreta diciendo si el valor era normal o outlier (por encima o por debajo). filtrar la fila: claramente sesga los datos, porque muchas veces las causas de un dato errneo estn relacionadas con casos o tipos especiales. reemplazar el valor: por el valor nulo si el algoritmo lo trata bien o por mximos o mnimos, dependiendo por donde es el outlier, o por medias. A veces se puede predecir a partir de otros datos, utilizando cualquier tcnica de ML. discretizar: transformar un valor continuo en uno discreto (p.ej. muy alto, alto, medio, bajo, muy bajo) hace que los outliers caigan en muy alto o muy bajo sin mayores problemas. 35

Seleccin, Limpieza y Transformacin de Datos


Acciones ante datos faltantes (missing values):
ignorar: algunos algoritmos son robustos a datos faltantes (p.ej. rboles). filtrar (eliminar o reemplazar) la columna: solucin extrema, pero a veces existe otra columna dependiente con datos de mayor calidad. Preferible a eliminar la columna, es reemplazarla por una columna booleana diciendo si el valor exista o no. filtrar la fila: claramente sesga los datos, porque muchas veces las causas de un dato faltante estn relacionadas con casos o tipos especiales. reemplazar el valor: por medias. A veces se puede predecir a partir de otros datos, utilizando cualquier tcnica de ML. segmentar: se segmentan las tuplas por los valores que tienen disponibles. Se obtienen modelos diferentes para cada segmento y luego se combinan. modificar la poltica de calidad de datos y esperar hasta que los datos faltantes estn disponibles.
36

Seleccin, Limpieza y Transformacin de Datos


Razones sobre datos faltantes (missing values): A veces es importante examinar las razones tras datos faltantes y actuar en consecuencia:
algunos valores faltantes expresan caractersticas relevantes: p.ej. la falta de telfono puede representar en muchos casos un deseo de que no se moleste a la persona en cuestin, o un cambio de domicilio reciente. valores no existentes: muchos valores faltantes existen en la realidad, pero otros no. P.ej. el cliente que se acaba de dar de alta no tiene consumo medio de los ltimos 12 meses. datos incompletos: si los datos vienen de fuentes diferentes, al combinarlos se suele hacer la unin y no la interseccin de campos, con lo que muchos datos faltantes representan que esas tuplas vienen de una/s fuente/s diferente/s al resto. 37

Seleccin, Limpieza y Transformacin de Datos


Inconsistencias: Un problema grave que afecta a varios mtodos de aprendizaje predictivo son los registros inconsistentes, es decir, dos o ms registros con los mismo valores en los atributos, pero diferente valor en el atributo clase. Algunas tcnicas no soportan las inconsistencias en los datos. Por lo que se deben eliminar unificando (siempre que se pueda) los registros en una nica clase.

38

Transformacin de Atributos
La transformacin de datos engloba, en realidad, cualquier proceso que modifique la forma de los datos. Por transformacin entendemos aquellas tcnicas que transforman un conjunto de atributos en otros, o bien derivan nuevos atributos, o bien cambian el tipo o el rango. La seleccin de atributos (eliminar los menos relevantes) en realidad no transforma atributos y, en consecuencia, no entra en este grupo de tcnicas.

39

Reduccin de Dimensionalidad
Si tenemos muchas dimensiones (atributos) respecto a la cantidad de instancias, pueden existir demasiados grados de libertad, por lo que los patrones extrados pueden ser poco robustos. Este problema se conoce popularmente como la maldicin de la dimensionalidad (the curse of dimensionality). Una manera de intentar resolver este problema es mediante la reduccin de dimensiones. La reduccin se puede realizar por seleccin de un subconjunto de atributos, o bien la sustitucin del conjunto de atributos iniciales por otros diferentes. 40

Anlisis de Componentes Principales


La tcnica ms conocida para reducir la dimensionalidad por transformacin se denomina anlisis de componentes principales (principal component analysis), PCA. PCA transforma los m atributos originales en otro conjunto de atributos p donde pm. Este proceso se puede ver geomtricamente como un cambio de ejes en la representacin (proyeccin). Los nuevos atributos se generan de tal manera que son independientes entre s y, adems, los primeros tienen ms relevancia (ms contenido informacional) que los ltimos.

41

Anlisis de Componentes Principales


Ejemplo: Dataset Segment, 19 Atributos El mtodo Principal Components genera 10 atributos cubriendo el 97% de la varianza
eigenvalue 7.6214 2.91666 1.7927 1.05431 0.93564 0.90907 0.72745 0.56163 0.53996 0.39511 proportion 0.42341 0.16204 0.09959 0.05857 0.05198 0.0505 0.04041 0.0312 0.03 0.02195 cumulative 0.42341 0.58545 0.68504 0.74362 0.7956 0.8461 0.88651 0.91771 0.94771 0.96966
-0.357rawblue-mean-0.355value-mean-0.351intensity-mean-0.348rawred-mean-0.343rawgreen-mean... 0.495hedge-sd+0.481vegde-sd+0.472hedge-mean+0.466vedge-mean+0.257short-line-density-2... 0.596hue-mean+0.428exgreen-mean+0.373region-centroid-row-0.363saturation-mean-0.192exblue-mean... 0.714short-line-density-5-0.677region-centroid-col+0.127short-line-density-2-0.07vegde-sd-0.057exgre... -0.63region-centroid-col-0.462short-line-density-5-0.453short-line-density-2+0.213exgreen-mean-0... -0.694short-line-density-2+0.483short-line-density-5+0.323region-centroid-col+0.282vegde-sd... 0.456region-centroid-row-0.434saturation-mean-0.428short-line-density-2-0.387exgreen-mean...

-0.514vedge-mean-0.438saturation-mean+0.406exred-mean+0.357hedge-sd-0.331region-centroid-row...
0.491saturation-mean-0.438vedge-mean+0.418hedge-mean+0.317hedge-sd-0.297exred-mean... 0.498hedge-mean-0.473vegde-sd-0.424region-centroid-row+0.392vedge-mean-0.29hedge-sd...

42

Anlisis de Componentes Principales


Evolucin de la precisin de J48 dependiendo del nmero de atributos
Evolucin de la precisin
95 90 85 80 75 70 65 60 55 50 10 9 8 7 6 5 4 3 2 1
43

Precisin

Atributos

Kernels
El aprendizaje SVM se consigue mediante una transformacin no lineal del espacio de atributos de entrada (input space) en un espacio de caractersticas (feature space) de dimensionalidad mucho mayor y donde s es posible separar linealmente los ejemplos. El uso de las denominadas funciones ncleo (kernel functions), que calculan el producto escalar de dos vectores en el espacio de caractersticas, permite trabajar de manera eficiente en el espacio de caractersticas sin necesidad de calcular explcitamente las transformaciones de los ejemplos de aprendizaje.
44

Aumento de Dimensionalidad
En otras ocasiones aadir atributos nuevos puede mejorar el proceso de aprendizaje La regresin lineal no se aproxima a la solucin 8
7 Ventas (mill. euros) 6 5 4 3 2 1 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 Meses Datos Modelo Lineal At. Originales Modelo Lineal At. Cuadrticos

Aadiendo un nuevo atributo z=meses^2 se obtiene un buen modelo

45

Aumento de Dimensionalidad
Tcnicas de generacin de nuevos atributos: Numricos: Se utilizan, generalmente, operaciones matemticas bsicas de uno o ms argumentos Nominales: Operaciones lgicas: conjuncin, disyuncin, negacin, implicacin, condiciones M-de-N (M-de-N es cierto si y slo si al menos M de las N condiciones son ciertas), igualdad o desigualdad

46

Aumento de Dimensionalidad
El conocimiento del dominio es el factor que ms determina la creacin de buenos atributos derivados
Atributo Derivado ndice de obesidad Hombre familiar Sntomas SARS Riesgo pliza Beneficios brutos Beneficios netos Desplazamiento Duracin media Densidad Retardo compra Frmula Altura2 / peso Casado, varn e hijos>0 3-de-5 (fiebre alta, vmitos, tos, diarrea, dolor de cabeza) X-de-N (edad < 25, varn, aos de carn < 2, vehculo deportivo) Ingresos - Gastos Ingresos Gastos Impuestos Pasajeros * kilmetros Segundos de llamada / nmero de llamadas Poblacin / rea Fecha compra Fecha campaa

47

Discretizacin de Atributos
La discretizacin, o cuantizacin (tambin llamada binning) es la conversin de un valor numrico en un valor nominal ordenado La discretizacin se debe realizar cuando: El error en la medida puede ser grande Existen umbrales significativos (p.e. notas) En ciertas zonas el rango de valores es ms importante que en otras (interpretacin no lineal) Aplicar ciertas tareas de MD que slo soportan atributos nominales (p.e. reglas de asociacin)
48

Discretizacin de Atributos
Ejemplo con el dataset iris: 150 ejemplos de lirios de tres tipos, con cuatro atributos numricos (sepallength, sepalwidth, petallength, petalwidth) y un quinto nominal, que representa la clase o tipo de lirio (setosa, versicolour, virginica):

Min sepallength sepalwidth petallength petalwidth 4,3 2,0 1,0 0,1

Max 7,9 4,4 6,9 2,5

Media 5,84 3,05 3,76 1,20

Desv.Tp. 0,83 0,43 1,76 0,76

49

Discretizacin de Atributos
La discretizacin ms sencilla (simple binning) es aquella que realiza intervalos del mismo tamao y utilizando el mnimo y el mximo como referencia.

Atributo

1 (-inf-5,02): 32 (-inf-2,48): 11 (-inf-2,18): 50 (-inf-0,58): 49

2 (5,02-5,74): 41 (2,48-2,96): 46 (2,18-3,36): 3 (0,58-1,06): 8

3 (5,74-6,46): 42 (2,96-3,44): 69 (3,36-4,54): 34 (1,06-1,54): 41

4 (6,46-7,18): 24 (3,44-3,92): 20 (4,54-5,72): 47 (1,54-2,02): 29

5 (7,18-inf): 11 (3,92-inf): 4 (5,72-inf): 16 (2,02-inf): 23

sepallength

sepalwidth

petallength

petalwidth

50

Discretizacin de Atributos
Otra tcnica de discretizacin sencilla es intentar obtener intervalos con el mismo nmero de registros (Equal-frequency binning) . Sin embargo estos tcnicas de discretizacin ignoran la clase, por lo que pueden dar lugar a intervalos no adecuados.

51

Discretizacin de Atributos
Existen opciones ms elaboradas. Como por ejemplo las basadas en el principio MDL. [Fayyad & Irani 1993]

Atributo

Discretizacin

sepallength

(-inf, 5.55] (59) [5.55, 6.15) (36) [6.15,inf] (55)

sepalwidth

(-inf, 2.95] (57) [2.95, 3.35) (57) [3.35,inf] (36)

petallength

(-inf, 2.45] (50) [2.45, 4.75) (45) [4.75,inf] (55)

petalwidth

(-inf, 5.55] (59) [5.55, -6.15) (36) [6.15,inf] (55)

52

Numerizacin de Atributos
La numerizacin es el proceso inverso a la discretizacin, es decir, convertir un atributo nominal en numrico. La discretizacin se debe realizar cuando se quieren aplicar ciertas tcnicas de MD que slo soportan atributos numricos (p.e. Regresin, mtodos basados en distancias)

53

Numerizacin de Atributos
numerizacin 1 a n:Si una variable nominal x tiene posibles valores creamos n variables numricas, con valores 0 o 1 dependiendo de si la variable nominal toma ese valor o no. Podemos tambin prescindir del ltimo atributo pues es dependiente del resto (numerizacin 1 a n-1). numerizacin 1 a 1:Se aplica si existe un cierto orden o magnitud en los valores del atributo nominal. Por ejemplo, si tenemos categoras del estilo {nio, joven, adulto, anciano} podemos numerar los valores de 1 a 4.

54

Normalizacin de Atributos
Algunos mtodos de aprendizaje funcionan mejor con los atributos normalizados. Por ejemplo, los mtodos basados en distancias. La normalizacin ms comn es la normalizacin lineal uniforme:

v min v' = max min


Esta normalizacin es muy sensible a la presencia de valores anmalos (outliers).
55

Normalizacin de Atributos
Una solucin a este problema es el escalado softmax o escalado sigmoidal, en el que no se usa una transformacin que es ms pronunciada en el centro y ms aplanada en los bordes
1 0,9 0,8 0,7 0,6 0,5 0,4 0,3 0,2 0,1 0 0 0,1 0,2 0,3 0,4 0,5 0,6 0,7 0,8 0,9 1

56

Mtodos de Seleccin de Caractersticas


Existen dos tipos generales de mtodos para seleccionar caractersticas: 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. 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 extrado a partir de los datos (utilizando, lgicamente, algn buen mtodo de validacin).
57

Mtodos de Seleccin de Caractersticas


En cualquier caso se emplea una estrategia iterativa, es decir, se van eliminando atributos y se va observando el resultado. Se van recuperando o eliminando ms atributos de una manera iterativa, hasta que se obtiene una combinacin que maximiza la calidad. De acuerdo con la medida de evaluacin, estrategia y direccin de bsqueda, podemos establecer taxonomas ms refinadas.

58

Mtodos de Seleccin de Caractersticas


El nmero de subconjuntos de atributos crece exponencialmente con respecto al nmero de atributos

59

Mtodos de Seleccin de Caractersticas


Medida de Evaluacin: Clsicas: ganancia de informacin, o medidas de dependencia entre caractersticas Acierto: Precisin u cualquier otra medida de evaluacin de calidad medido sobre un conjunto de test Consistencia: medidas que miden el grado de inconsistencias (registros iguales salvo en la clase) en el conjunto de datos

60

Mtodos de Seleccin de Caractersticas


Estrategia de Bsqueda: Completa: Se cubren todas las combinaciones posibles de seleccin. Heurstica: reduce el nmero de combinaciones a evaluar basndose en algn tipo de informacin. No determinista (estocstico): basada en algoritmos de bsqueda globales. Intentan evitar el problema de mnimos locales.
61

Mtodos de Seleccin de Caractersticas


Direccin de Bsqueda: Forward: Empezando con el mejor atributo y 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 Backward: Se inicia el proceso con todos los atributos eliminando uno a uno el menos relevante. Aleatoria: Se producen patrones de bsqueda mediante la creacin de conjuntos de manera aleatoria
62

Anlisis Correlacional
Una tcnica sencilla consiste en utilizar una matriz de correlaciones.
ATRIBUTO Edad Tensin Obesidad Colesterol Tabaquismo Alcoholismo Pulsaciones Hierro 0,63 0,34 0,42 -0,02 0,15 0,12 -0,33 0,22 0,56 0,72 0,43 0,27 -0,08 0,67 0,72 0,32 0,32 0,21 0,52 0,27 0,40 0,45 0,58 0,39 -0,12 0,23 -0,22 -0,15 EDAD TENSIN 0,63 OBES. 0,34 0,22 COLEST. 0,42 0,56 0,67 TABAQ. -0,02 0,72 0,72 0,52 ALCOHOL. 0,15 0,43 0,32 0,27 0,58 PULS. 0,12 0,27 0,32 0,40 0,39 0,23 HIERRO -0,33 -0,08 0,21 0,45 -0,12 -0,22 -0,15

63

Anlisis por modelo lineal


Queremos obtener un modelo de prediccin de azcar en la sangre a partir de los datos anteriores.

y = a0 + a1 x1 + a 2 x 2 + ... + a n x n
Obtenemos los siguientes coeficientes:
ATRIBUTO Azcar EDAD 2,23 TENSIN -1,63 OBES. 3,23 COLEST. 0,42 TABAQ. -0,12 ALCOHOL. 2,23 PULS. 0,00 HIERRO -3,01

Esto, en realidad, es slo el principio de mltiples tcnicas del anlisis multivariante. 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 (ANOVA). 64

Muestreo
La manera ms directa de reducir el tamao de una poblacin o conjuntos de individuos es realizar una seleccin o muestreo. 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 Los datos son ya una muestra de realidad y slo representan una parte de esta realidad

65

Tipos de Muestreo
Muestreo Aleatorio Simple: Cualquier instancia tiene la misma probabilidad de ser extrada en la muestra. Dos versiones, con reemplazamiento y sin reemplazamiento. Muestreo Aleatorio Estratificado: El objetivo de este muestreo es obtener una muestra balanceada con suficientes elementos de todos los estratos, o grupos. Una versin simple es realizar un muestreo aleatorio simple sin reemplazamiento de cada estrato hasta obtener los n elementos de ese estrato. Si no hay suficientes elementos en un estrato podemos utilizar en estos casos muestreo aleatorio simple con reemplazamiento (sobremuestreo).
66

Tipos de Muestreo
Muestreo de Grupos: 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: Para los atributos numricos (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 obtenemos una instancia ficticia y buscamos la instancia real ms similar a la ficticia. Se repite este proceso hasta tener n instancias. el objetivo de este mtodo es cubrir completamente el espacio de instancias. 67

Tipos de Muestreo

Muestreo aleatorio simple

Muestreo aleatorio estratificado

Muestreo por grupos (todos menos

Muestreo exhaustivo

68

Tipos de Muestreo
Cantos datos son necesarios mantener? Depende, en general, del nmero de grados de libertad (nmero de atributos y valores) y del mtodo de aprendizaje y de su expresividad (por ejemplo una regresin lineal requiere muchos menos ejemplos que una red neuronal). Se utiliza una estrategia 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.
69

La Minera de Datos
Caractersticas Especiales de los Datos: Aparte del gran volumen, por qu algunas tcnicas de aprendizaje automtico y estadsticas no son directamente aplicables? Los datos residen en el disco. No se pueden escanear mltiples veces. Algunas tcnicas de muestreo no son compatibles con algoritmos no incrementales. Muy alta dimensionalidad. Evidencia POSITIVA. DATOS IMPERFECTOS...
70

La Minera de Datos
Caractersticas Especiales de los Datos (cont.): TIPOS DE DATOS IMPERFECTOS: Ruido:
en la evidencia o ejemplos de entrenamiento. Errneos valores de argumentos de los ejemplos. Clasificacin errnea de algn ejemplo. en el conocimiento previo.

Ejemplos de entrenamiento muy dispersos. Conocimiento previo correcto pero inapropiado.


Existencia de muchos predicados irrelevantes para el problema a aprender. Conocimiento previo insuficiente para el problema a aprender (algunos predicados auxiliares seran necesarios).

Argumentos faltantes (nulos) en los ejemplos.

71

La Minera de Datos
PATRONES A DESCUBRIR:
Una vez recogidos los datos de inters en un almacn de datos, un explorador puede decidir qu tipos de patrn quiere descubrir. El tipo de conocimiento que se desea extraer va a marcar claramente la tcnica de minera de datos a utilizar. Segn como sea la bsqueda del conocimiento se puede distinguir: Directed data mining: se sabe claramente lo que se busca; generalmente predecir unos ciertos datos o clases. Undirected data mining: no se sabe lo que se busca, se trabaja con los datos (hasta que confiesen!). En el primer caso, los propios sistemas de minera de datos se encargan generalmente de elegir el algoritmo ms idneo entre los disponibles 72 para un determinado tipo de patrn a buscar.

La Minera de Datos
Tipos de conocimiento:
Asociaciones: Una asociacin entre dos atributos ocurre cuando la frecuencia con la que se dan dos valores determinados de cada uno conjuntamente es relativamente alta. Ejemplo: en un supermercado se analiza si los paales y los potitos de beb se compran conjuntamente. Dependencias: Una dependencia funcional (aproximada o absoluta) es un patrn en el que se establece que uno o ms atributos determinan el valor de otro. Ojo! Existen muchas dependencias nada interesantes (ojo con causalidades inversas). Ejemplo: que un paciente haya sido ingresado en maternidad determina su sexo La bsqueda de asociaciones y dependencias se conoce a veces como anlisis exploratorio. 73

La Minera de Datos
Tipos de conocimiento (cont.):
Clasificacin: Una clasificacin se puede ver como el esclarecimiento de una dependencia, en la que el atributo dependiente puede tomar un valor entre varias clases, ya conocidas. Ejemplo: se sabe (por un estudio de dependencias) que los atributos edad, nmero de dioptras y astigmatismo han determinado los pacientes para los que su operacin de ciruga ocular ha sido satisfactoria. Podemos intentar determinar las reglas exactas que clasifican un caso como positivo o negativo a partir de esos atributos. Segmentacin: La segmentacin (o clustering) es la deteccin de grupos de individuos. Se diferencia de la clasificacin en el que no se conocen ni las clases ni su nmero (aprendizaje no supervisado), con lo que el objetivo es determinar grupos o racimos (clusters) diferenciados del resto.
74

La Minera de Datos
Tipos de conocimiento (cont.):
Tendencias: El objetivo es predecir los valores de una variable continua a partir de la evolucin de otra variable continua, generalmente el tiempo. Ejemplo, se intenta predecir el nmero de clientes o pacientes, los ingresos, llamadas, ganancias, costes, etc. a partir de los resultados de semanas, meses o aos anteriores. Informacin del Esquema: (descubrir claves primarias alternativas, R.I.). Reglas Generales: patrones que no se ajustan a los tipos anteriores. Recientemente los sistemas incorporan capacidad para establecer otros patrones ms generales.
75

Taxonoma Tcnicas de Minera de Datos.


Data Mining Verification Driven DM SQL SQL Generator
Source: http://www.crm-forum.com and Jae Kyu Lee

Discovery Driven DM Description Classification Prediction Statistical Regression

Query Tools OLAP Visualization Clustering Association Sequential Association Distillation

Decision Tree Rule Induction Neural Network


76

Mtodos Especficos de Minera de Datos.


Algoritmos de Aprendizaje de rboles de Decisin Escalables: Diseados con los siguientes requerimientos: No requieren que los datos quepan en memoria. Los chequeos de consistencia se hacen eficientemente, utilizando ndices, con el objetivo de agilizar los escaneos de los datos. Las condiciones sobre ndices son preferibles sobre aquellas que no permiten indizacin. P.ej.: x<3, x 3 es un split mucho ms eficiente de comprobar que: x<y, x y para el cual no se puede definir ndices. 77 Ejemplo: (Mehta, Agrawal and Rissanen 1996)

Mtodos Especficos de Minera de Datos.


Algoritmos de Aprendizaje de rboles de Decisin Escalables: Se utilizan las cuentas de correlacin:
Variable a predecir

Una tabla para cada atributo

Attr-Val Ai=ai1 Ai =ai2 ... Ai =airi

Class1 Counti1,1 Counti2,1 ... Countiri,1

Class2 Counti1, 2 Counti2, 2 ... Countiri, 2

... ... ... ... ...

ClassK Counti1,k Counti2,k ... Countiri,k

Suelen caber en memoria, se utilizan para decidir en cada split cul es la mejor rama (slo sirven para condiciones vble=cte). El problema es que para crearlas se deben utilizar consultas SQL costosas.
78

Mtodos Especficos de Minera de Datos.


Algoritmos de Aprendizaje de rboles de Decisin Escalables: Tambin se puede hacer una particin vertical de la tabla:
ID ... A1 ... Class ...

ID ...

A1 ...

A2 ...

... ...

AM ...

Class ...
ID ...

. . .
AM ... Class ...

Escanear cada tabla es mucho menos costoso y para evaluar algunos splits slo es necesario evaluar una o dos subtablas. 79

Mtodos Especficos de Minera de Datos.


Reglas de Asociacin y Dependencia:
La terminologa no es muy coherente en este campo (Fayyad, p.ej. suele llamar asociaciones a todo y regla de asociacin a las dependencias):

Asociaciones: Se buscan asociaciones de la siguiente forma: (X1 = a) (X4 = b) De los n casos de la tabla, que las dos comparaciones sean verdaderas o falsas ser cierto en rc casos: Un parmetro Tc (confidence): Tc= certeza de la regla = rc/n
si consideramos valores nulos, tenemos tambin un nmero de casos en los que 80 se aplica satisfactoriamente (diferente de Tc) y denominado Ts.

Mtodos Especficos de Minera de Datos.


Reglas de Asociacin y Dependencia de Valor: Dependencias de Valor: Se buscan dependencias de la siguiente forma (if Ante then Cons): P.ej. if (X1= a, X3=c, X5=d) then (X4=b, X2=a) De los n casos de la tabla, el antecendente se puede hacer cierto en ra casos y de estos en rc casos se hace tambin el consecuente, tenemos: Dos parmetros Tc (confidence/accuracy) y Ts (support):
Tc= certeza de la regla =rc/ra, fuerza o confianza P(Cons|Ante) Ts = mnimo n de casos o porcentaje en los que se aplica satisfactoriamente (rc o rc /n respectivamente). 81 Llamado tambin support o prevalencia: P(Cons Ante)

Mtodos Especficos de Minera de Datos.


Reglas de Asociacin y Dependencia de Valor. Ejemplo:
DNI 11251545 30512526 22451616 25152516 23525251 Renta Familiar 5.000.000 1.000.000 3.000.000 2.000.000 1.500.000 Ciudad Barcelona Melilla Len Valencia Benidorm Profesin Ejecutivo Abogado Ejecutivo Camarero Animador Parque Temtico Edad 45 25 35 30 30 Hijos 3 0 2 0 0 Obeso S S S S N Casado S N S S N

Asociaciones: Casado e (Hijos > 0) estn asociados (80%, 4 casos). Obeso y casado estn asociados (80%, 4 casos) Dependencias: (Hijos > 0) Casado (100%, 2 casos). Casado Obeso (100%, 3 casos)

82

Mtodos Especficos de Minera de Datos.


Algoritmos de bsqueda de asociaciones y dependencias. La mayora se basa en descomponer el problema en dos fases:
FASE A: BSQUEDA DE LARGE ITEMSETS. Se buscan conjuntos de atributos con support >= al support deseado, llamados large itemsets (conjuntos de atributos grandes). De momento no se busca separarlos en parte izquierda y parte derecha. FASE B: ESCLARECIMIENTO DE DEPENDENCIAS (REGLAS). Se hacen particiones binarias y disjuntas de los itemsets y se calcula la confianza de cada uno. Se retienen aquellas reglas que tienen confianza >= a la confianza deseada.

Propiedad: cualquier subconjunto de un conjunto grande es tambin grande.

83

Mtodos Especficos de Minera de Datos.


Algoritmos de bsqueda de asociaciones. FASE A: Mtodo genrico de bsqueda de LARGE ITEMSETS Dado un support mnimo smin:

1. i=1 (tamao de los conjuntos) 2. Generar un conjunto unitario para cada atributo en Si. 3. Comprobar el support de todos los conjuntos en Si. Eliminar aquellos cuyo support < smin. 4. Combinar los conjuntos en Si para crear conjuntos de tamao i+1 en Si+1. 5. Si Si no es vaco entonces i:= i+1. Ir a 3. 6. Si no, retornar S2 S3 ... Si

Hay refinamientos (Agrawal et al. 1996) (Cheung et al. 1996) (Lin and Dunham 1998) (Savarese et al 1995) que permiten una mejor paralelizacin (dividen en subproblemas con menos tuplas y luego comprueban para todo el problema). Para una comparativa ver (Hipp et al. 1999).

84

Mtodos Especficos de Minera de Datos.


Algoritmo Apriori: El funcionamiento de este algoritmo se basa en la bsqueda de los conjuntos de tems con determinada cobertura. Esta bsqueda se realiza de manera incremental. La siguiente fase consiste en la creacin de reglas a partir de los conjuntos de tems frecuentes. Si slo buscamos reglas de asociacin con un tem en la parte derecha: de un conjunto de tems de tamao i, se crean i reglas colocando siempre un nico tem diferente en la parte derecha.
85

Mtodos Especficos de Minera de Datos.


Ejemplo:
VINO EL CABEZN T1 T2 T3 T4 T5 T6 T7 T8 T9 T10 1 0 0 1 0 1 0 0 1 0 GASEOSA CHISPA 1 1 0 1 0 0 1 0 1 1 VINO TO PACO 0 1 0 0 0 0 1 0 0 0 HORCHATA XUFER 0 0 1 1 0 0 1 1 0 0 BIZCOCHOS GOLOSO 0 0 1 1 0 0 1 1 1 1 GALLETAS TRIGO 1 0 1 1 1 1 0 1 0 0 CHOCOLATE LA VACA 0 0 0 1 0 1 0 1 1 0

86

Mtodos Especficos de Minera de Datos.


Ejemplo: Si definimos la cobertura mnima igual a dos: Siete conjuntos de slo un tem (siete atributos) De los =7!/5!=42 posibles casos de conjuntos formados por dos tems, tenemos 15 conjuntos que superan la cobertura mnima 11 conjuntos de tres tems. 2 conjuntos de cuatro tems.

87

Mtodos Especficos de Minera de Datos.


Ejemplo: La siguiente fase consiste en la creacin de reglas a partir de los conjuntos de tems frecuentes Por ejemplo, si tenemos el conjunto de items horchata Xufer Y bizcochos Goloso Y galletas Trigo se construyen las reglas:
SI bizcochos Goloso Y horchata Xufer ENTONCES galletas Trigo SI bizcochos Goloso Y galletas Trigo ENTONCES horchata Xufer SI galletas Trigo Y horchata Xufer ENTONCES bizcochos Goloso Cb=3, Cf=3/4 Cb=3, Cf=3/3 Cb=3, Cf=3/3

88

Mtodos Especficos de Minera de Datos.


Extensiones de las reglas de Asociacin: Valores utilizados en las reglas: Sistemas que trabajan con atributos con ms de dos valores (pas=Alemania) Dimensiones de los datos: Podemos incrementar las dimensiones de una regla incluyendo por ejemplo, la dimensin cliente. SI Comprar(vino El cabezn), Cliente(Juan), ENTONCES Comprar(agua Bendita). Niveles de abstraccin: algunos sistemas permiten incorporar a las reglas diferentes niveles de abstraccin que aglutinan tems. SI Comprar(vino) ENTONCES Comprar(gaseosa). Reglas secuenciales: consideran relaciones en una secuencia o serie temporal (varias compras o visitas a una pgina web).
89

Mtodos Especficos de Minera de Datos.


Otros tipos de asociaciones:
Asociaciones entre jerarquas. Si existen jerarquas entre los tems (p.ej. las familias de productos de un comercio o de un supermercado) a veces slo es interesante buscar asociaciones inter-jerarqua y no intra-jerarqua. Esto puede reducir mucho el espacio de bsqueda. Asociaciones negativas. A veces nos interesa conocer asociaciones negativas, p.ej. 80% de los clientes que compran pizzas congeladas no compran lentejas. El problema es mucho ms difcil en general, porque, cuando hay muchos tems, existen muchas ms combinaciones que no se dan que las que se dan. Asociaciones con valores no binarios y/o continuos: se deben binarizar. P.ej. Si se tiene un atributo a con k posibles valores v1, ..., vk (k > 2) se sustituye por k atributos con la condicin (a=vi). Con los atributos continuos se discretizan en rangos (0-5, 6-10, 11-15, ...) y luego se hace el mismo procedimiento. Asociaciones relacionales (Dehaspe and de Raedt 1997b). 90

Mtodos Especficos de Minera de Datos.


Dependencias Funcionales: A^B^CD Significa: para los mismos valores de A, B y C tenemos un solo valor de D. Es decir D es funcin de A, B y C. Si representamos la parte izquierda como un conjunto de condiciones, podemos establecer una relacin de orden entre las dependencias funcionales. Esto genera un semi-retculo. A^B^C
La bsqueda se realiza en este retculo. (Mannila & Rih 1994) coste exponencial FDEP (Flach & Savnik 1999) incluye: a) simple top-down algorithm, b) bottom-up algorithm, and c) bi-directional algorithm.

A^B A

B^C B C

A^C

91

Mtodos Especficos de Minera de Datos.


Correlaciones y Estudios Factoriales:
Permiten establecer relevancia/irrelevancia de factores y si aqulla es positiva o negativa respecto a otro factor o variable a estudiar.

Ejemplo (Kiel 2000): Estudio de visitas: 11 pacientes, 7 factores:


Health: salud del paciente (referida a la capacidad de ir a la consulta). (1-10) Need: conviccin del paciente que la visita es importante. (1-10) Transportation: disponibilidad de transporte del paciente al centro. (1-10) Child Care: disponibilidad de dejar los nios a cuidado. (1-10) Sick Time: si el paciente est trabajando, puede darse de baja. (1-10) Satisfaction: satisfaccin del cliente con su mdico. (1-10) Ease: facilidad del centro para concertar cita y eficiencia de la misma. (1-10) No-Show: indica si el paciente no se ha pasado por el mdico durante el ltimo ao (0-se ha pasado, 1 no se ha pasado)
92

Mtodos Especficos de Minera de Datos.


Correlaciones y Estudios Factoriales. Ejemplo (cont.): Matriz de correlaciones:
Health Need Transportation Child Care Sick Time Satisfaction Ease No-Show Health 1 -0.7378 0.3116 0.3116 0.2771 0.22008 0.3887 0.3955 Need 1 -01041 -01041 0.0602 -0.1337 -0.0334 -0.5416 Transption Child Care Sick Time Satisfaction Ease No-Show

1 1 0.6228 0.6538 0.6504 -0.5031

1 0.6228 0.6538 0.6504 -0.5031

1 0.6257 0.6588 -0.7249

1 0.8964 -0.3988

1 -0.3278

Coeficientes de Regresin:
Independent Variable Health Need Transportation Child Care Sick Time Satisfaction Ease Coefficient .6434 .0445 -.2391 -.0599 -.7584 .3537 -.0786

Indica que un incremento de 1 en el factor Health aumenta la probabilidad de que no aparezca el paciente en un 64.34%

93

Estimadores de Probabilidad
La mayora de los modelos, dado un nuevo caso, estiman la probabilidad de pertenencia a cada clase, asignndole la clase con mayor probabilidad (clasificadores suaves). Sin embargo, algunos mbitos requieren que esta asignacin venga acompaada con alguna informacin sobre la fiabilidad de la clasificacin. Los clasificadores suaves son tambin tiles en las aplicaciones donde nos interesa ordenar ejemplos: Mailings, predicciones de apuestas
94

Estimadores de Probabilidad
Un rbol de decisin, lo podemos convertir en un clasificador suave o PET (Probabilistic Estimator Tree) si utilizamos la distribucin de los ejemplos en la hojas Si una hoja tiene las siguientes frecuencias absolutas n1, n2, ..., nc (obtenidas a partir del conjunto de entrenamiento) las probabilidades estimadas pueden calcularse como: pi=ni/n Podemos mejorar las estimaciones aplicando correcciones a la estimacin de probabilidad: Laplace, M-estimate..
pi = ni + 1 ni + c iC
95

Estimadores de Probabilidad
Mailings:
o Existen tcnicas especficas para evaluar la conveniencia de campaas de mailings (propaganda por correo selectiva): o EJEMPLO: Supongamos que una empresa de venta de productos informticos por catlogo posee una base de datos de clientes. Esta empresa desea promocionar la venta de un nuevo producto: un mando de piloto para ser utilizado en programas de simulacin de vuelo. o Podramos enviar propaganda a todos sus clientes: o Solucin poco rentable o Podemos utilizar tcnicas de aprendizaje automtico para poder predecir la respuesta de un determinado cliente al envo de la propaganda y utilizar esta informacin para optimizar el diseo de la campaa.
96

Estimadores de Probabilidad
Mailings:
1. 2. 3. 4. Seleccin de una muestra aleatoria y suficientemente numerosa de clientes Se realiza el envo de la propaganda a los clientes seleccionados Una vez pasado un tiempo prudencial etiquetamos a los clientes de la muestra: 1 ha comprado el producto, 0 no ha comprado el producto Con la muestra etiqueta aprendemos un clasificador probabilstico o Asigna a cada ejemplo (cliente) no la clase predicha, sino una estimacin de la probabilidad de respuesta de ese cliente

97

Estimadores de Probabilidad
Mailings:
o Con el clasificador probabilstico podemos ordenar a los clientes segn su inters y dibujar un grfico de respuesta acumulada
100% 90% 80% 70% 60% 50% 40% 30% 20% 10% 0%
0% 10 % 20 % 30 % 40 % 50 % 60 % 70 % 80 % 90 % 10 0%

Sin modelo Modelo

Nos indican qu porcentaje de las posibles respuestas vamos a obtener dependiendo del porcentaje de envos que realicemos sobre la 98 poblacin total

Estimadores de Probabilidad
Adems si estimamos la matriz de coste, podemos conocer la configuracin optima mediante los grficos de beneficio
o o Configuracin 1: Coste inicial de la campaa 10.000, coste de envo de cada folleto 1,5. Por cada producto vendido ganamos 3 Configuracin 2: Coste inicial de la campaa 20.000, coste de envo de cada folleto 0,8. Por cada producto vendido ganamos 2,5
30.000 20.000 10.000 0 -10.000 -20.000 -30.000 -40.000 -50.000 -60.000
10 60 70 20 40 80 30 50 90 10

Configuracin 1 Configuracin 2

99

0%

0%

Estimadores de Probabilidad
Secuenciacin de Mailings:
No sobrecargar los clientes con demasiados mensajes de mrketing...
O bien acabarn ignorndolos o bien se cambiarn de compaa.

El mismo pequeo grupo de gente se elige una y otra vez y otros no se eligen nunca.

100

Estimadores de Probabilidad
Secuenciacin de Mailings: Hay que intentar abarcar mejor los clientes:

Ahora todos los clientes participan en una campaa.

101

Aprendizaje Sensible al Coste


Contexto: Una manera sencilla de definir un contexto es mediante dos aspectos: La distribucin del valor de salida: o Clasificacin: distribucin de las clases. o Regresin: distribucin de la salida. El coste de cada error: o Clasificacin: matriz de costes. o Regresin: funcin de coste.

102

Aprendizaje Sensible al Coste


Clasificacin: matriz de costes.
Ejemplo: Dejar cerrada una vlvula en una central nuclear cuando es necesario abrirla, puede provocar una explosin, mientras que abrir una vlvula cuando puede mantenerse cerrada, puede provocar una parada.

Matriz de costes:
Predicho
Abrir cerrar

Real
abrir 0 2000 cerrar 100 0

Lo importante no es obtener un clasificador que yerre lo menos posible sino que tenga un coste menor. A partir de la matriz se calcula el coste de un clasificador. Los clasificadores se evalan con dichos costes. Se selecciona el clasificador de menos coste.
103

Aprendizaje Sensible al Coste


Regresin: funcin de costes.
Ejemplo: un modelo de prediccin de stocks debe penalizar ms un error por exceso (al predecir mucho stock nos hemos quedado sin algn producto) que por defecto (el almacn estar ms lleno pero se servir el producto). El modelo que est centrado no ser un buen modelo.

Funcin de coste:
Con un = 0,01: - Si el error es -200 el Coste= 0,86 - Si el error es +200 el Coste= 6,3 De modo similar, se elige el modelo que minimice la funcin de coste.
104

Aprendizaje Sensible al Coste


Real
c1
abrir 300 200 cerrar 500 99000

Real
c2
ABRIR CERRAR abrir 0 500 cerrar 0 99500

Real
c3
ABRIR CERRAR abrir 400 100 cerrar 5400 94100

Pred

ABRIR CERRAR

Real
abrir ABRIR 0 2000 cerrar 100 0

Predicho Matrices resultado


c1
ABRIR CERRAR abrir 0 400.000 cerrar 50.000 0

CERRAR

Matriz de coste

c2
ABRIR CERRAR

abrir 0 1.000.000

cerrar 0 0

c3
ABRIR CERRAR

abrir 0 200.000

cerrar 540.000 0

COSTE TOTAL: 450.000

COSTE TOTAL: 1.000.000

COSTE TOTAL: 740.000


105

Aprendizaje Sensible al Coste

De qu depende el coste final? Para dos clases. Depende de un contexto: El coste de los falsos positivos y falsos negativos: FPcost y FNcost Distribucin de clases: % de ejemplos de la clase negativa respecto de los de la clase positiva. (Neg / Pos). Se calcula: (para el ejemplo anterior) Neg 99500 = = 199 Pos 500 slope = 1 199 = 9,95 20

FPcost 100 1 = = FNcost 2000 20 mejor.

Para dos clases, el valor slope es suficiente para determinar qu clasificador ser

Clasifi. 1: FNR= 40%, FPR= 0,5% Coste Unitario = 1 x 0,40 + 9,95 x 0,005 = 0,45

Clasifi. 2: FNR= 100%, FPR= 0% Coste Unitario = 1 x 1 + 9,95 x 0 = 1

Clasifi. 3: FNR= 20%, FPR= 5,4% Coste Unitario = 1 x 0,20 + 9,95 x 0,054 = 0,74 106

Aprendizaje Sensible al Coste


Adaptacin de mtodos para contextos con coste
Muchos mtodos devuelven la probabilidad de pertenencia a la clase para cada ejemplo. En estos casos en vez de asignar la clase con mayor probabilidad, se asigna la clase que minimice el coste. Ejemplo: un rbol de decisin retorna {0.4,0.6} a una instancia t con la siguiente matriz de coste:
Real
c1
+ -20 500 200 -10

Predicho

+ -

Tericamente deberamos asignar la clase - a t, sin embargo, dada la matriz de costes, es ms sensato asignar +, ya que Coste(+)=0.6*200+0.4*(-20)=112 Coste(-)=0.4*500+0.6*(-10)=194
107

Aprendizaje Sensible al Coste


Adaptacin de mtodos para contextos con coste
Otra opcin es modificar la distribucin de los ejemplos de acuerdo a la matriz de costes (Stratification): Undersampling: Eliminar instancias de las clases a reducir Oversampling: Duplicar instancias de las clases a significar Una solucin ms elegante es modificar los pesos los ejemplos de cada clase de acuerdo a la matriz de coste, siempre que los mtodos lo permitan

108

Anlisis ROC
Problema
En muchas aplicaciones, hasta el momento de aplicacin, no se conoce la distribucin de clases y/o es difcil estimar la matriz de costes. P.ej. un clasificador de spam. Pero los modelos se aprenden antes generalmente. SOLUCIN:

Anlisis ROC (Receiver Operating Characteristic)


109

Anlisis ROC
El espacio ROC
Se normaliza la matriz de confusin por columnas: TPR, FNR TNR, FPR.
Real
abrir cerrar 12000 87500 abrir ABRIR CERRAR 400 100 ABRIR CERRAR 0,8 0,2

Real
cerrar 0,121 0,879

Pred

Pred

Espacio ROC
1,000 True Positives

TPR= 400 / 500 = 80% FNR= 100 / 500 = 20% TNR= 87500 / 99500 = 87,9% FPR= 12000 / 99500 = 12,1%

0,800 0,600 0,400 0,200 0,000 0,000 0,200 0,400 0,600 0,800 1,000

110

False Positives

Anlisis ROC
Espacio ROC: buenos y malos clasificadores.
1 1 1

TPR

TPR

TPR

FPR

FPR

FPR

Buen clasificador. Alto TPR. Bajo FPR.

Mal clasificador. Bajo TPR. Alto FPR.

Mal clasificador (en realidad).

111

Anlisis ROC
La Curva ROC. Continuidad.
ROC diagram
Podemos construir cualquier clasificador intermedio ponderando aleatoramiente los dos clasificadores (con ms peso a uno u otro).

TPR

Esto en realidad crea un continuo de clasificadores entre cualesquiera dos clasificadores.

0 0 FPR 1
112

Anlisis ROC
La Curva ROC. Construccin.
1

ROC diagram

Dados varios clasificadores:


Construimos el casco convexo (convex hull) de sus puntos (FPR,TPR) adems de los dos clasificadores triviales (0,0) y (1,1).

TPR

La diagonal muestra por tanto la peor situacin posible.

Los clasificadores que caen debajo de la curva ROC se descartan.

0 0 FPR 1

El mejor clasificador de los que quedan se seleccionar en el momento de aplicacin

Podemos descartar los que estn por debajo porque no hay ninguna combinacin de distribucin de clases / matriz de costes para la cual puedan ser ptimos. 113

Anlisis ROC
En el contexto de aplicacin, elegimos el clasificador
ptimo entre los mantenidos. Ejemplo 1:
Contexto:
100% 80%

true positive rate

FPcost 1 = 2 FNcost
Neg =4 Pos

60%

40%

20%

0% 0% 20% 40% 60% 80% 100%

slope = 4 2 = 2
false positive rate

114

Anlisis ROC
En el contexto de aplicacin, elegimos el clasificador
ptimo entre los mantenidos. Ejemplo 2:
Contexto:
100% 80%

true positive rate

FPcost 1 = 8 FNcost
Neg =4 Pos slope = 4 8 = .5
0% 20% 40% 60% 80% 100%

60%

40%

20%

0%

false positive rate

115

Anlisis ROC
Qu hemos aprendido?
La optimalidad de un clasificador depende de la distribucin de clases
y de los costes de los errores. A partir de este contexto se puede calcular una inclinacin (o skew ) caracterstica del contexto. Si sabemos este contexto, podemos seleccionar el mejor clasificador, multiplicando la matriz de confusin por la matriz de coste. Si desconocemos el contexto de aplicacin en el momento de generacin, usando el anlisis ROC podemos elegir un subconjunto de clasificadores, entre los cuales seguro estar el clasificador ptimo para cualquier contexto posible, cuando ste se conozca.

Podemos ir ms all?

116

Anlisis ROC
Curva ROC de un Clasificador Probabilstico: Un clasificador probabilstico (soft) se puede convertir en un
clasificador discreto con un umbral. Ejemplo: si score > 0.7 entonces clase A, si no clase B. Con distintos umbrales, tenemos distintos clasificadores, que les dan ms o menos importancia a cada una de las clases (sin necesidad de sobremuestreo o submuestreo). Podemos considerar cada umbral como un clasificador diferente y dibujarlos en el espacio ROC. Esto genera una curva...

Tenemos una curva para un solo clasificador soft


Esta curva es escalonada (no se suele realizar el convex hull).
117

Anlisis ROC

Curva ROC de un Clasificador soft: Ejemplo:

Clase Real Clase Predicha

n n n n n n n n n n n n n n n n n n n n
Tom Fawcett

p p n p n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n 118

...

p p p p p p p p p p p p p p p p p p p p

Anlisis ROC
Anlisis ROC de varios clasificadores soft:
En esta zona es mejor el clasificador insts

En esta zona es mejor el clasificador insts2

Robert Holte

Debemos mantener los clasificadores que tengan al menos una zona mejor y despus actuar 119 igual que en el caso de los clasificadores discretos.

Anlisis ROC

Para seleccionar un solo clasificador discreto? Se selecciona el que tiene mayor rea bajo la curva ROC (AUC, Area Under the ROC
Curve).
ROC curve
1,000 True Positives 0,800 0,600 0,400 0,200 0,000 0,000 0,200 0,400 0,600 0,800 1,000 False Positives

AUC

Alternativa al error para evaluar clasificadores Un mtodo de aprendizaje / MD ser mejor si genera
clasificadores con alta AUC.
120

Anlisis ROC
Para seleccionar un solo clasificador probabilstico?
Se selecciona el que tiene mayor rea bajo la curva ROC (AUC, Area Under
the ROC Curve).

En este caso seleccionamos el B.

Tom Fawcett

Evala cun bien un clasificador realiza un rnking de sus predicciones.

121

Anlisis ROC
Ejemplo: Deteccin Spam

122

Anlisis ROC
Ejemplo: Deteccin Spam
ROC diagram

1
Clasificador con mayor AUC

TPR

AUC

FPR

123

Multi-clasificadores
Una manera de mejorar las predicciones es combinar varios modelos
H

hc

124

Multi-clasificadores
Para obtener buenos resultados en la clasificacin es necesario tener un conjunto de modelos (ensemble): Precisin alta Diferentes
Dados 3 modelos {h1, h2, h3}, considere un nuevo dato x a ser clasificado: Si los tres clasificadores son similares, entonces cuando h1(x) sea errneo,
probablemente h2(x) y h3(x) tambin lo sern. Si los clasificadores son lo bastante diversos, cuando h1(x) sea errneo, h2(x) y h3(x) podran ser correctos, y entonces el conjunto combinado clasificara correctamente el dato x.
125

Multi-clasificadores
Mtodos para generar ensembles: Manipulacin de los datos de entrenamiento Manipulacin de los atributos Manipulacin de las clases Mtodos aleatorios

126

Multi-clasificadores
Combinacin simple (voting):

a1 a2 am

Decision Tree

C1

Data

a1 a2 am

Neural Net

C2 Prediccin Combinada

Fusin
a1 a2 am

Cn
SVM

127

Multi-clasificadores
Bagging (Bootstrapt Aggregation):
Bootstrap Replicates Bootstrap Aggregation
a1 a2 am

Decision Tree 1

C1

Data

a1 a2 am

Decision Tree 2

C2 Prediccin Combinada

Votacin
a1 a2 am

Decision Tree n

Cn

128

Multi-clasificadores
Boosting

Errores

a1,p1 a2,p2 am,pm a1,p1 a2,p2 am,pm

Decision Tree 1

C1,e1

Data

Decision Tree 2

C2,e2 Prediccin Combinada

Errores

Votacin
a1,p1 a2,p2 am,pm

Decision Tree n

Cn,en

Ponderada

129

Multi-clasificadores
Varios trabajos han comparado Boosting y Bagging Boosting obtiene mejor precisin en general En problemas con ruido Bagging es ms robusto

130

Multi-clasificadores
Stacking
a1 a2 am

Decision Tree

C1

Data

a1 a2 am

Neural Net

C2 Decision Tree Prediccin Combinada

a1 a2 am

Cn SVM C0

131

Вам также может понравиться