Занятие 4. Создание прогнозов временных рядов с использованием расширений интеллектуального анализа данных

На этом и на следующем занятии расширения интеллектуального анализа данных (DMX) будут использованы для создания различных типов прогнозов на основе моделей временных рядов, создание которых было выполнено на занятиях Занятие 1. Создание модели интеллектуального анализа данных временных рядов и структуры интеллектуального анализа данных и Занятие 2. Добавление моделей интеллектуального анализа данных в структуру интеллектуального анализа временных рядов.

Использование модели временных рядов дает много возможностей для выполнения прогнозирования.

  • Использование в модели интеллектуального анализа данных существующих закономерностей и данных.

  • Использование в модели интеллектуального анализа данных существующих закономерностей, но предоставление новых данных.

  • Добавление в модель новых данных или обновление модели.

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

Задачи занятия

На этом занятии будут выполнены следующие задачи.

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

На следующем занятии будут выполняться следующие связанные задачи.

  • Создание запроса для предоставления новых данных и получения обновленных прогнозов.

Наряду с созданием запросов вручную, при помощи расширений интеллектуального анализа данных, можно также создавать прогнозы в среде Business Intelligence Development Studio, с помощью построителя прогнозирующих запросов. Дополнительные сведения см. в разделе Использование построителя прогнозирующих запросов для создания прогнозирующих запросов расширений интеллектуального анализа данных или Вкладка «Прогнозирование модели интеллектуального анализа данных»: инструкции.

Простой прогнозирующий запрос временных рядов

На первом шаге используется инструкция SELECT FROM совместно с функцией PredictTimeSeries для создания прогноза временных рядов. Модели временных рядов поддерживают упрощенный синтаксис создания прогнозов: нет необходимости предоставлять входные данные, нужно только задать количество создаваемых прогнозов. В следующем фрагменте показан общий пример инструкции, которая будет использоваться в дальнейшем.

SELECT <select list> 
FROM [<mining model name>] 
WHERE [<criteria>]

Список выбора может содержать столбцы модели, такие как имя линии продуктов, для которой создаются прогнозы, или прогнозирующие функции, такие как Функция Lag или PredictTimeSeries (расширения интеллектуального анализа данных), специально предназначенные для моделей интеллектуального анализа временных рядов.

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

  1. В окне Обозреватель объектов щелкните правой кнопкой мыши экземпляр службы Службы Analysis Services, укажите Создать запрос, а затем выберите пункт Расширения интеллектуального анализа данных.

    Откроется редактор запросов, содержащий новый пустой запрос.

  2. Скопируйте общий пример инструкции в пустой запрос.

  3. Замените:

    <select list> 
    

    на:

    [Forecasting_MIXED].[ModelRegion],
    PredictTimeSeries([Forecasting_MIXED].[Quantity],6) AS PredictQty,
    PredictTimeSeries ([Forecasting_MIXED].[Amount],6) AS PredictAmt
    

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

    Во второй и третьей строке используется функция PredictTimeSeries. В каждой строке предсказание выполняется для разных атрибутов, для [Quantity] или [Amount]. Числа после имен прогнозируемых атрибутов указывают количество временных шагов, необходимых для прогнозирования.

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

  4. Замените:

    [<mining model>] 
    

    на:

    [Forecasting_MIXED]
    
  5. Замените:

    WHERE [criteria>] 
    

    на:

    WHERE [ModelRegion] = 'M200 Europe' OR
    [ModelRegion] = 'M200 Pacific'
    

    Полная инструкция теперь должна выглядеть следующим образом.

    SELECT
    [Forecasting_MIXED].[ModelRegion],
    PredictTimeSeries([Forecasting_MIXED].[Quantity],6) AS PredictQty,
    PredictTimeSeries ([Forecasting_MIXED].[Amount],6) AS PredictAmt
    FROM 
    [Forecasting_MIXED]
    WHERE [ModelRegion] = 'M200 Europe' OR
    [ModelRegion] = 'M200 Pacific'
    
  6. В меню Файл выберите Сохранить DMXQuery1.dmx как.

  7. В диалоговом окне Сохранить как перейдите к соответствующей папке и присвойте файлу имя SimpleTimeSeriesPrediction.dmx.

  8. На панели инструментов нажмите кнопку Выполнить.

    Запрос возвращает 6 прогнозов для каждого из двух сочетаний продукта и региона, указанных в предложении WHERE.

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