DATAMINING Helí Campos R [email protected] helicr.com AGENDA. Diseño de modelos de datos para Data Mining 1. Introd
Views 492 Downloads 2 File size 898KB
DATAMINING
Helí Campos R [email protected]
helicr.com
AGENDA. Diseño de modelos de datos para Data Mining
1.
Introducción: ¿Qué es Data Mining?
2.
Bases de datos relacionales vs. DWH y Data Marts.
3.
Data Warehousing
4.
Modelo de datos para Marketing Intelligence
5.
Ejercicio práctico
helicr.com
-1-
AGENDA. Diseño de modelos de datos para Data Mining
1.
Introducción: ¿Qué es Data Mining?
2.
Bases de datos relacionales vs. DWH y Data Marts.
3.
Data Warehousing
4.
Modelo de datos para Marketing Intelligence
5.
Ejercicio práctico
helicr.com
-2-
1. Introducción: ¿Qué es Data Mining? 1.1 Data Mining El aumento en el poder de procesamiento de las máquinas y la alta reducción del coste de almacenamiento, ha permitido en los últimos años un gran crecimiento las capacidades de las empresas de generar y recolectar datos sobre sus clientes. Sin embargo, dentro de esos datos existe una gran cantidad de información oculta, de gran importancia estratégica, a la que no se puede acceder por las técnicas convencionales de recuperación de información. El Data Mining o “minería de datos” permite el descubrimiento de esta información oculta encontrando patrones y relaciones dentro de los datos, los cuales permiten la creación de representaciones abstractas de la realidad para hallar el conocimiento oculto en dichos datos. Para ello se sirve, entre otras, de las siguientes técnicas:
Herramientas analíticas y estadísticas.
Herramientas de inteligencia artificial. Reconocimiento de patrones.
Esta presentación se encarga de definir los distintos modelos de datos que es necesario mantener por debajo de todos estos análisis, así como las técnicas necesarias para crearlos. helicr.com
-3-
1. Introducción: ¿Qué es Data Mining? 1.2 Soporte de Datos Para definir un modelo de datos que permita realizar todos estos análisis es necesario tener en cuenta las siguientes cuestiones: La información a recopilar puede provenir de distintos orígenes de datos, no necesariamente heterogéneos. Es necesario automatizar procesos de extracción, transformación y carga (ETL) de los datos. El alto volumen de información no debe impedir un tiempo de respuesta aceptable al consultar datos. El rendimiento debe ser alto para consultas masivas de datos, para lo que es necesario mantener información agregada. Debe facilitar la explotación de los datos por medio de herramientas de reporting o de consulta analítica en línea (OLAP).
Debe mantener una visión única del cliente, y almacenar una serie de indicadores y dimensiones de negocio que ayuden a la toma de decisiones. Es necesario que aporte información histórica de los clientes, con el objetivo de realizar análisis del comportamiento de éstos en el tiempo. Como vemos, para satisfacer la mayor parte de estas necesidades no es suficiente con un modelo de base de datos relacional, sino que necesitamos algo más. En las siguientes secciones hablaremos de los conceptos de Data Warehouse, Data Mart y finalmente definiremos el concepto de Modelo de datos para Marketing Intelligence, con el que trabajamos normalmente en CognoData. helicr.com
-4-
AGENDA. Diseño de modelos de datos para Data Mining
1.
Introducción: ¿Qué es Data Mining?
2.
Bases de datos relacionales vs. DWH y Data Marts.
3.
Data Warehousing
4.
Modelo de datos para Marketing Intelligence
5.
Ejercicio práctico
helicr.com
-5-
2.- Bases de datos relacionales vs. DWH y Data Marts 2.1 Definiciones
Data Warehouse
• •
Un Data Warehouse es una colección de datos, orientados a áreas funcionales de la empresa, integrados, variables en el tiempo, no volátiles, que soporta el proceso de toma de decisiones. Un Data Warehouse es un modelo que toma información de múltiples sistemas y bases de datos y la almacena de una manera que está diseñada para dar a los usuarios acceso más rápido, más fácil y más flexible a los aspectos claves.
Data Mart
• •
Un Data Mart es la implementación de un Data Warehouse con un ámbito de datos y funciones más pequeño y restringido, que sirve a un departamento único o a una parte de la organización, pero sin diferencias técnicas esenciales entre ellos. Un Data Mart es una vista lógica de una partición de los datos de un Data Warehouse, con la adición de nuevas dimensiones o información calculada. Representan un conjunto de datos relacionados con un tema en particular como Ventas, Operaciones, Recursos Humanos, etc, y están a disposición de los usuarios finales a quienes les puede interesar la misma.
Base de datos de Marketing Intelligence
•
En el contexto de trabajo de CognoData, vamos usar normalmente bases de datos orientadas al marketing intelligence. Se trata de Data Marts específicos de cada proyecto en los que se definen una serie de indicadores y dimensiones de negocio asociadas generalmente al cliente, y que posteriormente a su construcción servirán para aplicar las técnicas de Data Mining necesarias. helicr.com
-6-
2.- Bases de datos relacionales vs. DWH y Data Marts 2.2 Diferencias entre BBDD Relacionales y Almacenes de datos BBDD Relacionales y Operacionales
Almacenes de Datos (DWH – DM)
Volumen de información
Mínimo por operación
Muy grande por operación
Operaciones
Altas, bajas y modificaciones
Consultas y agregaciones de datos
Propósito
Operaciones de consulta diarias
Recuperación de información mediante informes , análisis y minería de datos
Tipo de datos
Datos del funcionamiento de la organización
Datos útiles para el análisis y el reporting, y orientados a la toma de decisiones
Características de los datos
Datos de funcionamiento, internos, incompletos
Datos internos y externos, integrados, no volátiles, históricos, descriptivos
Estructura
Diagrama entidad – relación, OLTP (OnLine Transaction Processing)
Datos en estrella, multidimensionales, OLAP (OnLine Analytical Processing)
Redundancia
No se permite
Redundancia controlada (agregaciones)
Acceso
Lectura y escritura SQL
SQL y herramientas propias. Sólo lectura
Análisis de calidad
No lo permite
Permite realizar análisis de la calidad de la información
Facilidad de uso
Usuario técnico
Usuario técnico y usuario de negocio mediante herramientes propias
Orientación
Orientado a la aplicación
Orientado al sujeto
helicr.com
-7-
AGENDA. Diseño de modelos de datos para Data Mining
1.
Introducción: ¿Qué es Data Mining?
2.
Bases de datos relacionales vs. DWH y Data Marts.
3.
Data Warehousing
4.
Modelo de datos para Marketing Intelligence
5.
Ejercicio práctico
helicr.com
-8-
3.- Data Warehousing 3.1 Arquitectura Data Warehouse Extracción Transformación Carga Reporting
Data Mining
WWW
DataWarehouse Almacén de datos
DataMarts BBDD Multidimensionales
OLAP
Explotación Orígenes de datos BBDD Externas
Administración
helicr.com
-9-
3.- Data Warehousing 3.2 Extracción, Transformación y Carga (1/2)
Extracción
•
Conexión con BBDD operacionales en distintos formatos y localizaciones, que hacen de fuentes de datos para el DW.
Transformación
•
Adecuación de la información, proveniente de distintos orígenes y en distintos formatos, a la estructura del DW. Homogeneización de formatos. Series temporales Tratamiento de missing values (valores nulos) Tratamiento de outlayers (valores fuera de rango) Construcción de indicadores derivados.
Carga
• •
Introducción de los datos en tablas propias de la estructura del DW Agregación de los datos.
En las presentaciones de formación nº 4 y nº 5 se explica con mayor detalle cómo realizamos, en la mayoría de los casos, los procesos de ETL en CognoData. Se describe la funcionalidad de SQL Server para crear paquetes DTS y su integración con el lenguaje Visual Basic Script. Con ambas funcionalidades se consigue un entorno para realizar tareas de ETL bastante potente. helicr.com
- 10 -
3.- Data Warehousing 3.2 Extracción, Transformación y Carga (2/2)
Ejemplo de proceso ETL BBDD A Genero = { m , f } DATA WAREHOUSE
BBDD B Genero = { 0 , 1 }
BBDD C Genero = { masculino , femenino }
Genero = { m , f }
En este ejemplo podemos ver como en las bases de datos de origen tenemos la misma variable codificada de 3 maneras distintas. Es necesario unificar la codificación antes de realizar la carga de los datos. helicr.com
- 11 -
3.- Data Warehousing 3.3 Estructura del Data Warehouse Altamente resumido
Almacena información agregada proveniente de un nivel inferior en el que los datos están descritos con mayor detalle.
Ligeramente resumido
Estas particiones se construyen teniendo en cuenta unas funcionalidades concretas, agrupando lo datos en base a unos campos y unidades de tiempo determinadas. P.E. Ventas semanales por producto o por provincia
Refleja la „fotografía‟ más reciente de los datos, por lo que es la información a la que se accede con mayor frecuencia.
Detalle de los datos actuales
Es la parte más voluminosa del DW, ya que se almacena al más bajo nivel de granularidad. Casi siempre se almacena en disco, el cual es de fácil acceso, aunque su administración sea más costosa. Contiene el detalle de todos los clientes. P.E. Detalle de las ventas de la empresa en el año 2006
Almacena información antigua a un nivel de detalle consistente con los datos actuales. Se suele almacenar en dispositivos externos, ya que se accede a ella con menos frecuencia. Detalle de los datos históricos
P.E. Detalle de las ventas desde el 2001 al 2005
helicr.com
- 12 -
3.- Data Warehousing 3.4 Modelo de datos (1/3) Una de las principales diferencias entre las bases de datos relacionales y el Data Warehouse es que se sustentan en modelos de datos distintos. Mientras que las primeras usan el modelo entidad – relación, los DW se valen del modelo multidimensional (también llamado en estrella o copo de nieve). TABLA DE HECHOS TABLA DE BUSQUEDA
TABLA DE BUSQUEDA
Es la tabla central en un esquema dimensional. Se detalla a nivel de la unidad básica (como por ejemplo el cliente) y es en ella donde se almacenan los indicadores de negocio. Suelen tener 2 tipos de columnas: - Columnas de tipo clave: referencian valores en cada una de las tablas de dimensiones (atributos) - Columnas de tipo hecho: medidas o indicadores de negocio.
TABLA DE HECHOS
JERARQUÍA
TABLA DE BUSQUEDA
TABLA DE BUSQUEDA
TABLA AGREGADA DE BUSQUEDA
TABLAS DE BÚSQUEDA También llamadas tablas de dimensiones o de lookup. Almacenan un conjunto de valores asociados a una propiedad o dimensión particular contenida en la tabla de hechos. En otras palabras, sirven para decodificar los valores de las columnas tipo clave de la tabla de hechos. Adicionalmente puede haber también tablas agregadas de búsqueda, en las que se agrupan los valores de una determinada dimensión en un nivel superior. De esta manera se crean las jerarquías.
helicr.com
- 13 -
3.- Data Warehousing 3.4 Modelo de datos (2/3)
Ejemplo de modelo multidimensional HECHOS INDICADORES
DIMENSIONES ATRIBUTOS
CLAVE
ID_CLIENTE
ID_PROVINCIA
ID_USO
F_CONSUMO
F_MARGEN
F_VALOR
0000001
13
1
12,04
6,53
34,22
0000002
41
1
15,06
2,11
11,91
0000003
17
2
9,66
7,65
21,93 B_CLIENTES
ID_PROVINCIA
ID_CCAA
DES_PROVINCIA
ID_USO
DES_USO
...
...
...
0
Sin uso
41
1
Sevilla
1
Doméstico
...
...
...
2
Comercial
LKP_PROVINCIA
ID_CCAA
DES_CCAA
1
Andalucía
...
...
En la tabla de hecho se almacenan los indicadores asociados a cada cliente, y una serie de atributos codificados. Para hallar el valor o descripción de dichos atributos sólo es necesario acceder a la tabla de búsqueda correspondiente.
LKP_USO
Tip 1: Nomenclatura Cuando el volumen de datos empieza a ser muy alto, comienza a crecer el número de objetos en el DW. Por eso es importante mantener una nomenclatura fija que identifique que tipo de campo o tabla es cada uno de ellos simplemente con ver su nombre. En este ejemplo hemos usado los prefijos ID_ (atributos), DES_ (descripciones), F_ (hechos), B_ (tablas base o tablas de hechos) y LKP_ (tablas de búsqueda)
helicr.com
- 14 -
3.- Data Warehousing 3.4 Modelo de datos (3/3) Si consideramos cada una de las dimensiones como un eje en un espacio de coordenadas, cada una de los registros (clientes) quedará fijado en un punto en dicho espacio. La dimensionalidad de éste espacio estará dada por el número de ejes o dimensiones que le asociemos.
PROVINCIA
Cada casilla del cubo (en este caso tenemos 3 dimensiones), en la que podemos encontrar una serie de indicadores o medidas, viene dada por una intersección entre coordenadas definidas por los valores de cada dimensión. De esta manera se plantea un nuevo tipo de análisis de los datos que se basa en ir cortando o „rebanando‟ el cubo a través de cada una de las dimensiones para hallar la información deseada. Este tipo de análisis se llama OLAP (Online Analytical Processing), y lo veremos con mas detalle en la presentación de formación nº 6, en la que se explica el funcionamiento de la herramienta Analysis Services de Microsoft para realizar este tipo de análisis.
TIEMPO
+
+
Por ejemplo:
AÑO < 2005
PROVINCIA = 17
=
USO < 2
helicr.com
AÑO < 2005 AND PROVINCIA = 17 AND USO < 2
- 15 -
3.- Data Warehousing 3.5 Explotación de los datos (1/2)
Reporting
Aplicaciones que permiten definir, administrar y distribuir los distintos formatos de informes dentro de una organización con un alto grado de automatización. Contienen funcionalidades como la entrega planificada de informes por correo electrónico o la programación de informes de alerta que se generan automáticamente en situaciones excepcionales. Ejemplos usados en CognoData: Microsoft Reporting Services, SPSS OLAP Hub
Aplicaciones que integran modelos estadísticos y matemáticos para realizar estudios y predicciones sobre los datos para obtener el conocimiento oculto en ellos. Implementan redes neuronales, clusterings, árboles de decisión, regresiones, etc. Data Mining
WWW
Ejemplos usados en CognoData: SAS, SPSS, Clementine y la PMI de CodnoData (Plataforma de Marketing intelligence)
Aplicaciones que presentan los resultados requeridos de forma gráfica e intuitiva en formato de páginas Web. Permiten montar plataformas de informes con una navegación integrada, establecimiento de permisos de acceso a los informes según los perfiles dentro de la empresa, seguimiento de objetivos, etc. Ejemplos usados en CognoData: Aplicaciones propias desarrolladas en lenguajes Web como JavaScript o VB Script, integradas con las herramientas de reporting.
Herramientas que automatizan el análisis OLAP y permiten la generación de cubos (agregaciones de datos) de manera intuitiva. OLAP
Ejemplos usados en CognoData: Microsoft Analysis Services helicr.com
- 16 -
3.- Data Warehousing 3.5 Explotación de los datos (2/2) Normalmente las aplicaciones que explotan la información del DW se centran en pequeñas particiones de datos. Las consultas sobre el sistema entero tendrían un rendimiento muy lento debido al gran volumen de datos y es por eso que se suele mantener información redundante en tablas agregadas que sirven a propósitos determinados normalmente por los usuarios de negocio.
Por ejemplo, nos podrían interesar sacar todos los meses un informe del valor medio de la cartera de clientes en cada una de las comunidades autónomas. Para ello, lo lógico podría ser mantener una tabla agregada con dicha información, que se actualizase cada mes. De esta manera no se consulta el DW y el rendimiento de la consulta es mucho mayor. ID_MES
ID_CCAA
F_VALOR
200601
01
36,45
200601
02
12,99
...
...
...
200602
01
6,88
...
...
...
El informe se surte de la tabla agregada correspondiente y no del DM.
helicr.com
- 17 -
AGENDA. Diseño de modelos de datos para Data Mining
1.
Introducción: ¿Qué es Data Mining?
2.
Bases de datos relacionales vs. DWH y Data Marts.
3.
Data Warehousing
4.
Modelo de datos para Marketing Intelligence
5.
Ejercicio práctico
helicr.com
- 18 -
4.- Modelo de datos para Marketing Intelligence 4.1 Introducción Vistas las generalidades de los DW, en las siguientes transparencias vamos a comentar cómo realizamos los desarrollos de la mayoría de los proyectos dentro de CognoData, aplicando algunas de las características de dichos sistemas, pero con un alto grado de especialización. Normalmente es necesario desarrollar Data Marts que contengan los indicadores y dimensiones definidos en la fase de análisis del proyecto. Posteriormente se alimentan los modelos predictivos y las plataformas de presentación de informes con esos datos, según corresponda.
Podemos dividir el desarrollo de los proyectos en varias fases, aunque a veces no se cumplen todas ellas: Fase de análisis Normalmente se realiza conjuntamente con el cliente, identificando el problema que se desea resolver, la información de que se dispone, qué indicadores relevantes se pueden obtener, etc.
Extracción de datos Extracción de los datos necesarios para construir los indicadores y dimensiones necesarios para el DM. Auditoria de dichos datos.
Diseño y construcción del DataMart Elaboración del DM con los datos obtenidos del cliente. Unificación de formatos, selección de los indicadores importantes y construcción de indicadores derivados que resulten de interés.
Pruebas Verificación de los procesos ETL desarrollados y de la validez de los indicadores.
Modelo predictivos Creación de las tablas y ficheros de entrada para los modelos predictivos. Obtención de nuevos indicadores mediante los modelos
Presentación de resultados Presentación final de los resultados del proyecto. Documentación y plataformas de informes vía WWW. Si es necesario, implantación de la plataforma en el cliente y formación a usuarios.
helicr.com
- 19 -
4.- Modelo de datos para Marketing Intelligence 4.2 Objetivos Los objetivos principales que se persiguen con el modelo de datos para Marketing Intelligence con el que trabajamos en CognoData son los siguientes: 1.
Debe servir para cualquier tipo de proyecto, independientemente del tipo de cliente. Proyectos de Banca Proyectos de Seguros Proyectos de Telecomunicaciones ...
2.
3.
Debe poder almacenar las distintas cargas de datos que se producen durante el desarrollo del proyecto. Carga inicial
Primera carga que se realiza en el proyecto, con la foto de toda la base de datos del cliente en un momento de tiempo determinado, además del histórico de que disponga el cliente.
Cargas incrementales
Modificaciones o incrementos que ha sufrido la BBDD del cliente desde el momento de la carga inicial hasta el momento actual (nuevos clientes, nuevos datos de facturación, etc).
Cargas parciales
Por determinadas circunstancias o problemas, el cliente sólo entrega una determinada partición de sus clientes
Debe organizar la información para poder realizar 2 tipos de análisis de los datos. Análisis Descriptivos Análisis Predictivos
helicr.com
- 20 -
4.- Modelo de datos para Marketing Intelligence 4.3 Proceso de un proyecto de Marketing Intelligence
BBDD MARKETING INTELLIGENCE
ANÁLISIS DESCRIPTIVO INFORMES Descripciones gráficas Estadística de los datos
Análisis
Histogramas
ETL NORMALIZACIÓN
Gráficos de burbujas OLAP
ETL
ETL Tablas extraídas del cliente
ANÁLISIS PREDICTIVO
DESNORMALIZACIÓN
Series temporales Construcción del target o función objetivo
Creación de ficheros de entrada para los modelos
helicr.com
Exportación PMI (PLATAFORMA DE MARKETING INTELLIGENCE)
- 21 -
4.- Modelo de datos para Marketing Intelligence 4.4 Distintos tipos de análisis En la transparencia anterior hemos visto que una vez desarrollado el DM de origen con la información extraída del cliente, se pueden realizar dos tipos de análisis. El análisis a realizar depende de la pregunta que se quiera contestar: Análisis Descriptivo
Análisis Predictivo
Intenta contestar a preguntas como por ejemplo:
¿En que mes del año se producen más bajas de clientes?
¿Que clientes van a comprar un determinado producto en los próximos 2 meses?
ES NECESARIO NORMALIZAR
ES NECESARIO DESNORMALIZAR
Para aplicar este tipo de análisis necesitamos que la información de entrada esté dividida y organizada según dependencias funcionales, por lo tanto cada campo de la BBDD debe almacenar un concepto distinto:
Para aplicar este tipo de análisis se necesita que la información se estructure en un mismo nivel, es decir, toda la información de entrada asociada a un cliente debe estar en un mismo registro:
Ejemplo: clientes de baja con sus fechas de baja.
Ejemplo: serie temporal de altas de productos. CLIENTE
F_BAJA
132003
25/11/2005
132007
25/06/2005
CLIENTE
F_ALTA_PROD_1
F_ALTA_PROD_2
F_ALTA_PROD_3
155219
30/02/2005
132003
25/11/2005
14/02/2006
17/03/2006
helicr.com
- 22 -
4.- Modelo de datos para Marketing Intelligence 4.5 Entidades (1/3) En principio, cada problema a resolver en un cliente es distinto, pero se pretende generar una “plantilla” de modelo que valga para cualquier proyecto y cliente, de manera que sólo haya que realizar una serie de modificaciones mínimas para adaptarlo en cada caso. Normalmente nos encontraremos siempre con las mismas entidades en todos los clientes (aunque pueden adoptar nombre distintos): CLIENTE
Cada uno de los sujetos a los cuales la empresa u organización suministra servicios. Normalmente es la unidad mínima sobre la que se suelen centrar los análisis.
CONTRATO
Es la entidad que representa el uso de un producto o servicio que la empresa u organización suministra al cliente.
PRODUCTO
Es el objeto del contrato. Un bien suministrado por la empresa al cliente. Nos lo podremos encontrar como una entidad independiente o bien como un atributo del contrato.
CONSUMO
Coste asociado al uso de un producto o servicio por parte del cliente en una determinada unidad de tiempo.
FACTURA
Indica el importe detallado, normalmente mensual, que el cliente abona a la empresa por el uso de sus servicios o productos.
CONTACTO
Se refiere a comunicaciones que el cliente hace con la empresa u organización. Normalmente pueden ser reclamaciones, incidencias, solicitudes de baja o solicitudes de información.
PROSPECT
Clientes potenciales de la empresa, es decir, aquellos sujetos de los que se tienen datos pero que, o bien no tienen contratos de los servicios suministrados por la empresa, o bien los tienen con alguna empresa de la competencia.
CAMPAÑA
Conjunto de acciones que se realizan contra un grupo de clientes en un periodo de tiempo determinado con el fin de obtener un beneficio para la empresa (fidelización, prevención de fugas, venta cruzada)
ACCIÓN DE MARKETING
Cada una de las distintas operaciones que componen una campaña.
helicr.com
- 23 -
4.- Modelo de datos para Marketing Intelligence 4.5 Entidades (2/3)
Ejemplo de diseño de BBDD para Marketing Intelligence Tabla de hechos
PROSPECT
Tabla de búsqueda AÑO
CONTACTO
ACCION MKT
CLIENTE
CCAA
MES
PROVINCIA
SEMANA
FACTURA
PRODUCTO SEGMENTO
CAMPAÑA
CONTRATO
CLIENTES
CONSUMO
MERCADO
Cada una de estas entidades representarán tablas de hechos en el modelo de datos. ANTIGUEDAD
MOSAIC
A la derecha se muestra un posible esquema de estrella simplificado que se podría obtener de la entidad cliente.
...
helicr.com
- 24 -
4.- Modelo de datos para Marketing Intelligence 4.5 Entidades (3/3)
Ejemplo de diseño de BBDD para Marketing Intelligence Tabla de hechos
PROSPECT
AÑO
Tabla de búsqueda MES
CONTACTO
CLIENTE
ACCION MKT
PRODUCTO
CAMPAÑA
CONTRATO
OFICINA
SEMANA
CANAL VENTA
FECHA ALTA
FACTURA
CONTRATOS
CONSUMO
TIPO
ESTADO
Otro ejemplo de lo que podría ser el esquema de la entidad contrato.
TARIFA
...
helicr.com
- 25 -
4.- Modelo de datos para Marketing Intelligence 4.6 Análisis Descriptivo Una vez construido el DataMart de origen, parte de los trabajos se enfocan en realizar un análisis descriptivo de los datos. Dicho análisis nos permitirá conocer la forma o distribución de las variables, así como detectar posibles errores, por ejemplo la presencia de valores fuera de rango y valores nulos. Para esto, lo normal es desarrollar una serie de tablas agregadas o auxiliares que nos faciliten dicho análisis. Descripciones gráficas de los datos:
135.000 € 120.000 € 105.000 € 90.000 €
- Gráficos de barras
75.000 € 60.000 € 45.000 €
- Gráficos de sectores
30.000 € 15.000 € 0€
- Histogramas
Segment 1 Segment 2 Segment 3 Segment 4 Segment 6 Segment 7
- Gráficos de burbujas
Estadística de los datos: - Medidas de posición (media, moda, mediana, percentiles) - Medidas de dispersión (varianza, desviación típica)
- Relación entre variables (Diagramas de dispersión y de correlación)
Análisis OLAP: - Generación de cubos para la simplificación de consultas y agregaciones (*) Puedes ver un pequeño resumen de técnicas para estos análisis aquí helicr.com
- 26 -
4.- Modelo de datos para Marketing Intelligence 4.7 Análisis Predictivo La otra visión del análisis se centra en la preparación de ficheros de entrada a los distintos modelos predictivos que se vayan a aplicar. Estos modelos se encuentran integrados en CognoData en lo que llamamos PMI (Plataforma de Marketing Intelligence), una serie de aplicaciones desarrolladas en varias plataformas y lenguajes que implementan árboles de decisión, redes neuronales, modelos de clustering, etc. Como input, estas aplicaciones reciben un fichero de datos con un formato determinado. Para preparar cada modelo a aplicar se siguen los siguientes pasos: Se crea una tabla auxiliar con los indicadores de entrada al modelo. Dicha tabla debe tener en cada registro la información asociada al objeto del análisis (normalmente el cliente), es decir, la clave primaria y todos los indicadores de entrada asociados. En este punto puede ser necesario realizar alguna transformación para pasar de filas a columnas (series temporales). En función del modelo que se vaya a ejecutar puede ser necesario calcular un indicador de target o función objetivo y añadirlo a la tabla como una columna más. Se exporta el fichero a texto.
Se le añade la cabecera PMI (hay varios procedimientos desarrollados que automatizan esta tarea). Se pasa el fichero a un consultor de modelos para que lo ejecute.
ETL
EXPORTACIÓN
DESNORMALIZACIÓN TABLA DE INDICADORES
FICHERO PMI
helicr.com
- 27 -
4.- Modelo de datos para Marketing Intelligence 4.8 Cuestiones técnicas (1/2) a) Tratamiento de valores nulos (missing values) Cuando en los datos de entrada a los análisis tengamos valores nulos en alguno de los campos, es recomendable sustituirlos por un carácter especial (por ejemplo, „**‟, „99999‟, „NaN‟), ya que las aplicaciones OLAP y los modelos predictivos no suelen reconocerlos y normalmente los omiten o producen resultados incorrectos. Hay ocasiones en las que incluso es necesario distinguir entre distintos tipos de valores nulos. Por ejemplo puede que interese diferenciar el caso en el que no se dispone del dato del caso en el que no aplica la variable.
b) Tratamiento de valores fuera de rango (outlayers) Puede ocurrir también que en determinadas variables aparezcan valores extremos, también llamados outlayers. Para determinados procesos es necesario tratar estos valores, ya que desvirtúan las estadísticas de la variable, como puedes ver en el siguiente ejemplo ID_CLIENTE 020303 123002 448522 114932 923881
NUM_PRODUCTOS 5 7 800 9 4
El valor 800 en el indicador del número de productos es un outlayer, ya que no es un valor lógico para esa variable sino un error de los datos. Es necesario tratarlo de algún modo ya que invalida la media de la distribución (que en este caso es 165, mientras que la mediana es 7).
Una ver identificados los valores extremos, tenemos varias opciones, aunque las más comunes son: Sustitución por la media Sustitución por la mediana Borrado de los registros afectados
helicr.com
- 28 -
4.- Modelo de datos para Marketing Intelligence 4.8 Cuestiones técnicas (2/2) c) Tabla de tiempo Por regla general, siempre se hace necesaria la definición de una tabla calendario en el DM. Esta tabla contendrá toda la información de fechas (años, meses, semanas, etc) y estará relacionada con cualquier campo de tipo fecha, evitando de tal manera el uso de funciones de fecha, que suelen dar bastantes problemas.
d) Volumetría También es recomendable, una vez se ha acabado el diseño del DM, realizar un estudio de volumetría, para prever el espacio de almacenamiento necesario en los servidores. Un ejemplo sencillo podría ser una tabla como la siguiente: Tabla
Regs. estimados
Bytes por registro
Bytes estimados
% crecimiento esperado
...
...
...
...
...
e) Creación de series temporales Para determinados análisis, como ya hemos visto, es necesario desnormalizar la información y generar series de eventos o series temporales asociadas a un registro. Normalmente esto se hace para ver el comportamiento en el tiempo de determinados eventos como por ejemplo las altas de productos que un cliente realiza o las llamadas que hace al servicio de atención telefónica. Se puede sacar mucha información de la frecuencia y la distribución de estos eventos a lo largo del tiempo. : CLIENTE
F_ALTA_PROD_1
F_ALTA_PROD_2
F_ALTA_PROD_3
132003
25/11/2005
14/02/2006
17/03/2006
Actualmente, ya hay desarrollados procesos en SQL que implementan estas transformaciones. Puedes preguntar a algún consultor de ETL si quieres más información. :
helicr.com
- 29 -
AGENDA. Diseño de modelos de datos para Data Mining
1.
Introducción: ¿Qué es Data Mining?
2.
Bases de datos relacionales vs. DWH y Data Marts.
3.
Data Warehousing
4.
Modelo de datos para Marketing Intelligence
5.
Ejercicio práctico
helicr.com
- 30 -
5.- Ejercicio práctico Puedes practicar las tareas que se han visto en esta presentación con los siguientes ejercicios..
a)
La empresa ALFA, presente en Madrid, Barcelona y Sevilla, necesita realizar un estudio de prevención de fugas, para lo que se va a servir principalmente de la información de las bajas de productos de sus clientes. Actualmente, tiene los datos de sus clientes en varios orígenes en función de la provincia: PROVINCIA
FORMATO
COMENTARIOS
Madrid
Excel
Datos a nivel de producto de los clientes de Madrid
Barcelona
Access
Sevilla
Fichero de texto
d)
Una vez importado el fichero, intenta insertar en la tabla ClientesS1, aquellos clientes de datos.txt que pertenezcan al segmento 1 (puedes usar una consulta del tipo INSERT INTO).
e)
Selecciona el número de clientes por cada segmento en una tabla (SELECT INTO), y exporta dicha tabla a una hoja excel. Abre la hoja de cálculo para ver el resultado.
f)
Borra todas las tablas de la base de datos.
helicr.com
- 31 -
helicr.com
- 32 -
Diseño de modelos de datos para Data Mining
[email protected]
helicr.com
- 33 -