Prevendo com o modelo de previsão médio (Tutorial de mineração de dados intermediário)

Em uma tarefa anterior desta lição, você usou o Construtor de Consultas de Previsão para criar uma consulta que gerava as previsões padrão para o modelo Previsão. Nesta tarefa, você aprenderá a criar uma consulta de previsão que aplique o modelo de vendas mundial a uma das regiões individuais.

Usando dados de substituição em uma previsão de série temporal

No SQL Server 2008, a funçãoPredictTimeSeries (DMX) tem dois novos parâmetros, EXTEND_MODEL_CASES e REPLACE_MODEL_CASES, que permitem a personalização de previsões de série temporal.

  • EXTEND_MODEL_CASES permite que você adicione dados a um modelo existente e faça previsões com base no dados novos.

  • REPLACE_MODEL_CASES permite que você substitua a série de dados usada para criar o modelo com os dados de outras séries.

Neste cenário, você usará REPLACE_MODEL_CASES. No entanto, primeiro você deve configurar uma exibição da fonte de dados que contenha somente os dados de substituição. Dados de substituição significam os dados para cada série individual. Em seguida, você criará uma consulta de previsão que aplique o modelo geral aos dados de substituição.

Para criar a exibição da fonte de dados que contém os dados de substituição.

  1. No Gerenciador de Soluções, clique com o botão direito do mouse em Exibições da Fonte de Dados e selecione Nova Exibição da Fonte de Dados.

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

    Fonte de Dados: Adventure Works DW2008

    Selecionar Tabelas e Exibições: não selecione nenhuma tabela.

    Nome: T1000 Região do Pacífico

  3. Clique em Concluir.

  4. Clique com o botão direito do mouse na superfície de design em branco para T1000 Região do Pacífico.dsv e selecione Nova Consulta Nomeada.

    A caixa de diálogo Criar Consulta Nomeada será aberta. Digite o nome novamente e adicione a seguinte descrição:

    Nome: T1000 Região do Pacífico

    Descrição: Filtrar vTimeSeries por região e modelo

  5. No painel de texto, digite a seguinte consulta:

    SELECT ReportingDate, ModelRegion, Quantity, Amount
    FROM dbo.vTimeSeries
    WHERE (ModelRegion = N'T1000 Pacific')
    
    ObservaçãoObservação

    Também é possível criar a consulta usando o Construtor de Consultas, mas é mais rápido digitar o texto da consulta. No entanto, depois de digitar o texto da consulta, você poderá clicar em outro painel para ver como o texto da consulta é analisado e como a consulta é criada a partir das tabelas de suporte. Talvez você também queira copiar o texto da consulta e salvá-lo em um arquivo de texto para que possa reutilizá-lo para outra série de dados.

  6. Clique em OK.

  7. Na superfície de design da Exibição da Fonte de Dados, clique com o botão direito do mouse em T1000 Pacífico e selecione Explorar Dados para verificar se os dados foram filtrados corretamente.

Agora, você criará uma consulta de previsão de série temporal com sempre, mas adicionará o parâmetro REPLACE_MODEL_CASES para especificar que a série de dados na qual a previsão se baseia deve ser substituída por novos dados fornecidos. Você também deve especificar o mapeamento entre o modelo de mineração e a tabela de entrada.

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

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

  2. No painel Modelo de Mineração, o modelo AllRegions já deve estar selecionado. Caso contrário, clique em Selecionar Modelo e selecione o modelo, AllRegions.

  3. No painel Selecionar Tabela(s) de Entrada, clique em Selecionar Tabela de Casos.

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

    A exibição da fonte de dados criada será exibida como uma tabela com colunas. Algumas colunas já poderão estar mapeadas para as colunas do modelo de mineração.

  5. Clique com o botão direito na linha de junção entre o modelo de mineração e os dados de entrada e selecione Modificar Conexões.

  6. Na caixa de diálogo Modificar Mapeamento, verifique se a coluna ReportingDate do modelo de mineração foi mapeada para a coluna ReportingDate dos dados de entrada.

  7. Na caixa de diálogo Modificar Mapeamento, na linha para AvgQty, clique sob Coluna da Tabela e selecione T1000 Pacífico.Quantidade. Clique em OK.

    Esta etapa mapeia a coluna de quantidade agregada no modelo geral à coluna de quantidade da série de dados de substituição.

  8. Na grade, clique na primeira linha em branco, sob Origem, e selecione AllRegions. Em Campo, selecione Região. Em Alias, digite Modelo Usado.

    Esta etapa adiciona uma coluna aos resultados que o ajudará a lembrar de que as previsões são do modelo geral.

  9. Clique em uma nova linha em branco e, sob Origem, selecione Expressão Personalizada. Em Alias, digite ModelRegion. Em Critérios/Argumento, digite 'T1000 Pacífico'.

    Esta etapa adiciona um rótulo aos resultados que o ajudará a lembrar para que série as previsões foram feitas.

  10. Clique em uma nova linha em branco e, sob Origem, selecione Função de Previsão. Em Campo, selecione PredictTimeSeries. Em Alias, digite Valores Previstos.

  11. Arraste o campo AvgQty do painel Modelo de Mineração e solte-o na coluna Critérios/Argumento.

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

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

  13. Clique em Resultados.

Exibindo os resultados

A consulta de previsão retorna resultados similares aos seguintes:

Modelo Usado

ModelRegion

Quantidade Prevista

Todas as Regiões

T-1000 Pacífico

$TIMEAvg Qty
7/25/2004 12:00:00 AM68
8/25/2004 12:00:00 AM52
9/25/2004 12:00:00 AM48
10/25/2004 12:00:00 AM56
11/25/2004 12:00:00 AM44

Para aplicar o modelo geral a uma série de dados diferente, como o modelo de produto T1000 na região da América do Norte, você deverá criar uma consulta diferente para cada série. No entanto, em vez de passar por todo o processo de criação de uma exibição da fonte de dados, você poderá editar a instrução DMX que criou e filtrar as entradas de forma diferente. Por exemplo, a instrução DMX a seguir 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 DW2008],
    '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 os rótulos aplicados 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.

Modelo Usado

ModelRegion

Quantidade Prevista

Todas as Regiões

T-1000 América do Norte

$TIMEAvg Qty
7/25/2004 12:00:00 AM103
8/25/2004 12:00:00 AM84
9/25/2004 12:00:00 AM79
10/25/2004 12:00:00 AM85
11/25/2004 12:00:00 AM68