Сводка
Прогнозирует значения каждого местоположения пространственно-временного куба с использованием адаптации алгоритма случайного леса Лео Бреймана. Регрессионная модель леса обучается с использованием временных окон в каждом местоположении куба Пространство-Время.
Иллюстрация
Использование
Этот инструмент поддерживает файлы netCDF, созданные инструментами Создать куб Пространство-Время по агрегации точек, Создать куб Пространство-Время из указанных местоположений и Создать куб Пространство-Время из многомерного растрового слоя.
По сравнению с другими инструментами прогнозирования в наборе инструментов Прогнозирования временных рядов, этот инструмент является наиболее сложным, но включает наименьшее количество предположений о данных. Он рекомендуется для временных рядов со сложными геометриями и трендами, которые трудно моделировать с помощью простых математических функций или когда предположения других методов не удовлетворяются.
Несколько предсказанных кубов пространство-время можно сравнить и выполнить их слияние с помощью инструмента Оценить прогнозы по местоположению. Это позволит создавать несколько прогнозных кубов с использованием различных инструментов и параметров прогнозирования, а инструмент будет определять наилучший прогноз для каждого местоположения, используя для прогноза Среднеквадратичную ошибку (RMSE), либо Проверку RMSE.
Для каждого местоположения во Входном куб пространство-время инструмент строит две модели, которые служат разным целям.
- Модель прогноза - эта модель используется для прогнозирования значений пространственно-временного куба путем построения леса с использованием значений временного ряда и использования этого леса для прогнозирования значений будущих временных шагов. Подгонка прогнозной модели к значениям куба пространство-время измеряется прогнозным значением RMSE.
- Модель проверки - эта модель используется для проверки модели прогноза и проверки того, насколько точно она может прогнозировать значения. Если для параметра Число временных шагов, исключаемых для проверки указано число больше 0, эта модель строится с использованием включенных временных шагов и используется для прогнозирования значений временных шагов, которые были исключены. Это позволяет увидеть, насколько хорошо модель может прогнозировать значения. Подгонка прогнозных значений к исключенным значениям измеряется Проверкой RMSE.
Более подробно о прогнозной модели, модели проверки и статистике RMSE
Значения параметра Выходные объекты будут добавлены на панель Содержание с отображением, основанным на конечном прогнозируемом временном шаге.
-
Этот инструмент создает сообщения геообработки и всплывающие диаграммы, чтобы помочь вам понять и визуализировать результаты прогноза. Сообщения содержат информацию о структуре куба Пространство-Время и сводную статистику значений RMSE и длин сезонов. Если щелкнуть по объекту с помощью инструмента навигации Исследовать, отображается линейная диаграмма во всплывающей панели, которая показывает значения куба Пространство-Время, соответствующие значения леса, прогнозные значения и допустимые границы для этого местоположения.
Параметр Опция выброса может использоваться для определения статистически значимых выбросов в значениях временных рядов в каждом местоположении.
Если вы выбираете опцию Идентифицировать выбросы параметра Опции выбросов, рекомендуется указать значение для параметра Окно временного шага вместо того, чтобы оставлять параметр пустым и оценивать другое окно временного шага для каждого места. Для каждого местоположения модель леса использует временные шаги в окне первого временного шага для обучения модели прогноза, а выбросы обнаруживаются только для оставшихся временных шагов. Если разные местоположения исключают разное количество временных шагов для обучения, итоговая статистика, такая как среднее, минимальное и максимальное количество выбросов для каждого временного шага или для каждого местоположения, может вводить в заблуждение.
Решение о том, сколько временных шагов следует исключить для проверки, является важным выбором. Чем больше временных шагов исключается, тем меньше временных шагов остается для определения модели проверки. Однако если исключить слишком мало временных шагов, то Проверка RMSE будет оцениваться с использованием небольшого объема данных и может выдать результат, вводящий в заблуждение. Рекомендуется исключить как можно больше временных шагов при сохранении достаточного их количества для оценки модели проверки. Также предполагается, что вы удерживаете по крайней мере такое количество временных шагов для проверки, которое равно количеству временных шагов, которые вы собираетесь спрогнозировать, если ваш куб пространство-время имеет достаточно временных шагов, чтобы позволить это.
Синтаксис
arcpy.stpm.ForestBasedForecast(in_cube, analysis_variable, output_features, {output_cube}, {number_of_time_steps_to_forecast}, {time_window}, {number_for_validation}, {number_of_trees}, {minimum_leaf_size}, {maximum_depth}, {sample_size}, {forecast_approach}, {outlier_option}, {level_of_confidence}, maximum_number_of_outliers)
Parameter | Объяснение | Тип данных |
in_cube | Куб netCDF, содержащий переменную, которую вы хотите спрогнозировать на будущие временные шаги. Файл должен быть с расширением .nc, и должен быть создан инструментами Создать куб пространство-время по агрегации точек, Создать куб пространство-время из указанных местоположений или Создать куб пространство-время из многомерного растрового слоя. | File |
analysis_variable | Числовая переменная в файле netCDF, которая будет прогнозироваться на будущие временные шаги. | String |
output_features | Выходной класс объектов, содержащий все местоположения куба пространства-времени с прогнозируемыми значениями, хранящимися в виде полей. Слой отображает прогноз для последнего временного шага и содержит всплывающие диаграммы, показывающие временные ряды, прогнозы и 90-процентные допустимые границы для каждого местоположения. | Feature Class |
output_cube (Дополнительный) | Новый куб пространство-время (.nc файл), содержащий значения входного куба пространство-время с добавлением прогнозируемых временных шагов. Инструмент Визуализация куба Пространство-Время в 3D можно использовать для одновременного просмотра всех наблюдаемых и прогнозируемых значений. | File |
number_of_time_steps_to_forecast (Дополнительный) | Положительное целое число, определяющее количество временных шагов для прогнозирования. Это значение не может быть больше 50 процентов от общего числа временных шагов во Входном кубе пространства-времени. Значение по умолчанию равно одному временному шагу. | Long |
time_window (Дополнительный) | Количество предыдущих временных шагов для использования при обучении модели. Если ваши данные отображают сезонность (повторяющиеся циклы), укажите количество временных шагов, соответствующих одному сезону. Это значение не может быть больше одной трети от числа временных шагов во входном кубе Пространство-время. Если значение не указано, временное окно оценивается для каждого местоположения с использованием функции спектральной плотности. | Long |
number_for_validation (Дополнительный) | Количество временных шагов в конце каждого временного ряда, которые необходимо исключить для проверки. Значение по умолчанию равно 10 процентам (округляется в меньшую сторону) от числа входных временных шагов, и это значение не может быть больше 25 процентов от числа временных шагов. Укажите значение 0, чтобы не исключать никаких временных шагов. | Long |
number_of_trees (Дополнительный) | Число деревьев для создания модели леса. Увеличение числа деревьев приведет к более точному прогнозированию модели, но модель будет дольше вычисляться. По умолчанию число деревьев равно 100, а значение должно быть не менее 1 и не более 1000. | Long |
minimum_leaf_size (Дополнительный) | Минимальное число наблюдений, необходимых для сохранения листа (т.е. конечного объекта на дереве, без дальнейшего разбиения). Для очень больших данных увеличение этого числа сократит время работы инструмента. | Long |
maximum_depth (Дополнительный) | Максимальное число разбиений, которые будут сделаны вниз по дереву . При большей максимальной глубине будет создано больше разбиений, что может увеличить вероятность чрезмерной подгонки модели. Если значение не указано, значение будет определено инструментом на основе количества деревьев, созданных моделью, и размера окна временного шага. | Long |
sample_size (Дополнительный) | Процент обучающих данных, который будет использоваться для соответствия прогнозной модели. Обучающие данные состоят из связанных объясняющих и зависимых переменных, построенных с использованием временных окон. Все остальные обучающие данные будут использованы для оптимизации параметров прогнозной модели. Значение по умолчанию – 100 процентов. | Long |
forecast_approach (Дополнительный) | Указывает, как будут представлены объясняющие и зависимые переменные при обучении модели леса в каждом местоположении. Для обучения модели леса, которая будет использоваться для прогнозирования, необходимо создать наборы объясняющих и зависимых переменных с использованием временных окон. Используйте этот параметр, чтобы указать, будут ли эти переменные линейно детрендированы и будет ли зависимая переменная представлена своим необработанным значением или остатком линейной регрессионной модели. Эта модель линейной регрессии использует все временные шаги в пределах временного окна в качестве объясняющих переменных и использует следующий временной шаг в качестве зависимой переменной. Остаточная величина рассчитывается путем вычитания прогнозируемого значения на основе линейной регрессии из исходного значения зависимой переменной. Более подробно о параметре Подход к прогнозу
| String |
outlier_option (Дополнительный) | Задает, будут ли определяться статистически значимые выбросы во временных рядах.
| String |
level_of_confidence (Дополнительный) | Задает уровень достоверности теста выбросов во временных рядах.
| String |
maximum_number_of_outliers | Максимальное число временных шагов, которые могут быть объявлены выбросами в каждом местоположении. Значение по умолчанию составляет 5 процентов (округлено вниз) от количества временных шагов входного куба пространства-времени (значение хотя бы 1 будет использоваться всегда). Значение не может превышать 20 процентов от числа временных шагов. | Long |
Пример кода
В следующем скрипте окна Python показано, как использовать инструмент ForestBasedForecast.
import arcpy
arcpy.env.workspace = "C:/Analysis"
# Forecast four time steps using a random forest with detrending.
arcpy.stpm.ForestBasedForecast("CarTheft.nc","Cars_NONE_ZEROS",
"Analysis.gdb/Forecasts", "outForecastCube.nc"
4, 3, 5, 100, "", "", 100, "VALUE_DETREND")
Следующий скрипт Python, демонстрирующий использование ForestBasedForecast инструмента для прогнозирования количества угонов автомобилей.
# Forecast change in car thefts using a random forest.
# Import system modules.
import arcpy
# Set property to overwrite existing output, by default.
arcpy.env.overwriteOutput = True
# Set workspace.
workspace = r"C:\Analysis"
arcpy.env.workspace = workspace
# Forecast three time steps using a random forest based on change.
arcpy.stpm.ForestBasedForecast("CarTheft.nc","Cars_NONE_ZEROS",
"Analysis.gdb/Forecasts", "outForecastCube.nc"
4, 3, 5, 100, "", "", 100, "CHANGE",
"IDENTIFY", "90%", 4)
# Create a feature class visualizing the forecasts.
arcpy.stpm.VisualizeSpaceTimeCube3D("outForecastCube.nc", "Cars_NONE_ZEROS",
"VALUE", "Analysis.gdb/ForecastsFC")
Environments
Информация о лицензиях
- Basic: Да
- Standard: Да
- Advanced: Да
Связанные разделы
- Обзор набора инструментов Углубленный анализ пространственно-временных закономерностей
- Обзор группы инструментов Временные ряды прогнозирования
- Прогнозирование подгонки кривой
- Прогноз экспоненциального сглаживания
- Оценка прогнозов по местоположению
- Понимание выбросов в анализе временных рядов
- Как работает инструмент Прогноз на основе леса
- Классификация на основе леса и регрессия
- Как работает Классификация на основе леса и регрессия
- Поиск инструмента геообработки