Importación de conjuntos de datos - Amazon Forecast

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.

Importación de conjuntos de datos

Losconjuntos de datos contienen los datos utilizados para entrenar un predictor. Debe crear uno o más conjuntos de datos de Amazon Forecast y, a continuación, importar en ellos los datos de entrenamiento. Un grupo de conjuntos de datos es una colección de conjuntos de datos complementarios que detallan un conjunto de parámetros cambiantes durante un período de tiempo. Después de crear un grupo de conjuntos de datos, puede utilizarlo para entrenar un predictor.

Cada grupo de conjuntos de datos puede tener hasta tres conjuntos de datos, uno de cada tipo de conjunto de datos: serie temporal de destino, serie temporal relacionada y metadatos de artículo.

Para crear y administrar conjuntos de datos y grupos de conjuntos de datos de Forecast, puede usar la consola Forecast, AWS Command Line Interface (AWS CLI) o el AWS SDK.

Para ver, por ejemplo, conjuntos de datos de Forecast, consulte el GitHubrepositorio de muestras de Amazon Forecast.

Conjuntos de datos

Para crear y administrar conjuntos de datos de Forecast, puede utilizar las API de Forecast, incluidas las operaciones CreateDataset y DescribeDataset. Para ver una lista completa de las API de Forecast, consulte Referencia de la API.

Al crear un conjunto de datos, debe proporcionar información, como la siguiente:

  • La frecuencia/el intervalo en el que ha registrado sus datos. Por ejemplo, podría agregar y registrar las ventas de artículos al por menor cada semana. En el ejercicio Introducción, utilice la electricidad media utilizada por hora.

  • El formato de predicción (el dominio) y el tipo de conjunto de datos (dentro del dominio). Un dominio de conjunto de datos especifica qué tipo de previsión desea realizar, mientras que un tipo de conjunto de datos le ayuda a organizar los datos de entrenamiento en categorías compatibles con Forecast.

  • Esquema de conjunto de datos Un esquema asigna los encabezados de columna del conjunto de datos. Por ejemplo, al supervisar la demanda, es posible que haya recopilado datos por hora sobre las ventas de un artículo en varias tiendas. En este caso, el esquema definiría el orden, de izquierda a derecha, en el que aparecerán la marca temporal, la ubicación y las ventas por hora en el archivo de datos de capacitación. Los esquemas también definen el tipo de datos de cada columna, como string o integer.

  • Información de geolocalización y zona horaria. El atributo de geolocalización se define en el esquema con el tipo de atributo geolocation. La información de la zona horaria se define con la CreateDatasetImportJoboperación. Se deben incluir tanto los datos de geolocalización como los de zona horaria para habilitar el índice meteorológico.

Cada columna del conjunto de datos de Forecast representa una dimensión o una característica de previsión. Las dimensiones de previsión describen los aspectos de los datos que no cambian con el tiempo, como store o location. Las funciones de previsión incluyen cualquier parámetro de los datos que varía con el tiempo, como price o promotion. Algunas dimensiones, como timestamp o itemId, son necesarias en los conjuntos de datos de serie temporal de destino y serie temporal relacionada.

Dominios de conjunto de datos y tipos de conjunto de datos

Cuando crea un conjunto de datos de Forecast, elige un dominio y un tipo de conjunto de datos. Forecast proporciona dominios para una serie de casos de uso, como la previsión de la demanda minorista o el tráfico web. También puede crear un dominio personalizado. Para obtener una lista completa de dominios de Forecast, consulte Tipos de conjunto de datos y dominios de conjunto de datos predefinidos.

Dentro de cada dominio, los usuarios de Forecast pueden especificar los siguientes tipos de conjuntos de datos:

  • Conjunto de datos de series temporales objetivo (obligatorio): use este tipo de conjunto de datos cuando los datos de entrenamiento sean una serie temporal e incluyan el campo para el que desea generar una previsión. Este campo se denomina campo de destino.

  • Conjunto de datos de series temporales relacionadas (opcional): elije este tipo de conjunto de datos cuando los datos de entrenamiento sean una serie temporal, pero no incluyan el campo de destino. Por ejemplo, si está haciendo una previsión sobre la demanda de artículos, el conjunto de datos de serie temporal relacionada podría tener price como campo, pero no demand.

  • Conjunto de datos de metadatos de artículos (opcional): elija este tipo de conjunto de datos si sus datos de entrenamiento no son datos de series temporales, sino que incluyen información de metadatos sobre los artículos de la serie temporal de destino o conjuntos de datos de series temporales relacionadas. Por ejemplo, si realiza una previsión de la demanda de artículos, es posible que un conjunto de datos de metadatos de artículos tenga color o brand como dimensiones.

    Forecast solo tiene en cuenta los datos proporcionados por un tipo de conjunto de datos de metadatos de artículos cuando se utiliza el algoritmo CNN-QR o DeepAR+.

    Los metadatos de artículos son especialmente útiles en escenarios de previsión de inicio de arranque en frío, en los que se dispone de pocos datos históricos directos con los que realizar predicciones, pero sí disponen de datos históricos sobre artículos con atributos de metadatos similares. Al incluir los metadatos de los artículos, Forecast crea previsiones de arranque en frío basadas en series temporales similares, lo que puede generar una previsión más precisa.

En función de la información de los datos de entrenamiento y de lo que desee prever, es posible que cree más de un conjunto de datos.

Por ejemplo, supongamos que desea generar una previsión de la demanda de artículos de venta al por menor, como, por ejemplo, zapatos y calcetines. Es posible crear los siguientes conjuntos de datos en el dominio RETAIL:

  • Conjunto de datos de series temporales de destino: incluye los datos de la demanda de los artículos minoristas (item_id, timestamp y el campo de destino demand) en series temporales históricas. Dado que designa el campo de destino del que desea realizar una previsión, debe tener al menos un conjunto de datos de serie temporal de destino en un grupo de conjuntos de datos.

    También puede añadir hasta diez dimensiones adicionales a un conjunto de datos de serie temporal de destino. Si solo incluye un conjunto de datos de serie temporal de destino en su grupo de conjuntos de datos, puede crear previsiones en el nivel de artículo o en el nivel de detalle de la dimensión de previsión únicamente. Para obtener más información, consulte CreatePredictor.

  • Conjunto de datos de series temporales relacionadas: incluye datos históricos de series temporales distintos del campo de destino, como price o revenue. Dado que los datos de series temporales relacionadas deben asignarse a datos de series temporales de destino, cada conjunto de datos de series temporales relacionadas debe contener los mismos campos de identificación. En el dominio RETAIL, serían item_id y timestamp.

    Los conjuntos de datos de las series temporales relacionadas pueden contener datos que refinen las previsiones realizadas con el conjunto de datos de series temporales de destino. Por ejemplo, puede incluir datos price en el conjunto de datos de serie temporal relacionada en las fechas futuras para las que desea generar una previsión. De esta manera, Forecast podrá realizar predicciones con una dimensión contextual adicional. Para obtener más información, consulte Uso de conjuntos de datos de serie temporal relacionada.

  • Conjunto de datos de metadatos de artículos: incluye los metadatos de los artículos de venta minorista. Otros ejemplos de metadatos son brand, category, color y genre.

Conjunto de datos de ejemplo con una dimensión de previsión

Siguiendo con el ejemplo anterior, imagine que desea prever la demanda de zapatos y calcetines en función de las ventas anteriores de una tienda. En el siguiente conjunto de datos de serie temporal de destino, store es una dimensión de previsión de serie temporal, mientras que demand es el campo de destino. Los calcetines se venden en dos ubicaciones de tiendas (NYC y SFO), y los zapatos solo se venden en ORD.

Las tres primeras filas de esta tabla contienen los primeros datos de ventas disponibles para los almacenes de NYC, SFO y ORD. Las tres últimas filas contienen los últimos datos de ventas registrados para cada tienda. La fila ... representa todos los datos de ventas de artículos registrados entre la primera y la última entrada.

timestamp item_id store demand
2019-01-01 socks NYC 25
2019-01-05 socks SFO 45
2019-02-01 shoes ORD 10
...
2019-06-01 socks NYC 100
2019-06-05 socks SFO 5
2019-07-01 shoes ORD 50

Esquema de conjunto de datos

Todos los conjuntos de datos necesitan un esquema, una correspondencia proporcionada por el usuario en formato JSON de los campos de los datos de entrenamiento. Aquí es donde indica las dimensiones y funciones, tanto obligatorias como opcionales, que desea incluir en el conjunto de datos.

Si su conjunto de datos incluye un atributo de geolocalización, defina el atributo dentro del esquema con el tipo de atributo geolocation. Para obtener más información, consulte Cómo añadir información de geolocalización. Para aplicar el índice meteorológico, debe incluir un atributo de geolocalización en su serie temporal de destino y en cualquier conjunto de datos de series temporales relacionadas.

Algunos dominios tienen dimensiones opcionales que recomendamos incluir. Las dimensiones opcionales se enumeran en las descripciones de cada dominio más adelante en esta guía. Para ver un ejemplo, consulte Dominio RETAIL. Todas las dimensiones opcionales toman el tipo de datos string.

Se requiere un esquema para cada conjunto de datos. A continuación, se muestra el esquema asociado al conjunto de datos de series temporales de destino del ejemplo anterior.

{ "attributes": [ { "AttributeName": "timestamp", "AttributeType": "timestamp" }, { "AttributeName": "item_id", "AttributeType": "string" }, { "AttributeName": "store", "AttributeType": "string" }, { "AttributeName": "demand", "AttributeType": "float" } ] }

Cuando carga los datos de entrenamiento en el conjunto de datos que utiliza este esquema, Forecast presupone que el campo timestamp es la columna 1, que el campo item_id es la columna 2, que el campo store es la columna 3 y que el campo demand, el campo de destino, es la columna 4.

Para el tipo de conjunto de datos de serie temporal relacionada, todas las características relacionadas deben tener un tipo de atributo de valor flotante o entero. Para el tipo de conjunto de datos de metadatos de artículo, todas las características deben tener un tipo de atributo de cadena. Para obtener más información, consulte SchemaAttribute.

nota

Se requiere un par attributeName y attributeType para cada columna del conjunto de datos. Forecast reserva una serie de nombres que no se pueden usar como nombre de un atributo de esquema. Para ver la lista de los nombres reservados, consulte Nombres de campo reservados.

Grupos de conjuntos de datos

Un grupo de conjuntos de datos es una colección de uno a tres conjuntos de datos complementarios, uno de cada tipo. Puede importar conjuntos de datos a un grupo de conjuntos de datos y, a continuación, utilizar el grupo de conjuntos de datos para entrenar un predictor.

Forecast incluye las siguientes operaciones para crear grupos de conjuntos de datos y añadirles conjuntos de datos:

Resolución de conflictos en la frecuencia de recopilación de datos

Forecast puede entrenar predictores con datos que no se alinean con la frecuencia de datos que especifique en la operación CreateDataset. Por ejemplo, puede importar los datos registrados en intervalos de una hora aunque algunos de los datos no tengan una marca de tiempo al principio de la hora (02:20, 02:45). Forecast usa la frecuencia de datos que especifique para obtener información sobre sus datos. A continuación, Forecast agrega los datos durante el entrenamiento del predictor. Para más información, consulte Agregación de datos para distintas frecuencias de previsión.