Preparación de Datos Dr. Ing. Biom. Elmer A. Fernández Universidad Católica de Córdoba Fac. Ingeniería Preparación de datos Esta es una etapa crítica. En esta etapa se acondicionan los datos que luego van a alimentar el modelo o la herramienta de análisis. La salida de esta etapa es un/os conjunto/s de datos que serán utilizados por la etapa de modelado y validación. Realice un informe donde describa los conjuntos de datos generados en esta etapa. 1
Preparación de los Datos: Selección de datos Tareas: Decidir los datos a utilizar para el análisis. Los criterios deben incluir la relevancia para el objetivo de DM, calidad y restricciones técnicas (volumen o tipos de datos). La selección implica la selección tanto de atributos como de registros. Salida de esta etapa: La lista de datos incluidos/excluidos y las razones de ello. La inclusión / exclusión de registros (pacientes) es de vital importancia en protocolos en medicina. La inclusión/exclusión de atributos suele ser en sí mismo un problema de DM. Preparación de los Datos: Selección de datos Cuantos datos son suficientes? Test de Hipótesis? Variable continuo o nominal? Machine Lerning? Entranamiento/Validación/Evaluación? 2
Preparación de datos: Limpieza de datos Tareas: Esta etapa es muy importante: Eleva la calidad de los datos adquiridos / seleccionados. Aplicación de filtros, inserción de valores, estimación de datos faltantes, tratamiento de outliers. Salidas de esta etapa: Describa que decisiones y acciones fueron realizadas para la limpieza. Es aquí donde se resuelven los problemas determinados en Verificación de la Integridad y Calidad de los Datos. Las transformaciones realizadas y el motivo de las mismas, como el posible impacto en el modelo de análisis. Limpieza de Datos Valores Faltantes Son muy comunes en aplicaciones médicas. Se deben tratar y modelar cuidadosamente. Su tratamiento depende tanto del negocio como de la herramienta de análisis Estrategias Eliminar el dato Promediar (ej. VFC) Identificación NAN (métodos de clustering) Valor neutro para la herramienta de análisis. (Cuidado en BPN o SVM). 3
Limpieza de Datos Valores Faltantes Deben reemplazarse por varias razones: 1. Varios métodos de modelado no pueden manejarlos (cast out) 2. Los métodos por defecto pueden distorsionar la información si el método es inadecuado 3. El modelador debe conocer y controlar las características del método de reemplazo 4. La mayoría de los métodos desechan la información contenida en el patrón del valor faltante Limpieza de Datos Valores Faltantes Identifique el Patrón de los Variables Faltantes. Patrón sobre datos Patrón sobre variables. Los VF son información en muchos casos VF son una Variable nominal 4
Limpieza de Datos Valores Faltantes Reemplazo de Valores Faltantes: Tarea muy costosa computacional y temporalmente. Específicos con el campo/problema/variable_tipo Adecuado para: Entrenamiento/Evaluación/Ejecución Limpieza de Datos Valores Faltantes A tener en cuenta: Estimador sin sesgo: Estimador: dispositivo que realiza una adivinación justificable de un valor Sin sesgo: que no cambia significativamente las características de la variable Relaciones de variabilidad Mantener la forma de distribución de la variable 5
Limpieza de Datos Valores Faltantes Preservación de media o variabilidad: preserva a Preserva preserva preserva Posicion Original miss 11 media la var la media la var 1 0.0886 0.0886 0.0886 0.0886?? 0.4339 0.1609 2 0.0684 0.0684 0.0684 0.0684 0.0684 0.0684 0.0684 3 0.3515 0.3515 0.3515 0.3515 0.3515 0.3515 0.3515 4 0.9874 0.9874 0.9874 0.9874 0.9874 0.9874 0.9874 5 0.4713 0.4713 0.4713 0.4713 0.4713 0.4713 0.4713 6 0.6115 0.6115 0.6115 0.6115 0.6115 0.6115 0.6115 7 0.2573 0.2573 0.2573 0.2573 0.2573 0.2573 0.2573 8 0.2914 0.2914 0.2914 0.2914 0.2914 0.2914 0.2914 9 0.1662 0.1662 0.1662 0.1662 0.1662 0.1662 0.1662 10 0.4400 0.4400 0.4400 0.4400 0.4400 0.4400 0.4400 11 0.6939?? 0.3734 0.6493 0.6939 0.6939 0.6939 promedio 0.4025 0.3734 0.3734 0.3984 0.4339 0.4339 0.4091 sd 0.2791 0.2760 0.2618 0.2747 0.2729 0.2589 0.2717 error 0.3205 0.0446-0.3453-0.0723 Limpieza de Datos Valores Faltantes Preservación de media o variabilidad: preserva a Preserva preserva preserva Posicion Original miss 11 media la var la media la var 1 0.0886 0.0886 0.0886 0.0886?? 0.4339 0.1609 2 0.0684 0.0684 0.0684 0.0684 0.0684 0.0684 0.0684 3 0.3515 0.3515 0.3515 0.3515 0.3515 0.3515 0.3515 4 0.9874 0.9874 0.9874 0.9874 0.9874 0.9874 0.9874 5 0.4713 0.4713 0.4713 0.4713 0.4713 0.4713 0.4713 6 0.6115 0.6115 0.6115 0.6115 0.6115 0.6115 0.6115 7 0.2573 0.2573 0.2573 0.2573 0.2573 0.2573 0.2573 8 0.2914 0.2914 0.2914 0.2914 0.2914 0.2914 0.2914 9 0.1662 0.1662 0.1662 0.1662 0.1662 0.1662 0.1662 10 0.4400 0.4400 0.4400 0.4400 0.4400 0.4400 0.4400 11 0.6939?? 0.3734 0.6493 0.6939 0.6939 0.6939 promedio 0.4025 0.3734 0.3734 0.3984 0.4339 0.4339 0.4091 sd 0.2791 0.2760 0.2618 0.2747 0.2729 0.2589 0.2717 error 0.3205 0.0446-0.3453-0.0723 Desventajas: Para Varios VF genera un solo valor. Si no conocemos la medio verdadera, no sabemos si sumamos o restamos la DS 6
Limpieza de Datos Valores Faltantes Relaciones entre Variables: Métodos de regresión (ver BaseD1.xls nueva) Redes Neuronales Redes Auto asociativas Estimador de vecinos cercanos. Limpieza de Datos Outliers Son datos infrecuentes, que suelen estar fuera de rango. Si se separa el dato, conviene almacenarlo para una etapa de validación o análisis. Estrategias de detección: BoxPlot Histogramas Análisis de Medias, Mediana, Moda y Rangos Gráficos tipo temporal Estrategias de solución Filtrado (ARMA, Medianas) Normalización sigmoidea Umbralar 7
Limpieza de Datos Outliers Máximos y Mínimos de la muestra : confianza Estos definirán el rango de la muestra Siempre hay chances de encontrar outliers en la muestra Menor es la muestra, mayor la P(ourlier/muestra), mayor diferencia entre el rango de la muestra y el de la población Limpieza de Datos Outliers Problemas durante la fase de entrenamiento: Eliminar el dato Introducción de bias Rango inválido 8
Limpieza de Datos Outliers Problemas durante la fase de evaluación Problemas durante la fase de Ejecución Construcción de datos Tareas Producción de variables derivadas, o datos. Simulación de datos. Suele realizarse cuando hay pocos datos representando un determinado evento. Cuando se incorpora ruido. Salidas: Atributos derivados. (Ej. IMC, Sup. Corp., VOP, etc.) Descripción de los nuevos registros. Por ejemplo cuando por cuestiones de modelado resulte interesante incorporar alguna información que no sea necesaria contar en el conjunto de datos. 9
Construcción de datos Remapeo de variables nominales. 1 de N M de N > Construcción de datos Mapeo de variables Nominales: Posicion Numero Nombre Altura Peso codigo FechaNaci Altura-Norm D 34 pp 6.5 235 a 10/02/1968 1.000 D 38 vm 6.3 227 b 30/08/1968 0.759 F 21 miv 6.08 225 c 14/09/1966 0.494 F 23 ts 6.25 220 d 18/05/1972 0.699 D 22 dm 6.17 219 e 27/01/1967 0.602 F 24 STh 6.25 219 e 09/01/1971 0.699 F 44 JH 6.25 215 f 29/08/1972 0.699 D 5 SQ 6.25 215 f 22/10/1968 0.699 D 33 ZZ 6.08 215 f 22/04/1968 0.494 F 37 PaP 6.08 210 g 23/04/1973 0.494 R 55 IU 6.08 205 h 01/10/1969 0.494 F 26 MR 6.08 205 h 11/03/1971 0.494 D 43 PB 6.17 204 j 27/01/1971 0.602 F 28 MB 6.08 202 k 19/03/1966 0.494 F 27 ShC 6.08 199 m 13/08/1966 0.494 D 52 CrR 6.17 195 n 13/09/1974 0.602 F 17 BeB 6 194 p 24/08/1968 0.398 F 49 BrS 6.08 191 q 24/02/1971 0.494 F 25 ViD 6.08 191 q 17/12/1967 0.494 F 71 SebD 5.92 188 r 15/02/1975 0.301 F 15 EH 5.83 186 s 19/12/1976 0.193 F 8 MarkR 5.83 185 t 01/02/1968 0.193 D 29 BerettC 6 182 u 23/12/1976 0.398 R 11 SakuK 5.83 182 u 23/11/1974 0.193 G 35 AnM 5.67 177 v 18/02/1960 0.000 G 41 JocT 5.92 170 w 12/01/1975 0.301 10
> Construcción de datos Mapeo de variables Nominales: Posicion Numero Nombre Altura Peso codigo FechaNaci Altura-Norm Est. Val. Peso D 34 pp 6.5? a 10/02/1968 1.000 1.000 D 38 vm 6.3? b 30/08/1968 0.759 0.759 F 21 miv 6.08? c 14/09/1966 0.494 0.494 F 23 ts 6.25? d 18/05/1972 0.699 0.699 D 22 dm 6.17? e 27/01/1967 0.602 0.651 F 24 STh 6.25? e 09/01/1971 0.699 0.651 F 44 JH 6.25? f 29/08/1972 0.699 0.631 D 5 SQ 6.25? f 22/10/1968 0.699 0.631 D 33 ZZ 6.08? f 22/04/1968 0.494 0.631 F 37 PaP 6.08? g 23/04/1973 0.494 0.494 R 55 IU 6.08? h 01/10/1969 0.494 0.494 F 26 MR 6.08? h 11/03/1971 0.494 0.494 D 43 PB 6.17? j 27/01/1971 0.602 0.602 F 28 MB 6.08? k 19/03/1966 0.494 0.494 F 27 ShC 6.08? m 13/08/1966 0.494 0.494 D 52 CrR 6.17? n 13/09/1974 0.602 0.602 F 17 BeB 6? p 24/08/1968 0.398 0.398 F 49 BrS 6.08? q 24/02/1971 0.494 0.494 F 25 ViD 6.08? q 17/12/1967 0.494 0.494 F 71 SebD 5.92? r 15/02/1975 0.301 0.301 F 15 EH 5.83? s 19/12/1976 0.193 0.193 F 8 MarkR 5.83? t 01/02/1968 0.193 0.193 D 29 BerettC 6? u 23/12/1976 0.398 0.295 R 11 SakuK 5.83? u 23/11/1974 0.193 0.295 G 35 AnM 5.67? v 18/02/1960 0.000 0.000 G 41 JocT 5.92? w 12/01/1975 0.301 0.301 promedio > Construcción de datos Mapeo de variables Nominales: 1.2 1 0.8 0.6 0.4 Peso Norm Valor est 0.2 0 1 3 5 7 9 11 13 15 17 19 21 23 25 Cor = 0.83 11
> Construcción de datos Mapeo de variables Nominales: Posicion Numero Nombre Altura Peso codigo FechaNaci Altura-Norm D 34 pp 6.5 235 a 10/02/1968 1.000 D 38 vm 6.3 227 b 30/08/1968 0.759 F 21 miv 6.08 225 c 14/09/1966 0.494 F 23 ts 6.25 220 d 18/05/1972 0.699 D 22 dm 6.17 219 e 27/01/1967 0.602 F 24 STh 6.25 219 e 09/01/1971 0.699 F 44 JH 6.25 215 f 29/08/1972 0.699 D 5 SQ 6.25 215 f 22/10/1968 0.699 D 33 ZZ 6.08 215 f 22/04/1968 0.494 F 37 PaP 6.08 210 g 23/04/1973 0.494 R 55 IU 6.08 205 h 01/10/1969 0.494 F 26 MR 6.08 205 h 11/03/1971 0.494 D 43 PB 6.17 204 j 27/01/1971 0.602 F 28 MB 6.08 202 k 19/03/1966 0.494 F 27 ShC 6.08 199 m 13/08/1966 0.494 D 52 CrR 6.17 195 n 13/09/1974 0.602 F 17 BeB 6 194 p 24/08/1968 0.398 F 49 BrS 6.08 191 q 24/02/1971 0.494 F 25 ViD 6.08 191 q 17/12/1967 0.494 F 71 SebD 5.92 188 r 15/02/1975 0.301 F 15 EH 5.83 186 s 19/12/1976 0.193 F 8 MarkR 5.83 185 t 01/02/1968 0.193 D 29 BerettC 6 182 u 23/12/1976 0.398 R 11 SakuK 5.83 182 u 23/11/1974 0.193 G 35 AnM 5.67 177 v 18/02/1960 0.000 G 41 JocT 5.92 170 w 12/01/1975 0.301 > Construcción de datos Mapeo de variables Nominales: Posicion Numero Nombre Altura Peso codigo Altura N PesoN ma mp D 29 BerettC 6 182 u 0.398 0.1846 0.5932 0.5438339 D 52 CrR 6.17 195 n 0.602 0.3846 D 43 PB 6.17 204 j 0.602 0.5231 D 5 SQ 6.25 215 f 0.699 0.6923 D 33 ZZ 6.08 215 f 0.494 0.6923 D 22 dm 6.17 219 e 0.602 0.7538 D 38 vm 6.3 227 b 0.759 0.8769 D 34 pp 6.5 235 a 1.000 1 F 8 MarkR 5.83 185 t 0.193 0.2308 0.4945 0.4945055 F 15 EH 5.83 186 s 0.193 0.2462 1.2 F 71 SebD 5.92 188 r 0.301 0.2769 F 49 BrS 6.08 191 q 0.494 0.3231 F 25 ViD 6.08 191 q 0.494 1 0.3231 F 17 BeB 6 194 p 0.398 0.3692 F 27 ShC 6.08 199 m 0.4940.8 0.4462 F 28 MB 6.08 202 k 0.494 0.4923 F 26 MR 6.08 205 h 0.4940.6 0.5385 F 37 PaP 6.08 210 g 0.494 0.6154 F 44 JH 6.25 215 f 0.6990.4 0.6923 F 24 STh 6.25 219 e 0.699 0.7538 F 23 ts 6.25 220 d 0.6990.2 0.7692 F 21 miv 6.08 225 c 0.494 0.8462 G 41 JocT 5.92 170 w 0.301 0 0.151 0.054 0 G 35 AnM 5.67 177 v 0.000 0.1077 0.00 0.20 0.40 0.60 0.80 1.00 1.20 R 11 SakuK 5.83 182 u 0.193 0.1846 0.343 0.362 R 55 IU 6.08 205 h 0.494 0.5385 D F G R 12
> Construcción de datos Mapeo de variables Nominales: Posicion Numero Nombre Altura Peso codigo Altura N PesoN ma mp D 29 BerettC 6 182 u 0.398 0.1846 0.5932 0.5438339 D 52 CrR 6.17 195 n 0.602 0.3846 D 43 PB 6.17 204 j 0.602 0.5231 D 5 SQ 6.25 215 f 0.699 0.6923 D 33 ZZ 6.08 215 f 0.494 0.6923 1.2 D 22 dm 6.17 219 e 0.602 0.7538 D 38 vm 6.3 227 b 0.759 0.8769 D 34 pp 6.5 235 a 1.000 1 1 F 8 MarkR 5.83 185 t 0.193 0.2308 0.4945 0.4945055 F 15 EH 5.83 186 s 0.193 0.2462 0.8 F 71 SebD 5.92 D 188 r 0.301 0.2769 F 49 BrS 6.08 F 191 q 0.494 0.3231 0.6 F 25 ViD 6.08 191 q 0.494 0.3231 G F 17 BeB 6 194 p 0.398 0.3692 F 27 ShC 6.08 R 199 m 0.494 0.4462 0.4 F 28 MB 6.08 pred 202 k 0.494 0.4923 F 26 MR 6.08 205 h 0.494 0.5385 0.2 F 37 PaP 6.08 210 g 0.494 0.6154 F 44 JH 6.25 215 f 0.699 0.6923 F 24 STh 6.25 219 e 0.699 0.7538 0 F 23 ts 6.25 220 d 0.699 0.7692 0.00 0.20 0.40 0.60 0.80 1.00 1.20 F 21 miv 6.08 225 c 0.494 0.8462 G 41 JocT 5.92 170 w 0.301 0 0.151 0.054 G 35 AnM 5.67 177 v 0.000 0.1077 R 11 SakuK 5.83 182 u 0.193 0.1846 0.343 0.362 R 55 IU 6.08 205 h 0.494 0.5385 Tarea Integración de datos Métodos para la integración de distintas tablas, bases de datos o registros. Salida Un nuevo conjunto de datos integrado. Este tipo de prácticas suele aumentar la cantidad de variables de los datos. 13
Normalización de datos Tarea Ciertas herramientas necesitan que los datos estén dentro de un determinado rango de valores. Para independizar los datos de la fuente o bien que los atributos sean comparables en algún sentido Salida Atributos en un nuevo rango dinámico. Datos con distribuciones alteradas. Debe generar un informe sobre las técnicas aplicadas. En general debería volverse al estado original una vez que la información atraviesa el modelo. Normalización de datos Min-Max : Transformación lineal. Lleva el rango original de las variables a uno especificado por el usuario. y min y y ' = + max y min y ( max y' min y' ) min y' 14
Normalización de datos MinMax Ventajas Preserva las relaciones originales No produce ningún corrimiento (bias) No produce cambios en la FDP (PDF) Desventajas Alta sensibilidad a outliers Normalización de datos MinMax Algunas estrategias para la incorporacion de outliers: El recíproco: 1-1/os y 1/(1+(RangoMin-oi)) donde os y oi son valores fuera de rango o outliers (superiores e inferiores). Softmax 15
Normalización de datos Zscore : Transformación lineal. Lleva el rango original de las variables a tener un valor medio de cero y un desvío estándar de uno. y y y' = dest y Normalización de datos Zscore Ventajas Preserva las relaciones originales No produce ningún corrimiento (bias) No produce cambios en la FDE (PDF) Desventajas Idem anterior. Se suele utilizar cuando no se conocen los máximos y mínimos, a partir de estimaciones parciales de vmed y dest. 16
Normalización de datos Sigmoidea : Transformación No-lineal. Lleva el rango original de las variables al intervalo 1, 1. Los datos dentro de la región de un desvío estándar sobre la media se mapean en la región lineal. Los outliers son comprimidos en 1, 1. 1 e y' = 1+ e α α y y α = dest y Normalización de datos Sigmoidea Ventajas Mas robusta a outliers Desventajas Cambios en la PDF 17
Normalización de datos Log - Ln : Transformación No-lineal. Aplica el logaritmo a los datos originales. Es muy útil cuando se desea comparar datos que son cocientes entre alguna otra variable. y'= log ( y) Normalización de datos > log r2 1 3 5 log(r2) -0.5 1.0 0 40 80 Index 0 40 80 Index Histogram of r2 Histogram of log(r2) Frequency 0 10 25 Frequency 0 15 30 0 2 4 6 r2-1.0 0.0 1.0 2.0 log(r2) 18
Normalización de datos Promediación Umbralamiento PCA Uniformidad de histogramas (equalización) Normalización de datos (Ventajas) Espacio de estado normalizado => Medida de distancia normalizada Distancia Máxima Distancia Mínima 19
Formateo de datos Tareas Esta es un etapa ineludible. Refiere fundamentalmente a la alteración sintáctica de los registros. Nunca cambia el significado del dato. Suele ser un requerimiento de la herramienta de modelado Salida Archivos de intercambio, protocolos de comunicación entre programas, etc. Reordenamiento de datos (BPN, usualmente necesita los archivos randomizados) 20