19 marzo 2012

Métodos de minería de datos

Las bases de datos surgieron como respuesta a la necesidad de almacenar datos en un sistema de cómputo. Al inicio de la era de las computadoras, década de los años 1960, la dimensión de las bases de datos se limitaba a unos cuantos kilobytes, sujeto a las restricciones tecnológicas de la época, por lo que su aplicación a diversos dominios tanto científicos como del mundo real fue limitado. Según los investigadores Witten y Frank, en el libro escrito el año 2005 relacionado con la “minería de datos, técnicas y herramientas de aprendizaje automático”, con el avance de la tecnología, se pasa de almacenar unos cuantos kilobytes a cientos de gigabytes, lo que ha permitido extender su uso a dominios que antes eran impensables. No obstante, el aumento en la dimensión de las bases de datos ha traído como consecuencia la necesidad de nuevas herramientas de administración y análisis que permitan lidiar con la vasta cantidad de datos. El análisis de datos es una tarea que consiste en buscar o encontrar tendencias o variaciones de comportamiento en los datos, de tal manera que esta información resulte de utilidad para los usuarios finales. A estas tendencias o variaciones se las conoce como patrón. Si los patrones son útiles y de relevancia para el dominio, entonces se le llama conocimiento. En un principio, el análisis se realizaba de forma manual, empleando técnicas estadísticas. Sin embargo, actualmente esta forma de análisis resulta inviable por la gran cantidad de datos que puede contener una base de datos moderna, además de que existe una gran cantidad de formatos para los datos, como tablas, secuencias, grafos, imágenes, audio, lo cual aumenta la complejidad de un análisis manual.

Bajo estas circunstancias es como surge la minería de datos, que es un proceso automático ó semiautomático que busca descubrir patrones ocultos en un conjunto de datos y que además, sean potencialmente útiles para los usuarios de la base de datos. Según Mitchel, en el libro escrito el año 1997 sobre “aprendizaje automático”, en la minería de datos se contemplan diversas estrategias para identificar diferentes tipos de patrones, como son árboles de clasificación, redes neuronales, redes bayesianas, técnicas de asociación, entre otros. El objetivo en todo proceso de minería de datos es obtener patrones de interés para el usuario final. Para lograrlo, es necesario preparar correctamente a los datos para procesarlos, elegir un método adecuado para extraer los patrones deseados y finalmente, determinar cómo evaluar los patrones encontrados. Estas etapas han sido organizadas en un esquema conocido como el proceso de descubrimiento de conocimiento en base de datos, en el cual se identifican tres grandes bloques: pre-procesamiento, búsqueda/identificación de patrones y evaluación. Un patrón es interesante si es fácilmente entendible por las personas, potencialmente útil, novedoso o si valida alguna hipótesis que el usuario busca confirmar. Un patrón interesante normalmente representa conocimiento.

Según Perichinsky y sus colegas, en el artículo escrito el año 2003 sobre “evidencia taxonómica y robustez de la clasificación aplicando minería de datos inteligente”, se denomina minería de datos al conjunto de técnicas y herramientas aplicadas al proceso no trivial de extraer y presentar conocimiento implícito, previamente desconocido, potencialmente útil y humanamente comprensible, a partir de grandes conjuntos de datos, con objeto de predecir de forma automatizada tendencias y comportamientos; y describir de forma automatizada modelos previamente desconocidos. El investigador Michalskí menciona que, en el libro escrito el año 1998 acerca de “minería de datos y aprendizaje automático”, el término minería de datos inteligente refiere específicamente a la aplicación de métodos de aprendizaje automático, para descubrir y enumerar patrones presentes en los datos, para estos, se desarrollaron un gran número de métodos de análisis de datos basados en la estadística. En la medida en que se incrementaba la cantidad de información almacenada en las bases de datos, estos métodos empezaron a enfrentar problemas de eficiencia y escalabilidad y es aquí donde aparece el concepto de minería de datos. Por su parte el investigador Hernández Orallo, en el texto escrito el año 2000 sobre “extracción automática de conocimiento de base de datos e ingeniería del software”, una de las diferencias entre al análisis de datos tradicional y la minería de datos es que el primero supone que las hipótesis ya están construidas y validadas contra los datos, mientras que el segundo supone que los patrones e hipótesis son automáticamente extraídos de los datos.

Según el investigador Morales, en el documento escrito el año 2003 sobre “descubrimiento de conocimiento en bases de datos”, la minería de datos es un proceso completo de descubrimiento de conocimiento que involucra varios pasos: (1) Entendimiento del dominio de aplicación, el conocimiento relevante a utilizar y las metas del usuario. (2) Seleccionar un conjunto de datos en donde realizar el proceso de descubrimiento. (3) Limpieza y preprocesamiento de los datos, diseñando una estrategia adecuada para manejar ruido, valores incompletos, valores fuera de rango, valores inconsistentes y otros. (4) Selección de la tarea de descubrimiento a realizar, por ejemplo, clasificación, agrupamiento, reglas de asociación, etc. (5) Selección de los algoritmos a utilizar. (6) Transformación de los datos al formato requerido por el algoritmo especifico de explotación de datos, hallando los atributos útiles, reduciendo las dimensiones de los datos, etc. (7) Llevar a cabo el proceso de minería de datos para encontrar patrones interesantes. (8) Evaluación de los patrones descubiertos y presentación de los mismos mediante técnicas de visualización. Quizás sea necesario eliminar patrones redundantes o no interesantes, o se necesite repetir algún paso anterior con otros datos, con otros algoritmos, con otras metas o con otras estrategias. (9) Utilización del conocimiento descubierto, ya sea incorporándolo dentro de un sistema o simplemente para almacenarlo y reportarlo a las personas interesadas.

La minería de datos abarca un terreno muy amplio, no es solamente aplicar un algoritmo existente a un conjunto de datos. Las herramientas existentes actualmente incluyen mecanismos para la preparación de los datos, su visualización y la interpretación de los resultados. Muchas de las herramientas funcionan bien en espacios de pocas dimensiones con datos numéricos, pero sus limitaciones comienzan a aparecer en espacios de mayores dimensiones o con datos no numéricos. Según el equipo de investigadores conformado por Thrun, Faloustos, Mitchell y Wasserman, en el artículo escrito el año 1998 acerca de “aprendizaje automatizado y descubrimiento: estado del arte y tópicos de investigación”, alguno de los métodos de minería de datos que resuelven distintos problemas inherentes a la misma son los siguientes: (1) Aprendizaje activo/Diseño experimental. El aprendizaje activo, por el lado de la inteligencia artificial, y el diseño experimental, por el lado de la estadística, tratan de resolver el problema de la elección del método a aplicar durante el aprendizaje. (2) Aprendizaje acumulativo. Muchas bases de datos crecen continuamente, en este entendido, aprender a partir de bases de datos de este tipo es difícil ya que los datos deben ser analizados acumulativamente a medida que se incorporan a la base. (3) Aprendizaje multitarea. Se aplica en dominios que se caracterizan por pertenecer a familias de problemas de aprendizaje similares. (4) Aprendizaje a partir de datos tabulados y no tabulados. En muchas aplicaciones el problema no está en la obtención de los datos, sino en la tabulación de los mismos. (5) Aprendizaje relacional. En muchos problemas de aprendizaje las entidades no se describen a partir de un conjunto estático de atributos, sino a partir de las relaciones entre entidades. En las bases de datos inteligentes encontrar patrones o relaciones entre entidades es un problema primordial.

El subconjunto de métodos que complementa el trabajo realizado por Thrun, Faloustos, Mitchell y Wasserman es: (6) Aprendizaje a partir de grandes bases de datos. Muchas bases de datos son demasiado grandes como para ser leídas y procesadas por una computadora más de una vez. Lo cual imposibilita el uso de algoritmos que requieran múltiples pasadas sobre los datos. Debe afrontarse entonces, el desafío de encontrar algoritmos inteligentes que sean escalables eficientemente a grandes bases de datos. (7) Aprendizaje a partir de bases de datos extremadamente pequeñas. En el otro extremo, existen también bases de datos que son demasiado pequeñas para los algoritmos existentes. Debe encontrarse entonces un método que trabaje eficientemente con un número limitado de datos, o bien, que se base en el conocimiento previo. (8) Aprendizaje con conocimientos previos. En muchos casos, se poseen conocimientos efectivos acerca del fenómeno en estudio. Deben existir métodos capaces de incorporar conocimientos previos tanto abstractos, como diversos o inciertos. (9) Aprendizaje a partir de datos de distintos tipos. Muchos juegos de datos contienen varios tipos de datos. La gran mayoría de los algoritmos actuales sólo pueden trabajar con un único tipo de datos, con lo cual deben encontrarse métodos capaces de manejar los distintos tipos o formatos de datos presentes en una base de datos. (10) Aprendizaje de relaciones casuales. Gran parte de los algoritmos de aprendizaje detectan la correlación entre los datos, pero son incapaces de determinar o modelar las casualidades, y, por lo tanto, fallan al tratar de predecir algunos efectos externos. Deben diseñarse, entonces, algoritmos que incorporen las casualidades. (11) Visualización y minería de datos interactiva. En muchos casos, la minería de datos es un proceso interactivo, en el cual el análisis de datos automático se mezcla con las decisiones de control de un experto de campo. Deben diseñarse herramientas que contemplen el intercambio entre estas dos áreas.

No hay comentarios:

Publicar un comentario