You are on page 1of 4

Contenidos 1.

Denicin del problema Minera de Datos

Tema 10.- Prediccin numrica o regresin


Julia Flores Departamento de Inform tica a Universidad de Castilla-La Mancha EPSA

2. Validacin de algoritmos de regresin 3. Tcnicas de clasicacin vlidas para regresin 4. Anlisis de regresin 5. rboles de regresin 6. rboles de modelos 7. Sistemas basados en reglas difusas (repaso)

M. Julia Flores - EPSA/UCLM Minera de Datos p.1/15

M. Julia Flores - EPSA/UCLM Minera de Datos p.2/15

Prediccin numrica o regresin


Objetivo: predecir el valor numrico para una variable a patir de los valores conocidos para otras. La denicin del problema es por tanto parecido al de la clasicacin, tendremos variables predictoras o atributos y una variable "clase" o de regresin que en este caso es numrica. Ahora, la mayora (o todas) las variables predictoras son numricas. Ejemplos: qu consumo tendr un coche en autova en funcin de su peso, cilindrada, potencia, ...? Qu nmero de artculos tendremos en el prximo pedido? Cuntos meses necesitaremos para desarrollar un proyecto software? Cul es la probabilidad de que un cliente determinado sea receptivo a un envo publicitario? Cuntos enfermos tendremos en urgencias la prxima nochebuena? Qu nota sacar en Minera de Datos sabiendo la de Ing. del Conocimiento?
M. Julia Flores - EPSA/UCLM Minera de Datos p.3/15

Validacin en prediccin numrica


Todas las tcnicas de validacin estudiadas en clasicacin son vlidas para prediccin numrica. La diferencia est en que ahora debemos medir el error de otra forma. Debemos medir el error cometido al aproximar un conjunto de valores {v1 , . . . , vn } por su estimacin {v1 , . . . , vn }. Error Cuadrtico Medio (ECM) ECM =
n (vi vi )2 i=1 n

ECM estandarizado (ECME) ECME =


n (vi vi )2 i=1 n

Error Medio Absoluto (EMA) EMA =


n |vi vi | i=1 n

Error Absoluto Relativo (EAR) EAR =


n |vi vi | i=1 n |vi v| i=1

Coeciente de correlacin rv v =
n (vi v)(vi v) i=1 (n1)v v

M. Julia Flores - EPSA/UCLM Minera de Datos p.4/15

Tcnicas de clasicacin vlidas para regresin


Mtodos basados en ejemplos/instancias: Al usar kNN, si los k vecinos ms prximos {e1 , . . . , ek } tienen valores {v1 , . . . , vk } para la variable objetivo, entonces el valor a devolver para el objeto siendo analizado e sera:
k v k i=1 k k wk vk i=1 k wk i=1 1 d(ei ,e ) .

Ejemplos con WEKA


Resultados sobre la base de datos CPU (sin tener en cuenta la variable nominal fabricante) y usando 5-cv: 1-NN: EMA: 15.1292 EAR: 17.3137% 5-NN: EMA: 17.5316 EAR: 20.0630% 5-NN (pesando por 1/distancia): EMA: 13.1456 EAR: 15.0437% Red neuronal (valores por defecto excepto 100 epoch): EMA: 6.1005 EAR: 6.9813%

si todos cuentan igual si se hace un voto ponderado

v=

por ejemplo con wi =

Mtodos basados en redes neuronales: La capa de salida sera una nica neurona. Como los pesos se adaptan en funcin del error cometido, es suciente con medir de forma adecuada el error.

M. Julia Flores - EPSA/UCLM Minera de Datos p.5/15

M. Julia Flores - EPSA/UCLM Minera de Datos p.6/15

Ejemplos con WEKA (cont.)


Visualizando el error cometido:
1400 1NN 1400 1NN 1200 1200

Anlisis de regresin
Sin duda el mtodo ms utilizado para realizar la tarea de prediccin numrica. La idea es estimar la variable objetivo (y) como una ecuacin que contiene como incgnitas al resto de las variables (x1 , . . . , xn ). El modelo ms simple es la Regresin lineal que reducida a una sola variable predictora tiene la forma:

1000

1000

800

800

600

600

400

400

200

200

0 0 200 400 600 800 1000 1200 1400

0 0 200 400 600 800 1000 1200 1400

1NN
1400 1NN 1400

5NN
1NN

y = a+bx Estos coecientes pueden obtenerse fcilmente mediante el mtodo de los mnimos cuadrados: b= s (xi x)(yi y) i=1 s 2 i=1 (xi x) a = ybx

1200

1200

1000

1000

800

800

600

600

400

400

200

200

0 0 200 400 600 800 1000 1200 1400

0 0 200 400 600 800 1000 1200 1400

5NN-1/d
M. Julia Flores - EPSA/UCLM

Red Neuronal
M. Julia Flores - EPSA/UCLM Minera de Datos p.7/15 Minera de Datos p.8/15

Regresin lineal: ejemplo


60 55 50 45 40 35 30 25 20 15 10 15 20 25 30 35 40 45 50 datos 1.02375*x+4.9078

Regresin lineal mltiple


datos 0.139958*x+39.1

Cuando hay ms de una variable predictora, la ecuacin de prediccin se transforma en: y = a + b1 x1 + b2 x2 + + bn xn Este problema es conocido como Regresin Lineal Mltiple. La estimacin de los coecientes es algo ms compleja y requiere operar con matrices (y sus inversas).

50

100

150

200

250

30

Por ejemplo, continuando con nuestro chero CPU.arff tendramos: class = 0.066 * MYCT + 0.0143 * MMIN + 0.0066 * MMAX + 0.4945 * CACH - 0.1723 * CHMIN + 1.2012 * CHMAX -66.4814 34.31 39.26%

Bastante apropiado

No tan apropiado

Para estimar curvas es necesario usar otra regresin, por ejemplo, regresin exponencial: y = a ebx cmo estimamos ahora a y b?. Tomando logaritmos: ln(y) = ln(a e ) ln(y) = ln(a) + ln(e ) y = a + bx
bx bx

EAM EAR

= =

Es decir, tenemos un problema de regresin lineal entre y = ln(y) y x. Una vez estimados a y b podemos calcular a = ea
M. Julia Flores - EPSA/UCLM Minera de Datos p.9/15

Existen tcnicas ms complejas de regresin que evidentemente aproximan mucho mejor los datos de entrada.
M. Julia Flores - EPSA/UCLM Minera de Datos p.10/15

rboles de regresin
La estructura es idntica a un rbol de decisin, pero ahora las hojas contienen un valor numrico. Ese valor numrico se calcula como la media del valor para la variable clase de todos los ejemplos que han llegado a esa hoja durante el proceso de construccin del rbol. La evaluacin de un nuevo ejemplo es idntico a los rboles de decisin. Durante el proceso de prediccin es posible usar un suavizado de los valores del ejemplo a tratar, con el n de salvar las posibles discontinuidades presentes en los datos (en WEKA lo controla el parmetro useUnsmoothed). El criterio de seleccin de una variable en la construccin del rbol est basado en una reduccin del error esperado: reduccin de la desviacin/varianza en la variable objetivo: SDR = sd(T )
i

rboles de regresin: ejemplo con CPU


MMAX <= 14000 : | CACH <= 8.5 : | | MMAX <= 6100 : LM1 (75/5.4%) | | MMAX > 6100 : | | | MYCT <= 83.5 : | | | | MMAX <= 10000 : LM2 (8/4.5%) | | | | MMAX > 10000 : LM3 (3/3.78%) | | | MYCT > 83.5 : LM4 (22/6.73%) | CACH > 8.5 : | | CHMIN <= 7 : | | | MYCT <= 95 : LM5 (7/13.3%) | | | MYCT > 95 : | | | | CACH <= 28 : LM6 (12/7.85%) | | | | CACH > 28 : LM7 (6/7.27%) | | CHMIN > 7 : LM8 (8/45%) MMAX > 14000 : | MMAX <= 22500 : | | CACH <= 27 : | | | CHMIN <= 5 : LM9 (14/6.92%) | | | CHMIN > 5 : LM10 (5/12.8%) | | CACH > 27 : LM11 (18/25.1%) .............................
M. Julia Flores - EPSA/UCLM Minera de Datos p.11/15 Minera de Datos p.12/15

LM1: LM2: LM3: LM4: LM5: LM6: LM7: LM8: LM9: LM10: LM11: LM12: LM13: LM14: LM15: EAM EAR

class = 24.3 class = 45.3 class = 62.7 class = 39.6 class = 63.6 class = 43.9 class = 55 class = 104 class = 75.4 class = 94.4 class = 128 class = 262 class = 174 class = 355 class = 971 18.1275 20.7449%

|Ti | sd(Ti ) |T |

SDR = Standard Deviation Reduction Finalmente, el rbol es podado para evitar el sobreajuste.
M. Julia Flores - EPSA/UCLM

WEKA: sin suavizar poda=1

rboles de Modelos
Son rboles de regresin en los que la poda se realiza en mayor medida y en las hojas en lugar de un valor numrico contienen una ecuacin de regresin local a esa particin del espacio.
8 .5 7 .5 6 .5 datos 0.4091*x+4.3056 3*x+1 0.6551*x + 3.0533

rboles de modelos: ejemplo con CPU


MMAX <= 14000 : | CACH <= 8.5 : | CACH > 8.5 : MMAX > 14000 : | MMAX <= 22500 | MMAX > 22500 LM1 (108/3.99%) LM2 (33/3.89%) : LM3 (37/4.73%) : LM4 (31/69.2%)

LM1: LM2: LM3: LM4:

class = 15.9 - 0.00453MYCT + 0.00327MMAX class = -0.609 + 0.004MMAX + 0.59CACH + 1.57CHMIN class = 1.64 - 0.0266MYCT + 0.00485MMIN + 0.00346MMAX + 0.627CACH + 1.43CHMIN + 0.127CHMAX class = -350 - 0.843MYCT + 0.0183MMAX + 1.62CACH

5 .5 4 .5 1 2 3 4 5 6 7

EMR 10.0402 EAR 11.4899 % WEKA: sin suavizar poda=0

Si x <= 3 entonces modelo1 (-) sino modelo2 (-)


M. Julia Flores - EPSA/UCLM Minera de Datos p.13/15 M. Julia Flores - EPSA/UCLM Minera de Datos p.14/15

Conjuntos difusos
La idea es aprender un SBR difusas a partir de los datos, y aplicarlo para predecir el valor de los nuevos casos. Podemos aplicar algoritmos como Wang y Mendel, Bardossy y Duckstein, evolutivos, ... P.e. para el segundo caso visto de regresin (en el que iba mejor la exponencial), si usamos 5 etiquetas difusas [NM,NS,ZR,PS,PM] para ambas variables y el algoritmo de Wang y Mendel (que no es el mejor) obtenemos el siguiente conjunto de reglas: PS NS NM PM ZR NS NS NS PM NM En este problema se obtienen las siguientes correlaciones (valor real, valor predicho): Regresin lineal: 0.77 Conjunto difuso: 0.86
M. Julia Flores - EPSA/UCLM Minera de Datos p.15/15

You might also like