Agrupación de registros en clústeres
La agrupación de registros en clústeres agrupa los registros de una tabla según los valores similares en uno o más campos numéricos. Los valores similares son aquellos que son cercanos entre sí en el contexto del conjunto de datos completo. Estos valores similares representan clústeres que, una vez identificados, revelan patrones en los datos.
Diferencia entre la agrupación en clústeres y otros comandos de agrupación de Analytics
La agrupación en clústeres se diferencia de otros comandos de agrupación de Analytics:
- La agrupación en clústeres no requiere la agrupación por valores exactos ni estrados predefinidos con límites numéricos estrictos. Por el contrario, la agrupación en clústeres agrupa los datos según los valores numéricos similares; es decir, valores cercanos entre sí.
- La agrupación en clústeres no requiere categorías de datos preexistentes.
- La agrupación en clústeres por más de un campo envía resultados que no están anidados (no son jerárquicos).
Cómo funciona el algoritmo de agrupación en clústeres
La agrupación en clústeres de Analytics utiliza el algoritmo de Agrupamiento con K-Means, que es un algoritmo de aprendizaje automático muy conocido. Puede encontrar una descripción detallada de Agrupamiento con K-means en Internet.
A continuación, se incluye un resumen del algoritmo.
El algoritmo de Agrupamiento con K-Means utiliza un proceso de repetición para optimizar los clústeres:
1 | Especifique la cantidad de clústeres |
|
---|---|---|
2 | Inicialice los centroides del clúster |
|
3 | Asigne cada punto de datos al centroide más cercano |
|
4 | Vuelva a calcular los centroides |
|
5 | Repita |
|
Elección de la cantidad de clústeres (Valor K)
Determinar la cantidad óptima de clústeres que se deben utilizar al agrupar datos en clústeres puede llevar un poco de tiempo y experimentación. No existe una respuesta exacta para un conjunto de datos determinado.
Recomendaciones para determinar la cantidad óptima de clústeres:
- Familiarícese con los datos Familiarícese con los datos para tener una idea general del perfil de los datos y de cualquier concentración obvia de valores.
- Comience con valores elevados Escoja un número relativamente elevado de clústeres inicialmente: 8 a 10.
- Pruebe con una cantidad diferente de clústeres Realice la agrupación en clústeres varias veces, especificando un valor K diferente cada vez. Una revisión de los resultados de salida puede ayudarlo a determinar si necesita más o menos clústeres.
- Método del codo Utilice el método del codo, que compara las distancias internas de los valores de los clústeres generados para diferentes valores K.
Puede graficar los resultados del método del codo para identificar "el codo", o el punto de inflexión, en el que un aumento de la cantidad de clústeres no reduce de manera significativa las distancias internas de los valores de los clústeres. El método del codo se puede escribir en un script de Analytics.
Elección de los campos para hacer clústeres
La agrupación en clústeres le permite descubrir agrupamientos orgánicos en los datos que tal vez no sepa que existen. Puede crear clústeres de varios campos numéricos. En este sentido, la agrupación en clústeres es exploratoria, y es un ejemplo de aprendizaje automático sin supervisión.
Sin embargo, para que los clústeres de salida tengan sentido, es necesario que comprenda la relación que existe entre los campos que selecciona para la agrupación en clústeres.
Agrupación en clústeres por un único campo
La agrupación en clústeres por un único campo numérico es relativamente directa. Usted tiene un conjunto de valores único y la agrupación en clústeres agrupa los valores según la cercanía o proximidad que existe entre ellos. Por ejemplo, puede agrupar en clústeres un campo de importe para determinar dónde se concentran los importes en el rango de valores.
La ventaja de la agrupación en clústeres por sobre un enfoque tradicional como la estratificación es que no es necesario hacer suposiciones por adelantado acerca de dónde pueden encontrarse las concentraciones, ni crear límites numéricos arbitrarios. La agrupación en clústeres descubre dónde se encuentran los límites de una cantidad determinada de clústeres.
Agrupación en clústeres en varios campos
Cuando se hace una agrupación en clústeres de dos o más campos, debe preguntarse cómo podrían relacionarse los campos. Puede usar la agrupación en clústeres para comprobar una hipótesis. Por ejemplo, una compañía podría estar preocupada por la tasa de rotación de empleados, que la gerencia considera está concentrada entre los empleados de menor edad y menor salario.
Podría utilizar la agrupación en clústeres para descubrir si existe una fuerte relación entre lo siguiente:
- tiempo de retención del empleado y edad del empleado (agrupación en clústeres de dos dimensiones)
- tiempo de retención del empleado, edad del empleado y salario (agrupación en clústeres de tres dimensiones)
Para este análisis, necesita evitar incluir campos que no se relacionen claramente con la hipótesis, como cantidad de días de licencia por enfermedad.
¿Puede utilizar la agrupación en clústeres en campos de caracteres o de fechahora?
En general, no se puede usar la agrupación en clústeres en campos de caracteres o de fechahora. El algoritmo de agrupación en clústeres acepta únicamente números y realiza cálculos con los números (distancia euclídea, media).
Datos de caracteres categóricos
Es posible que tenga datos de caracteres categóricos, como ID de ubicación, que son números. O podría usar un campo calculado para asignar categorías de caracteres a un conjunto de códigos numéricos que usted crea. Podría convertir estos datos en tipos de datos numéricos y usarlos para una agrupación en clústeres. Sin embargo, los clústeres que obtenga no serían válidos porque usted estaría haciendo cálculos matemáticos en números que representan algo que no es numérico.
Por ejemplo, si calcula una posición centroide sobre la base del promedio de una lista de ID de ubicación, obtendrá un número sin ningún significado. El cálculo se basa en la suposición no válida de que la distancia matemática entre los números de ubicación equivale a alguna distancia mensurable del mundo real.
Si consideramos la distancia física, no tiene sentido decir que la distancia entre la ubicación 1 y la 9 es el doble que la distancia entre la ubicación 1 y la 5. Las ubicaciones 1 y 9 podrían estar una junto a la otra, y la ubicación 5 podría estar a kilómetros de distancia.
Para un análisis de agrupación en clústeres de ubicaciones y distancias físicas, los datos válidos que se deben usar son las coordenadas geográficas.
Datos categóricos que representan una escala
Puede agrupar en clústeres los datos categóricos que representan una escala; por ejemplo, una calificación de Mal a Excelente, con códigos numéricos correspondientes de 1 a 5. En este caso, el promedio de los códigos numéricos tendrá sentido.
Datos de fechahora
Puede utilizar las funciones de Analytics para convertir datos de fechahora en datos numéricos. Sin embargo, los datos numéricos que obtenga no son continuos y esto es un problema para el análisis por agrupación en clústeres, que asume que los conjuntos de números son continuos.
Por ejemplo, los siguientes tres números, como fechas, solo tienen una diferencia de un día. Sin embargo, como números, existe una separación o distancia considerable entre el primer número y el segundo.
- 20181130
- 20181201
- 20181202
Podría usar valores de fecha de serie en el análisis por agrupación en clústeres. Las fechas de serie son un conjunto continuo de números enteros que representan la cantidad de días que han transcurrido desde el 01 de enero de 1900.
Evaluación de los clústeres de salida
El algoritmo de agrupación en clústers siempre generará una tabla con la cantidad específica de clústeres. Cada registro de la tabla de salida se encontrará en un clúster.
En este punto, necesita evaluar si alguno de los clústeres tiene significado o sentido para el análisis. Solo porque el algoritmo agrupe registros en un clúster, no necesariamente significa que la agrupación es significativa.
Dos características que puede evaluar son la coherencia del clúster y el tamaño del clúster.
Consejo
La manera más sencilla de evaluar rápidamente la naturaleza de los clústeres de la salida consiste en graficar la tabla de salida de clústeres como un diagrama de dispersión con una herramienta de generación de reportes, que asigne un color a cada clúster.
Pasos
Especificar ajustes para el algoritmo de agrupación en clústeres
- Abra la tabla con los datos que desea agrupar en clústeres.
- Desde el menú principal de Analytics, seleccione Aprendizaje automático > Agrupamiento.
- En Cantidad de clústeres (Valor K), especifique la cantidad de clústeres que desea utilizar para agrupar los datos.
- En Cantidad máxima de iteraciones, especifique el límite superior para la cantidad de iteraciones que realiza el algoritmo de agrupación en clústeres.
- En Cantidad de inicializaciones, especifique la cantidad de veces que se debe generar un conjunto inicial de centroides aleatorios.
- Opcional. Seleccione Semilla e introduzca un número.
Especificar un método de preprocesamiento de los datos
En la lista desplegable Preprocesamiento, seleccione el método para preprocesar los datos antes de agruparlos en clústeres:
Estandarizar | Centre los valores de campos clave alrededor del cero (0) y escale los valores a la varianza de unidad al calcular los clústeres |
---|---|
Escalar a la varianza de la unidad | Escale los valores de campo clave a la varianza de unidad al calcular los clústeres, pero sin centrar los valores alrededor del cero (0) |
Ninguno | Use los valores de campo clave sin procesar, sin escalar, al calcular los clústeres |
Seleccionar campos
- Desde la lista Agrupar por, seleccione uno o más campos clave a fin de usarlos para agrupar los registros de la tabla en clústeres.
Los campos clave deben ser numéricos.
- Opcional. Desde la lista Otros campos, seleccione uno o más campos adicionales para incluirlos en la tabla de salida.
Consejo
Puede presionar Ctrl+clic para seleccionar varios campos no adyacentes, y Mayús+clic para seleccionar varios campos adyacentes.
Finalizar la entrada de comandos
-
Si hay registros en la vista principal que desee excluir del procesamiento, introduzca una condición en el cuadro de texto Si, o haga clic en Si para crear un enunciado IF usando Generador de expresiones.
Nota
La condición IF se evalúa únicamente con los registros que quedan en una tabla después de aplicar las opciones de alcance (First, Next y While).
El enunciado IF considera todos los registros en la vista principal y filtra los que no cumplan la condición especificada.
- En el cuadro de texto En, especifique el nombre de la tabla de salida.
- Opcional. En la ficha Más:
- Para especificar que se procese solo un subconjunto de registros, seleccione una de las opciones del panel Alcance.
- Seleccione Utilizar la tabla de salida si desea que la tabla de salida se abra automáticamente.
- Haga clic en Aceptar.