Introducción al clustering

Vamos a ver una introducción al clustering, sus aplicaciones y diferentes tipos de algoritmos.
Imaginemos que tenemos un conjunto de datos y necesitamos aplicar una segmentación basándonos en datos históricos. La segmentación es la práctica de particionar una base de datos en grupos de observaciones que tienen características similares. Es una estrategia importante ya que permite que se pueda estudiar a grupos específicos para asignar más efectivamente los recursos. Por ejemplo, en un conjunto de datos de clientes de una empresa, un grupo puede contener clientes que son de alto beneficio y bajo riesgo, es decir, es más probable que compre productos o se suscriba a un servicio. Conocer esta información permite dedicar más tiempo y atención a aquellas observaciones que son más interesantes para el proyecto.

Un proceso de segmentación general no suele ser factible para grandes volúmenes de datos variados, por lo tanto, se necesita un enfoque analítico para derivar segmentos y grupos de grandes conjuntos de datos. El requisito importante es utilizar los datos disponibles para comprender e identificar cómo las diferentes unidades del conjunto son similares entre sí. Uno de los enfoques más adoptados que puede ser utilizado para la segmentación es el clustering. El clustering puede agrupar datos solo, sin supervisión, basado en la similitud de las observaciones entre sí. Dividirá el conjunto de datos en grupos mutuamente excluyentes. Las observaciones en cada grupo serán similares entre sí, pudiendo crear perfiles para cada grupo, considerando las características comunes de cada grupo. Finalmente, podemos asignar a cada observación de nuestro conjunto de datos a uno de estos grupos o segmentos. Esta información ayudaría a comprender y predecir las diferencias individuales y comportamientos.

El clustering significa encontrar agrupaciones en un conjunto de datos, sin supervisión. Un clúster es un grupo de puntos de datos u objetos en un conjunto de datos que son similares a otros objetos en el grupo y diferentes a los puntos de datos en otros grupos.

Difrencias entre clustering y clasificación

Los algoritmos de clasificación predicen categóricamenta las etiquetas de clase. Esto significa, asignar instancias a valores predefinidos de clases. Si un analista quiere analizar los datos de los clientes para saber qué clientes podrían incumplir sus pagos, utiliza un conjunto de datos etiquetado como datos de entrenamiento, y utiliza enfoques de clasificación como decisión, Máquinas de vectores de soporte (o SVM) o regresión logística para predecir el valor predeterminado para un nuevo o desconocido cliente. En términos generales, la clasificación es un modelo de aprendizaje supervisado donde cada instancia de datos de entrenamiento pertenece a una clase en particular.
Sin embargo, en el clustering, los datos no están etiquetados y el proceso no está supervisado. Podemos usar un algoritmo de clustering como k-Means, para agrupar clientes similares, y asignarlos a un clúster, en función de si comparten atributos similares, como edad, educación, etc.

Ejemplos de uso

  • En la industria minorista, el clustering se utiliza para encontrar asociaciones entre clientes sobre sus características demográficas y usar esa información para identificar patrones de compra de varios grupos de clientes. Además, se puede utilizar en sistemas de recomendación, para encontrar un grupo de elementos similares o usuarios similares, y usarlo para el filtrado colaborativo, recomendar cosas como libros o películas a los clientes.
  • En Banca, los analistas encuentran grupos de transacciones normales para encontrar los patrones fraudulentos de uso de tarjeta de crédito. Además, usan clustering para identificar clusters de clientes, por ejemplo, para encontrar clientes leales, frente a clientes abandonados.
  • En la industria de seguros, el clustering se utiliza para la detección de fraudes en el análisis de reclamos, o evaluar el riesgo de seguro de ciertos clientes en función de sus segmentos.
  • En Publication Media, el clustering se utiliza para clasificar automáticamente las noticias en función de su contenido, o etiquetar noticias, luego agruparlas, para recomendar artículos de noticias similares a los lectores.
  • En medicina: se puede utilizar para caracterizar el comportamiento del paciente, en función de sus características similares, para identificar terapias médicas exitosas para diferentes enfermedades.
  • En biología: el clustering se usa para agrupar genes con patrones de expresión similares, o agrupar marcadores genéticos para identificar los lazos familiares.

 

Tipos de clusteringSi mira a su alrededor, puede encontrar muchas otras aplicaciones de clustering, pero en general, se puede usar para uno de los siguientes propósitos: análisis exploratorio de datos, resumen generación o reducción de la escala, detección de valores atípicos, especialmente para el fraude detección o eliminación de ruido, encontrar duplicados en conjuntos de datos o, como paso previo al procesamiento ya sea para la predicción u otras tareas de minería de datos o como parte de un sistema complejo.

Algoritmos

Veamos brevemente diferentes algoritmos de clustering y sus características:

  • La agrupación basada en particiones es un grupo de algoritmos de agrupación que produce esferas de grupos, como k-Means, k-Median o Fuzzy c-Means. Estos algoritmos son relativamente eficientes y se utilizan para bases de datos de tamaño medio y grande.
  • Los algoritmos de agrupación jerárquica producen árboles de agrupaciones, como Agglomerative y Algoritmos divisivos. Este grupo de algoritmos son muy intuitivos y generalmente son buenos para usar con conjuntos de datos de pequeño tamaño.
  • Los algoritmos de agrupamiento basados en la densidad producen grupos de formas arbitrarias. Son especialmente buenos cuando se trata de grupos espaciales o cuando hay ruido en su conjunto de datos, por ejemplo, el algoritmo DBSCAN.

 

Ir al artículo anterior de la serie: Máquinas de soporte de vectores

Ir al artículo siguiente de la serie: Agrupación por K-medias