Señales de comportamiento
Señales de comportamiento
Las señales de comportamiento son la «telemetría» de la interacción del usuario con el producto: eventos, contexto y series de tiempo de las que derivamos intención, interés, calidad del tráfico, riesgo y valor. El contorno seguro del trabajo con las señales: instrumentirovanie → la recogida → la limpieza → la normalización → priznakoobrazovanie → el uso en las decisiones → el monitoring y la ética.
1) Qué considerar señales de comportamiento
Sesiones: inicio/parada, duración, número de pantallas, profundidad, repeticiones por día, sesiones «silenciosas».
Clics/touch/skroll: densidad de clics, velocidad de desplazamiento, profundidad, paradas (scroll-stops).
Dwell-time: tiempo en pantalla/elemento, tiempo activo (filtro idle).
Navegación/interconexión de pantallas: secuencias, bucles, rage-navigation.
Entrada/formularios: velocidad de relleno, correcciones, tracción, rate paste.
Micro-interactuaciones: trucos, revelaciones, interruptores, clasificaciones/filtros.
Contenido/búsqueda: consultas, CTR, CTCVR, guardar, «posponer para más adelante».
Técnica: device/browser, FPS/estado de la batería, errores, latency, red (IP/ASN), offline/online.
Tiempo/contexto: hora/día/calendario local, geo-patrones (sin geolocalización exacta si no es necesario).
Retroalimentación negativa: ocultar, quejarse, dar de baja, rechazar cookies/personalizar.
2) Herramientas y diagrama de eventos
Esquema canónico (mínimo):
event_id, user_id, session_id, ts_utc, type, screen/page, element, value, duration_ms,
device_id, platform, app_version, locale, referrer, ip_hash, asn, experiment_id, schema_version
Principios: idempotencia (dedup por '(source_id, checksum)'), tiempo UTC, versión de circuitos, claves de identidad estables, minimización de PII (hashes/tokens).
3) Limpieza y antibot
Banderas sin cabeza/automatización: firmas WebDriver/puppeteer, los gestos personalizados que faltan.
Velocidad anormal: clics/scroll sobrehumanos, intervalos «perfectos».
Red: centros de alojamiento de datos, conocidos proxy/VPN ASN.
Repetibilidad del patrón: las mismas trayectorias y secuencias.
QA/interno: listas de cuentas de prueba/dispositivos.
Frod: device/IP-grafo (un dispositivo → muchas cuentas, geo-velocity).
4) Normalización y punto en tiempo (PIT)
Ventanas temporales: 5 minutos/1 hora/24 horas/7 días; Expon. suavizado.
Estacionalidad: día-de-semana, hora-de-día, banderas festivas.
Cortes PIT: todos los signos se construyen antes del tiempo de evaluación; sin información del futuro.
Paridad online/offline: las mismas recetas en feature store.
5) Calidad y validez de las señales
Cobertura: proporción de sesiones/pantallas con eventos completos.
Freshness: lag de recibo.
Consistencia: proporción de eventos por usuario/sesión en «corredores» (control de emisiones).
Atención: Active Time/Idl-filter, scroll depth, stop.
Intención: transiciones hacia acciones profundas (filtr→detal→tselevoye).
Credibilidad: antibot score, confianza en el dispositivo/IP.
6) Señalización (ingeniería feature)
R/F: recency del último interactivo, frecuencias por ventanas 7/30/90.
Dwell/scroll: medianas/cuantiles, proporción de pantallas con dwell ≥ X, profundidad ≥ p%.
Secuencias: n-gramos, transiciones de Markov, patrones de «remordimiento» (back-forth), run-length.
Estabilidad del dispositivo: cambio de dispositivo/navegador, entropy user-agents.
Calidad del clic: ratio clics a los elementos de clicability, rage-clicks.
Búsqueda/intención: longitud/refinamiento de consultas, dwell después de la búsqueda, tasa de éxito.
Agregaciones por identidades: user_id, device_id, ip_hash, asn.
Híbridos: Embeddings de sesiones (Doc2Vec/Transformer) → Agrupamiento/Clasificación.
7) Señal → Acción: tabla de soluciones
Histéresis y culdaunas son obligatorias para no «parpadear» con pistas.
8) Pseudo-SQL/recetas
A. Tiempo activo y profundidad oculta
sql
WITH ev AS (
SELECT user_id, session_id, page, ts,
SUM(CASE WHEN event='user_active' THEN duration_ms ELSE 0 END) AS active_ms,
MAX(CASE WHEN event='scroll' THEN depth_pct ELSE 0 END) AS max_depth
FROM raw_events
WHERE ts BETWEEN:from AND:to
GROUP BY 1,2,3,4
)
SELECT user_id, session_id,
AVG(active_ms) AS avg_dwell_ms,
PERCENTILE_CONT(0. 5) WITHIN GROUP (ORDER BY max_depth) AS scroll_median
FROM ev
GROUP BY 1,2;
B. Rage-clicks / back-forth
sql
WITH clicks AS (
SELECT user_id, session_id, ts,
LAG(ts) OVER (PARTITION BY user_id, session_id ORDER BY ts) AS prev_ts,
element
FROM ui_events WHERE event='click'
),
rage AS (
SELECT user_id, session_id,
COUNT() FILTER (WHERE EXTRACT(EPOCH FROM (ts - prev_ts)) <= 0. 3) AS rage_clicks
FROM clicks GROUP BY 1,2
),
backforth AS (
SELECT user_id, session_id,
SUM(CASE WHEN action IN ('back','forward') THEN 1 ELSE 0 END) AS nav_bf
FROM nav_events GROUP BY 1,2
)
SELECT r. user_id, r. session_id, r. rage_clicks, b. nav_bf
FROM rage r JOIN backforth b USING (user_id, session_id);
C. Antibot Skore (boceto)
sql
SELECT user_id, session_id,
(CASE WHEN headless OR webdriver THEN 1 ELSE 0 END)0. 4 +
(CASE WHEN asn_cat='hosting' THEN 1 ELSE 0 END)0. 2 +
(CASE WHEN click_interval_std < 50 THEN 1 ELSE 0 END)0. 2 +
(CASE WHEN scroll_speed_avg > 5000 THEN 1 ELSE 0 END)0. 2 AS bot_score
FROM telemetry_features;
D. Secuencias de n-gramo
sql
-- Collect screen sequences and transition frequencies
SELECT screen_seq, COUNT() AS freq
FROM (
SELECT user_id, session_id,
STRING_AGG(screen, '→' ORDER BY ts) AS screen_seq
FROM nav_events
GROUP BY 1,2
) t
GROUP BY screen_seq
ORDER BY freq DESC
LIMIT 1000;
9) Señales de comportamiento en ML/análisis
Inclinaciones/personalización: modelos CTR/CTCVR, embeddings de sesión, next-best-action.
Salida/retención: modelos hazard, signos de recency/frecuencia/secuencias.
Antifraude: velocidad de formas, geo-led, gráfico de dispositivos/IP, patrones de «granjas».
Calidad del tráfico: «vistas válidas», sesiones engaged, retroalimentación negativa.
A/B y causalidad: métricas de atención como intermediarios, pero las conclusiones son por incremento (ROMI/LTV, retención).
10) Visualización
Sankey/step-bars: paths and drop-off.
Heatmaps: la profundidad de la diapositiva, mapas de clics (impersonal).
Cohort × age: cómo cambian las señales según la edad de la cohorte.
Gráficos de puente: contribución de factores (velocidad, diapositivas, errores) al cambio de conversión.
11) Privacidad, ética, RG/cumplimiento
Minimización PII: hashes de ID, RLS/CLS, enmascaramiento durante la exportación.
Consentimiento/transparencia: configuración de seguimiento, rechazo - se respeta; la lógica es explicable.
RG: no utilizar señales para promover comportamientos nocivos; recordatorios/límites suaves.
Fairness: comprobar las diferencias de errores/intervenciones por grupos; excluir los signos no válidos.
Almacenamiento: tiempo TTL para eventos «crudos», agregaciones preferidas.
12) Observabilidad y deriva
Calidad de datos: coverage, duplicados, lagunas, porcentaje de campos vacíos.
Deriva de señal: PSI/KL por dwell/scroll/frecuencias; patrones «nuevos».
Quirófanos: latencia de cobro, p95 de cálculo de rasgos, fracción de folbacks.
Guardrails: estallido de bot score, quejas, revocaciones; «stop-crane» sobre intervenciones agresivas.
13) Anti-patrones
Clics crudos sin contexto/filtro idl → falsas «atenciones».
Mezcla de unidades (sessii↔polzovateli), TZ, ventanas → incomparecencia.
Las caras del futuro (sin PIT) → una revalorización de los modelos.
Nulidad al ruido: umbrales rígidos sin histéresis → «parpadeo».
Ignore los filtros antibot/QA → las métricas infladas.
Registro de PII superfluos sin motivo → riesgos y multas.
14) Check-list para iniciar el circuito de señales de comportamiento
- Esquema de eventos (versiones, UTC, idempotencia), minimización de PII
- Filtros antibot/QA, listas ASN/dispositivos negros/blancos
- Recetas PIT, ventanas 5m/1h/24h/7d, paridad online/offline
- Métricas de calidad: coverage, freshness, validadores de engagement
- Señales R/F/dwell/scroll/secuencias/búsqueda, sesión embeddings
- Tablas de decisión: acciones, histéresis, couldowns, guardrails
- Dashboards y alertas de deriva (PSI/KL), quejas/cancelaciones, indicadores de RG
- Documentación: diccionario de datos, pasaportes de señales/métricas, propietarios y runibooks
Resultado
Las señales de comportamiento solo dan valor en un circuito disciplinado: instrumentación correcta y PIT, limpieza y antibot, señales sostenidas y políticas de acción claras, privacidad y RG, observabilidad y respuesta a la deriva. Este enfoque traduce «clics y skrolls» en soluciones que aumentan la conversión, retención y LTV, de manera segura, transparente y reproducible.