SISTEMAS DE INTELIGENCIA DE NEGOCIOS Y SOPORTE DE DECISIONES Lo Data mining con SQL Server 2008 R2 Nicoletti Mariela & Quiroga Cinthia Romero Melisa & Sgrinzi Agustina 2011 ¿Qué es Data Mining? Es el conjunto de técnicas y tecnologías que permiten explorar grandes bases de datos, de manera automática o semiautomática, con el objetivo de encontrar patrones repetitivos, tendencias o reglas de negocio, transformando los datos en conocimiento útil y práctico para la toma de decisiones. El data mining, surge para intentar ayudar a comprender el contenido de un repositorio de datos. Para lo que es fundamental combinar el manejo de base de datos, con conocimientos avanzados de estadística, aplicaciones específicas de software y modelos inteligentes. Los algoritmos estadísticos son los que permitirán descubrir o inferir los patrones a partir del procesamiento de grandes volúmenes de datos. Respecto a los modelos inteligentes, se ha comprobado que en ellos se utilizan principalmente árboles y reglas de decisión, reglas de asociación, redes neuronales, redes bayesianas, conjuntos aproximados (rough sets), algoritmos de agrupación (clustering), máquinas de soporte vectorial, algoritmos genéticos y lógica difusa. De forma general, los datos son la materia prima bruta. En el momento que el usuario les atribuye algún significado especial pasan a convertirse en información. Cuando los especialistas elaboran o encuentran un modelo, haciendo que la interpretación que surge entre la información y ese modelo represente un valor agregado, entonces nos referimos al conocimiento. Fases del proceso de Data mining 1. Entendimiento del negocio: En esta fase primero, se debe entender claramente los objetivos del negocio y asegurarse de conocer lo que el cliente realmente quiere lograr. A continuación, hay que evaluar la situación actual mediante la búsqueda de información sobre los recursos, supuestos, limitaciones y otros factores importantes que deben ser considerados. Luego se debe que crear los objetivos de minería de datos para lograr el objetivo de negocio. Por último, hay que establecer un plan de minería para lograr los objetivos empresariales y de minería de datos. El plan debe ser lo más detallado posible para llevarse a cabo paso a paso durante el proyecto, incluyendo la selección inicial de las técnicas de minería de datos y herramientas. 2. Entendimiento de los datos: Esta fase se inicia con la recolección de datos iniciales de fuentes disponibles para familiarizarse con los datos. A continuación los datos obtenidos Página 2 deben ser examinados cuidadosamente, luego estos necesitan ser explorados teniendo en cuenta las preguntas del data mining. 3. Preparación de los datos: Generalmente consume cerca del 70% del tiempo. Los datos producidos por esta fase son el conjunto de datos finales. Una vez que los datos están disponibles, estos necesitan ser seleccionados, depurados y estructurados. La exploración de datos en mayor profundidad se debe llevar a cabo en esta fase para identificar patrones en base a reglas de negocio. 4. Modelado: Las técnicas de modelado son seleccionadas para ser utilizadas por el conjunto de datos preparados. El escenario de prueba debe ser generado para validar los modelos de calidad y validación. Luego, uno o más modelos son creados con el conjunto de datos preparados mediante herramientas de modelado. Por último, los modelos deben ser evaluados cuidadosamente con las partes interesadas para asegurase de que estos se crearon para cumplir con los objetivos empresariales. 5. Evaluación: El modelo resultante debe ser evaluado en el contexto de los objetivos del negocio. Los nuevos requerimientos de negocio pueden aparecer debido al descubrimiento de nuevos patrones. Adquirir conocimiento del negocio es un proceso iterativo en la minería de datos. La decisión de seguir o no debe ser tomada en esta instancia para continuar con la fase de despliegue. 6. Despliegue: El conocimiento o la información que se obtiene a través del proceso de data mining se tiene que presentar de manera tal que los interesados puedan usarla cuando lo requieran. En base a los requerimientos del negocio, esta fase puede ser tan simple como crear un reporte o tan compleja como un proceso iterativo de data mining a través de toda la organización. Los planes de mantenimiento y monitoreo tienen que ser creados para dar soporte a futuro. El reporte final del proyecto necesita sumarizar las experiencias del proyecto para mejorarlo. Extensiones del Data mining Web mining: consiste en aplicar las técnicas de minería de datos a documentos y servicios Web. Todos los que visitan un sitio en Internet dejan huellas digitales (direcciones de IP, navegador, etc.) que los servidores automáticamente almacenan en una bitácora de accesos. Las herramientas de Web mining analizan y procesan estos logs para producir información significativa. Debido a que los contenidos de Internet consisten en varios tipos de datos, como texto, imagen, vídeo, metadatos o hiperlinks, investigaciones recientes usan el término multimedia data mining (minería de datos multimedia) como una instancia del Web mining para tratar ese tipo de datos. Los accesos totales por dominio, horarios de accesos más frecuentes y visitas por día, entre otros datos, son Página 3 registrados por herramientas estadísticas que complementan todo el proceso de análisis del Web mining. Text mining: dado que el 80% de la información de una compañía está almacenada en forma de documentos, las técnicas como la categorización de texto, el procesamiento de lenguaje natural, la extracción y recuperación de la información o el aprendizaje automático, entre otras, apoyan al text mining (minería de texto). El mismo se refiere a examinar una colección de documentos y descubrir información no contenida en ningún documento individual de la colección. ¿Por qué usar data mining? Si bien el data mining se presenta como una tecnología emergente, posee ciertas ventajas, como ser: Resulta un buen punto de encuentro entre los investigadores y las personas de negocios. Ahorra grandes cantidades de dinero a una empresa y abre nuevas oportunidades de negocios. Contribuye a la toma de decisiones tácticas y estratégicas proporcionando un sentido automatizado para identificar información clave desde volúmenes de datos generados por procesos tradicionales y de e-Business. Permite a los usuarios dar prioridad a decisiones y acciones que tienen influencia en los factores críticos para la organización. Por ejemplo qué segmentos de clientes son desechables y qué unidades de negocio son sobrepasados y por qué. Proporciona poderes de decisión a los usuarios del negocio que mejor entienden el problema y el entorno y es capaz de medir las acciones y los resultados de la mejor forma. Herramientas para Data Mining en SQL server 2008 R2 SQL Server 2008 está compuesto por los siguientes módulos: Motor de base de datos: es el servicio principal para almacenar, procesar y proteger datos. El Motor de base de datos proporciona acceso controlado y procesamiento de transacciones rápido para cumplir con los requisitos de las aplicaciones consumidoras de datos más exigentes de la empresa. Reporting Services: dispone de una gama completa de herramientas y servicios listos para usar que le ayudarán a crear, implementar y administrar informes para Página 4 la organización, así como de características de programación que permitirán extender y personalizar la funcionalidad de informes. Analysis Services: o Datos multidimensionales: permite diseñar, crear y administrar estructuras multidimensionales que contienen datos de detalle y agregados procedentes de varios orígenes de datos, como bases de datos relacionales, en un único modelo lógico unificado compatible con los cálculos integrados. o Minería de datos: contiene las características y herramientas necesarias para crear complejas soluciones de minería de datos. Integration Services: es una plataforma para la creación de soluciones empresariales de transformaciones de datos e integración de datos. Sirve para resolver complejos problemas empresariales mediante la copia o descarga de archivos, el envío de mensajes de correo electrónico como respuesta a eventos, la actualización de almacenamientos de datos, la limpieza y minería de datos, y la administración de objetos y datos de SQL Server. Integration Services puede extraer y transformar datos de muchos orígenes distintos, como archivos de datos XML, archivos planos y orígenes de datos relacionales, y, posteriormente, cargarlos en uno o varios destinos. Microsoft SQL Server Analysis Services (SSAS) Analysis Services Proporciona a los usuarios una amplia gama de herramientas que puede utilizar para diseñar, crear y visualizar modelos de minería de datos. Estos modelos se pueden construir a partir de otros orígenes de datos empleando una amplia variedad de algoritmos de minería de datos estándar. Cuando el modelo está completo, se puede implementar en otro servidor para que los usuarios puedan realizar análisis ad hoc con la predicción de modelos almacenados. Se puede acceder a los modelos de minería de datos a través de clientes personalizados, incluidos los servicios Web, o mediante el uso de aplicaciones de Microsoft Office, tales como la minería de datos para Excel. En SQL Server 2008, la minería de datos es de gran alcance, accesible e integrado con las herramientas que muchas personas prefieren utilizar para el análisis y presentación de informes. Diseñador de minería de datos: Es el entorno primario en el que se trabaja con modelos de minería de Microsoft SQL Server Analysis Services. Se puede utilizar el Diseñador de minería de datos para realizar las siguientes tareas: Página 5 Modificar la estructura de minería y el modelo de minería que fueron creados inicialmente por el Asistente para minería de datos. Crear nuevos modelos basados en una estructura de minería existente. Entrenar y buscar los modelos de minería. Comparar los modelos mediante el uso de gráficos de precisión. Crear consultas de predicción basadas en modelos de minería. Un elemento de la estructura de minería de datos contiene una única estructura de minería y todos los modelos asociados a la minería. Cada modelo de la minería puede tener un tipo de algoritmo diferente, ajuste de parámetros, y las columnas que se incluyen en la estructura de minería. Dado que los modelos asociados están contenidos en una única estructura, se puede comparar el rendimiento de los modelos mediante el uso de los espectadores y gráficos de precisión. Lenguaje DMX: es una extensión del lenguaje SQL que permite crear y trabajar con modelos de minería de datos en SSAS. DMX se compone de instrucciones de lenguaje de definición de datos (DDL), instrucciones de lenguaje de manipulación de datos (DML), y funciones y operadores. Las instrucciones de definición sirven para crear y definir nuevas estructuras y modelos de minería de datos, para importar y exportar modelos y estructuras y para quitar modelos existentes de una base de datos. Algoritmos de minería: El algoritmo de minería de datos es el mecanismo que crea un modelo de minería de datos. Para ello, un algoritmo analiza primero un conjunto de datos y luego busca patrones y tendencias específicos. El algoritmo utiliza los resultados de este análisis para definir los parámetros del 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. MicrosoftSQL Server Analysis Services proporciona varios algoritmos que se pueden usar en las soluciones de minería de datos incluyendo los siguientes tipos: ● Algoritmos de clasificación, que predicen una o más variables discretas, basándose en otros atributos del conjunto de datos. ● Algoritmos de regresión, que predicen una o más variables continuas, como las pérdidas o los beneficios, 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 Página 6 creación de reglas de asociación, que pueden utilizarse en un análisis de la cesta de compra. ● Algoritmos de análisis de secuencias, que resumen secuencias o episodios frecuentes en los datos, como un flujo de rutas Web. La elección del mejor algoritmo para una tarea empresarial específica puede ser un desafío. Aunque puede utilizar 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 sólo 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. Business Intelligence Development Studio Es la IDE de Microsoft utilizada para el desarrollo de análisis de datos y soluciones de Business Intelligence que utiliza el Microsoft SQL Server Analysis Services, Reporting Services e Integration Services. Se basa en el entorno de desarrollo Microsoft Visual Studio, caracterizado por poseer extensiones de servicios específicos de SQL Server y tipos de proyectos, incluyendo las herramientas, los controles y los proyectos de informes, flujos de datos ETL, cubos OLAP y la estructura de minería de datos. Arquitectura de modelo de minería de datos Un modelo de minería de datos recibe los datos de una estructura de minería de datos y, a continuación, los analiza utilizando un algoritmo de minería de datos. La estructura y el modelo de minería de datos son objetos independientes. La estructura de minería de datos almacena la información que define el origen de datos. Un modelo de minería de datos almacena la información derivada del procesamiento estadístico de los datos, como los patrones encontrados como resultado del análisis. Un modelo de minería de datos está vacío hasta que los datos que proporciona la estructura se procesan y analizan. Una vez procesado el modelo, contiene los metadatos, resultados y enlaces de la estructura de minería de datos. Los metadatos especifican el nombre del modelo y el servidor donde están almacenados, así como una definición del mismo, incluida una lista de las columnas de la estructura de minería de datos que se utilizaron para generarlo, las definiciones de los filtros opcionales que se aplican al procesarlo y el algoritmo empleado para analizar los datos. La elección Página 7 de las columnas, los filtros y el algoritmo influye en gran medida en los resultados del análisis. Por ejemplo, si crea un modelo de agrupación en clústeres y un modelo de árboles de decisión con los mismos datos, el contenido del modelo podría ser muy diferente, ya que estos modelos utilizan algoritmos y filtros diferentes. Los resultados que están almacenados en el modelo varían dependiendo del algoritmo, pero pueden incluir patrones, conjuntos de elementos, reglas y fórmulas. Estos resultados se pueden utilizar para realizar predicciones. Los enlaces que están almacenados en el modelo señalan a los datos almacenados en memoria caché en la estructura de minería de datos. Si los datos se han almacenado en memoria caché en la estructura y no se han borrado después del procesamiento, estos enlaces le permiten obtener detalles de los resultados para llegar a los casos que admiten los resultados. Sin embargo, los datos reales están almacenados en la memoria caché de la estructura, no en el modelo Caso de Estudio El cáncer de mama es el cáncer de mayor incidencia entre las mujeres debido a que es el segundo tipo más común y la quinta causa de muerte por cáncer en todo el mundo. El índice de superación de esta enfermedad depende de la fase en que se encuentra el tumor en el momento de su detección, pueden clasificarse como benigno (sin tejido canceroso) o maligno (con tejido canceroso); por este motivo, médicos y especialistas recomiendan revisiones y exámenes radiológicos periódicos para así poder detectar a tiempo y tomar las medidas necesarias en cada caso. El principal problema es que no existe un único indicio para determinar la presencia de este cáncer y se desconocen sus causas, aunque se hayan catalogado una serie de factores de riesgo que pueden predisponer a sufrirlo Otro inconveniente radica en poder determinar las características necesarias para predecir, a partir de un conjunto de microcalcificaciones, si el paciente puede desarrollar o no la enfermedad. Las microcalcificaciones detectadas en mamografías pueden construir lesiones malignas y por consiguiente se consideran como la anticipación de un proceso canceroso. La caracterización de las lesiones supone un problema complejo independientemente de la experiencia del radiólogo, demostrado por la gran cantidad de biopsias realizadas para solventar situaciones dudosas. La automatización de procedimientos de diagnóstico crítico con el desarrollo de varios algoritmos de aprendizaje máquina aparece como una solución que proporciona soporte para el diagnostico del especialista y disminuye tanto falsos positivos como negativos Página 8 Escenario Para realizar el trabajo practico nos basamos en un estudio de investigación desarrollado en Wisconsin, el cual provee información relacionada al diagnostico y pronostico del cáncer de mama. La cantidad de instancias dentro del conjunto de datos es 699, donde cada registro representa los datos de seguimiento de un caso de cáncer de mama. Se trata de pacientes consecutivos vistos por el Dr. Wolberg desde 1984, e incluyen sólo los casos que presentan cáncer de mama invasivo y sin evidencia de metástasis a distancia en el momento del diagnóstico. Cada núcleo de las células pose 10 atributos, que se representan en las tablas, los que son obtenidos a partir de un análisis de las imágenes digitalizadas de una masa mamaria. De cada imagen se describen las características de los núcleos de las células presentes. Datos de la tabla La siguiente tabla, presenta las variables seleccionadas y que serán el objeto de estudio para la elaboración del modelo de minería. Tabla de Diagnostico Atributo Descripción Id Diagnostico Identificador de la tabla. Diagnostico Contiene una descripción del diagnostico medico Radio Se refiere a la media de la distancia desde el centro del núcleo de la célula hasta el perímetro de la misma Textura Representa la textura en función de desviación estándar de los valores en escala de grises. Perímetro Se corresponde con la medida del perímetro del núcleo de la célula cancerígena Zona Hace referencia al área donde se encuentra el tumor. Tabla de Pronostico Esta tabla contiene los mismos datos que la anterior, exceptuando el Diagnostico y agregando los siguientes: Página 9 Id Identificador de la tabla. Resultado Indica si se trata de un caso de cáncer recurrente o recidiva. Tiempo Hace referencia al tiempo aproximado que tarda la enfermedad en volver a aparecer para el caso de que sea recurrente. Tamaño del Tumor Se refiere al diámetro del tumor extirpado en centímetros. Estado de linfáticos los ganglios Es el número de ganglios linfáticos axilares positivos observado en el momento de la cirugía. Algoritmo de árboles de decisión Un árbol de decisión tiene unas entradas las cuales pueden ser un objeto o una situación descrita por medio de un conjunto de atributos y a partir de esto devuelve una respuesta la cual es una decisión que es tomada a partir de las entradas. Los valores que pueden tomar las entradas y las salidas pueden ser valores discretos o continuos. Se utilizan más los valores discretos por simplicidad, cuando se utilizan valores discretos en las funciones de una aplicación se denomina clasificación y cuando se utilizan los continuos se denomina regresión. Un árbol de decisión lleva a cabo un test a medida que este se recorre hacia las hojas para alcanzar así una decisión. El árbol de decisión suele contener nodos internos, nodos de probabilidad, nodos hojas y arcos. Un nodo interno contiene un test sobre algún valor de una de las propiedades. Un nodo de probabilidad indica que debe ocurrir un evento aleatorio de acuerdo a la naturaleza del problema. Un nodo hoja representa el valor que devolverá el árbol de decisión y finalmente las ramas brindan los posibles caminos que se tienen de acuerdo a la decisión tomada. El algoritmo de árboles de decisión de Microsoft. Genera un modelo de minería de datos mediante la creación de una serie de divisiones en el árbol. Estas divisiones se representan como nodos. El algoritmo agrega un nodo al modelo cada vez que una columna de entrada tiene una correlación significativa con la columna de predicción. La forma en que el Página 10 algoritmo determina una división varía en función de si predice una columna continua o una columna discreta. Una vez procesado el modelo, los resultados se almacenan como un conjunto de patrones y estadísticas que se pueden usar para explorar las relaciones o para realizar predicciones. Algoritmo de Regresión La regresión logística es una de las herramientas estadísticas con mejor capacidad para el análisis de datos en investigación clínica y epidemiología, de ahí su amplia utilización. El objetivo primordial que resuelve esta técnica es el de modelar cómo influye en la probabilidad de aparición de un suceso, habitualmente dicotómico, la presencia o no de diversos factores y el valor o nivel de los mismos. También puede ser usada para estimar la probabilidad de aparición de cada una de las posibilidades de un suceso con más de dos categorías (politómico). Algoritmo de regresión logística de Microsoft. Es una variación del algoritmo Red neuronal de Microsoft, donde el parámetro HIDDEN_NODE_RATIO se establece en 0. Esta configuración crea un modelo de red neuronal que no contiene una capa oculta y que, por tanto, es equivalente a una regresión logística. Aplicación de Data Mining al caso de estudio Determinar origen de datos El origen de datos utilizado es un dataset depurado y estructurado para aplicar data mining sobre el mismo. Para poder utilizarlo se debió importar la estructura y los datos de la base de datos. Página 11 Definir estructuras de minería de datos Las estructuras creadas para el análisis del problema surgen de dos de las tablas del dataset. Definir modelos de minería de datos Utilizando Árbol de Decisión sobre la tabla Diagnostico La realización del diagnostico del tumor, es decir establecer si es maligno o benigno, se llevo a cabo con los siguientes datos de entrada: Página 12 De esta forma se logro obtener el siguiente gráfico que modela los resultados obtenidos y permite realizar el análisis correspondiente. Página 13 Como se puede observar, del total de las muestras analizadas, el 61,93% (249 casos) corresponden a un caso benigno y el resto, es decir el 28,07% (150 casos), a uno maligno. Utilizando árbol de decisión sobre la tabla Pronostico La misma metodología fue utilizada para predecir si el tumor es recurrente o recidiva: ● Recurrente: se da cuando la enfermedad permanece estable en el paciente tratado y se convierte en un caso crónico. ● Recidiva: se da en pacientes en los cuales fue extirpado el tumor maligno y se considera al paciente como sano pero puede reaparecer en un periodo de tiempo dado. .En este caso, los datos de entrada utilizados fueron los siguientes: Página 14 De la siguiente imagen podemos observar que el 74,29% (148 casos) se trata de situaciones en las que es probable que la enfermedad reaparezca (recidiva), siendo solo el 25,71% (46 casos) los que seguirán padeciendo la enfermedad en forma crónica. Utilizando Regresión Logística sobre la tabla pronostico También utilizamos el algoritmo de Regresión Logística para predecir cuales son las variables que inciden con mayor relevancia en cada uno de los tipos de resultados. Página 15 Crear predicciones Utilizando Business Intelligence Development Studio generamos consultas en lenguaje DMX para poder determinar con una probabilidad mayor al 60% que los casos diagnosticados como malignos o benignos se encuentran clasificados adecuadamente según los valores de los atributos. Página 16 Conclusión A la vista de la investigación realizada podemos concluir que el Data Mining es una herramienta complementaria para un usuario en la toma de decisiones. Además, la integración entre Microsoft Visual Studio y Microsoft SQL Server Analysis Services proporciona a los usuarios una amplia gama de herramientas sencillas de utilizar, brindando una serie de beneficios a la hora desarrollar modelos de Data Mining. Como se trata de un modelo confiable que utiliza técnicas estadísticas para predecir los resultados, podemos notar que permite minimizar el tiempo insumido y el error producido en diagnosticar, así como también efectivizar la lectura de los estudios, reduciendo la necesidad de realizar otros tipos de métodos invasivos. También contribuye a saber cómo podría evolucionar la enfermedad en el paciente, ya que predecir si una mujer tendrá recurrencia de cáncer después de haber sido intervenida quirúrgicamente resulta de vital importancia para proporcionarle un tratamiento adecuado y menos agresivo. Página 17