Caso Práctico de Aplicación de La Minería de Datos

CASO PRÁCTICO DE APLICACIÓN DE LA MINERÍA DE DATOS 4.1. Definición de los objetivos generales. El objetivo general del p

Views 112 Downloads 3 File size 602KB

Report DMCA / Copyright

DOWNLOAD FILE

Recommend stories

Citation preview

CASO PRÁCTICO DE APLICACIÓN DE LA MINERÍA DE DATOS 4.1. Definición de los objetivos generales. El objetivo general del procesamiento de minería de datos consiste en extraer información de un conjunto de datos y transformarlos en una estructura compresible para su uso posterior. Además de la etapa del análisis en bruto, que involucra aspectos de base de datos y de gestión de datos, del procesamiento de datos del modelo y de las consideraciones de inferencia, de métricas de intereses, de consideraciones de la teoría de la complejidad computacional, de post procesamiento de las estructuras descubiertas, de la visualización y de la actualización en línea. 

  



 

Explorar los datos que se encuentran en las profundidades de las bases de datos (por ejemplo los Almacenes de Datos), que algunas veces contienen información almacenada durante varios años. En algunos casos, los datos se consolidan en un almacén de datos y en mercados de datos; en otros, se mantienen en servidores de Internet e Intranet. El entorno de la minería de datos suele tener una Arquitectura Cliente Servidor. Las herramientas de la minería de datos ayudan a extraer el mineral de la información registrado en archivos corporativos o en registros públicos, archivados. El minero es, muchas veces un usuario final con poca o ninguna habilidad de programación, facultado por barrenadoras de datos y otras poderosas herramientas indagatorias, para efectuar preguntas ad-hoc y obtener rápidamente respuestas. Hurgar y sacudir a menudo implica el descubrimiento de resultados valiosos e inesperados. Las herramientas de la minería de datos se combinan fácilmente y pueden analizarse y procesarse rápidamente.

Debido a la gran cantidad de datos, algunas veces resulta necesario usar procesamiento en paralelo para la minería de datos. La minería de datos produce cinco tipos de información: 1. 2. 3. 4. 5.

Asociaciones. Secuencias. Clasificaciones. Agrupamientos. Pronósticos.

Los mineros de datos usan varias herramientas y técnicas. La minería de datos es un proceso que invierte la dinámica del método científico en el siguiente sentido: En el método científico, primero se formula la hipótesis y luego se diseña el experimento para coleccionar los datos que confirmen o refuten la hipótesis. Si esto se hace con la formalidad adecuada (cuidando cuáles son las variables controladas y cuáles experimentales), se obtiene un nuevo conocimiento. En la minería de datos, se coleccionan los datos y se espera que de ellos emerjan hipótesis. Luego entonces, se valida esa hipótesis inspirada por los datos en los datos mismos, será numéricamente significativa, pero experimentalmente inválida. De ahí que la minería de datos debe presentar un enfoque exploratorio, y no confirmador. Usar la minería de datos para confirmar las hipótesis formuladas puede ser peligroso, pues se está haciendo una inferencia poco válida. 

4.2. Definición de algoritmos.

Un algoritmo en minería de datos (o aprendizaje automático) es un conjunto de heurísticas y cálculos que permiten crear un modelo a partir de datos. Para crear un modelo, el algoritmo analiza primero los datos proporcionados, en busca de tipos específicos de patrones o tendencias. El algoritmo usa los resultados de este análisis en un gran número de iteraciones para determinar los parámetros óptimos para crear el modelo de minería de datos. A continuación, estos parámetros se aplican en todo el conjunto de datos para extraer patrones procesables y estadísticas detalladas. El modelo de minería de datos que crea un algoritmo a partir de los datos puede tomar diversas formas, incluyendo:    

Un conjunto de clústeres que describe cómo se relacionan los casos de un conjunto de datos. Un árbol de decisión que predice un resultado y que describe cómo afectan a este los distintos criterios. Un modelo matemático que predice las ventas. Un conjunto de reglas que describen cómo se agrupan los productos en una transacción, y las probabilidades de que dichos productos se adquieran juntos.

Los algoritmos proporcionados en la minería de datos de SQL Server son los métodos más comunes y probados para derivar patrones a partir de datos. Por ejemplo, la agrupación en clústeres mediana-K es uno de los algoritmos de agrupación en clústeres más antiguo y está disponible en un gran número de herramientas y con diferentes implementaciones y opciones. Pero la implementación específica de la

agrupación en clústeres mediana-K usada en la minería de datos de SQL Server ha sido desarrollada por Microsoft Research y se ha optimizado para rendimiento con Analysis Services. Todos los algoritmos de minería de datos de Microsoft se pueden personalizar ampliamente y usar mediante programación con las API proporcionadas. También puede automatizar la creación, aprendizaje y reciclaje de modelos con los componentes de minería de datos de Integración Services. Además, puede usar algoritmos de minería de datos desarrollados por terceros que cumplan con la especificación OLE DB para minería de datos, o bien desarrollar algoritmos personalizados que se puedan registrar como servicios para usarlos después en el marco de la minería de datos de SQL Server.

Elegir el algoritmo correcto La elección del mejor algoritmo para una tarea analítica específica puede ser un desafío. Aunque puede usar diferentes algoritmos para realizar la misma tarea, cada uno de ellos genera un resultado diferente, y algunos pueden generar más de un tipo de resultado. Por ejemplo, puede usar el algoritmo Árboles de decisión de Microsoft no solo para la predicción, sino también como una forma de reducir el número de columnas de un conjunto de datos, ya que el árbol de decisión puede identificar las columnas que no afectan al modelo de minería de datos final. Elegir un algoritmo por tipo

Algoritmos de clasificación, que predicen una o más variables discretas, basándose en los demás atributos del conjunto de datos.  Algoritmos de regresión, que predicen una o más variables numéricas continuas, como pérdidas o ganancias, basándose en otros atributos del conjunto de datos.  Algoritmos de segmentación, que dividen los datos en grupos, o clústeres, de elementos que tienen propiedades similares.  Algoritmos de asociación, que buscan correlaciones entre diferentes atributos de un conjunto de datos. La aplicación más común de esta clase de algoritmo es la creación de reglas de asociación, que pueden usarse en un análisis de la cesta de compra.  Los algoritmos de análisis de secuencias resumen las secuencias frecuentes o episodios en los datos, como una serie de clics en un sitio web o una serie de eventos de registro que preceden al mantenimiento del equipo.  Árboles de decisión 

Los algoritmos de árbol de decisión consisten en organizar los datos en elecciones que compiten formando ramas de influencia después de una decisión inicial. El tronco

del árbol representa la decisión inicial, y empieza con una pregunta de sí o no, como tomar o no el desayuno. Tomar desayuno y no tomar desayuno serían las dos ramas divergentes del árbol, y cada elección posterior tendría sus propias ramas divergentes que llevan a un punto final. 

El algoritmo K-means

El algoritmo K-means se basa en el análisis de grupos. Trata de dividir los datos recogidos en "bloques" ("clusters" en inglés) separados agrupados por características comunes. 

El algoritmo EM

Este algoritmo define parámetros analizando los datos y predice la posibilidad de una salida futura o evento aleatorio dentro de los parámetros de datos. Por ejemplo, el algoritmo EM podría intentar predecir el momento de un siguiente Terremoto según los datos de tiempo de temblores pasados. Máquinas de vectores de soporte Los algoritmos de máquinas de vectores de soporte toman datos de entrada y predicen cuál de las dos posibles categorías incluyen los datos de entrada. Un ejemplo sería recoger los códigos postales de un grupo de votantes e intentar predecir si un votante es demócrata o republicano. El algoritmo apriori El algoritmo apriori normalmente controla los datos de transacciones. Por ejemplo, en una tienda de ropa, el algoritmo podría controlar qué camisas suelen comprar juntas los clientes. AdaBoost: Funciona

dentro

de

otros

algoritmos

de

aprendizaje

que

anticipan

un

comportamiento según los datos observados para que sean sensibles a extremos estadísticos. PageRank: Es el algoritmo base para los motores de búsqueda. CART: Organiza los datos según opciones que compiten. Naive Baye:

Predice la salida de una identidad basándose en los datos de observaciones conocidas. Vecino K más cercano: Reconoce patrones en la ubicación de los datos y los asocia con un identificador mayor. Sin embargo, no hay ninguna razón por la que deba limitarse a un algoritmo en sus soluciones. Los analistas experimentados usarán a veces un algoritmo para determinar las entradas más eficaces (es decir, variables) y luego aplicarán un algoritmo diferente para predecir un resultado concreto basado en esos datos. SQL Server La minería de datos de SQL Server le permite generar varios modelos en una única estructura de minería de datos, de forma que, en una solución de minería de datos, puede usar un algoritmo de clústeres, un modelo de árboles de decisión y un modelo de Bayes naive para obtener distintas vistas de los datos. También puede usar varios algoritmos en una única solución para realizar tareas independientes (por ejemplo, puede usar la regresión para obtener previsiones financieras, o bien un algoritmo de red neuronal para realizar un análisis de los factores que influyen en las previsiones). Elegir un algoritmo por tarea

Con el fin de ayudarle a seleccionar un algoritmo para su uso con una tarea específica, la tabla siguiente proporciona sugerencias para los tipos de tareas para las que se usa normalmente cada algoritmo.



4.3. Selección de la herramienta de software.

El Data Mining es una tecnología compuesta por etapas que integra varias áreas y que no se debe confundir con un gran software. Durante el desarrollo de un proyecto de este tipo se usan diferentes aplicaciones de software en cada etapa que pueden ser estadísticas, de visualización de datos o de inteligencia artificial, principalmente. Actualmente existen aplicaciones o herramientas comerciales de Data Mining muy poderosas que contienen un sinfín de utilerías que facilitan el desarrollo de un proyecto. Sin embargo, casi siempre acaban complementándose con otra herramienta. El proceso de extracción de patrones a partir de datos se llama minería de datos. Es reconocida como una herramienta esencial de los negocios modernos, ya que es capaz de convertir los datos en inteligencia de negocios dando así una ventaja de

información. Actualmente, es ampliamente utilizado en las prácticas de perfil, como vigilancia, comercialización, descubrimientos científicos, y detección de fraudes. Hay cuatro tipos de tareas que normalmente se involucran en la minería de datos:  

 

Clasificación – la tarea de generalizar una estructura familiar para utilizarla en los nuevos datos Agrupamiento – la tarea de encontrar grupos y estructuras en los datos que son de alguna manera u otra lo mismo, sin necesidad de utilizar las estructuras observadas en los datos. Aprendizaje de reglas de asociación – Busca relaciones entre las variables. Regresión – Su objetivo es encontrar una función que modele los datos con el menor error.

La selección de una otra herramienta de minería de datos habrá de hacerse previa evaluación de sus características. Entre las más importantes a tener en cuenta, destacan las siguientes: 1. Tipos de datos: no todos los datos son iguales y, en el mercado, no todas las herramientas están preparadas para ellos, por eso, hay que comprobar con qué formato exacto puede trabajar el sistema de minería de datos escogido. Entre los ejemplos más extendidos se encuentran el texto con formato, los datos basados en registros y los datos relacionales. 2. Compatibilidad entre sistemas: la herramienta de minería de datos deberá interactuar con los sistemas operativos existentes, por lo que habrá que tener esto en cuenta. En ocasiones, la compatibilidad se reduce a una opción, mientras que hay casos en que se extiende a varios sistemas. Por último, es necesario saber que también existen sistemas de minería de datos que proporcionan interfaces de usuario basadas en web y permiten el uso de datos XML como entrada. 3. Fuentes de datos: cuanto más versátiles sean las capacidades de minería de datos aplicables a la obtención de información de orígenes diversos más interesa. Si estas opciones están limitadas no se puede hacer frente a la heterogeneidad de fuentes, algo muy común en este tipo de procesos. 4. Funciones y metodologías: hay algunos sistemas de minería de datos que proporcionan una única función, como puede ser la clasificación, mientras que otros proporcionan múltiples funciones, tales como la descripción, análisis OLAP, descubrimiento, análisis estadístico, clasificación, predicción, agrupamiento

o búsqueda de similitudes. No hace falta escoger el que más funciones tiene, sino el que tiene todas las funciones que se van a necesitar. 5. Acoplamiento con bases de datos o sistemas de almacenamiento de datos: los sistemas de minería de datos deben complementarse con los sistemas de almacenamiento de datos o de base de datos. Los componentes acoplados se integran en un entorno de procesamiento de información uniforme. Este acoplamiento puede producirse de distintas formas, como las que se indican a continuación:  Sin acoplamiento.  Acoplamiento débil.  Acoplamiento semi - estanco.  Acoplamiento estanco.

6. Escalabilidad: esta cualidad puede evaluarse desde dos perspectivas diferentes: 



Escalabilidad de fila (tamaño de base de datos): el sistema de minería de datos se considera escalable cuando el número de filas se amplía en una determinada proporción y el sistema no tarda más tiempo del estimado (incrementado proporcionalmente) en ejecutar la consulta. Escalabilidad de columna (dimensión): el sistema de minería de datos se considera escalable si el tiempo de ejecución de consulta aumenta linealmente a la vez que lo hace el número de columnas.

7. Herramientas de visualización: la selección de la solución de minería de datos debe tener en cuenta la visibilidad que ofrecerá, que puede determinarse en función de los datos y los resultados o mostrar todo el proceso. 8. Interfaz gráfica de usuario: por último, hay que valorar la capacidad de interacción que la solución permite y la sencillez de su manejo.

Para aquellos que están buscando algunas herramientas de minería de datos, aquí están cinco de las mejores herramientas de software de código abierto para minería de datos que puedes obtener de forma gratuita: A continuación analizamos y comparamos las mejores herramientas de data mining del mercado hoy en día: RapidMiner, WEKA, Orange, KNIME y SAS. Es bien conocido que los usuarios usan más de una, combinándolas entre sí, pues tienen puntos fuertes diferentes. No obstante, si es una de las primeras veces que recurres a este tipo de programas, también puedes conseguir grandes avances con un único software polivalente.

Clementine Clementine / SPSS: Herramienta de data mining que permite desarrollar modelos predictivos y desplegarlos para mejorar la toma de decisiones. Está diseñada teniendo en cuenta a los usuarios empresariales, de manera que no es preciso ser un experto en data mining. Clementine es la más avanzada herramienta de Data Mining del mercado, combina modernas técnicas de modelamiento con poderosas herramientas de acceso, manipulación y exploración de datos en una interfaz simple e intuitiva. Clementine cuenta con los métodos de redes neuronales de mayor uso (Kohonen, Prune, Radial Basis). Las redes neuronales son, junto a los árboles de decisión, las más importantes herramientas de data mining disponibles actualmente debido a su capacidad para encontrar relaciones ocultas entre las variables y su flexibilidad para enfrentar distintos tipos de problemas de negocios. Link de Descarga: https://weareclementine.com/

RapidMiner RapidMiner, antes conocida como YALE, siglas de “Yet Another Learning Environment”, es un data mining software muy conocido. De acuerdo con una encuesta de KDnuggets realizada en el año 2014, esta tool se constituía como la herramienta de data mining más usada. Destaca por permitir el acceso gratuito y por su fácil manejo dado que no requiere un conocimiento elaborado en programación, sin olvidar la gran selección de operadores que ofrece. Especialmente son las startups las que recurren a ella. RapidMiner está escrita en Java y contiene más de 500 operadores con diferentes enfoques para mostrar las conexiones en los datos: hay opciones para data mining, text mining o web mining, pero también análisis de sentimiento o minería de opinión. Asimismo, el programa puede importar tablas Excel, archivos SPSS y masas de datos de diferentes bases de datos e integra los programas de data mining WEKA y R. Todo ello pone de relieve el carácter polivalente de este software. RapidMiner participa en todos y cada uno de los pasos del proceso de data mining, interviniendo también en la visualización de los resultados. La herramienta está formada por tres grandes módulos: RapidMiner Studio, RapidMinder Server y RapidMiner Radoop, cada uno encargado de una técnica diferente de minería de datos. Asimismo, RapidMiner prepara los datos antes del análisis y los optimiza para

su rápido procesamiento. Para cada uno de estos tres módulos hay una versión gratuita y diferentes opciones de pago. El punto fuerte de RapidMiner, si se compara con el resto de software de data mining, reside en los análisis predictivos, es decir, en la previsión de desarrollos futuros basándose en los datos recopilados. Link de Descarga: https://rapidminer.com/ WEKA WEKA (Waikato Environment for Knowledge Analysis) es un software de código abierto desarrollado por la Universidad de Waikato en la primera mitad de los años noventa. Basada en Java y compatible con Windows, macOS y Linux, la interfaz gráfica de usuario facilita el acceso a este software que también ofrece conexión a bases de datos SQL, siendo capaz de procesar en ellas los datos solicitados. Asimismo, presenta un sinnúmero de funciones de aprendizaje automático y secunda tareas tan relevantes del data Mining como el análisis de clústeres, de correlación o de regresión, así como la clasificación de datos, punto fuerte este último del data Mining software al usar redes de neuronas artificiales, árboles de decisión y algoritmos ID3 o C4.5. No obstante, este programa no es tan potente en aspectos como el análisis de clústeres, en el que solo se ofrecen los procedimientos más importantes. Otra desventaja es que este software presenta problemas de procesamiento cuando hay que tratar grandes cantidades de datos, dado que intenta cargar el programa de data Mining completo en la memoria de trabajo. WEKA ofrece para ello como solución una línea de comandos sencilla (CTL) que aligera el tráfico de un gran volumen de datos. Link de Descarga: https://www.cs.waikato.ac.nz/ml/weka/index.html

Orange El software de data Mining Orange existe desde hace más de 20 años como proyecto de la Universidad de Liubliana. El núcleo del software se escribió en C++, aunque poco después se amplió el programa al lenguaje de programación Python que solo se usa como lenguaje de entrada. Las operaciones más complejas, sin embargo, se llevan a cabo en C++. Orange es un software muy extenso que demuestra todo lo que se puede conseguir con Python, ya que ofrece aplicaciones de gran utilidad para el análisis de datos y de texto así como características de aprendizaje automático. Además, en el ámbito del data Mining trabaja con operadores para la clasificación, regresión y clustering e integra una programación visual. De hecho, es muy llamativo que los usuarios destaquen lo entretenido que es usar esta herramienta en

comparación con otras: tanto si se empieza con la minería de datos o se es más experto, a todos los usuarios les fascina Orange. Esto se debe a que, por un lado, ofrece un sistema de visualización de datos atractivo para trabajar y, por otro, alcanza esta visualización con rapidez y facilidad. El programa prepara los datos de forma visual, convirtiendo la comprensión de gráficas así como el procesamiento de análisis de datos en tareas muy sencillas, lo que a su vez facilita a los usuarios tomar decisiones rápidamente en el ámbito profesional. Otra ventaja para los menos versados: existe un sinnúmero de tutoriales sobre la herramienta. Una particularidad de Orange es que, además, va aprendiendo las preferencias de sus usuarios y se comporta en función de ellas, lo que simplifica enormemente el proceso de data Mining para el usuario. Link de Descarga: https://orange.biolab.si/

KNIME El software KNIME (Konstanz Information Miner), desarrollado por la universidad de Constanza, se puso a disposición de los usuarios como software de código abierto pese a crearse desde el principio con objetivos comerciales. Escrito en Java y preparado con Eclipse, en la actualidad KNIME se considera una herramienta de gran popularidad entre la comunidad internacional de programadores y, si se compara con otros programas de data Mining, destaca por una amplia gama de funciones: con más de 1000 módulos y paquetes de aplicaciones preparados, esta herramienta permite descubrir estructuras ocultas de datos. Además, se pueden ampliar sus módulos con otras soluciones adicionales de pago. Entre todas las funciones destaca el análisis de datos integrativo. En este ámbito KNIME es uno de los programas más avanzados, puesto que permite la integración de numerosos procedimientos de aprendizaje automático y de data Mining. Además, presenta una eficiencia notable en el tratamiento previo de los datos así como en su extracción, transformación y carga. Debido a su segmentación en módulos, sirve principalmente como software de data Mining orientado al flujo de datos. KNIME se usa en la investigación farmacéutica desde 2006 y supone una herramienta muy importante también en el sector financiero, sin olvidar su uso frecuente en el campo de la inteligencia empresarial (BI). Asimismo, esta herramienta es también muy interesante para quienes apenas acaban de iniciarse con el data Mining pues, aunque posee un amplio abanico de funciones, se requiere poco tiempo para aprender a manejarla. Por último, apuntar que KNIME existe en su versión gratuita y de pago. Link de Descarga: https://www.knime.com/

SAS SAS (Statistical Analysis System) es un producto de SAS Institute, una de las mayores empresas privadas de software en todo el mundo. SAS constituye la data Mining tool principal en el análisis en el sector de los negocios y, de hecho, se considera como el programa más adecuado para grandes empresas, aunque también sea el software con un coste económico mayor de todos los aquí descritos. El prestigio de este software se debe a que utiliza tecnología punta en la realización de pronósticos y presenta una visualización interactiva de los datos, de inestimable ayuda en grandes presentaciones. Con este programa de data Mining dispones básicamente de todos los elementos necesarios para llevar a cabo una minería de datos con éxito. Además, se caracteriza por su gran escalabilidad, pues permite aumentar progresivamente su eficiencia aumentando los recursos de hardware o de cualquier otro tipo, sin olvidar que para aquellos usuarios con menos afinidad técnica la herramienta dispone de una interfaz de usuario gráfica. Por todo ello no sorprende que se considere una de las herramientas más valiosas en el ámbito empresarial. No obstante, solo puede usarse de forma gratuita si una institución pública proporciona una licencia, es decir, que en la mayoría de los casos este data Mining software es de pago obligado. El precio se regula en función de la solicitud y es posible establecer condiciones especiales, por ejemplo, para autoridades o instituciones educativas. Solicitar una licencia de usuario anual ronda los 5.500 euros, hecho que convierte a SAS en una de las soluciones comerciales más caras. Aunque si se ajustan las funciones necesarias individualmente, se puede modificar el precio. Esta herramienta se ha establecido como estándar en el ámbito farmacéutico, aunque también se encuentra con mucha frecuencia en el ámbito financiero y ofrece soluciones óptimas en el ámbito de la inteligencia empresarial y el web Mining. Para ello dispone, entre otros, de un software de inteligencia empresarial específico. Todo ello la convierte en una de las herramientas más potentes del mercado. Link de Descarga: https://www.sas.com/en_us/insights/analytics/data-mining.html

Comparativa de software de data mining Tras una presentación detallada de los diferentes tipos de data mining software, a continuación recogemos la información más relevante en esta tabla comparativa:

Figura 1. Análisis del uso de herramientas de minería de datos en los años 2010 y 2011.