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

Краткая информация

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

Инструмент вписывает параметрическую кривую в каждое место Входного куба пространства-времени и прогнозирует временной ряд, экстраполируя эту кривую на будущие шаги. Кривые могут быть линейными, параболическими, S-образными (функция Гомперца) или экспоненциальными. Вы можете использовать один и тот же тип кривой для каждого местоположения в пространственно-временном кубе, либо разрешить инструменту самому устанавливать, какой тип кривой подходит локации больше всего.

Более подробно о том, как работает инструмент Прогнозирование подгонки кривой

Иллюстрация

Типы кривой
Показаны четыре типа кривых.

Использование

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

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

  • Несколько предсказанных кубов пространство-время можно сравнить и выполнить их слияние с помощью инструмента Оценить прогнозы по местоположению. Это позволит создавать несколько прогнозных кубов с использованием различных инструментов и параметров прогнозирования, а инструмент будет определять наилучший прогноз для каждого местоположения, используя для прогноза Среднеквадратичную ошибку (RMSE), либо Проверку RMSE.

  • Для каждого местоположения во Входном кубе пространства-времени инструмент строит две модели, которые служат разным целям.

    • Прогнозная модель – эта модель используется для прогнозирования значений куба пространство-время путем вычерчивания кривой по значениям временного ряда и экстраполяции этой кривой на будущие временные шаги. Подгонка прогнозной модели к значениям куба пространство-время измеряется прогнозным значением RMSE.
    • Модель проверки – эта модель используется для проверки прогнозной модели и проверки того, насколько точно она прогнозирует значения. Если для параметра Количество временных шагов, исключаемых для проверки, задано число больше 0, то эта модель подгоняется к включенным временным шагам и используется для прогнозирования значений временных шагов, которые были исключены. Это позволяет увидеть, насколько хорошо выбранный тип кривой может предсказывать значения. Подгонка прогнозных значений к исключенным значениям измеряется Проверкой RMSE.

    Более подробно о прогнозной модели, модели проверки и статистике RMSE

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

  • Значения параметра Выходные объекты будут добавлены на панель Содержание с отображением, основанным на конечном прогнозируемом временном шаге.

  • Этот инструмент создает сообщения геообработки и всплывающие диаграммы, чтобы помочь вам понять и визуализировать результаты прогноза. Сообщения содержат информацию о структуре куба пространство-время и сводную статистику значений RMSE. При щелчке по объекту с помощью навигационного инструмента Исследовать на панели Всплывающие окна отображается линейная диаграмма, показывающая значения куба пространство-время, кривую, используемую для прогнозирования, и прогнозируемые значения для этого местоположения.

  • Параметр Опция выброса может использоваться для определения статистически значимых выбросов в значениях временных рядов в каждом местоположении.

    Более подробно об определении выбросов во временных рядах

  • Решение о том, сколько временных шагов следует исключить для проверки, является важным выбором. Чем больше временных шагов исключается, тем меньше временных шагов остается для определения модели проверки. Однако если исключить слишком мало временных шагов, то Проверка RMSE будет оцениваться с использованием небольшого объема данных и может выдать результат, вводящий в заблуждение. Рекомендуется исключить как можно больше временных шагов при сохранении достаточного их количества для оценки модели проверки. Также предполагается, что вы удерживаете по крайней мере такое количество временных шагов для проверки, которое равно количеству временных шагов, которые вы собираетесь спрогнозировать, если ваш куб пространство-время имеет достаточно временных шагов, чтобы позволить это.

Параметры

ПодписьОписаниеТип данных
Входной куб Пространство-Время

Куб netCDF, содержащий переменную, которую вы хотите спрогнозировать на будущие временные шаги. Файл должен быть с расширением .nc, и должен быть создан инструментами Создать куб пространство-время по агрегации точек, Создать куб пространство-время из указанных местоположений или Создать куб пространство-время из многомерного растрового слоя.

File
Переменная анализа

Числовая переменная в файле netCDF, которая будет прогнозироваться на будущие временные шаги.

String
Выходные объекты

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

Feature Class
Выходной куб пространство-время
(Дополнительный)

Новый куб пространство-время (.nc файл), содержащий значения входного куба пространство-время с добавлением прогнозируемых временных шагов. Инструмент Визуализация куба Пространство-Время в 3D можно использовать для одновременного просмотра всех наблюдаемых и прогнозируемых значений.

File
Количество временных шагов для прогноза
(Дополнительный)

Положительное целое число, определяющее количество временных шагов для прогнозирования. Это значение не может быть больше 50 процентов от общего числа временных шагов во Входном кубе пространства-времени. Значение по умолчанию равно одному временному шагу.

Long
Тип кривой
(Дополнительный)

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

  • ЛинейнаяВременной ряд линейно увеличивается или уменьшается с течением времени.
  • ПараболическаяВременной ряд следует параболе или квадратичной кривой с течением времени.
  • ЭкспоненциальнаяВременной ряд экспоненциально увеличивается или уменьшается с течением времени.
  • S-образная (функция Гомперса)Временной ряд увеличивается или уменьшается в соответствии с формой буквы S с течением времени.
  • АвтоопределениеВсе четыре типа кривых выполняются для каждого местоположения, и модель получает наименьшее значение при Проверке RSE. Если для проверки не исключаются временные срезы, то используется модель с наименьшим прогнозным значением RMSE. Это значение по умолчанию.
String
Количество временных шагов, исключаемых для проверки
(Дополнительный)

Количество временных шагов в конце каждого временного ряда, которые необходимо исключить для проверки. Значение по умолчанию равно 10 процентам (округляется в меньшую сторону) от числа входных временных шагов, и это значение не может быть больше 25 процентов от числа временных шагов. Укажите значение 0, чтобы не исключать никаких временных шагов.

Long
Опция Выброс
(Дополнительный)

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

  • ОтсутствуетВыбросы не будут определяться. Это значение по умолчанию.
  • Определять выбросыВыбросы будут определяться с использованием теста Генерализованный ESD.
String
Уровень достоверности
(Дополнительный)

Задает уровень достоверности теста выбросов во временных рядах.

  • 90%Уровень достоверности теста составляет 90 процентов. Это значение по умолчанию.
  • 95%Уровень достоверности теста составляет 95 процентов.
  • 99%Уровень достоверности теста составляет 99 процентов.
String
Максимальное число выбросов

Максимальное число временных шагов, которые могут быть объявлены выбросами в каждом местоположении. Значение по умолчанию составляет 5 процентов (округлено вниз) от количества временных шагов входного куба пространства-времени (значение хотя бы 1 будет использоваться всегда). Значение не может превышать 20 процентов от числа временных шагов.

Long

arcpy.stpm.CurveFitForecast(in_cube, analysis_variable, output_features, {output_cube}, {number_of_time_steps_to_forecast}, {curve_type}, {number_for_validation}, {outlier_option}, {level_of_confidence}, maximum_number_of_outliers)
ИмяОписаниеТип данных
in_cube

Куб netCDF, содержащий переменную, которую вы хотите спрогнозировать на будущие временные шаги. Файл должен быть с расширением .nc, и должен быть создан инструментами Создать куб пространство-время по агрегации точек, Создать куб пространство-время из указанных местоположений или Создать куб пространство-время из многомерного растрового слоя.

File
analysis_variable

Числовая переменная в файле netCDF, которая будет прогнозироваться на будущие временные шаги.

String
output_features

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

Feature Class
output_cube
(Дополнительный)

Новый куб пространство-время (.nc файл), содержащий значения входного куба пространство-время с добавлением прогнозируемых временных шагов. Инструмент Визуализация куба Пространство-Время в 3D можно использовать для одновременного просмотра всех наблюдаемых и прогнозируемых значений.

File
number_of_time_steps_to_forecast
(Дополнительный)

Положительное целое число, определяющее количество временных шагов для прогнозирования. Это значение не может быть больше 50 процентов от общего числа временных шагов во Входном кубе пространства-времени. Значение по умолчанию равно одному временному шагу.

Long
curve_type
(Дополнительный)

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

  • LINEARВременной ряд линейно увеличивается или уменьшается с течением времени.
  • PARABOLICВременной ряд следует параболе или квадратичной кривой с течением времени.
  • EXPONENTIALВременной ряд экспоненциально увеличивается или уменьшается с течением времени.
  • GOMPERTZВременной ряд увеличивается или уменьшается в соответствии с формой буквы S с течением времени.
  • AUTO_DETECTВсе четыре типа кривых выполняются для каждого местоположения, и модель получает наименьшее значение при Проверке RSE. Если для проверки не исключаются временные срезы, то используется модель с наименьшим прогнозным значением RMSE. Это значение по умолчанию.
String
number_for_validation
(Дополнительный)

Количество временных шагов в конце каждого временного ряда, которые необходимо исключить для проверки. Значение по умолчанию равно 10 процентам (округляется в меньшую сторону) от числа входных временных шагов, и это значение не может быть больше 25 процентов от числа временных шагов. Укажите значение 0, чтобы не исключать никаких временных шагов.

Long
outlier_option
(Дополнительный)

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

  • NONEВыбросы не будут определяться. Это значение по умолчанию.
  • IDENTIFYВыбросы будут определяться с использованием теста Генерализованный ESD.
String
level_of_confidence
(Дополнительный)

Задает уровень достоверности теста выбросов во временных рядах.

  • 90%Уровень достоверности теста составляет 90 процентов. Это значение по умолчанию.
  • 95%Уровень достоверности теста составляет 95 процентов.
  • 99%Уровень достоверности теста составляет 99 процентов.
String
maximum_number_of_outliers

Максимальное число временных шагов, которые могут быть объявлены выбросами в каждом местоположении. Значение по умолчанию составляет 5 процентов (округлено вниз) от количества временных шагов входного куба пространства-времени (значение хотя бы 1 будет использоваться всегда). Значение не может превышать 20 процентов от числа временных шагов.

Long

Пример кода

CurveFitForecast example 1 (окно Python)

В следующем скрипте окна Python показано, как использовать инструмент CurveFitForecast.

import arcpy
arcpy.env.workspace = "C:/Analysis"
# Forecast four time steps using a linear curve.
arcpy.stpm.CurveFitForecast("Population.nc", "Pop_NONE_ZEROS", 
                            "Analysis.gdb/Forecasts", 
                            "outForecastCube.nc", 4, 
                            "LINEAR", 5)
CurveFitForecast, пример 2 (автономный скрипт)

В следующем скрипте окна Python показано, как использовать инструмент CurveFitForecast для прогнозирования населения:

# Forecast population levels using curve fitting.
# Import system modules.
import arcpy
# Set property to overwrite existing output.
arcpy.env.overwriteOutput = True
# Set workspace.
workspace = r"C:\Analysis"
arcpy.env.workspace = workspace
# Forecast three time steps using auto-detect.
arcpy.stpm.CurveFitForecast("Population.nc", "Pop_NONE_ZEROS", 
                            "Analysis.gdb/Forecasts", "outForecastCube.nc"
                            3, "AUTO_DETECT", 5, "IDENTIFY", "90%", 4)
# Create a feature class visualizing the forecasts.
# Output can only be viewed in a Scene view.
arcpy.stpm.VisualizeSpaceTimeCube3D("outForecastCube.nc", "Pop_NONE_ZEROS", 
                                    "VALUE", "Analysis.gdb/ForecastsFC")