Partilhar via


Previsões de série temporal usando dados de substituição (Tutorial de mineração de dados intermediário)

Nesta tarefa, você criará um novo modelo com base em dados de vendas mundiais. Depois, você criará uma consulta de previsão que aplica o modelo de vendas mundial a uma das regiões individuais.

Criando um modelo geral

Lembre-se de que sua análise dos resultados do modelo de mineração original revelaram grandes diferenças entre as regiões e as linhas de produtos. Por exemplo, as vendas na América do Norte eram fortes para o modelo M200, enquanto que as vendas do modelo de T1000 não iam tão bem. No entanto, a análise é complicada pelo fato de que algumas séries não tinham muitos dados ou dados iniciados em um ponto diferente no tempo. Alguns dados também estavam faltando.

Série prevendo a quantidade de M200 e T1000

Para solucionar alguns dos problemas de qualidade de dados, você decide mesclar os dados de vendas do mundo todo e usar esse conjunto de tendências geral de vendas para criar um modelo que possa ser aplicado à previsão de vendas futuras em qualquer região.

Quando você for criar as previsões, usará o padrão gerado pelo treinamento sobre dados de vendas mundiais, mas substituirá os pontos de dados históricos pelos dados de vendas de cada região. Dessa maneira, a forma da tendência é preservada mas os valores previstos ficam alinhados com os números de vendas históricos de cada região e modelo.

Fazendo uma previsão cruzada com um modelo de série temporal

O processo de usar dados de uma série para prever tendências em outra série é chamado previsão cruzada. Você pode usar a previsão cruzada em muitos cenários: por exemplo, você poderia decidir que vendas de televisão são uma profeta boa de atividade econômica global, e aplicar um modelo treinou vendas na televisão a dados econômicos gerais.

No SQL Server Data Mining, você executa a previsão cruzada usando o parâmetro REPLACE_MODEL_CASES dentro dos argumentos para a função PredictTimeSeries (DMX).

Na próxima tarefa, você aprenderá a usar REPLACE_MODEL_CASES. Você usará os dados de vendas mundiais mesclados para criar um modelo e depois criará uma consulta de previsão que mapeia o modelo geral nos dados de substituição.

Estamos partindo do princípio de que você está familiarizado com o método de criação de modelos de mineração de dados agora e, portanto, as instruções para criar o modelo foram simplificadas.

Para criar uma estrutura de mineração e um modelo de mineração usando os dados agregados

  1. Em Gerenciador de Soluções, clique com o botão direito do mouse em Estruturas de Mineração e selecione Nova Estrutura de Mineração para iniciar o Assistente de Mineração de Dados.

  2. No Assistente de Mineração de Dados, faça as seguintes seleções:

    • Algoritmo: Microsoft Time Series

    • Use a fonte de dados que você criou anteriormente nesta lição avançada como a origem do modelo. Consulte Previsões avançadas de série temporal (Tutorial de mineração de dados intermediário).

      Exibição da fonte de dados: AllRegions

    • Escolha as seguintes colunas para a chave de série e chave de tempo:

      Hora da chave: ReportingDate

      Chave: Região

    • Escolha as seguintes colunas para Input e Predict:

      SumQty

      SumAmt

      AvgAmt

      AvgQty

    • Para Nome da estrutura de mineração, digite: All Regions

    • Para Nome do modelo de mineração, digite: All Regions

  3. Processe a nova estrutura e o novo modelo.

Para criar a consulta de previsão e mapear os dados de substituição

  1. Se o modelo ainda não estiver aberto, clique duas vezes na estrutura AllRegions e, em Designer de Mineração de Dados, clique na guia Previsão do Modelo de Mineração.

  2. No painel Modelo de Mineração , o modelo AllRegions já deve estar selecionado. Se ele não estiver selecionado, clique em Selecionar Modelo e selecione o modelo AllRegions.

  3. No painel Selecionar Tabelas de Entrada , clique em Selecionar Tabela de Maiúsculas e Minúsculas.

  4. Na caixa de diálogo Selecionar Tabela, altere a fonte de dados para Região do Pacífico T1000 e clique em OK.

  5. Clique com o botão direito do mouse na linha de junção entre o modelo de mineração e os dados de entrada e selecione Modificar Conexões. Mapeie os dados na exibição da fonte de dados do modelo como segue:

    1. Verifique se a coluna ReportingDate no modelo de mineração está mapeada para a coluna ReportingDate nos dados de entrada.

    2. Na caixa de diálogo Modificar Mapeamento , na linha da coluna de modelo AvgQty, clique em Coluna de Tabela e selecione T1000 Pacific.Quantity. Clique em OK.

      Esta etapa mapeia a coluna que você criou no modelo para prever a quantidade média para os dados reais da série T1000 em relação à quantidade de vendas.

    3. Não mapeie a região da coluna no modelo para nenhuma coluna de entrada.

      Como o modelo agregou os dados em todas as séries, não há nenhuma correspondência para os valores de séries como T1000 Pacífico e um erro é gerado quando as consultas de previsão são executadas.

  6. Agora você criará a consulta de previsão.

    Primeiramente, adicione uma coluna aos resultados gerados em AllRegions do modelo junto com as previsões. Desse modo, você saberá que os resultados foram baseados no modelo geral.

    1. Na grade, clique na primeira linha vazia, em Origem e selecione Modelo de mineração AllRegions.

    2. Em Campo, selecione Região.

    3. Para Alias, digite Modelo Usado.

  7. Em seguida, adicione um rótulo aos resultados para que seja possível ver a que série a previsão se destina.

    1. Clique em uma linha vazia e, em Origem, selecione Expressão Personalizada.

    2. Na coluna Alias , digite ModelRegion.

    3. Na coluna Critérios/Argumento , digite 'T1000 Pacific'.

  8. Agora você configurará a função da previsão cruzada.

    1. Clique em uma linha vazia e, em Origem, selecione Função de Previsão.

    2. Na coluna Campo , selecione PredictTimeSeries.

    3. Para Alias, digite Valores Previstos.

    4. Arraste o campo AvgQty do painel Modelo de Mineração para a coluna Critérios/Argumento usando a operação arrastar e soltar.

    5. Na coluna Critérios/Argumento , após o nome do campo, digite o seguinte texto: ,5, REPLACE_MODEL_CASES

      O texto completo da caixa de texto Critérios/Argumento deve ser o seguinte: [AllRegions].[AvgQty],5,REPLACE_MODEL_CASES

  9. Clique em Resultados.

Criando a consulta da previsão cruzada em DMX

Você deve ter notado um problema com a previsão cruzada: isto é, para aplicar o modelo geral a uma série de dados diferente, como o modelo de produto T1000 na região de América do Norte, você deve criar uma consulta diferente para cada série, de forma que você possa mapear cada conjunto de entradas para o modelo.

Porém, em vez de criar a consulta no designer, você pode mudar para exibição DMX e editar a instrução DMX que você criou. Por exemplo, a seguinte instrução DMX representa a consulta recém-criada:

SELECT  
      ([All Regions].[Region]) as [Model Used],  
      ('T-1000 Pacific') as [ModelRegion],  
      (PredictTimeSeries([All Regions].[Avg Qty],5, REPLACE_MODEL_CASES)) as [Predicted Quantity]  
     FROM [All Regions]  
PREDICTION JOIN  
    OPENQUERY([Adventure Works DW2003R2], 'SELECT [ReportingDate] FROM  
      (  
       SELECT  ReportingDate, ModelRegion, Quantity, Amount   
       FROM dbo.vTimeSeries   
       WHERE (ModelRegion = N''T1000 Pacific'')  
       ) as [T1000 Pacific]    ')   
    AS t  
ON   
[All Regions].[Reporting Date] = t.[ReportingDate]   
AND   
[All Regions].[Avg Qty] = t.[Quantity]  

Para aplicá-la a um modelo diferente, basta editar a instrução da consulta para substituir a condição do filtro e atualizar os rótulos associados a cada resultado.

Por exemplo, se você alterar as condições do filtro e os rótulos de coluna substituindo 'Pacífico' por 'América do Norte', obterá previsões para o produto T1000 na América do Norte, com base nos padrões do modelo geral.

Próxima tarefa da lição

Comparando previsões para modelos de previsão (Tutorial de mineração de dados intermediário)

Consulte Também

Exemplos de consulta de um modelo de série temporal
PredictTimeSeries (DMX)