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

Сводка

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

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

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

Иллюстрация

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

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

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

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

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

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

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

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

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

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

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

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

Синтаксис

CurveFitForecast(in_cube, analysis_variable, output_features, {output_cube}, {number_of_time_steps_to_forecast}, {curve_type}, {number_for_validation})
ParameterОбъяснениеТип данных
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

Пример кода

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)
# Create a feature class visualizing the forecasts.
# Output can only be viewed in a Scene view.
arcpy.stpm.VisualizeSpaceTimeCube3D(r"outForecastCube.nc", "Pop_NONE_ZEROS", 
                                    "VALUE", "Analysis.gdb/ForecastsFC")

Информация о лицензиях

  • Basic: Да
  • Standard: Да
  • Advanced: Да

Связанные разделы