Computers">
Nothing Special   »   [go: up one dir, main page]

Data Mining Con KNime

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 114

PROGRAMA

PROFESIONAL EN
DATA SCIENCE AND
BUSINESS ANALYTICS
Escuela Corporativa de
Análisis de Datos

(c) 2018 - DATO Institute


www.dato.com.py/institute
AGENDA

• Conceptos Generales
– Metodología CRISP-DM
– Técnicas de Clasificación, Agrupamiento y Asociación
– Métodos de entrenamiento y validación
• Tipos de modelos.
• Técnicas y algoritmos principales
– Árboles de clasificación (Gini Index / Gain Ratio),
– Redes Neuronales,
– Time Series y Regresion (LAG Techniques),
– Apriori,
– K-Means
• Métodos de Evaluación de modelos
– Matriz de Clasificación y Matriz de Contingencia,
– Curvas Lift y curvas ROC
• Caso práctico con KNime, para el desarrollo, evaluación e implementación de un
modelo predictivo, descriptivo y prescriptivo.
• Pre-procesamiento y Transformaciones.

(c) 2018 - DATO Institute


www.dato.com.py/institute
INTELIGENCIA DE NEGOCIOS

(c) 2018 - DATO Institute


www.dato.com.py/institute
INTELIGENCIA DE NEGOCIOS

• Conjunto de productos y servicios que


permiten a los usuarios finales acceder y
analizar de manera rápida y sencilla, la
información para la toma de decisiones de
negocio a nivel operativo, táctico y
estratégico.

(c) 2018 - DATO Institute


www.dato.com.py/institute
INTELIGENCIA DE NEGOCIOS

Madurez y Valor

Query
Standard Ad-Hoc Statistical Forecasting Predictive Optimisation
Drilldown Dashboard
Reports Reports Analysis Modelling
(OLAP) Qué pasa si Qué es lo mejor
Qué acciones se
Cuánto, cuándo, continúa la Qué sucederá o que puede
Qué sucede? Dónde está el necesitan? Por qué sucede?
donde? tendencia? podría suceder? suceder?
problema?

(c) 2018 - DATO Institute


www.dato.com.py/institute
INTELIGENCIA DE NEGOCIOS

Una arquitectura estándar y dónde encaja el Data


Mining

(c) 2018 - DATO Institute


www.dato.com.py/institute
DATA MINING

(c) 2018 - DATO Institute


www.dato.com.py/institute
DATA MINING

• Es el estudio y tratamiento de datos para


extraer conclusiones e informaciones
relevantes para aportar a las acciones
tácticas y estratégicas del negocio.

(c) 2018 - DATO Institute


www.dato.com.py/institute
DATA MINING

Por qué minar los datos


• La cantidad de datos recolectados y almacenados minuto a
minuto:
– Datos generados en la nube, redes sociales.
– Compras en negocios con diversos departamentos: e-commerce,
tiendas virtuales, etc.
– Transacciones bancarias / Tarjetas de Crédito.
– Machine generated data: sensores, web logs, etc.
• Frecuentemente hay información “oculta” en los datos que no
es directamente evidente a los ojos de un analista, o
simplemente es tal el volumen de información que nunca llega
a ser analizada.
• El GAP entre el volumen de información y el número de
analista crece exponencialmente.
• La presión competitiva es cada vez mayor, y los datos deben
ser entendidos como un activo que le permitirá a las
organizaciones proporcionar más y mejores servicios, predecir
eventos futuros, anticiparse a ellos, etc.
(c) 2018 - DATO Institute
www.dato.com.py/institute
DATA MINING

El ciclo de vida de los datos

Buscando
patrones

Relación
entre datos

(c) 2018 - DATO Institute


www.dato.com.py/institute
DATA MINING

Qué NO es Data Mining


• No es un producto de SW que se compra sino una
disciplina que debe ser dominada.
• No es una solución mágica ni mucho menos instantánea
a los problemas de negocio.
• No es un fin en sí mismo, sino un proceso.
• No es un dogma de fe, es una disciplina con sustento
matemático y estadístico.
• Algunos ejemplos de lo que NO es Data Mining:
– Buscar en una base de datos todas las personas mayores a
20 años que viven en Asunción y no han cursado estudios
universitarios.
– Determinar la bebida gaseosa más vendida en cada región.
– Armar el forecast de ventas para el próximo año fiscal
basado en políticas y reglas del negocio.

(c) 2018 - DATO Institute


www.dato.com.py/institute
DATA MINING

Qué SI es Data Mining


• Determinar la probabilidad de que un cliente solicite la
baja de su servicio en los próximos 3 meses.
• Determinar que clientes son más propensos a
responder afirmativamente a una determinada acción
de MKT con una oferta determinada.
• Antes de otorgar un préstamo, determinar la
probabilidad de que esa persona no pueda hacer frente
al pago del mismo en tiempo y forma, cayendo en mora.
• Segmentar nuestra cartera de clientes para encontrar
grupos de clientes con características de
comportamiento similares.
• Analizar el comportamiento de compras de nuestros
clientes para la confección de ofertas de productos.

(c) 2018 - DATO Institute


www.dato.com.py/institute
DATA MINING

Knowledge Discovery in Database

"KDD es el proceso no trivial de


identificar patrones en los datos, en
forma válida, novedosa, potencialmente
útil y entendible"

Fayyad et al.

(c) 2018 - DATO Institute


www.dato.com.py/institute
DATA MINING
Interpretación/
Evaluación

Data Mining

Conocimiento
Transformación
Patrones

Preprocesamiento
………
………
… … ... Datos
Trans-
Selección formados
Datos
Pre-
procesados

Datos Experto
Seleccio-
Datos nados

Proceso interactivo e iterativo que envuelve


varios pasos y con decisiones a ser tomadas
por el usuario
(c) 2018 - DATO Institute
www.dato.com.py/institute
DATA MINING

KDD - Esfuerzo vs. Importancia


60

50

40

30

20

10

0
Entendimiento del Preparación de los Data Mining Interpretación y
dominio Datos Consolidación del
Conocimiento

Esfuerzo Importancia

(c) 2018 - DATO Institute


www.dato.com.py/institute
DATA MINING

CRISP - DM
Método standard que ha sido desarrollado para ayudar en la realización
de proyectos de DM. Fue creado por un consorcio de compañías,
principalmente en Europa, y se llamó Cross-Industry Standard Process for
Data Mining, o CRISP-DM.

(c) 2018 - DATO Institute


www.dato.com.py/institute
CRISP - DM

(c) 2018 - DATO Institute


www.dato.com.py/institute
Ejercicio
Análisis de un caso de uso. Parte 1.
Desarrollo y debate de un análisis de requerimiento

Mi nombre es Juan Pérez y soy el Gte de Marketing de la Cía. de


Supermecado OnLine - SMO.

Como Cía. estamos buscando poder entender el consumo de nuestros


clientes con el fin de generar campañas efectivas de fidelización y
retención. En los últimos tiempos hemos detectado que vienen bajando
los pedidos on-line, por el cual queremos poder, además de entender las
causas, entender qué producto se dejará de comprar.

Para el efecto podemos proveer un conjunto de muestras con los datos


de ciertos clientes y sus compras en ciertas fechas.

Saludos cordialmente

Juan Pérez

(c) 2018 - DATO Institute


www.dato.com.py/institute
CRISP - DM

(c) 2018 - DATO Institute


www.dato.com.py/institute
CRISP - DM

(c) 2018 - DATO Institute


www.dato.com.py/institute
CRISP - DM

(c) 2018 - DATO Institute


www.dato.com.py/institute
CRISP - DM

(c) 2018 - DATO Institute


www.dato.com.py/institute
CRISP - DM

(c) 2018 - DATO Institute


www.dato.com.py/institute
CRISP – DM (roles)

(c) 2018 - DATO Institute


www.dato.com.py/institute
(c) 2018 - DATO Institute
www.dato.com.py/institute
KNIME - who are they?

• University of Konstanz
• Michael Berthold
– CEO & Spare time programmer

• Bernd Wiswedel
– KNIME‘s Chief Technology Officer

• And many others


(c) 2018 - DATO Institute
www.dato.com.py/institute
KNIME – what is it?

• Open Source Framework for visual


data analysis
• Developed at University of Konstanz
since 2006
• The #1 satisfying open source
analytics platforms
– According to 2012 Rexer survey

(c) 2018 - DATO Institute


www.dato.com.py/institute
KNIME – what is it?

(c) 2018 - DATO Institute


www.dato.com.py/institute
KNIME – Tool

(c) 2018 - DATO Institute


www.dato.com.py/institute
KNIME – CRISP DM

(c) 2018 - DATO Institute


www.dato.com.py/institute
METODOLOGÍAS

Fuente www.kdnuggets.com

(c) 2018 - DATO Institute


www.dato.com.py/institute
DM (Objetivos)

y = f(x)
Predictivo Descriptivo
Consiste en utilizar algunas variables o
Se centra en encontrar patrones
campos de la Base de Datos para predecir
interpretables por el ser humano, a partir de
valores desconocidos o futuros de otras
la descripción de los datos.
variables de interés.
(c) 2018 - DATO Institute
www.dato.com.py/institute
DM – Tareas vs Técnicas

Objetivos • Clasificación
• Asociación
• Agrupamiento
• Regresión
Tareas • Visualización

• Árboles de Decisión
Técnicas
• Redes Neurales
• Reglas de Inducción
• Reglas de Asociación
Algoritmos • Vecino más cercano
• Regresión
• Visualización

(c) 2018 - DATO Institute


www.dato.com.py/institute
DM – Técnicas de Visualización

(c) 2018 - DATO Institute


www.dato.com.py/institute
DM – Técnicas de Visualización

(c) 2018 - DATO Institute


www.dato.com.py/institute
Data Understanding
&
Data Preparation

(c) 2018 - DATO Institute


www.dato.com.py/institute
CASO DE ESTUDIO
Análisis de un caso de uso. Parte 1.
Desarrollo y debate de un análisis de requerimiento

Mi nombre es Juan Pérez y soy el Gte de Marketing de la Cía. de


Supermecado OnLine - SMO.

Como Cía. estamos buscando poder entender el consumo de nuestros


clientes con el fin de generar campañas efectivas de fidelización y
retención. En los últimos tiempos hemos detectado que vienen bajando
los pedidos on-line, por el cual queremos poder, además de entender las
causas, entender qué producto se dejará de comprar.

Para el efecto podemos proveer un conjunto de muestras con los datos


de ciertos clientes y sus compras en ciertas fechas.

Saludos cordialmente

Juan Pérez

(c) 2018 - DATO Institute


www.dato.com.py/institute
CASO DE ESTUDIO
CLIENTE
CABECERA DE VENTA
ID Cliente NUMBER(16) <pk>
ID Cabecera NUMBER(16) <pk> Estado Civil ID NUMBER(2) <fk>
ID Cliente NUMBER(16) <fk> Nombre VARCHAR2(256)
Fecha Hora de Compra DATE Apellido VARCHAR2(256)
Cantidad de Productos NUMBER(16) CI VARCHAR2(32)
0..*
Forma de Pago NUMBER(16) Sexo VARCHAR2(1)
Monto T otal NUMBER(24,9) Fecha Nacimiento DATE
Cajero ID NUMBER(16) Telefono VARCHAR2(64)
Celular VARCHAR2(64)
Lugar de Trabajo VARCHAR2(256)
Tel. de Oficina VARCHAR2(64)
Hijos NUMBER(2)

0..*
0..*
DETALLE DE VENTA
ID Detalle NUMBER(16) <pk>
ID Cabecera NUMBER(16) <fk>
ID Producto NUMBER(16)
Cantidad NUMBER(16) ESTADO CIVIL
Precio Unitario NUMBER(24,9)
Estado Civil ID NUMBER(2) <pk>
SubTotal NUMBER(24,9)
Descripcion VARCHAR2(256)
IVA NUMBER(24,9)
Total NUMBER(24,9)
Fecha Hora de Lectura DATE

(c) 2018 - DATO Institute


www.dato.com.py/institute
Técnicas de Limpieza

• Selección de columnas (también llamados


variables o atributos) para el análisis.
Preprocesamiento

• Eliminación de registros repetidos.


………
………
… … ...

Selección
Datos
Pre- • Operaciones básicas de eliminación de ruidos
procesados en los datos.
– Promedios
Datos
– Promedios acotados
Seleccio-
Datos nados – Técnica del vecino
– Logaritmo Natural

• Definición de estrategias en caso de campos


ausentes en los datos.
– Promedios
– Promedios acotados
– Técnica del vecino

• Consideración de secuencias temporales en


los datos.

(c) 2018 - DATO Institute


www.dato.com.py/institute
Práctica con

(c) 2018 - DATO Institute


www.dato.com.py/institute
Técnicas de Transformación

• Búsqueda de características útiles en los datos teniendo en cuenta los objetivos


a los que se enfocan. Ej. convertir una columna fecha del tipo 'dd/mm/yyyy hh24:mi' en
Dia_De_La_Semana, Mes, Hora. Discretizar valores numéricos, por ejemplo, edad entre 13-
18 es 'menor_de_edad', entre 19-25 es 'nivel_post_secundario', ...
– Técnicas Bind

• Búsquedas de representaciones
categóricas para los datos. Ej. agrupar
Transformación los nombres de productos por categorías
en un supermercado, y no por nombre
real, en fin lo que interesa es saber si el
Preprocesamiento cliente consumió pañal y cerveza y no
………
exactamente la marca para encontrar una
………
… … ... Datos relación inicial.
Trans- – Diccionarios
Selección formados
Datos – Técnicas de Similitud
Pre-
procesados

Datos
Seleccio-
Datos nados • Utilización de métodos de transformación con vista a la
reducción del número efectivo de variables en
consideración.
– Técnicas de Normalización
– PCA (Principal Component Analysis)
(c) 2018 - DATO Institute
www.dato.com.py/institute
Práctica con

(c) 2018 - DATO Institute


www.dato.com.py/institute
Modelos de
Clasificación

(c) 2018 - DATO Institute


www.dato.com.py/institute
Ejercicio

(c) 2018 - DATO Institute


www.dato.com.py/institute
Ejercicio

(c) 2018 - DATO Institute


www.dato.com.py/institute
Ejercicio

X1

<= 5 >5

X1 Z1
<= 3 >3

X2 Z2
<= 4 >4

Z1 Z2

(c) 2018 - DATO Institute


www.dato.com.py/institute
Ejercicio

(c) 2018 - DATO Institute


www.dato.com.py/institute
Práctica con

(c) 2018 - DATO Institute


www.dato.com.py/institute
Modelos Predictivos

(c) 2018 - DATO Institute


www.dato.com.py/institute
Procesos del modelado predictivo

(c) 2018 - DATO Institute


www.dato.com.py/institute
Procesos del modelado predictivo

(c) 2018 - DATO Institute


www.dato.com.py/institute
Procesos del modelado predictivo

(c) 2018 - DATO Institute


www.dato.com.py/institute
Resumen de Modelado

(c) 2018 - DATO Institute


www.dato.com.py/institute
Técnicas de Clasificación

• Árboles de decisión: estructuras de forma de árbol que representan conjuntos de


decisiones. Estas decisiones generan reglas para la clasificación de un conjunto de
datos. Métodos específicos de árboles de decisión incluyen Árboles de
Clasificación y Regresión.

(c) 2018 - DATO Institute


www.dato.com.py/institute
Árbol de Decisión

Formalmente un árbol de decisión es un grafo acíclico dirigido en el cual cada


nodo es un nodo de decisión con dos o mas sucesores, o un nodo hoja. El nodo de
decisión contiene una pregunta sobre un atributo concreto (con un hijo por cada
posible respuesta) y, el nodo hoja se refiere a una decisión y es etiquetado con
una clase.

Las diferencias principales entre los distintos algoritmos de construcción de


árboles de decisión radican en las estrategias de poda y en la regla adoptada para
particionar nodos.

(c) 2018 - DATO Institute


www.dato.com.py/institute
Árbol de Decisión

Reglas adoptadas para particionar nodos


J48.J48 y J48.Part
- Entropía: Dado una distribución de probabilidad P = (p1, p2, ..., pn), se define
la Entropía de P como la información que conlleva a dicha distribución, tal
que:
I(P) = -(p1*log2(p1) + p2*log2(p2) + … + pn*log2(pn))
- Info(T): Si un conjunto T de registros es particionado en un conjunto disjunto
de clases C1, C2, ..., Ck sobre la base de los valores del atributo objetivo,
entonces la información necesitada para identificar las clases de un elemento
de T es Info(T) = I(P), donde P es la distribución de probabilidad de las
particiones (C1, C2, ..., Ck):
P = (|C1|/|T|, |C2|/|T|, ..., |Cn|/|T| )
- Info(X, T): Si primeramente se particiona T en base a los valores de los
atributos no objetivos X en conjuntos T1, T2, ..., Tn entonces la información
necesitada para identificar la clase de un elemento de T está definida como el
promedio de la información necesitada para identificar las clases de un
elemento Ti:
Info(X, T) = i=1..n (|Ti| / |T|) * Info(Ti)

(c) 2018 - DATO Institute


www.dato.com.py/institute
Árbol de Decisión

Reglas adoptadas para particionar nodos

J48.J48 y J48.Part
Dado un conjunto de ejemplo sobre un juego de golf, con cuatro atributos no
objetivos (X1, X2, X3, X4) y una clase (Y) definida.
Info(T) = I(P) = I(p1, p2) = I(|C1|/|T|, |C2|/|T|) = I(9/14, 5/14) =
= - ((9/14)*log2(9/14) + (5/14)*log2(5/14)) = 0.94
Info(perspectiva, T) = 5/14*I(2/5, 3/5) + 4/14*I(4/4, 0) +
+ 5/14*I(3/5, 2/5) = 0.694

(c) 2018 - DATO Institute


www.dato.com.py/institute
Árbol de Decisión

Reglas adoptadas para particionar nodos

J48.J48 y J48.Part
- Ganancia: La ganancia está definida como la diferencia entre la
información necesitada para identificar un elemento de T y la
información necesitada para identificar un elemento de T después de
la obtención del valor del atributo X:
Gain(X,T) = Info(T) – Info(X, T)
Por ejemplo,
Gain(perspectiva,T) = Info(T) – Info(perspectiva, T) =
= 0.94 – 0.694 = 0.246
Gain(viento,T) = Info(T) – Info(viento, T) =
= 0.94 - 0.892 = 0.048

(c) 2018 - DATO Institute


www.dato.com.py/institute
Árbol de Decisión

Reglas adoptadas para particionar nodos

J48.J48 y J48.Part
- Radio de Ganancia: La noción de ganancia introduce tendencias
primitivas a favor de los atributos que tiene un gran número de valores.
Para compensar esto, el J48 hace uso de la definición de radio de
ganancia, tal que:
GainRatio(D, T) = Gain(D,T) / SplitInfo(D, T)
donde la función SplitInfo(D, T) es la información necesaria para dividir el
conjunto T sobre la base del valor del atributo objetivo D. Así, SplitInfo(D,
T) es:
I(|T1|/|T|, |T2|/|T|, ..., |Tm|/|T| )
donde {T1, T2, ..., Tm} es la partición de T inducida por el valor de D.
Por ejemplo,
GainRatio(perspectiva,T) = 0.246 / I(5/14, 4/14, 5/14) =
= 0.246 / 1.577 = 0.156
GainRatio(viento,T) = 0.048 / I(6/14, 8/14) =
= 0.048 / 0.985 = 0.049

(c) 2018 - DATO Institute


www.dato.com.py/institute
Árbol de Decisión

Reglas adoptadas para particionar nodos

CART-Gini
- Impureza: Se basa en una función para medir la impureza del nodo/s del
árbol generado, definida como:
i(t) = 1 - i=1..n (pi)2
donde pi es la probabilidad de ocurrencia de una clase dada. Cuando un
atributo es examinado, la impureza promedio del nodo/s descendiente
implicado es sustraído de la función i(t) y el atributo que resulta de entre
las impurezas mínimas es seleccionado.
Por ejemplo,
i(perspectiva = nublado) = 1 – (4/4)2 = 0 (mínima impureza)
i(perspectiva != nublado) = 1 – [(5/10)2 + (5/10)2)] = 0.5
i(perspectiva = lluvioso) = 1 – [(2/5)2 + (3/5)2)] = 0.48
i(perspectiva = soleado) = 1 – [(3/5)2 + (2/5)2)] = 0.48
i(temperatura > 73) = 1 – [(2/6)2 + (4/6)2)] = 0.44
i(viento = no) = 1 – [(2/8)2 + (6/8)2)] = 0.375
(c) 2018 - DATO Institute
www.dato.com.py/institute
Práctica con

(c) 2018 - DATO Institute


www.dato.com.py/institute
Técnicas de Clasificación
Las técnicas más comúnmente usadas en Data Mining para cumplir con algunas de
las tareas ya descritas son:

• Redes neuronales artificiales: modelos predecibles no-lineales que aprenden a


través del entrenamiento y semejan la estructura de una red neuronal biológica.
Con frecuencia son usadas bajo tareas de Clasificación.

0.4
Valores aj
0.3

0.8234
0.15

Atributo Valor Valnor 0.79612


Edad 20 0.4 0.25 -0.24
0.71315
No. Rec. 3 0.3
Repar 2 0.15
Clima D 0.25 0.33
Cochera 2 0.33 0.937 $2,255,000
0.5824
Terreno 400 0.4
Construc. 350 0.35
0.4 0.6136
Sector3 0.65
1.23
0.35 -1.325

0.65
Pesos Wij
(c) 2018 - DATO Institute
www.dato.com.py/institute
Técnicas de Clasificación

• Regresión: consiste en dado un


conjunto de puntos encontrar
una función que aproxime los
puntos.

(c) 2018 - DATO Institute


www.dato.com.py/institute
Práctica con

(c) 2018 - DATO Institute


www.dato.com.py/institute
Técnicas de Clasificación

Técnicas de Entrenamientos y Evaluación.


• Igual conjunto de entrenamiento y prueba.
• Dividir el conjunto (en un porcentaje definido) para
entrenamiento y para prueba.
• Diferentes conjuntos para entrenamiento y prueba.
• Usar Validaciones Cruzadas. Uso de los Folds.

Validaciones de Modelos y Patrones


• Validaciones Estadísticas.
• Validaciones mediante el uso de SQL.
• Matriz de Clasificación o de Confusión y Medidas de
Validación.
• Lift Chart
• ROC Chart
• Validaciones de Reglas mediante Medidas de la Literatura.
Uso de Matriz de Contingencia.
(c) 2018 - DATO Institute
www.dato.com.py/institute
Matriz de Clasificación

(c) 2018 - DATO Institute


www.dato.com.py/institute
Matriz de Clasificación

Otra manera de ver la Matriz de Confusión es la mostrada en el gráfico más


abajo. En ella se definen cuatro valores o categorías en la matriz. TP: True
Positive (son para la clase estudiada los valores que son predichos en
forma correcta). FN: False Negative (valores de la clase estudiada que
clasifican hacia otra clase). FP: False Positive (valores de otras clases que
clasifican por la clase estudiada). TN: True Negative (valores de otras clases
que clasifican para sus respectivas clases)

(c) 2018 - DATO Institute


www.dato.com.py/institute
Lift Chart

• Es una curva que permite medir la ganancia del


modelo con respecto al centil poblacional y la
probabilidad de acierto de un elemento de clase

(c) 2018 - DATO Institute


www.dato.com.py/institute
Lift Chart

(c) 2018 - DATO Institute


www.dato.com.py/institute
Lift Chart

Lift Yes
1
0.9
0.8
0.7
0.6
0.5
0.4
0.3
0.2
0.1
0
(c) 2018 - DATO Institute 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
www.dato.com.py/institute
Lift Chart

Lift No
1
0.9
0.8
0.7
0.6
0.5
0.4
0.3
0.2
0.1
(c) 2018 - DATO Institute 0
www.dato.com.py/institute 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
ROC Chart

(c) 2018 - DATO Institute


www.dato.com.py/institute
Práctica con

(c) 2018 - DATO Institute


www.dato.com.py/institute
Matriz de Contigencia

Dado una regla R: B → H, y un ejemplo Ti = (xi, yi) con sus respectivas clases
yi, se puede aplicar la regla al ejemplo y comparar el resultado previsto en
H con la verdadera clase yi del ejemplo. De dicha comparación surge la
matriz denominada “contingencia”.

(c) 2018 - DATO Institute


www.dato.com.py/institute
Matriz de Contigencia

B H

(c) 2018 - DATO Institute


www.dato.com.py/institute
Deployment

(c) 2018 - DATO Institute


www.dato.com.py/institute
Algunos Modelos

(c) 2018 - DATO Institute


www.dato.com.py/institute
Integración al Ciclo de Vida del Cliente

• Market Basket Analysis


• Cross Sell and Up Sell

• Customer Lifetime Value (CLV)


• Customer Potential
• Campaign/Promotion Effectiveness
Analysis

• Customer Segmentation • Customer Loyalty Analysis


• Churn Prediction
• Product Pricing • Customer Lifetime Value (CLV)
• Invetory Control • Customer Segmentation
• Demand Forecasting • Customer Potential
• Target Marketing/Response Modeling (c) 2018 - DATO Institute
www.dato.com.py/institute
Integración al Ciclo de Vida del Producto

(c) 2018 - DATO Institute


www.dato.com.py/institute
Integración 360

(c) 2018 - DATO Institute


www.dato.com.py/institute
Práctica con

(c) 2018 - DATO Institute


www.dato.com.py/institute
Modelos de
Asociación

(c) 2018 - DATO Institute


www.dato.com.py/institute
Conjunto de ejemplos para una tarea de
Asociación o Agrupación

Dado un conjunto de datos T con n ejemplos y cada ejemplo con m


atributos, tal como se muestra en la figura, se define una linea i como el i-
ésimo ejemplo (i= 1, 2, ...,n) y una entrada xij como el valor del j-ésimo (j=
1, 2, ...,m) atributo Xj del ejemplo i. Así, los ejemplos se definen como Ti=
(xi1, xi2, ..., xim) = (xi).

(c) 2018 - DATO Institute


www.dato.com.py/institute
Algoritmos utilizados - Asociación

• A priori [Agrawal]

1) Identificación de los conjuntos frecuentes (de ítems) con


suporte >= MinSup
2) Construcción de reglas a partir de esos conjuntos con
confianza >= MinConf.

Conjuntos frecuentes (Large itemsets)


– Todos los subconjuntos de cada transacción son candidatos (en el peor
de los casos )

(c) 2018 - DATO Institute


www.dato.com.py/institute
Algoritmos utilizados - Asociación

(c) 2018 - DATO Institute


www.dato.com.py/institute
Algoritmos utilizados - Asociación

(c) 2018 - DATO Institute


www.dato.com.py/institute
Algoritmos utilizados - Asociación

(c) 2018 - DATO Institute


www.dato.com.py/institute
Algoritmos utilizados - Asociación

(c) 2018 - DATO Institute


www.dato.com.py/institute
Práctica con

(c) 2018 - DATO Institute


www.dato.com.py/institute
Modelos de
Segmentación

(c) 2018 - DATO Institute


www.dato.com.py/institute
Algoritmos utilizados - Agrupación

• Kmeans [J.B. MacQueen, 1967]

1.) Determinar el número de clusters (classes) k


2.) Seleccionar k centroides iniciales
3.) Determinar las fronteras de cada cluster
4.) Asignar cada registro al cluster cuyo
centroide esté más cercano a ese registro
5.) Repetir los pasos 3 y 4 hasta que las fronteras de
los clusters no cambien significativamente

(c) 2018 - DATO Institute


www.dato.com.py/institute
Algoritmos utilizados - Agrupación

X2

X1

Datos iniciales. Número de clusters posibles K=3


(c) 2018 - DATO Institute
www.dato.com.py/institute
Algoritmos utilizados - Agrupación

X2

centroide 1 centroide 3

centroide 2

X1

Centroides iniciales, uno por cada cluster


(c) 2018 - DATO Institute
www.dato.com.py/institute
Algoritmos utilizados - Agrupación

X2 Cluster 1
Cluster 3

centroide 1 centroide 3

centroide 2

Cluster 2
X1

Asignar cada registro al centroide más cercano


(c) 2018 - DATO Institute
www.dato.com.py/institute
Algoritmos utilizados - Agrupación

X2

X1

Calcular las fronteras de cada cluster: trazar una recta entre


cada par de centroides y trazar una perpendicular
(c) 2018 - DATO Institute a la recta
equidistance de ambos centroides
www.dato.com.py/institute
Algoritmos utilizados - Agrupación

X2

X1

Calcular las fronteras de cada cluster


(c) 2018 - DATO Institute
www.dato.com.py/institute
Algoritmos utilizados - Agrupación

X2 Cluster 1

Cluster 3
Cluster 2

X1

Fronteras de los clusters


(c) 2018 - DATO Institute
www.dato.com.py/institute
Algoritmos utilizados - Agrupación

X2 Cluster 1
Cluster 3

Cluster 2
X1

Asignar cada registros a clusters . El registro R cambió


del cluster 2 al cluster 1 (c) 2018 - DATO Institute
www.dato.com.py/institute
Algoritmos utilizados - Agrupación

X2 Cluster 1
Cluster 3

Cluster 2
X1

Recalcular los centroides: promedio


en cada eje x1, x2 (c) 2018 - DATO Institute
www.dato.com.py/institute
Algoritmos utilizados - Agrupación

X2 Cluster 1
Cluster 3

Cluster 2
X1

Recalcular las fronteras de los clusters


El registro R está ahora en el(c)cluster
2018 - 2
DATO Institute
www.dato.com.py/institute
Práctica con

(c) 2018 - DATO Institute


www.dato.com.py/institute
Lenguajes de
Programación para
DATA SCIENCE

(c) 2018 - DATO Institute


www.dato.com.py/institute
Lenguajes Populares

https://www.kdnuggets.com/
(c) 2018 - DATO Institute
www.dato.com.py/institute
(c) 2018 - DATO Institute
www.dato.com.py/institute
Lenguaje Python
para Data Science

(c) 2018 - DATO Institute


www.dato.com.py/institute
Características
• Lenguaje interpretado
o Flexibilidad y legibilidad del código

• Multiplataforma
o Windows
o Linux
o Mac OS

• Dinámico
o Puede ejecutarse de a una línea a la vez

• Compilado
o Empaquetar códigos para ciertas plataformas o arquitecturas

• Licencia de Código Abierto

• Versiones actuales 2.7.x y 3.x


o Futura migración completa a la versión 3.x

(c) 2018 - DATO Institute


www.dato.com.py/institute
Entornos de Desarrollo

IDLE GUI

(c) 2018 - DATO Institute


www.dato.com.py/institute
Librerías para DM/ML
• Computación Científica/ML
• Soporte para vectores y matrices
• Funciones matemáticas de alto nivel

• Manipulación y análisis de Datos


• Estructuras de datos. DataFrames

• Ecosistema de softwares Open - Source


• Funciones matemáticas de optimización
• Procesamiento de señales e imágenes

• Biblioteca de paquetes para ML


• Interoperación con NumPy y SciPy
• K-Means, Clasificación, Regresión
(c) 2018 - DATO Institute
www.dato.com.py/institute
Librerías Gráficas

WEB Basado en Matplotlib

(c) 2018 - DATO Institute


www.dato.com.py/institute
Integración con Plataformas

(c) 2018 - DATO Institute


www.dato.com.py/institute
Integración con Plataformas

(c) 2018 - DATO Institute


www.dato.com.py/institute
Integración con Plataformas

(c) 2018 - DATO Institute


www.dato.com.py/institute
Integración con Plataformas

(c) 2018 - DATO Institute


www.dato.com.py/institute
Práctica con

(c) 2018 - DATO Institute


www.dato.com.py/institute

También podría gustarte