Está en la página 1de 37

Métodos de segmentación de

datos con Python

Docente: César Quezada


Bienvenidos:
Soy César Quezada

Ingeniero Estadístico de la Universidad Nacional de Ingeniería (UNI).


Consultor especialista en Data Science con más de 12 años de
experiencia en proyectos analíticos.

Actualmente trabajo como Líder de Inteligencia Comercial en DMC.


Objetivo del curso
1. Conocer los métodos supervisados y su relación con el machine
learning.
2. Conocer el proceso para utilizar un algoritmo de segmentación.
3. Seleccionar el mejor algoritmo que permita la mejor
segmentación utilizando métricas de evaluación.
Estructura del curso

01
Segmentación y su relación con el
02
Clustering
03
Algoritmo k – means
Machine learning
● Procedimiento
● ¿Qué es el Machine Learning? ● Definición de cluster
● ¿Cómo seleccionar el número de
● Herramientas del machine learning ● Características de los cluster
● clusters? Elbow method
● ¿Qué podemos modelar? :¿Qué métodos de clasificación
● Criterios de inercia y silueta
existen?

04
Algoritmo DB SCAN
05
Algoritmo JERÁRQUICO
06
CASO PRACTICO:
Segmentación de clientes
● Diferenciación con el k – means ● Procedimiento de generación ● Entendiendo el problema de
● ¿Qué logra el algoritmo DB ● Método aglomerativo. negocio.
SCAN? Parámetros principales Dendogramas ● Preprocesamiento de datos.
● Ventajas y desventajas ● Generación de clusters
● Comparación de algoritmos
● Próximos pasos
01
Segmentación y su
relación con el Machine
Learning
¿Qué es Machine Learning?
La ciencia de datos es un campo multidisciplinario que utiliza un conjunto
de herramientas para extraer conocimiento de los datos y respaldar la toma
de decisiones.
¿Qué podemos modelar?
¿Qué podemos modelar?
02
Clustering
Breve descripción del tema
Clustering
También conocido como segmentación, se refiere a
dividir un conjunto de datos en grupos o clusters (no
definidos previamente) de tal forma que cada grupo
contenga muestras similares entre sí, básandose en
alguna medida de similitud entre los miembros de cada
grupo.
Clustering
Características
Dataset de Entrenamiento
Aprendizaje Predictores (Features)
no supervisado x1 x2 ….. xp
1

n muestras de
entrenamiento o Muestr
as
instancias

Datos Transformados y
Agrupados en Clústeres

n
No tenemos etiquetas en
los datos (Y)
p
predictores
¿Qué métodos de clasificación
existen?
03
Algoritmo
k - means
El objetivo es agrupar las observaciones
de un dataset en un número k de
clusters .
Procedimiento

Paso 4
Paso 3 Cada registro se asignará a un
centroide en la iteración final
Paso 2 Para cada iteración, o hasta formando los cluster.
convergencia:
Paso 1 ● Generación aleatoria ● Calcula la distancia de
de k centroides cada muestra a cada
● Seleccionar el número de centroide.
cluster k (hiperparámetro) ● Asigna cada muestra al
centroide mas cercano.
● Recalcula los centroides.
● Chequea convergencia.
¿Cómo seleccionar el número
de clusters?

El elbow method consiste en medir la suma


promedio de los cuadrados de las
distancias de las observaciones a los
centroides. El objerivo es minimizar la
suma total, tratando de escoger el mínimo
número de clusters donde esta suma sea
minimizada.
Selección de clusters

Criterio de Criterio de la
inercia silueta
Selección de clusters

CRITERIO DE INERCIA

Como se ha mencionado , se quiere obtener clases lo más homogéneas posibles y


que estén suficientemente separadas. Este objetivo se puede concretar
numéricamente a partir de la siguiente propiedad :

Supóngase que se está en presencia de una partición P=( 𝐶1 , 𝐶2 , 𝐶3,…… 𝐶𝑘) de


Ω , donde 𝑔1, 𝑔2, 𝑔3, 𝑔4,……., 𝑔𝑘 son los centros de gravedad de las clases:

g es el centro de gravedad total:


:
Selección de clusters
CRITERIO DE SILUETA
Podemos definir el coeficiente de la silueta como:

✔ a(x)= distancia promedio de x a todos los demás puntos en el mismo cluster.


✔ b(x)= distancia promedio de x a todos los demás puntos en el cluster más cercano.

Dado esto, se dice que el coeficiente de la silueta para x está dado por:

donde el valor de s(x) puede variar entre -1 y 1


✔ -1 si es un mal agrupamiento
✔ 0 si es indiferente
✔ 1 si es un buen agrupamiento
:
04
Algoritmo
DB SCAN
Agrupamiento basado
en densidad
ALGORITMO DB SCAN
Agrupamiento basado en Densidad

✔ Los métodos basados en la distancia tienden a funcionar bien con clusters esféricos y mal con clusters con
otras formas.

✔ Para solucionar este problema otros métodos han desarrollado el concepto de densidad, el cual permite
descubrir clusters con formas arbitrarias (conjunto de datos que determinan un volumen).

✔ La idea es hacer crecer un cluster siempre cuando la densidad en el entorno del objeto exceda de un umbral.
CARACTERÍSTICAS
Agrupamiento basado en Densidad

✔ Asume que la densidad alrededor de los datos normales es similar a la densidad alrededor de sus vecinos.

✔ La densidad alrededor de los valores atípicos es considerablemente diferente a la densidad alrededor de sus
vecinos.

✔ Hace crecer regiones con suficiente alta densidad en grupos

✔ Estos grupos están separados por regiones de baja densidad de objetos (ruidos)
¿Cómo funciona?
Agrupamiento basado en Densidad
¿Qué es lo que logra?
Agrupamiento basado en Densidad

Número estimado de cluster: 2 Número estimado de cluster: 4


CARACTERÍSTICAS
Agrupamiento basado en Densidad

✔ El algoritmo requiere dos parámetros principales:

✔ - El parámetro epsilon (eps), define el radio de vecindad alrededor de un punto.


✔ - El número mínimo de puntos (MinPts) de vecinos en un radio eps.

✔ Cualquier punto en el set de datos, con un número mayor o igual que MinPts se considera un punto núcleo.

✔ Un punto se considera punto frontera si tiene menos de MinPts vecinos pero el es vecino de un punto núcleo.

✔ Un punto que no es ni núcleo ni frontera, se considera un punto de ruido o valor atípico (outlier).
ALGORITMO DB SCAN

Agrupamiento basado en Densidad

Ventajas Desventajas


Ventajas
No necesita asumir un número ● Asume densidades similares en
fijo de clusters. todos los clusters.

● No depende de las condiciones ● Puede tener problemas al


de inicio. separar clusters.
ALGORITMO DB SCAN

Agrupamiento basado en Densidad

✔ La imagen de la izquierda muestra un método de agrupación más tradicional, como K-Means, que no tiene en cuenta la
multidimensionalidad.

✔ La imagen de la derecha muestra cómo DBSCAN puede contorsionar los datos en diferentes formas y dimensiones para
encontrar grupos similares.
05
Algoritmo
JERÁRQUICO
Busca agrupar los datos anidándolos en
jerarquías con forma de un árbol
Procedimiento

Paso 4
Paso 3 El resultado final es un árbol,
que se puede trazar como un
Paso 2 Se repite el procedimiento hasta dendrograma .
que todas las observaciones
Paso 1 ● Fusionar las sean miembros de un grupo
observaciones en grande.
● Calcule la disimilitud por grupos
pares entre cada
observación en el
conjunto de datos
Método aglomerativo

También se lo conoce como aglomeración aglomerativa jerárquica (HAC) o AGNES (acrónimo de aglomeración de anidación).

En este método, cada observación se asigna a su propio clúster. Luego, se calcula la similitud (o distancia) entre cada uno de los clusters
y los dos clusters más similares se fusionan en uno. Finalmente, los pasos 2 y 3 se repiten hasta que solo quede un grupo.
Método aglomerativo
Dendogramas

2 cluster

4 cluster
ALGORITMO JERÁRQUICO

Ventajas Ventajas Desventajas

● El número optimo de clusters ● No es conveniente para grandes


se puede obtener por el mismo conjuntos de datos.
modelo.
● El algoritmo no puede deshacer
● Es fácil de implementar. los pasos anteriores.

● El dendograma es muy útil ● Los tiempos de ejecución


para entender los datos. pueden ser largos.
06
CASO PRACTICO
Segmentación de clientes
Gracias

También podría gustarte