Вы находитесь на странице: 1из 48

Introducción al Business Analytics

David Masip Rodó


Business  Analy0cs  
Definición  
§   “La  constante  e  itera-va  exploración  y  estudio  del  rendimiento  
pasado  del  negocio,  con  el  obje-vo  de  ganar  conocimiento  ú-l  para  la  
consecución  de  los  obje-vos  estratégicos  de  la  organización.”  

§ Aplicación  de  los  campos:  


§ Estadís-ca  
§ Inteligencia  ar-ficial  

 
Aprendizaje  supervisado  vs  
aprendizaje  no  supervisado  
Modelos  descrip0vos  
§   Dado  un  conjunto  de  variables  sobre  unos  datos  de  una  
empresa,  pretendemos  buscar  en  ellos  caracterís-cas  
relevantes  o  segmentar  los  datos  en  grupos  (o  clustering).    

Modelos  predic0vos  
§     Dado  un  conjunto  de  variables  sobre  unos  datos,  
pretendemos  aquí  predecir  una  variable  especial  (e-queta)  
que  depende  de  alguna  forma  del  conjunto  de  datos  
iniciales.  El  obje-vo  es  “aprender”  un  modelo  que  nos  
permita  adivinar  la  e-queta  a  par-r  de  las  relaciones  
encontradas  en  el  pasado  
Clustering  jerárquico  
Se  agrupan  sucesivamente  los  datos  uniendo  progresivamente  
los  ejemplos  en  clusters,  que  a  su  vez  se  unen  entre  si  hasta  
definir  dos  subconjuntos  

 
Clustering  no  jerárquico  
El  algoritmo  k-­‐means  
§ Proceso  itera-vo  que  permite  encontrar  un  determinado  
número  de  subconjuntos  de  datos  que  minimizan  la  suma  
de  distancias  a  sus  centroides  

 
Análisis  de  Componentes  Principales  
Extracción  de  caracterís0cas  
§   Obtener  un  menor  número  de  atributos  que  representan  
globalmente  la  información  presente  en  el  conjunto  de  
datos  original  
 
 
Clustering jerárquico

Maria Pujol Jover


Índice

▪ Objetivo
▪ Algoritmo
▪ Ejemplo
▪ Conclusión
Objetivo
Clústering jerárquico
▪ Formar k agrupaciones de observaciones maximizando
tanto la similitud intra-grupos como la diferencia inter-
grupos.
▪ La distancia entre las observaciones permitirá realizar
grupos homogéneos pero heterogéneos entre sí.
▪ La media de las variables que conforman cada clúster
nos ayudará a la interpretación de cada grupo.
▪ Dibujar los resultados nos determinará el número de
clústeres a escoger.
Algoritmo
Preparación de los datos
▪ Antes de aplicar el algoritmo:
- Debemos eliminar los valores perdidos del conjunto
de datos original.
- Hemos de normalizar las variables en caso que las
unidades de medida sean distintas.
▪ De esta forma evitaremos distorsiones en la formación
de los grupos y eliminaremos los efectos producidos al
emplear distintas unidades de medida.
Algoritmo
Elección de la función de disimilitud o distancia
▪Existen muchos tipos. Las que R nos ofrece son, entre
otras:
- Distancia euclídea:
Algoritmo
Elección de la función de disimilitud o distancia
▪Existen muchos tipos. Las que R nos ofrece son, entre
otras:
- Distancia euclídea al cuadrado:
Algoritmo
Elección de la función de disimilitud o distancia
▪Existen muchos tipos. Las que R nos ofrece son, entre
otras:
- Distancia Manhattan o City-Block:
Algoritmo
Elección de la función de disimilitud o distancia
▪Existen muchos tipos. Las que R nos ofrece son, entre
otras:
- Distancia euclídea:

- Distancia euclídea al cuadrado:

- Distancia Manhattan o City-Block:

▪La más usual es la distancia euclídea.


Algoritmo
Elección del tipo de algoritmo de agrupación
▪La mayor parte de los algoritmos que podemos utilizar
son iterativos.
▪Los más fáciles y rápidos son los algoritmos no
supervisados jerárquicos que, a su vez, pueden ser:
-Aglomerativos: parten de tantos grupos como
observaciones y van fusionando los grupos más
similares formando clústeres cada vez más grandes
hasta formar un único clúster.
-Divisivos: parten de un solo grupo que se va
particionando en distintos clústeres.
▪Se acostumbra a utilizar los algoritmos aglomerativos.
Algoritmo
Elección del método de fusión de los clústeres
▪ Los métodos más comunes son los siguientes:
-Enlace simple o de las distancias mínimas: se
escogen los elementos más cercanos o que más se
parecen. Forma clústeres encadenados.
Algoritmo
Elección del método de fusión de los clústeres
▪ Los métodos más comunes son los siguientes:
-Enlace completo o de las distancias máximas: se
escogen los elementos más lejanos o que menos se
parecen. Forma clústeres compactos.
Algoritmo
Elección del método de fusión de los clústeres
▪ Los métodos más comunes son los siguientes:
-Método de Ward: minimiza las sumas de cuadrados
intra-grupo. Forma los clústeres más compactos y de
igual tamaño y forma que el resto de métodos.
Algoritmo
Elección del método de fusión de los clústeres
▪ Los métodos más comunes son los siguientes:
-Enlace simple o de las distancias mínimas.

-Enlace completo o de las distancias máximas.

-Método de Ward.

▪ Se recomienda utilizar el método de Ward o el del


enlace compacto para evitar el efecto de los outliers.
Algoritmo
Dendograma y definición de clústers
▪ Gráfico que resume el proceso de composición de los
clústeres.
▪ Ayuda a decidir el número óptimo de clústeres en base
a su medida de similitud “cortando” el dendrograma
por donde se observe un salto importante en la longitud
de las líneas que definen los grupos, es decir, cuando se
detecta una separación considerable en los niveles de
similitud.
Centroide
▪ Media de cada variable para cada clúster.
▪ A partir de los centroides se interpreta cada clúster.
Ejemplo
Aplicación práctica con R
▪ Datos: columnas C y D del fichero Cust_Master.csv (atributos
“SENSI” y “SALES”).
- El fichero contiene información sobre 152 clientes (N = 152)
de una empresa que vende y distribuye productos
alimentarios.
- Nos centramos en los atributos “SENSI” que contiene valores
de 0 a 100 y recoge la sensibilidad de los clientes a los nuevos
productos y “SALES” que indica las ventas anuales del
ejercicio anterior de los clientes (d = 2).
▪ Una visualización de los datos (en 2D) nos muestra que sería
óptimo formar 3 clústeres.
Ejemplo
Aplicación práctica con R
▪ Visualización de los datos en 2D:

▪ sería óptimo formar 3 clústeres.


Ejemplo
Aplicación práctica con R
▪ Confirmación con dendograma:
Ejemplo
Aplicación práctica con R
▪ Datos: columnas C y D del fichero Cust_Master.csv
- N = 152.
- d = 2.
▪ Una visualización de los datos (en 2D) nos muestra que
sería óptimo formar 3 clústeres.
▪ La función de segmentación jerárquica en R es hclust()
y la de distancia euclidiana es dist().
Extensiones
Para saber más
Resumen
Clústering jerárquico
▪ Es útil cuando queremos obtener distintos grupos con
características similares de un mismo conjunto de
datos.
▪ Utiliza un algoritmo de iteración no supervisado
jerárquico y aglomerativo.
▪ Podemos aplicarlo como paso previo al clústering no
jerárquico para determinar el número de subconjuntos
disjuntos o clústeres k.
▪ Se puede calcular con R.
El algoritmo k-means
Clustering no jerárquico
Julià Minguillón
Índice

 Planteamiento del problema


 El algoritmo de Lloyd
 Inicialización
 Ejemplo
 Aspectos a tener en cuenta
 Extensiones
El algoritmo k-means
Objetivo: obtener una partición de un conjunto de N
elementos (de d dimensiones) en k subconjuntos o
grupos disjuntos Si, minimizando el error cometido:

donde dist(x,y) es la función de distancia deseada y i


es el representante (también llamado centroide) de cada
grupo Si.
La función distancia
Habitualmente se utiliza como función distancia la
distancia euclídea entre dos puntos de un espacio de
d dimensiones:

pero podría utilizarse cualquier otra métrica bien


definida.
Centroides
Como su nombre indica, el algoritmo k-means utiliza
como representante i de cada grupo Si su centro
geométrico (como puntos de un espacio d-dimensional):

pero podría utilizarse cualquier otro elemento como


representante, siempre que proporcione una solución
estable al problema de particionar el conjunto original.
El algoritmo de Lloyd
Para encontrar una partición en k grupos, Lloyd propuso
el siguiente algoritmo:

1. Generar k centroides iniciales.


2. Asignar cada elemento de conjunto original al grupo
más cercano, de acuerdo a la distancia entre el
elemento y el centroide de cada grupo.
3. Calcular los nuevos centroides para cada grupo en
función de los elementos asignados en el paso 2.
4. Repetir desde el paso 2 hasta que no se produzca
ningún cambio de grupo.
Inicialización
El algoritmo k-means es muy sensible al conjunto inicial
de centroides, que depende del valor de k. El algoritmo
de Lloyd no asegura encontrar la solución óptima global,
sino solamente una local. Es conveniente, por lo tanto:

1. Escoger buenos centroides iniciales (puede ser al azar


sobre el conjunto original).
2. Ejecutar el algoritmo de Lloyd.
3. Repetir diversas veces, comparando las soluciones
obtenidas.
4. Quedarse con aquella solución que minimiza el error
cometido .
Número de centroides
El algoritmo k-means necesita conocer a priori el número
de centroides k. Para escoger k se puede:

1. Utilizar un número predeterminado que sea el


objetivo del análisis si se tiene algún conocimiento.
2. Repetir el algoritmo k-means para diferentes valores
de k, ajustando según la curva k (hasta el incremento
de k que no justifica la mejora del error k).
3. Utilizar algún otro criterio calculado sobre los
centroides obtenidos.
Ejemplo
Datos: columnas C y D del fichero Cust_Master.csv
(atributos “SENSI” y “SALES”).

• N = 152
•d =2

Una visualización de los datos (en 2D) muestra que


seguramente k = 3.
Aspectos a tener en cuenta
El algoritmo k-means no debería usarse cuando los
elementos no tienen un significado geométrico como
puntos de un espacio d-dimensional. En esos casos se
debería:

1. Normalizar cada una de las d variables.


2. Utilizar funciones distancia más adecuadas.
3. Realizar un cambio de coordenadas (p.e. a polares).

Por otra parte, el algoritmo k-means puede ser costoso


computacionalmente para valores grandes de N, d y k.
Extensiones
El algoritmo k-means permite ser adaptado para poder
utilizarse con objetivos diferentes al original:

• Utilización de medoides en lugar de centroides para


escoger el representante de cada grupo.
• Lógica difusa para la determinación de la pertenencia a
un grupo.
• Pre-agrupación de los elementos originales para la
mejora del coste computacional (“canopy”).

Para saber más:


Resumen
• El algoritmo k-means permite obtener una partición de
un conjunto original en k subconjuntos disjuntos.
• Como parámetros utiliza el número deseado de clusters,
la función distancia, la manera de calcular el centroide de
cada grupo y el conjunto de centroides iniciales.
• Se basa en un algoritmo de dos pasos que se repiten
hasta llegar a una solución estable.
• Puede ser que la solución obtenida no sea la óptima
globalmente, es interesante probar diferentes soluciones.
• Es costoso computacionalmente para conjuntos grandes
(tanto en número de elementos como de dimensiones).
• Puede ser adaptado para usarse con otros objetivos.
Análisis de Componentes
Principales

David Masip Rodó


Índice  
§   PCA  aplicado  a  la  reducción  de  la  dimensionalidad  
§   Conceptos  previos  
§   Algoritmo  
§   Ejemplos  
 
Análisis  de  componentes  principales  
Reducción  de  la  dimensionalidad  
§   Reducir  el  número  de  atributos  o  variables    
-­‐ Explotar  la  correlación  inherente  en  los  datos  
-­‐ Seleccionar  los  factores  según  la  proporción  de  la  
varianza  que  preservan      
 
Análisis  de  componentes  principales  
Minimización  del  error  
§ Proyección  lineal  en  la  que  se  minimiza  el  error  
cuadráDco  de  los  datos  reconstruidos  
§ Maximización  de  la  varianza  en  el  espacio  proyectado  
Conceptos  previos  
Media,  varianza  y  covarianza  
§ Media:  Promedio  de  un  conjunto  de  valores  
 

§ Varianza:  La  esperanza  del  cuadrado  de  la  desviación  


de  la  variable  respecto  a  la  media  

§ Covarianza:  La  esperanza  de  los  productos  de  las  


desviaciones  de  cada  variable.      
Conceptos  previos  
Vectores  propios  
§ En  algebra  lineal  los  eigenvectores  o  autovectores  de  
un  operador  lineal  (M)  son  los  vectores  que  al  ser  
transformados  por  el  operador  no  cambian  su  dirección,  
solamente  són  mulDplicados  por  un  escalar  llamador  
valor  propio  (λ)  que  altera  su  longitud.  
Análisis  de  componentes  principales  
Algoritmo:  
§ Primer  paso:  Sustraer  la  media  de  cada  atributo  
§ Segundo  paso:  Calcular  la  matriz  de  covarianza  de  los  
datos  
§ Tercer  paso:  Calcular  los  valores  y  vectores  propios  de  
la  matriz  de  covarianza  
§ Cuarto  paso:  Ordenación  de  los  factores  y  proyección  
de  los  datos  en  el  espacio  PCA.  
Análisis  de  componentes  principales  
PCA  en  lenguaje  R:  
§ Ejemplo  en  dos  dimensiones:  
 
Análisis  de  componentes  principales  
Ejemplo  2:  
§ PCA  en  lenguaje  R:  
-­‐ Ejemplo  en  alta  dimensionalidad  
-­‐ Breast  Cancer  Wisconsin  data  set  
 CharacterisDcs  of  cell  nuclei  
Cancer:  Benign/Malignant  
 
hRp://archive.ics.uci.edu/ml/  
 
Conclusión  
Análisis  de  componentes  principales  
§   Reducción  de  la  dimensionalidad  
§   Algoritmo  prácDco  
§   Ejemplos  en  lenguaje  R  
 
 

Вам также может понравиться