Análisis de Datos con SQL y Modelos K-Means en Google Analytics

Clase 39 de 42Curso de Google Cloud Platform para E-commerce

Contenido del curso

Retail Store en Google Cloud Platform

Exposición de servicios con Apigee

Generación de modelos AI/ML

Consumo de servicios de AI/ML

Resumen

Construir campañas de marketing efectivas exige conocer a fondo cada tipo de cliente, y la combinación de SQL en BigQuery con un modelo de k-means permite crear segmentos basados en datos reales de comportamiento y perfil. A continuación se explica paso a paso cómo agregar datos de Google Analytics, unirlos con un CRM y determinar el número óptimo de audiencias para activar campañas.

¿Cómo se agrega la data granular de Google Analytics a nivel de usuario?

La información que llega desde Google Analytics viene totalmente desagregada, registro por registro, como granos de arena [00:18]. Para alimentar un modelo de segmentación es necesario consolidarla por cliente. Las dos variables fundamentales son:

  • Tiempo en pantalla (time_on_screen): cuánto duró el usuario viendo cada sección de la aplicación o sitio.
  • Vistas únicas de pantalla (unique_screen_views): cuántas sesiones distintas tuvo ese cliente en una pantalla específica.

El símil con una tienda física es directo: si un cliente regresa el sábado y pasa veinte minutos mirando pantalones, y el domingo vuelve cinco minutos más, la señal de interés es clara [00:37]. La sentencia SQL que resuelve esta agregación selecciona el campo user, aplica SUM sobre ambas métricas y agrupa con GROUP BY user. El origen es la tabla de Google Analytics 360, referenciada como proyecto.dataset.GA360 [01:22].

¿Cómo se une la data de Google Analytics con el CRM?

Una vez que se tiene el view agregado, el siguiente paso es cruzarlo con la información interna del negocio [01:42]. De la base del CRM se incorporan variables como:

  • User ID o identificador único del cliente.
  • Número de cuenta, útil cuando se vende tanto a personas naturales como a otros negocios (segmento B2B, business to business) [03:08].
  • Annual revenue: cuánto ha generado cada cliente en ingresos.
  • Loyalty program: estado del programa de puntos o fidelización.
  • Edad y demografía: género, lugar de residencia u otras variables que enriquezcan el perfil.

Si dispones de datos adicionales como dirección o preferencias, es recomendable agregarlos porque aportan dimensiones valiosas al modelo [02:50]. La consulta SQL une las tablas del view de Analytics con las tablas del CRM a nivel de usuario y de cuenta, y ordena los resultados de forma ascendente por usuario [03:35].

¿Qué es el modelo k-means y cómo se define el número correcto de segmentos?

El algoritmo k-means agrupa usuarios en clusters buscando puntos centrales llamados centroides [03:52]. Cada variable que alimenta el modelo representa una dimensión, y los clientes se ubican en un espacio n-dimensional. El modelo calcula la distancia euclidiana entre cada usuario y los centroides, y los reubica iterativamente hasta que esa distancia sea mínima [04:10].

La sentencia en BigQuery para crear el modelo es:

sql CREATE MODEL proyecto.platzi_datasets.my_model OPTIONS ( model_type = 'kmeans', num_clusters = 9, distance_type = 'euclidean' ) AS SELECT * FROM proyecto.platzi_datasets.data;

En este ejemplo se prueban nueve centroides [05:17], pero nueve campañas simultáneas rara vez son viables para un equipo de marketing.

¿Qué es la estrategia del codo para elegir clusters?

La estrategia del codo (elbow method) consiste en entrenar el modelo varias veces con diferente número de clusters y graficar la métrica de distancia resultante [06:09]. Al observar la curva se identifica un punto de inflexión —el "codo"— donde agregar más segmentos deja de aportar mejoras significativas.

En el ejemplo mostrado, el codo aparece en cinco clusters [06:30]. Esto significa que pasar de cinco a seis, siete u ocho segmentos no mejora sustancialmente la separación, pero sí incrementa el costo operativo de las campañas.

¿Cómo negociar el número de campañas con el equipo de marketing?

Los datos sugieren entre tres y cinco segmentos, dependiendo de qué tan pronunciado sea el codo [06:50]. Si el gerente de marketing solo acepta tres campañas, la curva confirma que es una decisión razonable. Pero si el codo estuviera mucho más adelante y el negocio insistiera en pocos segmentos, el científico de datos puede argumentar con evidencia que la eficiencia de la campaña se vería comprometida [07:25].

Este diálogo entre datos y estrategia de negocio es lo que convierte un ejercicio técnico en una decisión informada. Con las sentencias SQL listas y el modelo entrenado, el paso siguiente es ejecutar todo en Google Cloud y visualizar los resultados en Data Studio con un solo clic [07:55].