Minería de Datos Universidad Politécnica de Victoria 1 Motivación Nuevas Necesidades del Análisis de Grandes Volúmenes de Datos • El aumento del volumen y variedad de información que se encuentra informatizada en bases de datos digitales ha crecido espectacularmente en la última década. • Gran parte de esta información es histórica, es decir, representa transacciones o situaciones que se han producido. • Aparte de su función de “memoria de la organización”, la información histórica es útil para predecir la información futura. 2 Motivación • La mayoría de decisiones de empresas, organizaciones e instituciones se basan también en información de experiencias pasadas extraídas de fuentes muy diversas. • las decisiones colectivas suelen tener consecuencias mucho más graves, especialmente económicas, y, recientemente, se deben basar en volúmenes de datos que desbordan la capacidad humana. El área de la extracción (semi-)automática de conocimiento de bases de datos ha adquirido recientemente una importancia científica y económica inusual 3 • Motivación Tamaño de datos poco habitual para algoritmos clásicos: • número de registros (ejemplos) muy largo (108-1012 bytes). • datos altamente dimensionales (nº de columnas/atributos): 102-104. • El usuario final no es un experto en aprendizaje automático ni en estadística. • El usuario no puede perder más tiempo analizando los datos: • industria: ventajas competitivas, decisiones más efectivas. • ciencia: datos nunca analizados, bancos no cruzados, etc. • personal: “information overload”... Los sistemas clásicos de estadística son difíciles de usar y no escalan al número de datos típicos en bases de datos. 4 Qué es la minería de datos? Witten y Frank 2000 Es el proceso de extraer conocimiento útil (patrones útiles) y comprensible, previamente desconocido desde grandes cantidades de datos almacenados en distintas fuentes (bases de datos, textos, la web, imágenes) y formatos. La minería de datos es también llamada Descubrimiento del Conocimiento (KDD) 5 Nombres alternativos Descubrimiento de conocimiento (minando) en bases de datos (KDD), extracción de conocimiento, análisis de datos/patrones, arqueología de datos, recolección de información, inteligencia de negocios, etc. Qué no es minería de datos? Procesamiento de consultas. Sistemas expertos o pequeños programas estadisticos 6 Minería de datos vs. consulta de datos Consulta de datos: e.g. Una lista de todos los clientes quienes usan una tarjeta de crédito para comprar una PC Una lista de todos los estudiantes que tienen un promedio final de 7.5 o más alto y han estudiado 4 o menos semestres Problemas de Minería de Datos: e.g. ¿Cuál es la probabilidad de que un cliente compre una PC con tarjeta de crédito? Dadas las características de los estudiantes predecir su promedio final ¿Cuáles son las características de los estudiantes que no se gradúan? 7 Ejemplos: Qué no es minería de datos? Qué no es minería Qué es la minería de datos? de datos? – Buscar un – Ciertos nombres tienden a número telefónico en el directorio telefónico prevalecer más en ciertas locaciones de USA (O’Brien, O’Rurke, O’Reilly… in Boston area) –Consultar un motor de busqueda web por información acerca de “Amazon” – Agrupar documentos similares obtenidos por el motor de búsqueda de acuerdo a su contexto (e.g. Amazon rainforest, Amazon.com,) Ejemplo de patrones descubiertos Reglas de asociación: “80% de los clientes que compra queso y leche también compra pan, y el 5% de los clientes que compra los 3 articulos juntos Queso, leche Pan [sup =5%, confid=80%] 9 ¿Qué es la minería de datos? Campo multidiciplinario Es un campo multidisciplinario de las ciencias de la computación que puede ayudarse de los sistemas de bases de datos para el manejo de grandes volúmenes de datos, el apoyo de métodos estadísticos para el diseño de hipótesis y modelos matemáticos que con la ayuda de algunas técnicas de la inteligencia artificial, llevan a cabo la generación y refinamiento de tales modelos. 10 Campos relacionados Inteligencia Artificial Estadística (“Machine Learning”) Bases de Datos Minería de datos Graficación y visualización Ciencias de la información Otras disciplinas Minería de datos Dr. Francisco J. Mata 11 La minería de datos es un subconjunto de la inteligencia de negocios 12 Principales tareas de la minería de datos Problemas de minería de datos pueden clasificarse en las siguientes categorías Clasificación Estimación Pronóstico Asociación Agrupación o segmentación Minería de datos Dr. Francisco J. Mata 13 Principales tareas de la minería de datos Clasificación: Patrones de minería que puedan clasificar futuros datos en clases conocidas. Reglas de asociación En minería cualquier reglas de la forma X Y, donde X y Y son conjuntos de elementos (datos). Clustering o agrupación Identificando un conjunto de grupos similares en los datos 14 Principales tareas de la minería de datos Patrones secuenciales en minería: Una regla secuencias: A B, establece que el evento A será inmediantemante seguido por el evento B con cierta confianza Detección de desviación o estimación: Descubrimiento de los cambios más significativos en los datos Visualización de datos: Usando metodos gráficos para mostrar patrones en los datos. 15 Clasificación Examinar las características de un nuevo objeto y asignarle una clase o categoría de acuerdo a un conjunto de tales objetos previamente definido Ejemplos: Clasificar clientes como bueno y malo Detectar reclamos fraudulentos de seguros 16 Estimación Relacionado con clasificación Mientras clasificación asigna un valor discreto, estimación produce un valor continuo Ejemplos: Estimar el precio de una vivienda Estimar el ingreso total de una familia 17 Pronóstico Predecir un valor futuro con base a valores pasados Ejemplos: Predecir cuánto efectivo requerirá un cajero automático en un fin de semana 18 Asociación Determinar cosas u objetos que van juntos Ejemplo: Determinar que productos se adquieren conjuntamente en un supermercado 19 Agrupación o segmentación Dividir una población en un número de grupos más homogéneos No depende de clases pre-definidas a diferencia de clasificación Ejemplo: Dividir la base de clientes de acuerdo con los hábitos de consumo 20 ¿Porqué la minería de datos es importante? Las empresas producen gran cantidad de datos y necesitan de sistemas de computarización rápida Cómo hacer el mejor uso de los datos? Una creciente toma de conciencia: el descubrimiento de conocimiento a partir de datos se puede utilizar para obtener una ventaja competitiva 21 ¿Porqué la minería de datos es necesaria? Hay una gran brecha entre los datos almacenados y el conocimiento; y la transición no se produce de forma automática. Muchas cosas interesantes que se desean encontrar no se puede encontrar usando consultas de bases de datos “¿Qué personas que podrían comprar mis productos ? " "¿Quiénes son propensos a responder a mi promoción ? " 22 ¿Qué motivó a la minería de datos? Coleccion de datos y disponibilidad de datos Herramientas de coleccion de datos automatizadas, sistemas de bases de datos, la Web, la sociedad computarizada Fuentes principals de datos abundantes Negocios: Web, e-commerce, transacciones, … Ciencia: Remote sensing, bioinformatics, scientific simulation, … Society and everyone: news, digital cameras, YouTube 23 ¿Qué motivó a la minería de datos? Nos estamos ahogando en datos, pero estamos hambrientos de conocimiento! 24 ¿Porqué aplicar la minería de datos? Los datos se encuentran disponibles Los datos son almacenados El poder de computo es cada vez menos costoso Las presiones competitivas son enormes Software para minería de datos se encuentra disponible 25 Aplicaciones de la minería de datos Marketing, perfiles y retención de clientes, identificación de clientes potenciales, segmentación del mercado. Detección de fraudes Identificación de fraude de tarjetas de crédito, detección de intrusos Texto y minería web Análisis de datos científicos Cualquier aplicación que implica una gran cantidad de datos 26 Aplicaciones Ejemplo 1: Análisis de créditos bancarios Un banco desea obtener reglas para predecir cuales de sus nuevos clientes que solicitan un crédito tienen mayor probabilidad de devolverlo con la finalidad de reducir sus perdidas. Para ello se desea construir un modelo a partir de la historia crediticia de sus clientes anteriores. 27 Una técnica de minería de datos podría generar algunas reglas, por ejemplo: El banco podría entonces determinar las acciones a realizar en el trámite de los créditos: si se concede o no el crédito solicitado 28 Aplicaciones Ejemplo 2: Análisis de la cesta de la compra En un supermercado se desea ubicar a los productos tal que los clientes puedan ubicar en zonas cercanas los productos que generalmente compran en conjunto. Se cuenta con una tabla que contiene como campos a los productos principales y registros si el cliente i-esimo compro o no tal producto. 29 Un modelo de minería de datos podría encontrar que siempre que se compran pañales también se compra leche, lo mismo con el vino y sodas, por lo que esos productos podrían ubicarse cerca, pero pueden estar lejos del aceite, el huevo y la mantequilla, otros productos que se acostumbran comprar juntos. 30 Aplicaciones Ejemplo 3: Determinar ventas de un producto En una tienda de electrodomésticos se desea optimizar el funcionamiento de su almacén para satisfacer a los clientes, sin generar costos extras por el almacenaje innecesario de productos, es decir se desea tener los productos solo en el momento adecuado. Para ello se cuenta con el registro de ventas mensuales de cada producto de los últimos doce meses. 31 Un modelo de minería de datos podría determinar que en diciembre de cada año las ventas se incrementan. También podría encontrar que cuando comienza el año las ventas bajan, con excepcion del iPod Touch, que posiblemente es causa de que es un regalo común para los jóvenes el de reyes. Del mismo modo se incrementan conforme el mes de mayo se acerca por motivo del día de las madres. Un modelo de regresión permitiría realizar un estimado adecuado de la cantidad de productos a almacenar por mes. 32 Ejemplo 4: Determinar grupos diferenciados de empleados •Una empresa desea categorizar a sus empleados en distintos grupos con el objetivo de entender mejor su comportamiento y tratarlos de manera adecuada •Tenemos estos datos de los empleados: #Ej 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 Sueldo 10000 20000 15000 30000 10000 40000 25000 20000 20000 30000 50000 8000 20000 10000 8000 Casado Sí No Sí Sí Sí No No No Sí Sí No Sí No No No Coche No Sí Sí Sí Sí Sí No Sí Sí Sí No Sí No Sí Sí Hijos 0 1 2 1 0 0 0 0 3 2 0 2 0 0 0 Alq/Prop Alquiler Alquiler Prop Alquiler Prop Alquiler Alquiler Prop Prop Prop Alquiler Prop Alquiler Alquiler Alquiler Sindic. No Sí Sí No Sí Sí Sí Sí No No No No No Sí No Bajas/Año 7 3 5 15 1 3 0 2 7 1 2 3 27 0 3 Antigüedad 15 3 10 7 6 16 8 6 5 20 12 1 5 7 2 Sexo H M H M H M H M H H M H M H H 33 Un modelo de minería de datos podría obtener tres grupos con la siguiente descripción: cluster 1: 5 examples Sueldo : 22600 Casado : No -> 0.8 Sí -> 0.2 Coche : No -> 0.8 Sí -> 0.2 Hijos : 0 Alq/Prop : Alquiler -> 1.0 Sindic. : No -> 0.8 Sí -> 0.2 Bajas/Año : 8 Antigüedad : 8 Sexo : H -> 0.6 M -> 0.4 cluster 2: 4 examples Sueldo : 22500 Casado : No -> 1.0 Coche : Sí -> 1.0 Hijos : 0 Alq/Prop : Alquiler -> 0.75 Prop -> 0.25 Sindic. : Sí -> 1.0 Bajas/Año : 2 Antigüedad : 8 Sexo : H -> 0.25 M -> 0.75 cluster 3: 6 examples Sueldo : 18833 Casado : Sí -> 1.0 Coche : Sí -> 1.0 Hijos : 2 Alq/Prop : Alquiler -> 0.17 Prop -> 0.83 Sindic. : No -> 0.67 Sí -> 0.33 Bajas/Año : 5 Antigüedad : 8 Sexo : H -> 0.83 M -> 0.17 • GRUPO 1: Sin hijos y de alquiler. Poco sindicados. Muchas bajas. • GRUPO 2: Sin hijos y con coche. Muy sindicados. Pocas bajas. Normalmente de alquiler y mujeres. • GRUPO 3: Con hijos, casados y con coche. Propietarios. Poco sindicados. Hombres. 34 Ejercicio Equipos: 3 personas máximo Objetivos: Identificar situaciones concretas para utilizar la minería de datos (10 minutos) Reportar a la clase verbalmente (3 minutos) Las situaciones identificadas Tipo de aplicación o problema de minería de datos relacionado Los beneficios esperados de aplicar la minería de datos 35 Áreas de Aplicación. Problemas Tipo. KDD para toma de decisiones (Dilly 96) Comercio/Marketing: - Identificar patrones de compra de los clientes. - Buscar asociaciones entre clientes y características demográficas. - Predecir respuesta a campañas de mailing. - Análisis de cestas de la compra. Banca: - Detectar patrones de uso fraudulento de tarjetas de crédito. - Identificar clientes leales. - Predecir clientes con probabilidad de cambiar su afiliación. - Determinar gasto en tarjeta de crédito por grupos. - Encontrar correlaciones entre indicadores financieros. - Identificar reglas de mercado de valores a partir de históricos. Seguros y Salud Privada: - Análisis de procedimientos médicos solicitados conjuntamente. - Predecir qué clientes compran nuevas pólizas. - Identificar patrones de comportamiento para clientes con riesgo. - Identificar comportamiento fraudulento. Transportes: - Determinar la planificación de la distribución entre tiendas. 36 - Analizar patrones de carga. Áreas de Aplicación. Problemas Tipo. KDD para toma de decisión Medicina: - Identificación de terapias médicas satisfactorias para diferentes enfermedades. - Asociación de síntomas y clasificación diferencial de patologías. - Estudio de factores (genéticos, precedentes, hábitos, alimenticios, etc.) de riesgo/salud en distintas patologías. - Segmentación de pacientes para una atención más inteligente según su grupo. - Predicciones temporales de los centros asistenciales para el mejor uso de recursos, consultas, salas y habitaciones. - Estudios epidemiológicos, análisis de rendimientos de campañas de información, prevención, sustitución de fármacos, etc. 37 Áreas de Aplicación. Problemas Tipo. KDD para Procesos Industriales - Extracción de modelos sobre comportamiento de compuestos. Detección de piezas con trabas. Predicción de fallos Modelos de calidad. Estimación de composiciones óptimas en mezclas. Extracción de modelos de coste. Extracción de modelos de producción. Simulación costes/beneficios según niveles de calidad 38