METEOMATIC 2006: PREDICCION METEREOLOGICA

Documentos relacionados
Fundamentos y Aplicaciones Prácticas del Descubrimiento de Conocimiento en Bases de Datos. - Sesión 11 -

MASTER DE INGENIERÍA BIOMÉDICA. Métodos de ayuda al diagnóstico clínico. Tema 6: Árboles de decisión.

Introducción a la minería de datos. CI-2352 Intr. a la minería de datos Prof. Braulio José Solano Rojas ECCI, UCR

Tareas de la minería de datos: clasificación. PF-5028 Minería de datos Prof. Braulio José Solano Rojas UCR

Aprendizaje Automatizado

Tareas de la minería de datos: clasificación. CI-2352 Intr. a la minería de datos Prof. Braulio José Solano Rojas ECCI, UCR

Aprendizaje Automático

Minería a de Datos. plataforma WEKA. Ismael Fernández Castellano Telmo Calle Facal

Inteligencia Artificial: Su uso para la investigación

Práctica Final: Predicción Metereológica en Weka.

Minería de Datos. Índice. Raquel M. Crespo García. Julio Villena Román. Definición y conceptos Técnicas y modelos

Aprendizaje Automatizado

10 EXÁMENES

Proyecto 6. Árboles de decisión: Un árbol de decisión es un modelo de predicción utilizado en el ámbito de la inteligencia artificial.

DATA MINING CONCEPTOS Y EXPERIENCIA EN LA FISCALIZACIÓN DEL MERCADO DE VALORES DE CHILE

Técnicas de Minería de Datos

El Perceptrón Multicapa

INTELIGENCIA EN REDES DE COMUNICACIONES. MINERÍA DE DATOS-PREDICCIÓN METEOROLÓGICA-.

Identificación de variables asociadas al éxito académico en Estudiantes de la Facultad de Informática Mazatlán

Tema 7: Aprendizaje de árboles de decisión

Aprendizaje Automático para el Análisis de Datos GRADO EN ESTADÍSTICA Y EMPRESA. Ricardo Aler Mur

Grado en Estadística Guía Académica Universidad de Salamanca

Tema 8: Árboles de decisión

Científico de datos o data scientist

Estadística con R. Clasificadores

Lingüística computacional

Minería de Datos. Árboles de Decisión. Fac. Ciencias Ing. Informática Otoño de Dept. Matesco, Universidad de Cantabria

Análisis de Datos. Introducción al aprendizaje supervisado. Profesor: Dr. Wilfrido Gómez Flores

Aprendizaje Automatizado. Árboles de Clasificación

Métodos de Remuestreo en Aprendizaje Automático

Aprendizaje Automático Segundo Cuatrimestre de Árboles de Decisión

Anexo I CUESTIONARIO UTILIZADO PARA LA RECOGIDA DE INFORMACIÓN

Introducción a la minería de datos

SISTEMAS INTELIGENTES

CRITERIOS DE SELECCIÓN DE MODELOS

PREDICCIÓN METEOROLÓGICA

Minería de Datos. Árboles de Decisión. Fac. Ciencias Ing. Informática Otoño de Dept. Matesco, Universidad de Cantabria

CI5438. Inteligencia Artificial II Clase 4: Aprendizaje en Árboles. Cap 18.3: RN

Conclusiones. Somos la suma de nuestras decisiones. WOODY ALLEN Delitos y Faltas (1989)

ANÁLISIS DE DATOS. Ricardo Aler Mur

Aprendizaje Automático para el Análisis de Datos GRADO EN ESTADÍSTICA Y EMPRESA. Ricardo Aler Mur

Estadística Computacional

Primera aproximación al aprendizaje automático.

I. CARACTERISTICAS DEL ALGORITMO ID3

Aprendizaje: Boosting y Adaboost

Inducción de Árboles de Decisión ID3, C4.5

Conjuntos de Clasificadores (Ensemble Learning)

Capitulo 1: Introducción al reconocimiento de patrones (Secciones )

TEMA 1: INTRODUCCIÓN N AL PROCESADO Y ANÁLISIS DE DATOS

1.-DATOS DE LA ASIGNATURA

FICHEROS Y BASES DE DATOS (E44) 3º INGENIERÍA EN INFORMÁTICA. Tema 3. Estructuras de Almacenamiento. Básicas. Definición y Manejo.

Jesús García Herrero METODOLOGÍA DE ANÁLISIS DE DATOS

Predicción meteorológica

Ismael Fernández Castellano Telmo Calle Facal Grupo 91

3. Árboles de decisión

Aprendizaje inductivo

Análisis de Datos. Introducción al aprendizaje supervisado. Profesor: Dr. Wilfrido Gómez Flores

Jesús García Herrero TÉCNICAS DE REGRESIÓN NO LINEAL

Inteligencia Artificial II (Curso ) Ejercicios propuestos del tema 5

SISTEMA INTEGRAL PARA LA PROYECCIÓN Y DETECCIÓN DE LA PREVENCIÓN DEL DELITO, MEDIANTE MINERÍA DE DATOS.

Introducción a los sistemas Multiclasificadores. Carlos J. Alonso González Departamento de Informática Universidad de Valladolid

Aprendizaje Automático y Data Mining. Bloque IV DATA MINING

RECONOCIMIENTO DE PATRONES DRA. LETICIA FLORES PULIDO

Práctica 4 de Minería de Datos

Análisis de Datos. Validación de clasificadores. Profesor: Dr. Wilfrido Gómez Flores

Ejercicios de aplicación con Knime. Luis P. Guerra Velasco

Aplicaciones de minería de datos. Por: M.C. Leopoldo González Rosas campodeencinos.wordpress.com

Inteligencia Computacional

TRABAJO FIN DE ASIGNATURA

Taller #3. Carlos Reveco Cinthya Vergara

Práctica 9. Árboles de decisión

Tema 4: Aprendizaje de conceptos

Análisis de Código. Asegurar la calidad del código, un primer paso hacía la mejora de la calidad global del software

Métodos de Inteligencia Artificial

Tema 13: Introducción a la Programación Lógica Inductiva

Inteligencia de Negocio

Minería de datos. Unidad 2. El proceso KDD Evaluación, difusión y uso. M en I Sara Vera Noguez

ALGORITMO ID3. Objetivo

Posibles trabajos HIA

Módulo Minería de Datos Diplomado. Por Elizabeth León Guzmán, Ph.D. Profesora Ingeniería de Sistemas Grupo de Investigación MIDAS

MODELADO CALIBRACIÓN MULTIVARIADA

Inteligencia Artificial (Curso ) Grado en Ingeniería Informática - Ingeniería del Software

Minería de Datos. Profra. Heidy Marisol Marin Castro Universidad Politécnica de Victoria

TECNOLOGÍAS INTELIGENTES PARA EXPLOTACIÓN DE INFORMACIÓN

Inteligencia en Redes de Comunicaciones

CONGRESO NACIONAL 36º SEMINARIO DE INGENIERÍA HOSPITALARIA ZARAGOZA, OCTUBRE 2018

Automatización de la Evaluación del Impacto Social en Proyectos de Inversión Publica

ARBOLES DE DECISION. Miguel Cárdenas-Montes. 1 Introducción. Objetivos: Entender como funcionan los algoritmos basados en árboles de decisión.

Identificación mediante el método de los mínimos cuadrados

Práctica 2: Utilización de WEKA desde la línea de comandos.

Introducción. Qué es Machine Learning?

CAPITULO 5 DISEÑO DE UN CLASIFICADOR DE

NEWTON TREES. Árboles de Estimación Estocástica de Probabilidades:

Minería de datos (Fases de la minería de datos)

Comparativa de clasificadores para la detección de microaneurismas en angiografías digitales.

Pattern Classification

Transcripción:

METEOMATIC 2006: PREDICCION METEREOLOGICA INTELIGENCIA EN REDES DE COMUNICACIONES. PRÁCTICA 1 Ramón Andrío Viloria, 100029784

INTRODUCCION 3 OBJETIVO 5 PREPROCESADO 6 PRUEBAS 8 ALGORITMOS 8 EJEMPLOS DE FUNCIONAMIENTO 10 CONCLUSIONES 15

INTRODUCCION La minería de datos, Data mining o KDD (Knowledge Discovery in Databases) se define como "Proceso de extracción de información y patrones de comportamiento que permanecen ocultos entre grandes cantidades de información", y consiste en el conjunto de técnicas avanzadas para la extracción de información escondida en grandes bases de datos. Las bases de datos actuales han acumulado una gran variedad y cantidad de datos, estadísticas, índices, etc. en los cuales la información útil no es fácil de encontrar o inferir a simple vista. Muchas empresas o entidades están interesadas en rescatar esa información y con la utilización de estas herramientas se pueden generar nuevas oportunidades de negocio. Algunas posibilidades que ofrecen estas herramientas son: Mejorar el funcionamiento de la organización. Optimizar el manejo de sus bases de datos. Predicción automatizada de tendencias y comportamientos. Obtener ventajas comerciales. Mejorar calidad de productos. Descubrimiento automatizado de modelos desconocidos. Descubrimiento de anomalías y acciones fraudulentas por parte de clientes. Las técnicas de Data mining son utilizadas habitualmente para el análisis y explotación de datos de un data warehouse (almacén de datos). Su objetivo es encontrar relaciones en las bases de datos que no resultan evidentes a simple vista. Los resultados que arroja la minería de datos suelen ser conocidos o despreciables pero existe una pequeña porción de relaciones que se desconocían. Ahí reside el interés de estas herramientas. La minería de datos es fundamental en la investigación científica y técnica, como herramienta de análisis y descubrimiento de conocimiento a partir de datos de observación o de resultados de experimentos.

La herramienta que se va a emplear para la obtención de resultados es Weka. Weka no solo es el nombre de un pájaro neozelandés, si no también una aplicación de distribución gratuita para la experimentación con técnicas de minería de datos. Está implementada en java, lo que conlleva alguna situación desagradable con la pila que se comentará más adelante, y permite la aplicación de varios algoritmos de minería de datos. En concreto, vamos a usar Weka para experimentar con datos metereológicos de los últimos años. Pretendemos un sistema capaz de realizar predicciones metereológicas fiables sobre lo que ocurrirá dentro de una hora y lo que ocurrirá dentro de veinticuatro horas

OBJETIVO Ya se ha comentado que pretendemos predecir condiciones metereológicas. Es nuestro objetivo final, para posibles usuarios de la aplicación. Para ello, y empleando las técnicas de minería de datos, esperamos encontrar patrones de comportamiento en el tiempo. Por ejemplo, si durante dos días llueve y en el segundo se levanta viento, el tercer día habrá nubes y claros. Una vez detectado este patrón podría aplicarse de forma que siempre que nos encontramos con dos días de lluvia, el segundo con viento, tenderíamos a pensar en nubes y claros para el siguiente. Esto no es un descubrimiento de la minería de datos, el acervo popular esta lleno de frases que recogen este conocimiento: marzo ventoso y abril lluvioso hacen a mayo florido y hermoso, cielo aborregado suelo mojado, etc. Además esperamos que el sistema pueda detectar diferencias que resultan de triviales y no dependen de datos anteriores. En general, para un día cualquiera se podria esperar más calor a las tres de la tarde que a las ocho, o más calor en un día de agosto que en un día de febrero. Por último indicar que el sistema sólo usa datos referentes a Madrid. Esto no sólo es imperativo del enunciado. Si intentásemos un sistema que predijese en más de una localización geográfica tendríamos problemas. Se ve esto claramente si nos decidimos a predecir las condiciones en Madrid y Buenos Aires de forma simultánea. Mientras en un sitio es verano, en el otro es invierno y si introducimos todos los datos sin diferenciar, el sistema no podría generalizar.

PREPROCESADO Los pasos a seguir para la realización de un proyecto de minería de datos son siempre los mismos, independientemente de la técnica específica de extracción de conocimiento usada, y siempre se necesita un preprocesado de l información a tratar. Esta es un de las labores más tediosas, y determinará el resultado final, de forma que con una mala elección de los datos el sistema no funcionará. Para ello, partiendo de los datos que se han proporcionado (el fichero de nombre lemd) se ha desarrollado una aflicción semiautomática en java para el tratamiento de los datos. La aplicación se subdivide en dos programas. El primero realizaba un procesado sobre todos los datos: Programa 1: 1. Suprimir espacios. Se han suprimido los espacios de forma que, por ejemplo, el atributo Lluvia Leve, pasa a ser Lluvia_Leve. 2. Cambio de variables incoherentes: Algunas variables tomaban valores que no representaban información, o representaban una información que no era consistente con el resto. La primera situación se subsanó empleando el valor? que en Weka significa desconocimiento del valor del atributo. El segundo caso sólo se presento una vez. Se decidió que la velocidad del viento sería un valor real, pero entre los valores de ese atributo se encontraba Calm. Calm pasó a ser cero, ya que se interpreto que Calm equivalía a viento en calma. 3. Preparación: La principal función del programa era preparar los datos para incorporarlos a Weka. Estos datos, una vez limpios no servían para predecir lo que buscábamos por que faltaba el atributo a predecir. Este programa se encargo de colocar al final de cada instancia un nuevo atributo que correspondía según el caso con la temperatura que haría dentro de una hora, la temperatura que haría dentro de veinticuatro horas o las condiciones climatológicas dentro de una hora. Una vez con todos los datos preprocesados, al introducirlos en Weka apareció un problema con el tamaño de la pila. Había demasiadas instancias, pero no sabíamos cual era el número máximo de instancias que Weka podía procesar. Se empezó por eliminar

años que apenas contenían información: 1994, 1995 y 1996. Sin embargo el problema con la pila persistía. Se siguieron eliminando los años que parecían contener menos información hasta quedarnos son 2001,2002 y 2003, ya que eran los más cercanos y los mas densos en lo que a información completa se refiere (2004 se decidió que podría servir como test). Si seguíamos eliminando años podrías surgir graves problemas en cuanto a la posible generalización. Ya tres años sólo eran peligrosos. Si en ese tiempo hubo una sequía el sistema se entrenaría para épocas de sequía únicamente. Optamos por realizar un muestreo sobre esos tres años y se diseño un nuevo programa en java. Programa 2: Muestreo: Este programa muestreó los años 2001, 2002 y 2003 tomando uno de cada dos registros. El muestreo se realizo dos veces, por lo que finalmente, quedo uno de cada cuatro de los registros iniciales. El fichero que quedó si lo pudo cargar Weka satisfactoriamente, pero aún surgieron sorpresas en registros puntuales que se solucionaron a mano. El principal problema fue que algunos registros tenían el símbolo % y esos mismos registros se encontraban incompletos en algunos campos y se completaron con?. Para acabar el preprocesado de los datos, se eligió un conjunto de test. Decidimos testear con el año 2004 por que era cómodo coger un año completo. Además permitía testear todas las diferentes condiciones climatológicas que se dan en un año. También se probó con validación cruzada, ya que la proporciona Weka, aunque esto tiene el problema de falsear un poco los resultados, ya que parte de los datos de entrenamiento pasan después a ser de test. El entrenar y testear con los mismos datos hace que los resultados no sean del todo fiables. Sin embargo con estos métodos se puede evitar en parte el sobreentrenamiento, al ir cambiando los datos de entrenamiento. Se evito tomar algún conjunto de test elegido al azar, ya que quitaría datos de forma poco homogénea del conjunto de entrenamiento para pasarlos al de test y podríamos quedarnos con conjuntos poco representativos e incluso disjuntos. Imaginemos que cogiese casi todos los datos de test de los meses de verano. Entonces el sistema intentaría aproximar el verano con datos de invierno, otoño y primavera y no daría buenos resultados.

PRUEBAS ALGORITMOS En esta sección se explican las pruebas realizadas para el aprendizaje inductivo mediante árboles de decisión. Más concretamente, mediante los conocidos métodos denominados id3 (j 48 en Weka) [Quinlan, 1986], su sucesor c4.5 (M5 en Weka) [Quinlan, 1993] y algunas de las ampliaciones realizadas hasta la fecha. Se comentarán los elementos básicos relacionados con la versión id3 dado que es la base de los dos algoritmos utilizados. Aunque no todas las tareas inductivas (p.ej., problemas de regresión lineal) son tratables por el tipo de algoritmos aquí tratados, estos han resultado ser unos de los más utilizados en el campo del aprendizaje automático. Ello se debe a sus destacables ventajas: aprenden funciones de valores discretos, admiten ejemplos con ruido y obtienen un conjunto de expresiones fácilmente transformable en un conjunto de reglas, que forman opciones alternativas (disyuntivas) que cubren el espacio de ejemplos presentados. Por otro lado, las estrategias que se tienen un alto rendimiento y se han aplicado a los más variados dominios (p.ej., diagnóstico médico, predicción de fraudes en créditos bancarios, organización personalizada de eventos en una agenda, etc.). En especial y para el caso que nos ocupa son notables las aplicaciones de M5 en el campo de la minería de datos, tal y como se refleja en la versión comercial denominada c5.01. El objetivo básico, al igual que en otros tantos algoritmos inductivos, es clasificar los ejemplos presentados en sus respectivas clases o categorías, manteniendo un alto grado de predicción sobre los ejemplos no presentados. En concreto, en este caso se trata de obtener un árbol de decisión simple que clasifique correctamente los ejemplos presentados y sea capaz de predecir correctamente las clases de futuros ejemplos. En concreto, un árbol de decisión es una estructura que pueden tener los siguientes tipos de nodos: 1. Nodo interno (o de decisión): Consiste en una pregunta o test relativa al valor de un atributo. De cada nodo interno parten tantas ramas como respuestas haya a la

pregunta, que normalmente equivale al número de posibles valores que puede tener el atributo en cuestión. 2. Nodos hoja: En cada nodo hoja sólo puede haber instancias con un único valor de clase. Con este planteamiento, el objetivo podría ser la búsqueda exhaustiva de un árbol lo más simple y predictivo posible. Sin embargo, este es un problema cuya solución óptima no puede garantizarse para la mayoría de los casos, dado que su complejidad es NP. Frente a este problema, la gran ventaja de id3 y sus sucesores (como c4.5) es que son capaces de obtener una buena solución que considera ambas cuestiones, aunque el algoritmo no garantice que la solución sea la óptima. En definitiva, el algoritmo responde a un esquema clásico de clasificación en el que se distinguen dos requisitos para las clases: 1. Clases predefinidas: Se parte de un problema de aprendizaje supervisado en el que el atributo que hace las veces de clase está perfectamente identificado de antemano. 2. Clases: Se exige que haya un conjunto preciso de clases que sirven para clasificar claramente todos los ejemplos presentados. 2.1 Clases discretas: El algoritmo id3 usa conjuntos de clases discretas. Se ha usado su equivalente en Weka, J48, para el último apartado propuesto: la predicción de las condiciones metereológicas. 2.2 Clases continuas: El algoritmo usado para esto es el c4.5, en Weka M5. Clásicamente, se ha utilizado la regresión cuando las clases eran continuas ocurría, pero los modelos obtenidos eran numéricos. Con c4.5 obtenemos árboles de decisión. Es una variación de cart (Breiman et al., 84).

Por otro lado, se supone que el número de ejemplos presentados tiene que ser muy superior al de posibles clases. Esto se debe a que el proceso de generalización está basado en un análisis estadístico que no podría distinguir patrones de interés a partir de coincidencias aleatorias. Un problema real puede requerir cientos o miles de ejemplos de entrenamiento. EJEMPLOS DE FUNCIONAMIENTO Se van a presentar en este apartado algunos de los árboles que se han obtenido en Weka. Prediccion a una hora Primero se probo la predicción a una hora tanto con validación cruzado como usando como test los datos del año 2004. En ambos casos el error absoluto fue mucho más alto que el deseable (31.0501 para la validación cruzada y 32.671 con el año 2004). Se obtuvo un árbol de derivación casi idéntico en ambos casos, así que el hecho de que el error sea ligeramente más alto con los datos del 2004 se debe a que no se entreno al sistema con ellos. El árbol para la validación cruzada es: dia=10,08,07,15,17,18,14,16,11,05,06,19,04,12,20,03,13,02,01,28,29,30,21,31 <= 0.5 : mes=02,11,03,04,10,05,09,07,08 <= 0.5 : mes=12,01,02,11,03,04,10,05,09,07,08 <= 0.5 : rocío <= 40.1 : dia=24,23,22,09,10,08,07,15,17,18,14,16,11,05,06,19,04,12,20,03,13,02,01,28,29,30,21,31 <= 0.5 : LM1 (35/0%) dia=24,23,22,09,10,08,07,15,17,18,14,16,11,05,06,19,04,12,20,03,13,02,01,28,29,30,21,31 > 0.5 : humedad <= 26.5 : LM2 (15/7.643%) humedad > 26.5 : presión <= 30.05 :

hora=12,33,35,34,27,26,25,31,30,29,45,43,47,46,42,38,37,41,39,10,9,11,14,13,7,2,1,3,6,5,15,18,19,21,23,17,22,8,28,16,32,24,20 <= 0.5 : LM3 (13/0%) hora=12,33,35,34,27,26,25,31,30,29,45,43,47,46,42,38,37,41,39,10,9,11,14,13,7,2,1,3,6,5,15,18,19,21,23,17,22,8,28,16,32,24,20 > 0.5 : velocidadviento <= 5.828 : LM4 (4/0%) velocidadviento > 5.828 : LM5 (4/11.524%) presión > 30.05 : LM6 (10/6.948%) rocío > 40.1 : LM7 (85/8.22%) mes=12,01,02,11,03,04,10,05,09,07,08 > 0.5 : LM8 (327/7.019%) mes=02,11,03,04,10,05,09,07,08 > 0.5 : LM9 (1471/11.726%) dia=10,08,07,15,17,18,14,16,11,05,06,19,04,12,20,03,13,02,01,28,29,30,21,31 > 0.5 : LM10 (6544/12.862%) Vemos como el día y el mes del año son determinantes, ya que aparecen en las primeras discriminaciones. Algo que cabía esperar ya que no es lo mismo enero que agosto para la temperatura. Además tienen incidencia rocío, humedad, presión, modelos lineales y velocidadviento. Se diseño entonces un nuevo modelo sólo con estos datos, ya que se pensó que el resto podían introducir ruido. No se obtuvo el resultado esperado, ya que el error se mantuvo en el umbral de los 30 grados y el arbol de decisión no vario en sus nodos principales. Sólo la presion paso a tener un poco más de incidencia, con tres nodos en vez de uno. Predicción a 24 horas Se trabajo de manera análoga al caso anterior, pero obviando la validación con el año 2004, ya que aportaba una complicación extra (en la definición del fichero) y anteriormente nos habia dado el mismo árbol de decisión que la validación cruzada. El árbol que resulto fue: presión <= 29.875 :

direccionviento=ese,se,ne,ene,variable,sur,ono,este,sso,no,sse,oso,oeste <= 0.5 : dia=06,09,12,11,02,16,03,05,19,04,25,15,26,01,24,27,28,23,20,14,21,31,13,30,29 <= 0.5 : hora=10,18,2,31,32,29,27,25,24,28,33,43,41,44,47,45,36,35,37,40,39,8,7,9,12,11,1,0,3, 5,4,19,17,20,23,21,15,13,16,46,42,26,38,30,34 <= 0.5 : direccionviento=calm,norte,nne,ese,se,ne,ene,variable,sur,ono,este,s SO,NO,SSE,OSO,Oeste <= 0.5 : LM1 (4/16.697%) direccionviento=calm,norte,nne,ese,se,ne,ene,variable,sur,ono,este,sso,no, SSE,OSO,Oeste > 0.5 : LM2 (15/42.064%) hora=10,18,2,31,32,29,27,25,24,28,33,43,41,44,47,45,36,35,37,40,39,8,7,9,12,11,1,0,3, 5,4,19,17,20,23,21,15,13,16,46,42,26,38,30,34 > 0.5 : LM3 (59/32.553%) dia=06,09,12,11,02,16,03,05,19,04,25,15,26,01,24,27,28,23,20,14,21,31,13,30,29 > 0.5 : LM4 (302/38.47%) direccionviento=ese,se,ne,ene,variable,sur,ono,este,sso,no,sse,oso,oeste > 0.5 : LM5 (1311/43.384%) presión > 29.875 : temperatura <= 61.7 : LM6 (3829/34.201%) temperatura > 61.7 : LM7 (2911/31.557%) Ahora es un árbol de menos niveles y variables aunque aparece una que, viendo el apartado anterior es una contradicción con lo que a priori podíamos esperar: pasa a tener en cuenta la temperatura actual. Cuando quería predecir en el umbral de una hora la temperatura (que en una hora no esperamos que cambie bruscamente) no se tenia en cuenta y en veinticuatro horas (donde esperamos una incidencia mucho menor) aparece aunque no como un nodo determinante. Además ahora aparece como discriminante la hora del día. Esto tiene sentido (la temperatura a las ocho será menor que a las doce) y sorprende que no apareciese en el modelo a una hora. De nuevo ser probo dejando sólo los atributos que tenían alguna incidencia, resultando un modelo muy similar y en ambos casos unos datos de error poco satisfactorios: 9.1742 en el primer caso y 9.431 en el segundo. Aunque se han reducido mucho con respecto a la predicción a una hora, equivale a decir que si hoy hacden veinte grados, mañana puede que hagan entre treinta y diez. Una decisión difícil si de

eso depende que se activen los servicios de emergencia o incluso que salgamos de fin de semana. Predicción de las condiciones En esta caso volvimos ha hacer lo mismo: probar el algoritmo y de nuevo probarlo con menos atributos (sólo año, mes, día y condiciones). Obtuvimos unos árboles desmesuradamente grande de los que se presenta un extracto: visibilidad <= -9999 mes = 01 dia = 01: Despejado (0.0) dia = 02: Despejado (0.0) dia = 03: Despejado (0.0) dia = 04: Altamente_Nublado (2.0) dia = 05: Altamente_Nublado (1.0) dia = 06: Despejado (0.0) dia = 07: Nubes_Dispersas (2.0) dia = 08: Nubes_Dispersas (4.41/2.0) dia = 09: Despejado (3.0/1.0) dia = 10: Nubes_Dispersas (2.0) dia = 11 rocío <= 32: Altamente_Nublado (4.2/0.2) rocío > 32 temperatura <= 41: Despejado (2.1/0.1) temperatura > 41: Nubes_Dispersas (2.1/1.0) dia = 12: Despejado (3.0) dia = 13: Lluvia_Leve (5.41/1.41) dia = 14: Despejado (2.0/1.0) dia = 15: Despejado (0.0) dia = 16 temperatura <= 44.6: Parcialmente_Nublado (2.2/0.2) temperatura > 44.6: Nubes_Dispersas (2.2/1.2) Aparece sorprendentemente la visibilidad como un criterio determinante en el primer nodo y a partir de ahí parece que el algoritmo construye un modelo que se dedica a repasar todos los días del año y obtener una salida concreta para cada uno. Esto nos hace pensar que sobre entrena. No es inesperado, ya que Weka en este último modelo

nos obligó de nuevo a muestrear para reducir los datos aún más, ya que si no volvía a haber un error de pila. Con tan pocos datos, el sistema es incapaz de generalizar.

CONCLUSIONES Hemos comprobado como la elección de los datos en un proceso de aprendizaje de un clasificador es determinante. No tanto el conjunto total de los datos como los atributos que estos tienen. Sin embargo parece que lo que hemos hecho sólo es una aproximación, y que la verdadera fuerza de estos clasificadores no reside en los algoritmos informáticos tanto como en estar familiarizado con el problema y saber como modelizarlo y por donde guiar al algoritmo. El preprocesado de los datos y la mejora mediante prueba y error son esenciales para conseguir un buen clasificador. Parece que los campos donde aplicar este tipo de técnicas son aquellos en los que el trabajo principal sea analítico, tratamiento de conjuntos grandes de datos. Ahí si que la máquina gana al hombre y es capaz de inferir reglas y modelos de otra forma invisibles. Campos como la medicina, los controles de calidad, las cadenas de montaje donde las salidas estén acotadas. Para finalizar, apuntar que es imprescindible tener un conocimiento previo sobre que resultados se espera obtener. La necesidad de este conocimiento es la base del aprendizaje supervisado y aborta cualquier intento de abordar problemas en los que no se conoce la forma de clasificación a priori.