

 O Amazon Forecast não está mais disponível para novos clientes. Os clientes existentes do Amazon Forecast podem continuar usando o serviço normalmente. [Saiba mais](https://aws.amazon.com/blogs/machine-learning/transition-your-amazon-forecast-usage-to-amazon-sagemaker-canvas/)

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

# Agregação de dados para diferentes frequências de previsão
<a name="data-aggregation"></a>

 Ao criar um preditor, você deve especificar uma frequência de previsão. A frequência da previsão determina a frequência das previsões. Por exemplo, previsões mensais de vendas. Os preditores do Amazon Forecast podem gerar previsões para frequências de dados maiores do que a frequência de previsão especificada. Por exemplo, você pode gerar previsões semanais mesmo que seus dados sejam registrados diariamente. Durante o treinamento, o Forecast agrega os dados diários para gerar previsões na frequência de previsão semanal.

**Topics**
+ [Como funciona a agregação](how-aggregation-works.md)
+ [Limites de tempo](#time-boundaries)
+ [Suposições de agregação de dados](aggregation-guidelines.md)

# Como funciona a agregação
<a name="how-aggregation-works"></a>

 Durante o treinamento, o Amazon Forecast agrega quaisquer dados que não estejam alinhados à frequência de previsão que você especificou. Por exemplo, você pode ter alguns dados diários, mas especificar uma frequência de previsão semanal. O Forecast alinha os dados diários com base na semana à qual eles pertencem. O Forecast, então, os combina em um único registro para cada semana. O Forecast determina a qual semana (ou mês ou dia e assim por diante) os dados pertencem com base na sua relação com um limite de tempo. Os limites de tempo especificam o início de uma unidade de tempo; por exemplo, a hora em que o dia começa ou em que dia a semana começa. 

 Para previsões por hora e minuto, ou limites de tempo não especificados, o Forecast usa um limite de tempo padrão com base na unidade de tempo da sua frequência. Para preditores automáticos com frequências de previsão diárias, semanais, mensais ou anuais, é possível especificar um limite de tempo personalizado. Para obter mais informações sobre os limites de tempo, consulte [Limites de tempo](data-aggregation.md#time-boundaries). 

 Durante a agregação, o método de transformação padrão é somar os dados. Você pode configurar a transformação ao criar seu preditor. Para isso, vá até a seção **Configuração dos dados de entrada** na página **Criar preditor** no console do Forecast. Ou você pode definir o método de transformação no `Transformations` parâmetro [AttributeConfig](API_AttributeConfig.md) da CreateAutoPredictor operação.

As tabelas a seguir mostram um exemplo de agregação para uma frequência de previsão por hora usando o limite de tempo padrão: cada hora começa no início da hora.

**Pré-transformação**


| Tempo | Dados | Na hora cheia | 
| --- | --- | --- | 
| 2018-03-03 01:00:00 | 100 | Sim | 
| 2018-03-03 02:20:00 | 50 | Não | 
| 2018-03-03 02:45:00 | 20 | Não | 
| 2018-03-03 04:00:00 | 120 | Sim | 

**Pós-transformação**


| Tempo | Dados | Observações | 
| --- | --- | --- | 
| 2018-03-03 01:00:00 | 100 |  | 
| 2018-03-03 02:00:00 | 70 | Soma dos valores entre 02:00:00 e 02:59:59 (50\$120) | 
| 2018-03-03 03:00:00 | Vazio | Nenhum valor entre 03:00:00 e 03:59:59 | 
| 2018-03-03 04:00:00 | 120 |  | 

A figura a seguir mostra como o Forecast transforma dados para se ajustarem ao limite de tempo semanal padrão.

![\[Raw sales data points transformed into a smooth demand time series curve over weekly intervals.\]](http://docs.aws.amazon.com/pt_br/forecast/latest/dg/images/data-alignment.png)


## Limites de tempo
<a name="time-boundaries"></a>

Os limites de tempo especificam o início de uma unidade de tempo; por exemplo, em que dia a semana começa. Antes de agregar seus dados, o Amazon Forecast alinha os dados com base na unidade de tempo da sua frequência de previsão. Ele faz isso com base na relação dos dados com um limite de tempo.

 Por exemplo, se você especificar uma frequência de previsão diária, mas não seu próprio limite de tempo, o Forecast alinhará cada registro por hora com base no dia ao qual ele pertence. Cada dia começa na hora 0. A definição de quando o dia começa, hora 0, é o limite de tempo. Em seguida, o Forecast agrega os registros por hora em um único registro desse dia. 

O Forecast usa um limite de tempo padrão com base na unidade de tempo da sua frequência de previsão. Se você criar um preditor automático, poderá especificar um limite de tempo personalizado.

Se você especificar um limite de tempo personalizado e uma frequência de previsão personalizada, o Forecast agregará seus dados na frequência de previsão e os alinhará ao limite de tempo personalizado. A frequência de previsão determina a frequência com que os dados são agregados, enquanto o limite de tempo personalizado determina onde o alinhamento está localizado. Por exemplo, suponhamos que seus dados sejam coletados diariamente e você queira que o Amazon Forecast gere previsões trimestrais no dia 15 de cada mês durante um ano. Para fazer isso, defina a frequência de previsão para cada 3 meses e o limite de tempo personalizado para 15. Veja o AWS Command Line Interface exemplo a seguir.

```
aws forecast create-predictor \
--predictor-name predictor_name \
--data-config DatasetGroupArn="arn:aws:forecast:region:account:dataset-group/datasetGroupName" \
--forecast-horizon 4 \
--forecast-frequency 3M \
--time-alignment-boundary DayOfMonth=15
```

Neste exemplo, todos os dados diários são somados (a agregação padrão) até o dia 15 de cada três meses. 

Observe que essa agregação não exige dados diários, mas apenas que os dados sejam coletados mensalmente ou com mais frequência. 

**Topics**
+ [limite de tempo padrão](#default-time-boundaries)
+ [Como especificar um limite de tempo](#specifying-time-boundary)

### limite de tempo padrão
<a name="default-time-boundaries"></a>

A tabela a seguir lista os limites de alinhamento de tempo padrão que o Forecast usa ao agregar dados.


| Frequência | Limite | 
| --- | --- | 
| Minuto | Último início do minuto (45:00, 06:00) | 
| Hora | Último início da hora (09:00:00, 13:00:00) | 
| Dia | Primeira hora do dia (hora 0) | 
| Semana | Última segunda-feira | 
| Mês | Primeiro dia do mês | 
| Ano | Primeiro dia do ano (1º de janeiro) | 

### Como especificar um limite de tempo
<a name="specifying-time-boundary"></a>

**nota**  
Você só pode especificar um limite de tempo para um preditor automático.

 Ao criar um preditor automático com uma frequência de previsão diária, semanal, mensal ou anual, você pode especificar o limite de tempo que o Forecast usa para agregar dados. Você pode especificar um limite de tempo se seu calendário comercial não estiver alinhado aos limites de tempo padrão. Por exemplo, talvez você precise gerar previsões mensais em que cada mês começa no terceiro dia do mês. Se você não especificar um limite de tempo, o Forecast usará um conjunto de [limite de tempo padrão](#default-time-boundaries). 

 A unidade de limite de tempo especificada deve ser uma unidade mais precisa do que sua frequência de previsão. A tabela a seguir lista a unidade de limite de tempo e os valores que você pode especificar, organizados por frequência de previsão. 

Você só pode especificar um limite de tempo `Monthly` com um valor limite igual ou inferior a `28`.


| Unidade de frequência de previsão | Unidade de limite | Valores limite | 
| --- | --- | --- | 
| Por dia | Hora | 0 – 23 | 
| Por semana | Dia da semana | Segunda a domingo | 
| Mensal | Dia do mês | 1 a 28 | 
| Anualmente | Mês | Janeiro a dezembro | 

Você especifica um limite de alinhamento de tempo ao criar um preditor da maneira a seguir. Para obter informações sobre as diferentes unidades de limite de tempo e valores limite que você pode especificar de modo programático, consulte [TimeAlignmentBoundary](API_TimeAlignmentBoundary.md). 

------
#### [ Console ]

****

**Para especificar um limite de alinhamento de tempo para um preditor**

1. Faça login Console de gerenciamento da AWS e abra o console do Amazon Forecast em [https://console.aws.amazon.com/forecast/](https://console.aws.amazon.com/forecast/).

1. Na página **Grupos de conjuntos de dados**, escolha seu grupo de conjuntos de dados.

1. No painel de navegação, selecione **Preditores**.

1. Escolha **Treinar novo preditor**.

1. Forneça valores para os campos obrigatórios **Nome**, **Frequência de previsão** e **Horizonte de previsão**.

1.  Em **Limite de alinhamento de tempo**, especifique o limite de tempo que o preditor usará ao agregar seus dados. Os valores nessa lista dependem da **frequência de previsão** que você escolher. 

1. Escolha **Iniciar**. O Forecast agregará dados usando o limite de alinhamento de tempo que você especificar ao criar seu preditor.

------
#### [ AWS CLI ]

Para especificar um limite de alinhamento de tempo para um preditor com o AWS CLI, use o comando. `create-predictor` No parâmetro `time-alignment-boundary`, forneça a unidade de tempo e o valor limite. O código a seguir cria um preditor automático que faz previsões para 5 semanas no futuro, em que cada semana começa na terça-feira. 

Os valores `DayOfWeek` e `DayOfMonth` devem estar em letras maiúsculas. Para obter informações sobre as diferentes unidades de limite de tempo e valores limite que você pode especificar, consulte [TimeAlignmentBoundary](API_TimeAlignmentBoundary.md). Para obter informações sobre os parâmetros obrigatórios e opcionais, consulte [CreateAutoPredictor](API_CreateAutoPredictor.md).

```
aws forecast create-predictor \
--predictor-name predictor_name \
--data-config DatasetGroupArn="arn:aws:forecast:region:account:dataset-group/datasetGroupName" \
--forecast-horizon 5 \
--forecast-frequency W \
--time-alignment-boundary DayOfWeek=TUESDAY
```

------
#### [ Python ]

Para especificar um limite de alinhamento de tempo para um preditor com o SDK para Python (Boto3), use o método `create_auto_predictor`. No parâmetro `TimeAlignmentBoundary`, forneça um dicionário com a unidade de tempo como chave e o valor limite como valor. O código a seguir cria um preditor automático que faz previsões para 5 semanas no futuro, em que cada semana começa na terça-feira. 

Os valores `DayOfWeek` e `DayOfMonth` devem estar em letras maiúsculas. Para obter informações sobre as diferentes unidades de limite de tempo e valores limite que você pode especificar, consulte [TimeAlignmentBoundary](API_TimeAlignmentBoundary.md). Para obter informações sobre os parâmetros obrigatórios e opcionais, consulte [CreateAutoPredictor](API_CreateAutoPredictor.md).

```
import boto3
            
forecast = boto3.client('forecast')

create_predictor_response = forecast.create_auto_predictor(
    PredictorName = 'predictor_name',
    ForecastHorizon = 5,
    ForecastFrequency = 'W',
    DataConfig = {
      "DatasetGroupArn": "arn:aws:forecast:region:account:dataset-group/datasetGroupName"
    },
    TimeAlignmentBoundary = {
      "DayOfWeek": "TUESDAY"
    }
)
print(create_predictor_response['PredictorArn'])
```

------

# Suposições de agregação de dados
<a name="aggregation-guidelines"></a>

O Forecast não pressupõe que seus dados sejam de um fuso horário específico. No entanto, ele faz as seguintes suposições ao agregar dados de séries temporais:
+ Todos os dados são do mesmo fuso horário.
+ Todas as previsões estão no mesmo fuso horário que os dados no conjunto de dados.
+ Se você especificar o recurso de feriados [SupplementaryFeature](API_SupplementaryFeature.md) no parâmetro [InputDataConfig](API_InputDataConfig.md) da operação [CreatePredictor](API_CreatePredictor.md), os dados de entrada serão do mesmo país.