Explicabilidad de previsión - Amazon Forecast

Amazon Forecast ya no está disponible para nuevos clientes. Los clientes actuales de Amazon Forecast pueden seguir utilizando el servicio con normalidad. Más información

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Explicabilidad de previsión

La explicabilidad de previsión automática le ayuda a comprender mejor el impacto de los atributos de sus conjuntos de datos sobre las previsiones para series temporales (combinaciones de artículos y dimensiones) y puntos temporales específicos. Forecast utiliza una métrica llamada puntuaciones de impacto para cuantificar el impacto relativo de cada atributo y determinar si aumentan o disminuyen los valores de previsión.

Por ejemplo, imaginemos un escenario de previsión en el que el objetivo es sales y hay dos atributos relacionados: price y color. Forecast puede detectar que el color del artículo tiene un gran impacto en las ventas de algunos artículos, pero un efecto insignificante en el caso de otros artículos. También puede descubrir que una promoción en verano tiene un gran impacto en las ventas, mientras que una promoción en invierno tiene poco efecto.

Para habilitar la explicabilidad de previsión, su predictor debe incluir al menos uno de los siguientes elementos: series temporales relacionadas, metadatos de artículos o conjuntos de datos adicionales, como Días festivos e Índice meteorológico. Para obtener más información, consulte Restricciones y prácticas recomendadas.

Para ver las puntuaciones de impacto agregadas de todas las series temporales y puntos temporales de sus conjuntos de datos, utilice Explicabilidad del predictor en lugar de Explicabilidad de previsión. Consulte Explicabilidad del predictor.

Cuadernos de Python

Para obtener una step-by-step guía sobre la explicabilidad de Forecast, consulte Explicabilidad a nivel de artículo.

Interpretación de las puntuaciones de impacto

Las puntuaciones de impacto miden el impacto relativo que tienen los atributos en los valores de previsión. Por ejemplo, si el atributo “precio” tiene una puntuación de impacto dos veces superior a la del atributo “ubicación de tienda”, podemos concluir que el precio de un artículo tiene el doble de impacto en los valores de previsión que la ubicación de la tienda.

Las puntuaciones de impacto también proporcionan información sobre si los atributos aumentan o disminuyen los valores de previsión. En la consola, esto se indica mediante los dos gráficos. Los atributos con barras azules aumentan los valores de previsión, mientras que los atributos con barras rojas disminuyen los valores de previsión.

Bar graphs showing attributes' impact on forecast: price and promo increase, store location decreases.

Es importante tener en cuenta que las puntuaciones de impacto miden el impacto relativo de los atributos, no el impacto absoluto. Por lo tanto, las puntuaciones de impacto no se pueden utilizar para determinar si determinados atributos mejoran la precisión del modelo. Si un atributo tiene una puntuación de impacto baja, eso no significa necesariamente que tenga un impacto bajo en los valores de previsión; significa que tiene un impacto menor en los valores de previsión que otros atributos utilizados por el predictor.

Es posible que todas las puntuaciones de impacto o algunas de ellas sean cero. Esto puede ocurrir si las funciones no influyen en los valores de las previsiones, si se ha AutoPredictor utilizado únicamente un algoritmo que no es de aprendizaje automático o si no se han proporcionado series temporales o metadatos de elementos relacionados.

Para Explicabilidad de previsión, las puntuaciones de impacto vienen en dos formas: puntuaciones de impacto normalizadas y puntuaciones de impacto brutas. Las puntuaciones de impacto brutas se basan en los valores de Shapley y no están escaladas ni limitadas. Las puntuaciones de impacto normalizadas escalan las puntuaciones brutas a un valor entre -1 y 1.

Las puntuaciones de impacto brutas son útiles para combinar y comparar las puntuaciones de distintos recursos de explicabilidad. Por ejemplo, si su predictor contiene más de 50 series temporales o más de 500 puntos temporales, puede crear varios recursos de Explicabilidad de previsión para cubrir un mayor número combinado de series temporales o puntos temporales y comparar directamente las puntuaciones de impacto brutas de los atributos. Sin embargo, las puntuaciones de impacto brutas de los recursos de Explicabilidad de previsión de diferentes previsiones no son directamente comparables.

Cuando consulte las puntuaciones de impacto en la consola, solo verá las puntuaciones de impacto normalizadas. Al exportar Explicabilidad, obtendrá puntuaciones brutas y normalizadas.

Creación de Explicabilidad de previsión

Con Explicabilidad de previsión, puede explorar cómo los atributos afectan a los valores de previsión para series temporales específicas en momentos temporales específicos. Tras especificar las series temporales y los puntos temporales, Amazon Forecast calcula las puntuaciones de impacto solo para esas series temporales y esos puntos temporales específicos.

Puede activar Explicabilidad de previsión para un predictor mediante el kit de desarrollo de software (SDK) o la consola Amazon Forecast. Cuando utilice el SDK, utilice la CreateExplainabilityoperación.

Especificación de series temporales

nota

Una serie temporal es una combinación del artículo (id_artículo) y todas las dimensiones de los conjuntos de datos

Al especificar series temporales (combinaciones de artículos y dimensiones) para Explicabilidad de previsión, Amazon Forecast calcula las puntuaciones de impacto de los atributos solo para esas series temporales específicas.

Para especificar una lista de series temporales, cargue un archivo CSV que identifique las series temporales por su id_artículo y sus valores de dimensión en un bucket de S3. Puede especificar hasta 50 series temporales. También debe definir los atributos y los tipos de atributos de las series temporales en un esquema.

Por ejemplo, es posible que un minorista desee saber cómo afecta una promoción a las ventas de un artículo específico (item_id) en una ubicación de tienda específica (store_location). En este caso de uso, debe especificar la serie temporal que es la combinación de id_artículo y ubicación_tienda.

El siguiente archivo CSV selecciona las cinco series temporales siguientes:

  1. Id_artículo: 001, ubicación_tienda: Seattle

  2. Id_artículo: 001, ubicación_tienda: Nueva York

  3. Id_artículo: 002, ubicación_tienda: Seattle

  4. Id_artículo: 002, ubicación_tienda: Nueva York

  5. Id_artículo: 003, ubicación_tienda: Denver

001, Seattle 001, New York 002, Seattle 002, New York 003, Denver

El esquema define la primera columna como item_id y la segunda columna como store_location.

Puede especificar series temporales mediante la consola de Forecast o el kit de desarrollo de software (SDK) de Forecast.

Console

Para especificar series temporales para Explicabilidad de previsión

  1. Inicia sesión en la consola Amazon Forecast AWS Management Console y ábrela en https://console.aws.amazon.com/forecast/.

  2. En Grupos de conjuntos de datos, elija su grupo de conjuntos de datos.

  3. En el panel de navegación, elija Insights.

  4. Seleccione Crear explicabilidad.

  5. En el campo Nombre de explicabilidad, proporcione un nombre exclusivo para Explicabilidad de previsión.

  6. En el campo Seleccionar previsión, seleccione su previsión.

  7. En el campo de Ubicación de S3, ingrese la ubicación del archivo con su serie temporal.

  8. En el campo Esquema de datos, defina el nombre de atributo y el tipo de atributo del ID de artículo y las dimensiones utilizados en la serie temporal.

  9. Seleccione Crear explicabilidad.

SDK

Para especificar series temporales para Explicabilidad de previsión

Mediante la CreateExplainabilityoperación, proporcione un nombre único para ExplainabilityName y proporcione su ARN de previsión. ResourceArn

Configure los siguientes tipos de datos:

  • ExplainabilityConfig- TimeSeriesGranularity defina los valores como «ESPECÍFICOS» y TimePointGranularity «TODOS». (Para especificar puntos de tiempo, TimePointGranularity establézcalo en «ESPECÍFICO». Consulte Especificar puntos de tiempo)

  • S3Config- defina los valores de «Ruta» en la ubicación S3 del archivo de series temporales y «RoleArn» en un rol con acceso al depósito de S3.

  • Schema- defina los caracteres «AttributeName» y «AttributeType» para el item_id y las dimensiones de su serie temporal.

El siguiente ejemplo muestra un esquema de series temporales que utilizan una combinación de “id_artículo” y la dimensión “ubicación_tienda”.

{ "ExplainabilityName" : [unique_name], "ResourceArn" : [forecast_arn], "ExplainabilityConfig" { "TimeSeriesGranularity": "SPECIFIC", "TimePointGranularity": "ALL" }, "DataSource": { "S3Config": { "Path": [S3_path_to_file], "RoleArn":[role-to-access-s3-bucket] } }, "Schema": { "Attributes": [ { "AttributeName": "item_id", "AttributeType": "string" }, { "AttributeName": "store_location", "AttributeType": "string" } ] }, }

Especificación de puntos temporales

nota

Si no especifica puntos temporales ("TimePointGranularity": "ALL"), Amazon Forecast tendrá en cuenta todo el horizonte de previsión al calcular las puntuaciones de impacto.

Al especificar puntos temporales para Explicabilidad de previsión, Amazon Forecast calcula las puntuaciones de impacto de los atributos para ese intervalo de tiempo específico. Puede especificar hasta 500 puntos temporales consecutivos dentro del horizonte de previsión.

Por ejemplo, es posible que un minorista quiera saber cómo afectan sus atributos a las ventas durante el invierno. En este caso de uso, especificarían los puntos temporales para que abarcaran solo el período de invierno en el horizonte de previsión.

Puede especificar puntos temporales mediante la consola de Forecast o el kit de desarrollo de software (SDK) de Forecast.

Console

Para especificar series temporales para Explicabilidad de previsión

  1. Inicia sesión en la consola Amazon Forecast AWS Management Console y ábrela en https://console.aws.amazon.com/forecast/.

  2. En Grupos de conjuntos de datos, elija su grupo de conjuntos de datos.

  3. En el panel de navegación, elija Insights.

  4. Seleccione Crear explicabilidad.

  5. En el campo Nombre de explicabilidad, proporcione un nombre exclusivo para Explicabilidad de previsión.

  6. En el campo Seleccionar previsión, seleccione su previsión.

  7. En el campo de Ubicación de S3, ingrese la ubicación del archivo con su serie temporal.

  8. En el campo Esquema de datos, establezca el nombre del atributo y el tipo de atributo del ID del artículo y las dimensiones utilizadas en la serie temporal.

  9. En el campo Duración del tiempo, especifique la fecha de inicio y la fecha de finalización en el calendario.

  10. Seleccione Crear explicabilidad.

SDK

Para especificar series temporales para Explicabilidad de previsión

Mediante la CreateExplainabilityoperación, proporcione un nombre único para ExplainabilityName y proporcione su ARN de previsión. ResourceArn Establezca la fecha de inicio (StartDateTime) y la fecha de finalización (EndDateTime) con el siguiente formato de marca temporal: yyyy-MM-ddTHH:mm:ss (ejemplo: 2015-01-01T20:00:00).

Configure los siguientes tipos de datos:

  • ExplainabilityConfig- TimeSeriesGranularity defina los valores en «ESPECÍFICO» y TimePointGranularity «ESPECÍFICO».

  • S3Config- defina los valores de «Ruta» en la ubicación S3 del archivo de series temporales y «RoleArn» en un rol con acceso al depósito de S3.

  • Schema- defina los caracteres «AttributeName» y «AttributeType» para el item_id y las dimensiones de su serie temporal.

El siguiente ejemplo muestra un esquema de series temporales que utilizan una combinación de “id_artículo” y la dimensión “ubicación_tienda”.

{ "ExplainabilityName" : [unique_name], "ResourceArn" : [forecast_arn], "ExplainabilityConfig" { "TimeSeriesGranularity": "SPECIFIC", "TimePointGranularity": "SPECIFIC" }, "DataSource": { "S3Config": { "Path": [S3_path_to_file], "RoleArn":[role-to-access-s3-bucket] } }, "Schema": { "Attributes": [ { "AttributeName": "item_id", "AttributeType": "string" }, { "AttributeName": "store_location", "AttributeType": "string" } ] }, "StartDateTime": "string", "EndDateTime": "string", }

Visualización de Explicabilidad de previsión

Al crear Explicabilidad de previsión en la consola, Forecast visualiza automáticamente sus puntuaciones de impacto. Al crear Forecast Explainability con la CreateExplainabilityoperación, establézcalo EnableVisualization en «true» y las puntuaciones de impacto de ese recurso de explicabilidad se visualizarán en la consola.

Las visualizaciones de las puntuaciones de impacto duran 30 días a partir de la fecha de creación de Explicabilidad. Para volver a crear la visualización, cree una nueva Explicabilidad de previsión.

Exportación de Explicabilidad de previsión

nota

Los archivos de exportación pueden devolver directamente información de la importación del conjunto de datos. Esto hace que los archivos sean vulnerables a ejecuciones CSV si los datos importados contienen fórmulas o comandos. Por este motivo, los archivos exportados pueden provocar advertencias de seguridad. Para evitar actividades maliciosas, desactive los enlaces y las macros al leer los archivos exportados.

Forecast le permite exportar un archivo CSV de puntuaciones de impacto a una ubicación de S3.

La exportación contiene puntuaciones de impacto brutas y normalizadas para la serie temporal especificada, así como puntuaciones de impacto agregadas normalizadas para todas las series temporales y todos los puntos temporales especificados. Si no especificó puntos temporales, las puntuaciones de impacto ya estarán agregadas para todos los puntos temporales del horizonte de previsión.

Spreadsheet showing raw and normalized impact scores for various items and metrics over time.

Puede exportar Explicabilidad de previsión mediante el kit de desarrollo de software (SDK) de Amazon Forecast y la consola Amazon Forecast.

Console

Para exportar Explicabilidad de previsión

  1. Inicia sesión en la consola Amazon Forecast AWS Management Console y ábrela en https://console.aws.amazon.com/forecast/.

  2. En Grupos de conjuntos de datos, elija su grupo de conjuntos de datos.

  3. En el panel de navegación, elija Insights.

  4. Seleccione su explicabilidad.

  5. En el desplegable Acciones, elija Exportar.

  6. En el campo Nombre de exportación, proporcione un nombre exclusivo para la exportación de Explicabilidad de previsión.

  7. En el campo Ubicación de exportación de explicabilidad de S3, escriba la ubicación de S3 para exportar el archivo CSV.

  8. En el campo Rol de IAM, elija un rol con acceso a la ubicación de S3 elegida.

  9. Seleccione Crear exportación de explicabilidad.

SDK

Para exportar Explicabilidad de previsión

Mediante la operación de CreateExplainabilityexportación, especifique su ubicación en S3 y su función de IAM en el Destination objeto, junto con la tecla ExplainabilityArn yExplainabilityExportName.

Por ejemplo:

{ "Destination": { "S3Config": { "Path": "s3://bucket/example-path/", "RoleArn": "arn:aws:iam::000000000000:role/ExampleRole" } }, "ExplainabilityArn": "arn:aws:forecast:region:explainability/example", "ExplainabilityName": "Explainability-export-name", }

Restricciones y prácticas recomendadas

Tenga en cuenta las siguientes restricciones y prácticas recomendadas para trabajar con Explicabilidad de previsión.

  • La explicabilidad de Forecast solo está disponible para algunos pronósticos generados desde AutoPredictor : no puede habilitar la explicabilidad de pronósticos para los pronósticos generados a partir de predictores heredados (selección manual o automática). AutoPredictorConsulte Actualizar a.

  • La explicabilidad de las previsiones no está disponible para todos los modelos: los modelos ARIMA (media móvil AutoRegressive integrada), ETS (modelo espacial de estados suavizados exponenciales) y NPTS (series temporales no paramétricas) no incorporan datos de series temporales externas. Por lo tanto, estos modelos no crean un informe de explicabilidad, incluso si se incluyen los conjuntos de datos adicionales.

  • La explicabilidad requiere atributos: el predictor debe incluir al menos uno de los siguientes elementos: series temporales relacionadas, metadatos de los artículos, días festivos o el índice meteorológico.

  • Las puntuaciones de impacto de cero indican que no hay impacto: si uno o más atributos tienen una puntuación de impacto de cero, estos atributos no tienen un impacto significativo en los valores de previsión. Las puntuaciones también pueden ser cero si se ha AutoPredictor utilizado únicamente un algoritmo que no es de aprendizaje automático o si no se han proporcionado series temporales o metadatos de elementos relacionados.

  • Especifique un máximo de 50 series temporales: puede especificar hasta 50 series temporales por Explicabilidad de previsión.

  • Especifique un máximo de 500 puntos temporales: puede especificar hasta 500 puntos temporales consecutivos por Explicabilidad de previsión.

  • Forecast también calcula algunas puntuaciones de impacto agregadas: Forecast también proporcionará puntuaciones de impacto agregadas para las series temporales y los puntos temporales especificados.

  • Cree varios recursos de Explicabilidad de previsión para una sola previsión: si desea puntuaciones de impacto para más de 50 series temporales o 500 puntos temporales, puede crear recursos de Explicabilidad en lotes para abarcar un rango más amplio.

  • Compare las puntuaciones de impacto brutas entre diferentes recursos de Explicabilidad de previsión: las puntuaciones de impacto brutas se pueden comparar directamente entre los recursos de Explicabilidad de la misma previsión.

  • Las visualizaciones de Explicabilidad de previsión están disponibles durante 30 días después de su creación: para ver la visualización después de 30 días, cree una nueva Explicabilidad de previsión con la misma configuración.