Funciones de modelado predictivo en Tableau

Ya puede agregar líneas de tendencia y previsiones a una visualización, e ir más allá y usar la potencia de un motor estadístico para crear un modelo que entienda cómo se distribuyen los datos alrededor de una línea de tendencia de este tipo, o línea de ajuste óptimo. Anteriormente, los usuarios tenían que integrar Tableau con R y Python para realizar cálculos estadísticos avanzados y visualizarlos en Tableau. Ahora, puede utilizar las funciones de modelado predictivo para realizar predicciones a partir de los datos incluyéndolas en un cálculo de tabla. Para obtener más información sobre los cálculos de tablas, consulte Transformar valores con cálculos de tablas.

Con estas funciones de modelado predictivo, puede seleccionar destinos y predictores actualizando las variables y visualizando varios modelos con diferentes combinaciones de predictores. Los datos se pueden filtrar, agregar y transformar en cualquier nivel de detalle, y el modelo, y por lo tanto la predicción, se volverá a calcular automáticamente para que coincida con los datos.

Para obtener un ejemplo detallado que muestra cómo crear cálculos de predicción mediante estas funciones, vea Ejemplo: estudiar la esperanza de vida femenina con funciones de modelado predictivo.

Funciones de modelado predictivo disponibles en Tableau

MODEL_PERCENTILE

SintaxisMODEL_PERCENTILE(
model_specification (optional),
target_expression,
predictor_expression(s))
DefiniciónDevuelve la probabilidad (entre 0 y 1) de que el valor esperado sea menor o igual que la marca observada, definida por la expresión de destino y otros predictores. Esta es la función de distribución predictiva posterior, también conocida como función de distribución acumulativa (CDF).
Ejemplo
MODEL_PERCENTILE( SUM([Sales]),COUNT([Orders]))

MODEL_QUANTILE

SintaxisMODEL_QUANTILE(
model_specification (optional),
quantile,
target_expression,
predictor_expression(s))
DefiniciónDevuelve un valor numérico de destino dentro del intervalo probable definido por la expresión de destino y otros predictores, en un cuantil especificado. Este es el cuantil predictivo posterior.
Ejemplo
MODEL_QUANTILE(0.5, SUM([Sales]), COUNT([Orders]))

El poder de las funciones de modelado predictivo

Echemos un vistazo a un ejemplo usando datos salariales, empezando por MODEL_QUANTILE.

En el ejemplo siguiente, se ha utilizado MODEL_QUANTILE para mostrar el percentil 10 y el percentil 90 de la distribución esperada para el mismo conjunto de datos. Sobre la base de los datos existentes y utilizando un modelo de regresión lineal, el motor estadístico ha determinado que hay un 90 % de probabilidad de que el salario máximo para cada permanencia esté por debajo de la línea verde, y un 10 % de probabilidad de que el salario mínimo para cada permanencia esté por debajo de la línea azul.

En otras palabras, con el cuantil establecido en 0,9, el modelo predice que todos los salarios caerán a o por debajo de la línea verde el 90 % de las veces. La línea azul se establece en 0,1 o 10 %, por lo que solo el 10 % de los salarios caerán a o por debajo de la línea azul, con los datos inversos (el 90 %) por encima de la línea azul.

De manera efectiva, con este método obtenemos una banda que nos ayuda a predecir el 80 % de los datos futuros o no observados generados, que entran dentro del margen resultante.

gráfico de distribución salarial

A continuación, veamos cómo MODEL_PERCENTILE, la inversa de MODEL_QUANTILE, puede ayudarnos a entender mejor los datos.

Puede identificar los valores atípicos del conjunto de datos mediante la función MODEL_PERCENTILE. MODEL_PERCENTILE indica, como percentil, dónde la marca observada se encuentra dentro de un rango de valores probables para cada marca. Si el percentil está muy cerca de 0,5, el valor observado está muy cerca del valor medio previsto. Si el percentil está cerca de 0 o 1, el valor observado se encuentra en los límites inferior o superior del intervalo de modelos y es relativamente inesperado.

A continuación, hemos aplicado MODEL_PERCENTILE como color a la visualización salarial en la mitad superior de la imagen, para ayudarnos a entender qué valores son los más esperados.

distribución salarial como color

Sintaxis detallada de las funciones de modelado predictivo

¿Qué es MODEL_QUANTILE?

MODEL_QUANTILE calcula el cuantil predictivo posterior o el valor esperado en un cuantil concreto.

  • Cuantil: el primer argumento es un número entre 0 y 1, que indica qué cuantil se debe predecir. Por ejemplo, 0,5 especifica que se predecirá la media.
  • Expresión de destino: el segundo argumento es la medida para predecir o “destinar”.
  • Expresiones de predictor: el tercer argumento es el predictor utilizado para realizar la predicción. Los predictores pueden ser dimensiones, medidas o ambos.

El resultado es un número dentro del rango probable.

Puede usar MODEL_QUANTILE para generar un intervalo de confianza, valores que faltan, como fechas futuras, o para generar categorías que no existen en el conjunto de datos subyacente.

¿Qué es MODEL_PERCENTILE?

MODEL_PERCENTILE calcula la función de distribución predictiva posterior, también conocida como función de distribución acumulativa (CDF). Calcula el cuantil de un valor determinado entre 0 y 1, el inverso de MODEL_QUANTILE.

  • Expresión de destino: el primer argumento es la medida a la que se va a dirigir, identificando qué valores evaluar.
  • Expresiones de predictor: el segundo argumento es el predictor utilizado para realizar la predicción.
  • Los argumentos adicionales son opcionales y se incluyen para controlar la predicción.

Observe que la sintaxis de cálculo es similar, con MODEL_QUANTILE que tiene el argumento adicional de un cuantil definido.

El resultado es la probabilidad de que el valor esperado sea menor o igual que el valor observado que expresa la marca.

Puede utilizar MODEL_PERCENTILE para exponer correlaciones y relaciones dentro de la base de datos. Si MODEL_PERCENTILE devuelve un valor cercano a 0,5, la marca observada está cerca de la media del intervalo de valores predichos, dados los otros predictores que se han seleccionado. Si MODEL_PERCENTILE devuelve un valor cercano a 0 o 1, la marca observada está cerca del rango máximo o mínimo de lo que espera el modelo, dados los otros predictores que se han seleccionado.

Nota: Las dimensiones utilizadas como predictores se pueden ordenar o desordenar. Una dimensión ordenada es cualquiera cuyos valores se pueden secuenciar, como un mes. Una dimensión desordenada es cualquiera cuyos valores no tienen una secuencia inherente, como el género o el color. Esta distinción es importante cuando se utiliza la regresión del proceso gaussiano. Para obtener más información sobre este modelo y otros, consulte Seleccionar un modelo predictivo.

Para los usuarios avanzados, hay otros dos argumentos opcionales que puede incluir para controlar la predicción. Para obtener más información, consulte Regularización y aumento en el modelado predictivo.

¿Qué se está calculando?

La entrada utilizada para crear el modelo es una matriz donde cada marca es una fila y las columnas son la expresión de destino y las expresiones de predictor evaluadas para cada marca. Cualquiera que sea la fila especificada en la visualización es lo que define la fila para el conjunto de datos que calcula el motor estadístico.

Echemos un vistazo al ejemplo siguiente, donde las filas (y, por lo tanto, las marcas) se definen por los puestos de trabajo, y las columnas son la expresión de destino MEDIAN([RT anual]). A estos datos los siguen los predictores adicionales opcionales MEDIAN([Permanencia en meses (medida)] y ATTR([Departamento genérico (grupo)].

tabla de datos salariales

Nota: Varios puestos de trabajo tienen un asterisco que aparece en Departamento. Esto se debe a que esos puestos de trabajo existen en varios departamentos, pero Tableau trata a todos ellos como si estuvieran en el mismo. Además, el motor estadístico no tiene en cuenta el número de registros y trata cada marca como igualmente probable. Esto se debe a que Tableau no puede realizar cálculos de tabla en datos no agregados y no puede agregar los resultados de los cálculos de tabla. Para obtener más información sobre la agregación, consulte Agregación de datos en Tableau.

Para obtener más información sobre los datos utilizados para crear un modelo y generar predicciones, vea Calcular mediante y la división de datos en el modelado predictivo.

¿Qué modelos son compatibles?

Las funciones de modelado predictivo admiten regresión lineal, regresión lineal regularizada y regresión de proceso gaussiano. Estos modelos admiten diferentes casos de uso y tipos de predicción y tienen diferentes limitaciones. Para obtener más información consulte Seleccionar un modelo predictivo.

Elegir predictores

Un predictor puede ser cualquier campo de la fuente de datos (medida o dimensión), incluidos los campos calculados.

Nota: Si utiliza una dimensión como predictor, debe utilizar un contenedor ATTR (por ejemplo, ATTR([Estado] en lugar de solo [Estado]). Se debe a que las dimensiones generalmente solo funcionarán si están en el nivel de detalle de la visualización directamente o por encima de ella en una jerarquía.

Por ejemplo, supongamos que tiene un conjunto de datos que incluye los campos [Ciudad], [Estado] y [Región], donde existen varios registros [Ciudad] dentro de un [Estado] y varios registros [Estado] dentro de una [Región].

En una visualización que utiliza [Estado] como marca, el predictor ATTR([Estado]) o ATTR([Región]) funcionarán como predictores. Sin embargo, el predictor ATTR([Ciudad]) volverá a *, ya que existen varias ciudades dentro de un estado visualizado y por lo tanto no se pueden utilizar como predictores. En otras palabras, incluir un predictor que está en un nivel de detalle inferior al de la visualización no agrega ningún valor a las predicciones. En la mayoría de los casos, un predictor con un nivel de detalle inferior al de la visualización se evaluará como * y por lo tanto todos serán tratados de forma idéntica.

Sin embargo, si se utiliza el mismo conjunto de datos para generar una visualización que utiliza [Ciudad] como marca, ATTR([Ciudad]), ATTR([Estado]) y ATTR([Región]) se pueden utilizar correctamente como predictores. Para obtener más información sobre el uso de funciones ATTR, consulte Cuándo utilizar la función Atributo (ATTR).

No se necesita visualizar las dimensiones y medidas (en la vista o visualización) para ser incluidas como predictores. Para obtener instrucciones más detalladas, consulte Elección de predictores.

Recomendaciones

Los cálculos de predicción se utilizan mejor de la siguiente manera:

  • Para predecir valores para registros individuales, donde cada marca de la visualización representa una entidad discreta, como un producto, venta, persona, etc., en lugar de datos agregados. Se debe a que Tableau considera que cada marca es igualmente probable, incluso si una marca se compone de 100 registros y las demás marcas se componen de un registro cada uno. El motor estadístico no sopesa las marcas en función del número de registros que lo componen.

  • Para predecir valores para expresiones de destino agregadas mediante SUM y COUNT.
Nota: No se recomiendan MODEL_QUANTILE y MODEL_PERCENTILE para predecir valores para target_expressions agregados mediante AVG, MEDIAN, MIN y MAX.

Limitaciones

  • Debe utilizar un campo calculado para extender una serie temporal en el futuro. Para obtener más información, consulte Predecir el futuro.

  • Los predictores deben estar en el mismo nivel de detalle o más alto que la vista. Es decir, si la vista se agrega por estado, debe usar estado o región como predictor, pero no ciudad. Para obtener más información, consulte Elección de predictores.

¿Cuándo se romperán los cálculos de predicción?

Independientemente del modelo que esté utilizando, debe tener al menos tres puntos de datos dentro de cada partición para que el modelo devuelva una respuesta.

Si ha especificado la regresión del proceso gaussiano como modelo, se puede utilizar en cálculos predictivos con un predictor dimensional ordenado y cualquier número de predictores dimensionales desordenados. Las medidas no se admiten como predictores en los cálculos de regresión de procesos gaussianos, pero se pueden utilizar en cálculos de regresión lineal y lineal regularizados. Para obtener más información sobre la selección de modelos, consulte Seleccionar un modelo predictivo.

Si el cálculo utiliza ATTR[Estado] como predictor y su visualización también incluía Estado como una marca pero ningún otro campo en un nivel de detalle inferior, como Ciudad, entonces se devolvería un error. Para evitarlo, asegúrese de que no hay una relación una a una entre las marcas y las categorías predictoras.

Para obtener más información sobre estos y otros problemas de predicción, consulte Resolver errores en funciones de modelado predictivo.

Preguntas frecuentes

¿Qué pasa con las marcas en varios grupos de predictores?

Si una fila se agrega a partir de datos que existen dentro de varios grupos de predictores, el valor de la función ATTR es un valor especial de varios valores. Por ejemplo, todas las ciudades que existen en varios estados tendrán el mismo valor previsto (a menos que haya otros predictores que sean distintos). Al seleccionar sus predictores, es mejor usar predictores que estén en el mismo nivel de detalle que la visualización o superior. Una vez más, para obtener más información sobre las funciones ATTR, consulte Cuándo utilizar la función atributo (ATTR).

¿Qué sucede si la agregación ATTR devuelve un valor *?

* se trata como un valor distinto. Si ATTR devuelve * para todas las marcas, entonces usted, en esencia, tiene un predictor con un valor constante, que se omitirá. Equivale a no incluir ese predictor.

Si ATTR devuelve * para algunas marcas, pero no para todas, se tratará como una categoría donde todos los valores * se consideran iguales. Este caso es idéntico al descrito anteriormente, en el que existen marcas en varios grupos de predictores.

¿Qué pasa con las opciones del menú de cálculo de tablas "calcular mediante"?

Funciona de forma idéntica a "calcular mediante" en otros cálculos de tabla. Para obtener más información, consulte Calcular mediante y la división de datos en el modelado predictivo.

¿Por qué aparece un error?

Hay varias razones por las que puede aparecer un error al utilizar funciones de modelado predictivo. Para ver los pasos de solución de problemas detallados, consulte Resolver errores en funciones de modelado predictivo.

¡Gracias por sus comentarios!Sus comentarios se han enviado correctamente. ¡Gracias!