Регрессионная модель произвольных деревьев с обучением (Image Analyst)

Доступно с лицензией Image Analyst.

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

Моделирует отношения между независимыми переменными и целевым набором данных (зависимой переменной).

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

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

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

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

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

  • Целевой входной растр также может быть многомерным растром.

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

  • Если целевые входные данные безразмерны, а независимые переменные имеют измерения, будет использоваться первый срез.

  • Если выходные данные представляют собой многомерный растр, используйте формат CRF. Если выходные данные представляют собой безразмерный растр, его можно сохранить в любом выходном растровом формате.

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

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

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

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

  • Для создания точечной диаграммы (рассеяния) спрогнозированных и обучающих значений вы можете использовать инструмент Извлечь по образцу, чтобы извлечь спрогнозированные значения из спрогнозированных растров. Затем выполните соединение таблиц, используя поле LocationID выходных данных инструмента Извлечь по образцу и поле ObjectID целевого класса полей. Если целевыми данными является растр, вы можете создать случайные точки и извлечь значения из целевого растра и из прогнозируемого растра.

Параметры

ПодписьОписаниеТип данных
Входные растры

Одноканальные, многомерные или многоканальные наборы растровых данных или наборы данных мозаики, содержащие независимые переменные.

Mosaic Dataset; Mosaic Layer; Raster Dataset; Raster Layer; Image Service; String
Целевой растр или точки

Класс растровых или точечных объектов, содержащий данные целевой переменной (зависимой переменной).

Feature Class; Feature Layer; Raster Dataset; Raster Layer; Mosaic Layer; Image Service
Выходной файл определения регрессии

Файл формата JSON с расширением .ecd, который содержит информацию об атрибутах, статистику и другую информацию, необходимую для классификатора.

File
Поле целевого значения
(Дополнительный)

Имя поля с информацией для моделирования в целевом классе точечных объектов или наборе растровых данных.

Field
Поле целевого измерения
(Дополнительный)

Поле даты или числовое поле во входном классе точечных объектов, определяющее значения измерений.

Field
Измерение растра
(Дополнительный)

Имя измерения входного многомерного растра (независимые переменные), которое связано с измерением в целевых данных.

String
Выходная таблица значимости
(Дополнительный)

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

Table
Максимальное число деревьев
(Дополнительный)

Максимальное количество деревьев в лесу. Увеличение количества деревьев приведет к повышению точности, но эти улучшения будут иметь предельные значения. Число деревьев пропорционально увеличивает время обработки. Значение по умолчанию равно 50.

Long
Максимальная глубина дерева
(Дополнительный)

Максимальная глубина каждого дерева в лесу. Глубина определяет количество правил, которые может создать каждое дерево, что приводит к решению. Деревья не будут расти глубже этого параметра. Значение по умолчанию равно 30.

Long
Максимальное число выборок
(Дополнительный)

Максимальное число выборок, которые будут использоваться для регрессионного анализа. Значение, меньшее или равное 0, означает, что система будет использовать все выборки из входного целевого растра или класса точечных объектов для обучения регрессионной модели. Значение по умолчанию 10000.

Long
Среднее количество точек на ячейку
(Дополнительный)

Указывает, будет ли вычисляться среднее, если несколько обучающих точек попадают в одну ячейку. Этот параметр применим только тогда, когда целевыми входными данными является класс точечных объектов.

  • Не отмечено — Если несколько обучающих точек попадают в одну ячейку, будут использоваться все точки. Это значение по умолчанию
  • Отмечено — Будет рассчитано среднее значение обучающих точек, попадающих в ячейку.

  • Сохранить все точкиЕсли несколько обучающих точек попадают в одну ячейку, будут использоваться все точки. Это значение по умолчанию
  • Среднее количество точек на ячейкуБудет рассчитано среднее значение обучающих точек, попадающих в ячейку.
Boolean
Процент выборок для тестирования
(Дополнительный)

Процент тестовых точек, которые будут использоваться для проверки ошибок. Инструмент проверяет три типа ошибок: ошибки в обучающих точках, ошибки в тестовых точках и ошибки в контрольных точках местоположения. Значение по умолчанию равно 10.

Double
Выходные точечные диаграммы (pdf или html)
(Дополнительный)

Выходные точечные диаграммы в формате PDF или HTML. Выходные данные будут включать точечные диаграммы обучающих данных, тестовых данных и контрольных данных местоположения.

File
Выходные объекты выборок
(Дополнительный)

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

Feature Class

TrainRandomTreesRegressionModel(in_rasters, in_target_data, out_regression_definition, {target_value_field}, {target_dimension_field}, {raster_dimension}, {out_importance_table}, {max_num_trees}, {max_tree_depth}, {max_samples}, {average_points_per_cell}, {percent_testing}, {out_scatterplots}, {out_sample_features})
ИмяОписаниеТип данных
in_rasters
[in_rasters,...]

Одноканальные, многомерные или многоканальные наборы растровых данных или наборы данных мозаики, содержащие независимые переменные.

Mosaic Dataset; Mosaic Layer; Raster Dataset; Raster Layer; Image Service; String
in_target_data

Класс растровых или точечных объектов, содержащий данные целевой переменной (зависимой переменной).

Feature Class; Feature Layer; Raster Dataset; Raster Layer; Mosaic Layer; Image Service
out_regression_definition

Файл формата JSON с расширением .ecd, который содержит информацию об атрибутах, статистику и другую информацию, необходимую для классификатора.

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

Имя поля с информацией для моделирования в целевом классе точечных объектов или наборе растровых данных.

Field
target_dimension_field
(Дополнительный)

Поле даты или числовое поле во входном классе точечных объектов, определяющее значения измерений.

Field
raster_dimension
(Дополнительный)

Имя измерения входного многомерного растра (независимые переменные), которое связано с измерением в целевых данных.

String
out_importance_table
(Дополнительный)

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

Table
max_num_trees
(Дополнительный)

Максимальное количество деревьев в лесу. Увеличение количества деревьев приведет к повышению точности, но эти улучшения будут иметь предельные значения. Число деревьев пропорционально увеличивает время обработки. Значение по умолчанию равно 50.

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

Максимальная глубина каждого дерева в лесу. Глубина определяет количество правил, которые может создать каждое дерево, что приводит к решению. Деревья не будут расти глубже этого параметра. Значение по умолчанию равно 30.

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

Максимальное число выборок, которые будут использоваться для регрессионного анализа. Значение, меньшее или равное 0, означает, что система будет использовать все выборки из входного целевого растра или класса точечных объектов для обучения регрессионной модели. Значение по умолчанию 10000.

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

Указывает, будет ли вычисляться среднее, если несколько обучающих точек попадают в одну ячейку. Этот параметр применим только тогда, когда целевыми входными данными является класс точечных объектов.

  • Не отмечено — Если несколько обучающих точек попадают в одну ячейку, будут использоваться все точки. Это значение по умолчанию
  • Отмечено — Будет рассчитано среднее значение обучающих точек, попадающих в ячейку.

  • KEEP_ALL_POINTSЕсли несколько обучающих точек попадают в одну ячейку, будут использоваться все точки. Это значение по умолчанию
  • AVERAGE_POINTS_PER_CELLБудет рассчитано среднее значение обучающих точек, попадающих в ячейку.
Boolean
percent_testing
(Дополнительный)

Процент тестовых точек, которые будут использоваться для проверки ошибок. Инструмент проверяет три типа ошибок: ошибки в обучающих точках, ошибки в тестовых точках и ошибки в контрольных точках местоположения. Значение по умолчанию равно 10.

Double
out_scatterplots
(Дополнительный)

Выходные точечные диаграммы в формате PDF или HTML. Выходные данные будут включать точечные диаграммы обучающих данных, тестовых данных и контрольных данных местоположения.

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

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

Feature Class

Пример кода

TrainRandomTreesRegressionModel, пример 1 (окно Python)

Этот скрипт окна Python моделирует отношения между независимыми переменными и целевым набором данных.

# Import system modules 
import arcpy 
from arcpy.ia import * 

# Check out the ArcGIS Image Analyst extension license 
arcpy.CheckOutExtension("ImageAnalyst") 

# Execute  
arcpy.ia.TrainRandomTreesRegressionModel("weather_variables.crf";"dem.tif", "pm2.5.shp", r"c:\data\pm2.5_trained.ecd",  "mean_pm2.5", "date_collected", "StdTime”,  r"c:\data\pm2.5_importanc.csv", 50, 30, 10000)
TrainRandomTreesRegressionModel, пример 2 (автономный скрипт)

Этот автономный скрипт Python моделирует отношения между независимыми переменными и целевым набором данных.

# Import system modules 

import arcpy 
from arcpy.ia import * 

# Check out the ArcGIS Image Analyst extension license 
arcpy.CheckOutExtension("ImageAnalyst") 

# Define input parameters 
in_weather_variables = "C:/Data/ClimateVariables.crf" 
in_dem_varaible = "C:/Data/dem.tif" 
in_target = "C:/Data/pm2.5_observations.shp" 
target_value_field = "mean_pm2.5" 
Target_date_field = "date_collected" 
Raster_dimension = “StdTime” 
out_model_definition = "C:/Data/pm2.5_trained_model.ecd" 
Out_importance_table = "C:/Data/pm2.5_importance_table.csv" 
max_num_trees = 50 
max_tree_depth = 30 
max_num_samples = 10000 

# Execute - train with random tree regression model 
arcpy.ia.TrainRandomTreesRegressionModel(in_weather_variables;in_dem_varaible, in_target, out_model_definition,  target_value_field, Target_date_field, Raster_dimension, max_num_trees, max_tree_depth, max_num_samples)

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