O blog da AWS

Medição da precisão do modelo de previsão para otimizar seus objetivos de negócios com o Amazon Forecast

Por Namita Das e Danielle Robinson

 

Estamos entusiasmados em anunciar que agora você pode medir a precisão do seu modelo de previsão para otimizar os trade-offs entre os custos de sub-previsão e previsão excessiva, proporcionando flexibilidade na experimentação. Os custos associados à sub-previsão e ao excesso de previsão diferem. Geralmente, a previsão excessiva leva a altos custos de transporte de inventário e ao desperdício, enquanto a sub-previsão leva a esgotamento de estoques, demandas não atendidas e oportunidades de receita perdidas. O Amazon Forecast permite otimizar esses custos para seus objetivos de negócios, fornecendo uma previsão média, bem como uma distribuição de previsões que capturam a variabilidade da demanda de um valor mínimo para máximo. Com este lançamento, Amazon Forecast agora fornece métricas de precisão para vários pontos de distribuição ao treinar um modelo, permitindo que você otimize rapidamente para sub-previsão e previsão excessiva sem a necessidade de calcular manualmente as métricas.
Os varejistas contam com previsões probabilísticas para otimizar sua cadeia de suprimentos para equilibrar o custo da sub-previsão, levando a esgotamento dos estoques, com o custo de previsão excessiva, levando ao aumento de custos com transporte de estoque e ao desperdício. Dependendo da categoria de produto, os varejistas podem optar por gerar previsões em diferentes pontos de distribuição. Por exemplo, os varejistas de mercearias optam por excesso de estoque de alimentos básicos, como leite e ovos para atender à demanda variável. Embora esses alimentos básicos tenham custos de transporte relativamente baixos, o esgotamento do estoque pode não apenas levar a uma venda perdida, mas também a um abandono completo do carrinho. Ao manter altas taxas de estoque, os varejistas podem melhorar a satisfação do cliente e a fidelidade do mesmo. Por outro lado, os varejistas podem optar por subestocar produtos substituíveis com altos custos de transporte quando o custo das promoções e da eliminação de inventário for superior à venda ocasional perdida. A capacidade de prever em diferentes pontos de distribuição permite que os varejistas otimizem essas prioridades concorrentes quando a demanda é variável.
A Anaplan Inc., uma plataforma nativa em nuvem para orquestrar o desempenho dos negócios, integrou o Amazon Forecast à sua solução PlanIQ para trazer previsão preditiva e planejamento ágil de cenários para clientes corporativos. Evgy Kontorovich, Chefe de Gestão de Produtos, diz: “Cada cliente com quem trabalhamos tem um modelo único de cadeia operacional e de suprimentos que impulsiona diferentes prioridades de negócios. Alguns clientes visam reduzir o excesso de inventário fazendo previsões mais prudentes, enquanto outros se esforçam para melhorar as taxas de disponibilidade em estoque para atender consistentemente a demanda dos clientes. Com os quantis previstos, os planejadores podem avaliar a precisão desses modelos, avaliar a qualidade do modelo e ajustá-los com base em suas metas de negócios. A capacidade de avaliar a precisão dos modelos de previsão em vários níveis personalizados de quantis capacita ainda mais nossos clientes a tomar decisões baseadas em dados e otimizadas para seus negócios.”
Embora Amazon Forecast tenha a capacidade de prever a distribuição da variabilidade para gerenciar os trade-offs de under-stocking e over-stocking, as métricas de precisão foram fornecidas apenas para a demanda mínima, mediana e máxima prevista, fornecendo uma faixa de confiança de 80% centrada na mediana. Para avaliar a métrica de precisão em um ponto de interesse de distribuição específico, primeiro você precisava criar previsões nesse ponto e, em seguida, calcular manualmente as métricas de precisão por conta própria.
Com esse lançamento, você pode avaliar os pontos fortes de seus modelos de previsão em qualquer ponto de distribuição dentro do Forecast sem precisar gerar previsões e calcular manualmente métricas. Esse recurso permite que você experimente com mais rapidez e chegue de forma mais econômica a um ponto de distribuição para suas necessidades de negócios.
Para usar esse novo recurso, selecione os tipos de previsão (ou pontos de distribuição) de interesse ao criar o preditor. A previsão divide os dados de entrada em conjuntos de dados de treinamento e teste, treina e testa o modelo criado e gera métricas de precisão para esses pontos de distribuição. Você pode continuar a experimentar para otimizar ainda mais os tipos de previsão sem a necessidade de criar previsões em cada etapa.

 

Noções básicas sobre as métricas de precisão

A previsão fornece diferentes métricas de precisão do modelo para você avaliar a força de seus modelos de previsão. Nós fornecemos a métrica de perda de quantil ponderada (WQL) para cada ponto de distribuição selecionado, e erro percentual absoluto ponderado (WAPE) e erro quadrado médio raiz (RMSE), calculados na previsão média. Para cada métrica, um valor mais baixo indica um erro menor e, portanto, um modelo mais preciso. Todas essas métricas de precisão não são negativas.

Vamos dar um exemplo de um conjunto de dados de varejo, como mostrado na tabela a seguir para entender essas diferentes métricas de precisão. Neste conjunto de dados, três itens estão sendo previstos por 2 dias.

Item ID Observações Data
Demanda Real
Previsão Média
Previsão P75

Error P75

(Pronóstico P75 – Real)

Erro absoluto médio

|Real – Pronóstico medio|

Erro quadrático médio

(Real – Pronóstico Medio)2

Item1
O item 1 é um item popular com muita demanda de produto
Día 1 200 195 220 20 5 25
Día 2 100 85 90 -10 15 225
Item2
Com baixa demanda de produtos, o item 2 está na longa cauda da demanda
Día 1 1 2 3 2 1 1
Día 2 2 3 5 3 1 1
Item3
O item 3 está na cauda longa da demanda e observa uma previsão com um grande desvio em relação à demanda real
Día 1 5 45 50 45 40 1600
Día 2 5 35 40 35 30 900
Demanda total = 313 Usado en wQL [0.75] Utilizado en WAPE Utilizado en RMSE

A tabela a seguir resume as métricas de precisão calculadas para o caso de uso do conjunto de dados de varejo.

Métrica Valor
wQL [0.75] 0.21565
WAPE 0.29393
RMSE 21.4165

Nas seções a seguir, explicamos como cada métrica foi calculada e recomendações para o melhor caso de uso para cada métrica.

 

Weighted quantile loss (WQL)

A métrica WQl mede a precisão de um modelo em pontos de distribuição especificados chamados quantis. Esta métrica ajuda a capturar o viés inerente a cada quantil. Para um varejista de mercearia que prefere sobre-estoque de alimentos básicos como leite, a escolha de um quantil maior, como 0,75 (P75) capta melhor picos na demanda e, portanto, é mais informativo do que a previsão no quantil mediano de 0,5 (P50).
Neste exemplo, mais ênfase é dada à previsão excessiva do que a sub-previsão e sugere que uma quantidade maior de estoque é necessária para satisfazer a demanda dos clientes com 75% de probabilidade de sucesso. Em outras palavras, a demanda real é menor ou igual à demanda prevista 75% do tempo, permitindo que o mercearia mantenha as taxas de estoque alvo com estoques de segurança menores.
Recomendamos usar a medida WQl em diferentes quantis quando os custos de sub-previsão e previsão excessiva diferem. Se a diferença de custos for insignificante, você pode considerar a previsão no quantil mediano de 0,5 (P50) ou usar a métrica WAPE, que é avaliada usando a previsão média. A figura a seguir ilustra a probabilidade de atender a demanda dependente do quantil.

 

Para o caso de uso do conjunto de dados de varejo, a previsão P75 indica que queremos priorizar a previsão excessiva e penalizar a sub-previsão. Para calcular o WQl [0,75], some os valores para os termos positivos na coluna Erro P75 e multiplique-os por um peso menor de 1-0,75 = 0,25, e some os valores absolutos dos termos negativos na coluna Erro P75 e multiplique-os por um peso maior de 0,75 para penalizar a sub-previsão. O WQl [0.75] é o seguinte:

 

 

Weighted absolute percentage error (WAPE)

A métrica WAPE é a soma do erro absoluto normalizado pela demanda total. O WAPE penaliza igualmente por sub-previsão ou previsão excessiva, e não favorece qualquer cenário. Usamos o valor médio (médio) esperado das previsões para calcular o erro absoluto. Recomendamos usar a métrica WAPE quando a diferença nos custos de sub-previsão ou sobreprevisão for insignificante, ou se você quiser avaliar a precisão do modelo na previsão média. Por exemplo, para prever a quantidade de dinheiro necessária em um determinado momento em um caixa eletrônico, um banco pode optar por atender a demanda média porque há menos preocupação em perder um cliente ou ter excesso de dinheiro na máquina ATM. Neste exemplo, você pode optar por prever na média e escolher o WAPE como sua métrica para avaliar a precisão do modelo.
A normalização ou ponderação ajuda a comparar modelos de diferentes conjuntos de dados. Por exemplo, se o erro absoluto somado em todo o conjunto de dados for 5, é difícil interpretar a qualidade dessa métrica sem saber a escala da demanda total. Uma alta demanda total de 1000 resulta em um baixo WAPE (0,005) e uma pequena demanda total de 10 resulta em um WAPE alto (0,5). A ponderação(weighting) utilizando WAPE ou WQL permite que essas métricas sejam comparadas entre conjuntos de dados com diferentes escalas.
A normalização ou ponderação também ajuda a avaliar conjuntos de dados que contêm uma mistura de itens com grande e pequena demanda. A métrica WAPE enfatiza a precisão para itens com maior demanda. Você pode usar o WAPE para conjuntos de dados onde a previsão de um pequeno número de SKUs impulsiona a maioria das vendas. Por exemplo, um varejista pode preferir usar a métrica WAPE para colocar menos ênfase em erros de previsão relacionados a itens de edições especiais e priorizar erros de previsão para itens padrão que compõe a maioria das vendas.
Em nosso caso de uso do conjunto de dados de varejo, o WAPE é igual à soma da coluna de erro absoluto dividida pela soma da coluna de demanda real (demanda total).

 

 

Como a soma da demanda total é impulsionada principalmente pelo Item1, o WAPE dá mais importância à precisão do popular Item1.
Muitos clientes de varejo trabalham com conjuntos de dados esparsos, onde a maioria de seus SKUs são vendidos com pouca frequência. Para a maioria dos pontos de dados históricos, a demanda é 0. Para esses conjuntos de dados, é importante considerar a escala da demanda total, tornando o WQl e o WAPE uma métrica melhor em relação ao RMSE para avaliar conjuntos de dados esparsos. A métrica RMSE não leva em conta a escala da demanda total e retorna um valor RMSE menor considerando o número total de pontos de dados históricos e o número total de SKUs, dando a você uma falsa sensação de segurança de que você tem um modelo preciso.

 

Root mean square error (RMSE)

A métrica RMSE é a raiz quadrada da soma dos erros quadrados (diferenças dos valores médios previstos e reais) dividida pelo produto do número de itens e número de pontos de tempo. O RMSE também não penaliza por sub-previsão ou sobreprevisão, e pode ser usado quando os trade-offs entre sub-previsão ou sobreprevisão são insignificantes ou se você preferir prever em média. Como o RMSE é proporcional ao quadrado dos erros, é sensível a grandes desvios entre a demanda real e os valores previstos.
No entanto, você deve usar RMSE com cautela, porque grandes desvios na previsão de erros podem punir severamente um modelo preciso. Por exemplo, se um item em um conjunto de dados grande for severamente subprevisto ou com previsão excessiva, o erro nesse item distorcerá drasticamente toda a métrica RMSE e poderá fazer com que você rejeite um modelo preciso prematuramente. Para casos de uso em que alguns grandes desvios não são de importância, considere usar WQL ou WAPE.
Em nosso exemplo de conjunto de dados de varejo, o RMSE é igual à raiz quadrada da soma da coluna de erro quadrado dividida pelo número total de pontos (3 itens * 2 dias = 6).

 

O RMSE dá mais importância ao grande desvio do erro de previsão do Item3, resultando em um valor RMSE mais alto.
Recomendamos usar a métrica RMSE quando algumas grandes previsões incorretas de um modelo em alguns itens podem ser muito dispendiosas para o negócio. Por exemplo, um fabricante que está prevendo a falha da máquina pode preferir usar a métrica RMSE. Como o maquinário operacional é crítico, qualquer grande desvio da demanda real e prevista, mesmo pouco frequente, precisa ser sobre-enfatizado ao avaliar a precisão do modelo.
A tabela a seguir resume nossa discussão sobre como selecionar uma métrica de precisão dependente do seu caso de uso.

Caso de uso wQL WAPE RMSE
Otimização para sub-previsão ou sobreprevisão, que pode ter implicações diferentes
X
Priorizar itens populares ou itens com alta demanda é mais importante do que itens de baixa demanda
X X
Enfatizando os custos de negócios relacionados a grandes desvios nos erros de previsões
X
Avaliando conjuntos de dados esparsos com 0 demanda para a maioria dos itens nos pontos de dados históricos
X X

 

Selecionando pontos de distribuição personalizados para avaliar a precisão do modelo na Previsão

Você pode medir a precisão do modelo no Forecast por meio da API CreatePredictor e da API getAccuracyMetrics ou usando o console Forecast. Nesta seção, percorremos as etapas para usar o console.

  1. No console Previsão, crie um grupo de conjuntos de dados.

 

 

2. Carregue seu conjunto de dados.

 

 

3. No painel de navegação, escolha Predictors.
4. Escolha Train predictor.

 

 

5. Em Predictor Settings para Forecast types , você pode inserir até cinco pontos de distribuição de sua escolha. Mean também é aceito.

Se não especificado, quantis padrão de 0,1, 0,5 e 0,9 são usados para treinar um preditor e calcular métricas de precisão.

6. Para Algorithm selection, selecione Automatic (AutoML).
AutoML otimiza um modelo para os quantis especificados.
7. Opcionalmente, para Number of backtest windows, você pode selecionar até cinco para avaliar a força do modelo.

 

8. Depois que seu preditor for treinado, escolha seu preditor na página Predictors para visualizar detalhes das métricas de precisão.

 

 

Na página de detalhes do preditor, você pode exibir as métricas gerais de precisão do modelo e as métricas de cada backtest window que você especificou. As métricas gerais de precisão do modelo estão calculando com a média das métricas individuais do backtest window.

 

 

9. 9. Agora que seu modelo está treinado, escolha Forecasts no painel de navegação.
10. Escolha Create a forecast.
11. Selecione seu preditor treinado para criar uma previsão.

As previsões são geradas para os pontos de distribuição usados durante o treinamento de um preditor. Você também tem a opção de especificar diferentes pontos de distribuição para gerar previsões.

 

Dicas e práticas recomendadas

Nesta seção, compartilhamos algumas dicas e práticas recomendadas ao usar O Forecast:

  • Antes de experimentar a Previsão, defina seu problema de negócios relacionado aos custos de previsão subutilizada ou previsão excessiva. Avalie os trade-offs e priorize se preferir prever a mais ou abaixo.
  • Experimente vários pontos de distribuição para otimizar seu modelo de previsão para equilibrar os custos associados à sub-previsão e à previsão excessiva.
  • Se você estiver comparando modelos diferentes, use a métrica WQl no mesmo quantil para comparação. Quanto menor o valor, mais preciso o modelo de previsão.
  • O Forecast permite que você selecione até cinco backtest windows. O Forecast usa backtesting para ajustar preditores e produzir métricas de precisão. Para executar backtesting, o Forecast divide automaticamente seus conjuntos de dados de séries temporais em dois conjuntos: treinamento e teste. O conjunto de treinamento é usado para treinar seu modelo e o conjunto de testes para avaliar a precisão preditiva do modelo. Recomendamos escolher mais de uma janela de backtest para minimizar o viés de seleção que pode tornar uma janela mais ou menos precisa por acaso. Avaliar a precisão geral do modelo a partir de várias janelas backtest fornece uma melhor medida da força do modelo.

Conclusão

Agora você pode medir a precisão do seu modelo de previsão em vários pontos de distribuição de sua escolha com o Amazon Forecast. Oferecendo mais flexibilidade para alinhar o Forecast com o seu negócio, porque o impacto da previsão excessiva geralmente difere da sub-previsão. Você pode usar esse recurso em todas as regiões onde o Amazon Forecast está disponível publicamente. Para obter mais informações sobre disponibilidade da região, consulte Tabela de regiões. Para obter mais informações sobre APIs que especificam pontos de distribuição personalizados ao criar um preditor e acessar métricas de precisão, consulte a documentação da API CreatePredictor e da API getAccuracyMetrics. Para obter mais detalhes sobre como avaliar a precisão de um preditor para vários pontos de distribuição, consulte Avaliando a precisão do preditor.

 

Este artigo foi traduzido do Blog de AWS en Inglês.

 


Sobre as Autoras

Namita Das é uma Gerente de Produto Senior para Amazon Forecast. Seu foco atual é democratizar o aprendizado de máquina criando serviços de ML sem código/baixo código. Ela frequentemente aconselha startups e está criando um filhote de cachorro chamado Imli.es Sr. Product Manager para Amazon Forecast. Su foco actual es democratizar el machine learning mediante la creación de servicios ML sin código o de bajo código. En paralelo, ella frecuentemente aconseja startups y está criando a un cachorro llamado Imli.

 

 

 

 

Danielle Robinson é uma cientista aplicada na equipe do Amazon Forecast. Sua pesquisa é em previsão de séries temporais e, em particular, como podemos aplicar novos algoritmos baseados em rede neural dentro do Amazon Forecast. Sua pesquisa de tese foi focada no desenvolvimento de modelos numéricos novos, robustos e fisicamente precisos para dinâmica de fluidos computacional. Seus hobbies incluem cozinhar, nadar e caminhadas.

 

 

Revisor

Thiago Couto é arquiteto de soluções na AWS e atua no segmento Enterprise auxiliando clientes de Retail e CPG em suas jornadas para nuvem. Possui mais de 10 anos de experiência atuando em arquiteturas que englobam AI/ML, integrações, IoT e correlatos.