Поделиться через


Расширенные прогнозы временных рядов (учебник по интеллектуальному анализу данных — средний уровень)

В ходе изучения модели прогнозирования было показано, что хотя продажи в большинстве регионов и следуют схожему шаблону, некоторые регионы и некоторые модели, например модель M200 в Тихоокеанском регионе, имеют очень разные тренды. Это не удивляет, поскольку различия между регионами не являются редкостью и могут быть вызваны многими факторами, включая маркетинговые акции, неточные отчеты или геополитические события.

Тем не менее, пользователям нужна модель, применимая к любым странам мира. Поэтому чтобы максимально снизить воздействие индивидуальных факторов на проекции, принимается решение создать модель, основанную на агрегатных вычислениях продаж по всему миру. Эту модель затем можно использовать для прогнозирования по каждому отдельному региону.

В этой задаче будут построены все источники данных, необходимые для выполнения расширенных задач прогнозирования. Будут созданы два представления источников данных, которые будут использоваться в качестве входных данных прогнозирующего запроса, и одно представление источника данных для построения новой модели.

Шаги

  1. Подготовка расширенных данных по продажам (для прогноза)

  2. Подготовка статистических данных (для построения модели)

  3. Подготовка данных рядов (для перекрестного прогнозирования)

  4. Прогноз с помощью EXTEND

  5. Создание модели перекрестного прогнозирования

  6. Прогноз с помощью REPLACE

  7. Просмотр новых результатов прогноза

Создание расширенных данных о продажах

Для обновления данных о продажах нужно будет получить последние цифры продаж. Особенно важными являются данные из Тихоокеанского региона, где была запущена региональная акция продаж для привлечения внимания к новым магазинам и информирования о продукции.

В этом сценарии предполагается, что данные были импортированы из книги Excel, содержащей только три месяца новых данных для двух регионов. С помощью скрипта Transact-SQL будет создана таблица данных, а затем будет определено представление источника данных для прогноза.

Создание таблицы с новыми данными о продажах

  1. В окне запросов Transact-SQL выполните следующую инструкцию, чтобы добавить данные о продажах в базу данных AdventureWorksDW (или в любую другую базу данных).

    USE [database name];
    GO
    IF OBJECT_ID ([dbo].[NewSalesData]) IS NOT NULL 
        DROP TABLE [dbo].[NewSalesData];
    GO
    CREATE TABLE [dbo].[NewSalesData](
    [Series] [nvarchar](255) NULL,
    [NewDate] [datetime] NULL,
    [NewQty] [float] NULL,
    [NewAmount] [money] NULL
    ) ON [PRIMARY]
    
    GO
    
  2. Вставьте новые значения с помощью следующего скрипта.

    INSERT INTO [NewSalesData]
    (Series,NewDate,NewQty,NewAmount)
    VALUES('T1000 Pacific', '7/25/08', 55, '$130,170.22'),
    ('T1000 Pacific', '8/25/08', 50, '$114,435.36 '),
    ('T1000 Pacific', '9/25/08', 50, '$117,296.24 '),
    ('T1000 Europe', '7/25/08', 37, '$88,210.00 '),
    ('T1000 Europe', '8/25/08', 41, '$97,746.00 '),
    ('T1000 Europe', '9/25/08', 37, '$88,210.00 '),
    ('T1000 North America', '7/25/08', 69, '$164,500.00 '),
    ('T1000 North America', '8/25/08', 66, '$157,348.00 '),
    ('T1000 North America', '9/25/08', 58, '$138,276.00 '),
    ('M200 Pacific', '7/25/08', 65, '$149,824.35'),
    ('M200 Pacific', '8/25/08', 54,  '$124,619.46'),
    ('M200 Pacific', '9/25/08', 61, '$141,143.39'),
    ('M200 Europe', '7/25/08', 75, '$173,026.00'),
    ('M200 Europe', '8/25/08', 76, '$175,212.00'),
    ('M200 Europe', '9/25/08', 84, '$193,731.00'),
    ('M200 North America', '7/25/08', 94, '$216,916.00'),
    ('M200 North America', '8/25/08', 94, '$216,891.00'),
    ('M200 North America', '9/25/08', 91,'$209,943.00');
    
    ПредупреждениеВнимание!

    Кавычки используются для значений валют, чтобы не возникало проблем с разделителем в виде запятой и символом валюты. Значения валют можно также передавать в следующем формате: 130170.22

    Обратите внимание, что даты, используемые в образце базы данных, изменены для этой версии. Если используется более раннее издание AdventureWorks, вставленные даты, возможно, потребуется соответствующим образом скорректировать.

Создание представления источника данных с помощью новых данных о продажах

  1. В окне Обозреватель решений щелкните правой кнопкой мыши элемент Представления источников данных и выберите команду Создать представление источника данных.

  2. В окне мастера представлений источников данных выберите указанные ниже элементы.

    Источник данных: Adventure Works DW Multidimensional 2012

    Выбор таблиц и представлений: Выберите только что созданную таблицу NewSalesData.

  3. Нажмите кнопку Готово.

  4. В области конструктора представлений источников данных щелкните правой кнопкой мыши элемент NewSalesData и выберите команду Просмотр данных, чтобы проверить данные.

ПредупреждениеВнимание!

Эти данные будут использоваться только для прогноза, поэтому если они неполные, это не имеет значения.

Создание данных для модели перекрестного прогнозирования

Данные, использованные в исходной модели прогнозирования, уже были сгруппированы с помощью представления vTimeSeries, которое разбивает несколько моделей велосипедов на более мелкие категории и сводит результаты из отдельных стран в регионы. Чтобы создать модель для проекций для стран всего мира, потребуется создать некоторые простые агрегатные функции напрямую в конструкторе представления источника данных. Новое представление источника данных будет содержать только сумму и среднее значение продаж всех продуктов для всех регионов.

После создания источника данных для модели следует создать новое представление источников данных для прогноза. Например, если нужно спрогнозировать продажи для Европы с помощью новой мировой модели, нужно передать данные только для Европы. Таким образом будет настроено новое представление источников данных, которое будет фильтровать исходные данные и изменит условие фильтра для каждого набора прогнозирующих запросов.

Создание данных модели с помощью пользовательского представления источника данных

  1. В окне Обозреватель решений щелкните правой кнопкой мыши элемент Представления источников данных и выберите команду Создать представление источника данных.

  2. На странице приветствия мастера нажмите кнопку Далее.

  3. На странице Выбор источника данных выберите Adventure Works DW Multidimensional 2012 и нажмите кнопку Далее.

  4. На странице Выбор таблиц и представлений нажмите кнопку Далее, не выбирая таблиц.

  5. На странице Завершение работы мастера введите имя AllRegions и нажмите кнопку Готово.

  6. После этого щелкните правой кнопкой мыши пустую область конструктора представления источника данных и выберите команду Создать именованный запрос.

  7. В диалоговом окне Создание именованного запроса в поле Имя введите AllRegions, а в поле Описание — «Сумма и среднее значение продаж для всех моделей и регионов».

  8. В панели SQL-текста введи следующую инструкцию и нажмите кнопку «ОК»:

    SELECT ReportingDate, 
    SUM([Quantity]) as SumQty, AVG([Quantity]) as AvgQty,
    SUM([Amount]) AS SumAmt, AVG([Amount]) AS AvgAmt,
    'All Regions' as [Region]
    FROM dbo.vTimeSeries 
    GROUP BY ReportingDate
    
  9. Щелкните правой кнопкой мыши таблицу AllRegions и выберите команду Просмотреть данные.

Создание данных рядов для перекрестного прогнозирования

  1. В окне Обозреватель решений щелкните правой кнопкой мыши элемент Представления источников данных и выберите команду Создать представление источника данных.

  2. В окне мастера представлений источников данных выберите указанные ниже элементы.

    Источник данных: Adventure Works DW Multidimensional 2012

    Выбор таблиц и представлений: не выбирайте никаких таблиц

    Имя: T1000 Pacific Region

  3. Нажмите кнопку Готово.

  4. Щелкните правой кнопкой мыши в пустой области конструктора T1000 Pacific Region.dsv и выберите команду Создать именованный запрос.

    Откроется диалоговое окно Создание именованного запроса. Снова введите имя и добавьте следующее описание:

    Имя: T1000 Pacific Region

    Описание: Фильтровать vTimeSeries по региону и модели

  5. В панели ввода текста введите следующий запрос и нажмите кнопку ОК:

    SELECT ReportingDate, ModelRegion, Quantity, Amount
    FROM dbo.vTimeSeries
    WHERE (ModelRegion = N'T1000 Pacific')
    
    ПримечаниеПримечание

    Поскольку для каждого ряда нужно создавать свой прогноз, текст запроса можно скопировать и сохранить в текстовый файл, чтобы использовать его повторно для других рядов данных.

  6. В области конструктора представлений источников данных щелкните правой кнопкой мыши элемент T1000 Pacific и выберите команду Просмотреть данные, чтобы убедиться в том, что данные отфильтрованы правильно.

    Эти данные будут использоваться как входные данные для модели при запросах перекрестного прогнозирования.

Следующая задача занятия

Прогнозы временных рядов с использованием обновленных данных (учебник по интеллектуальному анализу данных — средний уровень)

См. также

Справочник

Технический справочник по алгоритму временных рядов (Майкрософт)

Основные понятия

Алгоритм временных рядов (Майкрософт)

Представления источников данных в многомерных моделях