Классификация на основе леса и регрессия, регрессия с бустингом (Пространственная статистика)

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

Создает модели и генерирует прогнозы с использованием одного из двух контролируемых методов машинного обучения: адаптации алгоритма случайного леса, разработанного Лео Брейманом и Адель Катлер, или алгоритма экстремального градиентного бустинга (XGBoost), разработанного Тяньци Ченом и Карлосом Гестрином. Прогнозы могут быть выполнены для обеих категориальных перемененных (классификация) и непрерывных переменных (регрессия). Независимые переменные могут принимать форму полей в атрибутивной таблице обучающих объектов, наборов растровых данных и объектов расстояния, используемых для вычисления значений близости в качестве добавочных переменных. В дополнение к проверке производительности модели на основании обучающих данных, прогнозы можно выполнять по объектам или растрам прогноза.

Более подробно о том, как работает Классификация на основе леса и регрессия, регрессия с бустингом

Иллюстрация

Иллюстрация инструмента Классификация на основе леса и регрессия, регрессия с бустингом

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

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

    • На основе леса — создает модель, применяя метод пакетирования, при котором каждое дерево решений создается параллельно с использованием случайно сгенерированной части исходных (обучающих) данных. Каждое дерево строит собственный прогноз и становится предложением для итогового результата. Модель на основе леса учитывает предложения всех деревьев решений, чтобы спрогнозировать или классифицировать результат неизвестной выборки. Это важно, поскольку отдельные деревья могут иметь проблемы с чрезмерно близкой подгонкой модели; но объединение нескольких деревьев в лес для прогнозирования решает проблему чрезмерно близкой подгонки, связанную с одним деревом. Эта модель требует меньше параметров и более интуитивная.
    • Градиентный бустинг — создает модель, применяя метод бустинга, при котором каждое дерево решений создается последовательно с использованием исходных (обучающих) данных. Каждое последующее дерево исправляет ошибки предыдущих деревьев, поэтому модель объединяет несколько слабых учеников, чтобы стать сильной моделью прогнозирования. Модель градиентного бустинга включает в себя регуляризацию и метод ранней остановки, который может предотвратить переобучение. Эта модель обеспечивает больший контроль над гиперпараметрами и является более сложной.
  • Этот инструмент можно использовать в трех режимах работы: обучение, прогнозирование в объекты и прогнозирование в растр. Для оценки производительности различных моделей при изучении различных независимых переменных и настроек инструмента в параметре Тип прогнозирования можно использовать опцию Только обучение. Как только вы найдете хорошую модель, используйте опцию Прогнозировать в объекты или Прогнозировать в растр.

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

  • Входными объектами могут быть точки или полигоны. Инструмент не работает с составными объектами.

  • Для использования растров в качестве независимых переменных или прогнозирования Выходной поверхности прогнозирования необходима лицензия Дополнительный модуль ArcGIS Spatial Analyst.

  • Этот инструмент создает следующие дополнительные выходные данные:

    • Выходные обученные объекты — класс объектов, который содержит все значения Входных обучающих объектов и все независимые переменные, используемые в модели. Независимые переменные включают все используемые входные поля, рассчитанные расстояния и извлеченные или рассчитанные значения растра. Класс объектов также будет включать прогнозы для каждого объекта Входных обучающих объектов. Сюда входят объекты, которые использовались для обучения и проверки модели. Если прогнозируемая переменная не является категориальной, класс объектов будет включать в себя невязку и стандартную невязку для каждого прогноза. Если прогнозируемая переменная является категориальной, класс объектов будет содержать поле Correctly Classified, которое указывает, правильно ли модель классифицировала каждый прогноз. Используйте поля Residual и Standard Residual или поле Correctly Classified, чтобы оценить производительность созданной модели.
    • Выходной файл обученной модели — файл многократного использования, содержащий результаты обученной модели. Этот файл можно использовать в инструменте Прогнозировать, используя файл модели пространственной статистики для прогнозирования в новые объекты.
    • Выходные объекты прогнозирования — класс объектов, который содержит прогнозируемые значения модели для каждого объекта. Эта опция доступна только в том случае, если для параметра Тип прогнозирования установлено значение Прогнозировать в объекты.
    • Выходная поверхность прогноза – выходной растр, содержащий результаты прогнозирования. Эти выходные данные доступны только в том случае, если для параметра Тип прогнозирования установлено значение Прогнозировать в растр.
    • Выходная таблица значимости переменных — таблица, описывающая значимость каждой независимой переменной (полей, объектов расстояния и растров).
    • Выходная таблица настройки параметров — таблица, содержащая настройки параметров и целевые значения для каждого пути оптимизации. Эти выходные данные доступны только в том случае, если отмечен параметр Оптимизировать параметры.
    • Выходная таблица эффективности классификации (Матрица несоответствий) — таблица, в которой суммируются характеристики модели на основе данных проверки. Столбцы матрицы представляют категории, прогнозируемые моделью, а строки представляют фактические категории. Используйте таблицу, чтобы оценить, как модель работает с данными проверки. Эти выходные данные доступны только в том случае, если отмечен параметр Рассматривать как категориальные.
  • Этот инструмент создает сообщения, которые помогут вам понять производительность созданной модели. Вы можете получить доступ к сообщению, переместив курсор мыши на индикатор выполнения, щелкнув на всплывшую кнопку или развернув раздел сообщений на панели Геообработка. Вы можете получить доступ к сообщениям для выполненного ранее инструмента через Историю геообработки. Сообщения включают следующее:

    • Информация о характеристиках модели
    • Ошибки модели, не вошедшие в набор
    • Диагностики обучения
    • Диагностики проверки
    • Диагностики независимой переменной
    • Значимость переменных – если указано значение параметра Выходная таблица значимости переменных, сообщения геообработки будут сообщать о 20 переменных с наибольшей значимостью. Если значение параметра Число запусков для проверки больше 1, будет существовать более одного набора значений значимости переменных. Каждый запуск будет иметь набор значений значимости переменных, поэтому сообщения геообработки будут сообщать о наборе значений значимости переменных, связанных с запуском, со значениями R-квадрата или точности, наиболее близкими к медианному R-квадрату или точности.

  • Этот инструмент добавляет следующие дополнительные диаграммы в панель Содержание:

    • Эффективность прогноза — стековая линейная диаграмма, помогающая оценить, насколько хорошо модель соответствует данным. Категории по оси X были предсказаны моделью для Входных обучающих объектов. Сюда входят объекты, которые использовались для обучения и проверки модели. Цвета представляют истинные категории входных обучающих объектов. Эта диаграмма создается только в том случае, если прогнозируемая переменная является категориальной, отмечена опция Рассматривать переменную как Категориальную и указан параметр Выходные обученные объекты.
    • Матрица неточностей — матричная диаграмма интенсивности. Ось X представляет прогнозируемую категорию объектов во Входных обучающих объектах, а ось Y представляет их фактическую категорию. Диагональные ячейки отображают сколько раз модель правильно спрогнозировала категорию. Более высокие значения в диагональных ячейках указывают на то, что модель работает хорошо. Эта диаграмма создается только в том случае, если переменная прогнозирования является категориальной и отмечен параметр Рассматривать переменную как Категориальную.
    • Сводка значимости переменных или Распределение значимости переменных — линейчатая диаграмма, отображающая значимость каждой независимой переменной для модели. Если значение Число запусков для проверки больше 1, диаграмма будет представлять собой ящичковую диаграмму, отображающую распределение значений значимости для каждой независимой переменной. Эта диаграмма создается, если вы укажете значение параметра Выходная таблица значимости переменных.
    • Эффективность проверки — стековая линейная диаграмма, помогающая оценить, насколько хорошо модель работает на данных проверки. Фактические категории объектов в данных проверки расположены по оси X. Цвет представляет прогнозируемую категорию объектов в данных проверки. Эта диаграмма создается только в том случае, если прогнозируемая переменная является категориальной, отмечена опция Рассматривать переменную как Категориальную и указано значение параметра Выходная таблица эффективности классификации (Матрица несоответствий).
    • Проверка R2 или Точность проверки — гистограмма, отображающая распределение значений R2 или точности. Распределение значений R2 или точности обусловлено случайностью, которая вводится при создании модели. Эта диаграмма помогает оценить стабильность производительности модели в разных запусках модели. Эта диаграмма создается только в том случае, если указано значение параметра Выходная таблица проверок, а значение Число запусков для проверки больше 1.
  • Независимые переменные могут быть получены из полей, быть вычислены по объектам расстояния или извлечены из растров. Можно использовать любые комбинации этих типов независимых переменных, но необходим хотя бы один тип. Независимые переменные (из полей, объектов расстояния или растров) должны содержать различные значения. Если независимая переменная является категориальной, отметьте опцию Категориальная. Отметка Категориальный будет автоматически отмечена для переменных строкового типа. Категориальные независимые переменные ограничены 60 уникальными значениями, хотя меньшее количество категорий улучшит производительность модели. Для данного размера данных, чем больше категорий содержит переменная, тем больше вероятность того, что она будет доминировать в модели и приведет к менее эффективным результатам прогнозирования.

  • Объекты расстояния используются для автоматического создания независимых переменных, представляя расстояние от предоставленных объектов до Входных обучающих объектов. Расстояния будут рассчитываться от каждого объекта значения Входные обучающие объекты до ближайшего значения Независимых объектов расстояния обучения. Если входные Независимые объекты расстояния обучения являются полигонами или линиями, атрибуты расстояния вычисляются как расстояние между ближайшими сегментами пары объектов. Но для полигонов и линий расстояния рассчитываются по-разному. Более подробно см. Как инструменты близости вычисляют расстояние.

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

  • Хотя на панели Содержание можно иметь несколько слоев с одним и тем же именем, инструмент не принимает независимые расстояния и независимые растровые слои с одинаковым именем. Чтобы избежать этой проблемы, убедитесь, что каждый слой имеет уникальное имя, или удалите повторяющиеся имена слоев в раскрывающихся списках.

  • Если Входные обучающие объекты являются полигонами, значение параметра Переменная для прогнозирования будет категориальным, и обязательно указываются Независимые обучающие растры, то доступна опция Конвертировать полигоны в разрешение растра для обучения. Если эта опция включена, полигон разделяется на точки в центроидах каждой из ячеек растра, попадающих в полигон. Значения растра в местоположении каждой точки затем извлекаются и используются для обучения модели. Для числовых переменных используется билинейный метод пересчета, а для категориальных переменных – ближайший. Размером ячейки конвертированных полигонов по умолчанию будет максимальный размер ячейки входных растров. Но это можно изменить при помощи параметра среды Размер ячейки. Если параметр не отмечен, в модели будет использоваться одно значение растра для каждого полигона. Каждому полигону назначается среднее значение для непрерывных растров и значение большинства для категориальных растров.

    Полигоны конвертированы в разрешение растра (слева) или им назначено среднее значение (справа).

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

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

  • При сопоставлении независимых переменных поля Prediction и Training должны быть одного типа (double в Training должно соответствовать double в Prediction).

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

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

  • Для использования наборов данных мозаики в качестве независимых переменных сначала запустите инструмент Создать слой мозаики и скопируйте полный путь к слою в инструмент или используйте инструмент Создать слой мозаики и инструмент Создать растровый слой для уравнивания шаблонов обработки для наборов данных мозаики.

  • Значение по умолчанию для параметра Число деревьев равно 100. Для модели на основе леса увеличение числа деревьев в модели леса приведет к более точному прогнозированию модели, но модель будет дольше вычисляться.

  • Если значение параметра Тип модели задано как На основе леса и отмечен параметр Вычислить неопределенность, инструмент вычислит интервал 90-процентного прогнозирования вокруг каждого предсказанного значения Переменной для прогнозирования. Если значение параметра Тип прогнозирования задано как Только обучение или Прогнозировать в объекты, к Выходным обученным объектам или Выходным объектам прогнозирования будут добавлены два поля. Эти поля, оканчивающиеся на _P05 и _P95, обозначают верхнюю и нижнюю границы интервала прогнозирования. Для каждого нового наблюдения вы можете прогнозировать с 90-процентной вероятностью, что значение нового наблюдения попадет в этот интервал, исходя из тех же самых независимых переменных. Если для параметра Тип прогнозирования» задано значение Прогнозировать в растр, на панель Содержание будут добавлены два дополнительных растра, представляющие верхнюю и нижнюю границы интервала прогнозирования.

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

  • Инструмент поддерживает параллельную обработку и использует до 50% доступной мощности процессора по умолчанию. Количество используемых процессоров можно изменить при помощи параметра среды Коэффициент параллельной обработки.

  • Более подробно о работе инструментов, выходных сообщениях и диаграммах см. Как работает инструмент Классификация на основе леса и регрессия.

    Ссылки:

    • Breiman, Leo. Out-Of-Bag Estimation. 1996.
    • Breiman, L. (1996). Bagging predictors. Machine learning, 24(2), 123-140.
    • Breiman, Leo. "Random Forests". Machine Learning. 45 (1): 5-32. doi:10.1023/A:1010933404324. 2001.
    • Breiman, L., J.H. Friedman, R.A. Olshen, C.J. Stone. Деревья классификации и регрессии. New York: Academic. Chapter 4. 2017.
    • Чен Т. и Гестрин К. (2016). «XGBoost: масштабируемая система повышения качества деревьев». В материалах 22 конференции ACM SIGKDD Conference on Knowledge Discovery and Data Mining. 785-794.
    • Dietterich, T. G. (2000, June). Ensemble methods in machine learning. В International workshop on multiple classifier systems (pp. 1-15). Springer, Berlin, Heidelberg.
    • Gini, C. (1912). Variabilità e mutabilità. Reprinted in Memorie di metodologica statistica (Ed. Pizetti E, Salvemini, T). Rome: Libreria Eredi Virgilio Veschi.
    • Grömping, U. (2009). Variable importance assessment in regression: linear regression versus random forest. The American Statistician, 63(4), 308-319.
    • Ho, T. K. (1995, August). Random decision forests. В Document analysis and recognition, 1995., proceedings of the third international conference on Document Analysis and Recognition. (Vol. 1, pp. 278-282). IEEE.
    • James, G., Witten, D., Hastie, T., & Tibshirani, R. (2013). An introduction to statistical learning (Vol. 112). New York: springer.
    • LeBlanc, M., & Tibshirani, R. (1996). Combining estimates in regression and classification. Journal of the American Statistical Association, 91(436), 1641-1650.
    • Loh, W. Y., & Shih, Y. S. (1997). Split selection methods for classification trees. Statistica sinica, 815-840.
    • Meinshausen, Nicolai. "Quantile regression forests." Journal of Machine Learning Research 7. Jun (2006): 983-999.
    • Nadeau, C., & Bengio, Y. (2000). Inference for the generalization error. В Advances in neural information processing systems (pp. 307-313).
    • Strobl, C., Boulesteix, A. L., Kneib, T., Augustin, T., & Zeileis, A. (2008). Conditional variable importance for random forests. BMC bioinformatics, 9(1), 307.
    • Zhou, Z. H. (2012). Ensemble methods: foundations and algorithms. ESRI Press.

Параметры

ПодписьОписаниеТип данных
Тип прогнозирования

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

  • Только обучениеМодель будет обучена, но прогнозы созданы не будут. Используйте эту опцию для оценки точности модели перед созданием прогнозов. Эта опция создаст выходную диагностику модели в окне сообщений и диаграмму значимости переменных. Это значение по умолчанию
  • Прогнозировать в объектыДля объектов будут созданы прогнозы или классификация. Независимые переменные должны быть представлены и для обучающих объектов, и для прогнозируемых объектов. Выходными данными этой опции будут класс объектов, диагностика модели в окне сообщений, дополнительная таблица и диаграмма значимости переменных.
  • Прогнозировать в растрРастр прогнозирования будет построен для области пересечения независимых растров. Независимые растры должны быть представлены и для обучающей области, и для прогнозируемой области. Выходными данными этой опции будут поверхность прогнозирования, диагностика модели в окне сообщений, дополнительная таблица и диаграмма значимости переменных.
String
Входные обучающие объекты

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

Feature Layer
Переменная для прогнозирования
(Дополнительный)

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

Field
Рассматривать переменную как Категориальную
(Дополнительный)

Указывает, будет ли Переменная для прогнозирования категориальной переменной.

  • Отмечено – значение Переменной для прогнозирования является категориальной переменной, и будет выполняться классификация.
  • Не отмечено — значение Переменной для прогнозирования является непрерывным, и будет выполняться регрессия. Это значение по умолчанию
Boolean
Независимые переменные обучения
(Дополнительный)

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

Value Table
Независимые объекты расстояния обучения
(Дополнительный)

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

Feature Layer
Независимые обучающие растры
(Дополнительный)

Независимые переменные обучения, извлеченные из растров. Независимые переменные обучения будут автоматически созданы путем извлечения значений ячеек растра. Для каждого из Входных обучающих объектов значение ячейки растра извлекается в именно в этом местоположении. Билинейный пересчет растра используется, если значение растра извлекается из непрерывных растров. Метод ближайшего соседа используется, если значение растра извлекается из категориальных растров. Включите опцию Категориальная для любых переменных, которые представляют классы или категории например, почвенно-растительный покров – его наличие или отсутствие.

Value Table
Входные объекты прогнозирования
(Дополнительный)

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

Feature Layer
Выходные объекты прогнозирования
(Дополнительный)

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

Feature Class
Выходная поверхность прогноза
(Дополнительный)

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

Raster Dataset
Сопоставление независимых переменных
(Дополнительный)

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

Value Table
Сопоставление объектов расстояния
(Дополнительный)

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

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

Value Table
Сопоставление независимых растров
(Дополнительный)

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

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

Value Table
Выходные обученные объекты
(Дополнительный)

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

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

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

Если значением параметра Тип модели является Градиентный бустинг, значимость измеряется по приросту, весу и покрытию, и таблица будет включать эти поля. Выходные данные будут включать линейчатую диаграмму значимости независимых переменных, если значение параметра Число запусков для проверки равно единице, и ящичковую диаграмму, если значение больше единицы.

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

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

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

    Полигон разделен на ячейки растра

  • Не отмечено — каждому полигону будет присвоено среднее значение нижележащих непрерывных растров и значение большинства – для категориальных растров.

    Значение полигона назначается как среднее или большинство

Boolean
Число деревьев
(Дополнительный)

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

Если значением параметра Тип модели является На основе леса, большее число деревьев обычно приводит к более точным прогнозам модели; однако расчет модели займет больше времени. Если значением параметра Тип модели является Градиентый бустинг, большее количество деревьев может привести к более точным прогнозам модели; однако это также может привести к переобучению обучающих данных. Чтобы избежать переобучения данных, укажите значения для параметров Максимальная глубина дерева, Упорядочивание L2 (Lambda), Минимальное сокращение потерь для разбиений (Gamma) и Скорость обучения (Eta).

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

Минимальное число наблюдений, необходимых для сохранения листа (т.е. конечного объекта на дереве, без дальнейшего разбиения). Минимум по умолчанию для регрессии составляет 5, а для классификации – 1. Для очень больших данных увеличение этого числа увеличит время работы инструмента.

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

Максимальное число разбиений, которые будут сделаны вниз по дереву . При большей максимальной глубине будет создано больше разбиений, что может увеличить вероятность чрезмерной подгонки модели. Если значением параметра Тип модели является На основе леса, значение по умолчанию определяется данными и зависит от количества созданных деревьев и количества включенных переменных. Если значением параметра Тип модели является Градиентный бустинг, значением по умолчанию будет 6.

Long
Данные, доступные для одного дерева (%)
(Дополнительный)

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

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

Long
Число произвольно выбранных переменных
(Дополнительный)

Число независимых переменных, используемых для создания каждого дерева решений.

Каждое дерево решений в моделях на основе леса и моделях с градиентным бустингом создается с использованием случайного поднабора заданных независимых переменных. Увеличение числа переменных, используемых для создания каждого дерева решений, увеличит вероятность чрезмерной подгонки модели, особенно, если имеется одна или больше доминирующая переменная. По умолчанию используется квадратный корень от общего количества независимых переменных (полей, расстояний и растров), если значение Переменная для прогнозирования является категориальным, или деление общего количества объясняющих переменных (полей, расстояний и растров) на 3, если значение Переменной для прогнозирования является числовым.

Long
Обучающие данные, исключенные из проверки (%)
(Дополнительный)

Процент (от 10 до 50) от Входных обучающих объектов, чтобы сохранить их как тестовый набор данных для проверки. Обучение модели будет происходить без этого произвольного поднабора данных, а прогнозируемые значения модели для этих объектов будут сравниваться с наблюдаемыми значениями. Значение по умолчанию – 10 процентов.

Double
Выходная таблица эффективности классификации (Матрица несоответствий)
(Дополнительный)

Матрица несоответствий, в которой суммируется производительность модели на основе данных проверки. Матрица сравнивает спрогнозированные моделью категории для данных проверки с фактическими категориями. Эту таблицу можно использовать для вычисления дополнительных диагностик, не включенных в выходные сообщения. Этот параметр доступен, если значение  Переменной для прогнозирования является категориальным и отмечен параметр Рассматривать как Категориальную.

Table
Выходная таблица проверок
(Дополнительный)

Таблица, которая содержит R2 для каждой модели, если значение Переменной для прогнозирования не является категориальным, или точность каждой модели, если значение является категориальным. Эта таблица включает линейчатую диаграмму распределения точности или значений R2. Это распределение можно использовать для оценки стабильности модели. Этот параметр доступен, если значение Число запусков для проверки больше 2.

Table
Компенсировать разреженные категории
(Дополнительный)

Определяет, будет ли каждая категория в обучающем наборе данных, независимо от последовательности, представлена в каждом дереве. Этот параметр доступен только в том случае, если значением параметра Тип модели является На основе леса.

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

Boolean
Число запусков для проверки
(Дополнительный)

Число итераций инструмента

Распределение значений R-квадрат (непрерывное) или точности (категориальное) всех моделей можно отобразить с использованием параметра Выходная таблица проверок. Если значением параметра Тип прогнозирования является Прогнозировать в растр или Прогнозировать в объекты, то для прогнозирования будет использоваться модель, которая выдала медианное значение R-квадрат или точности. Использование медианного значения помогает обеспечить стабильность прогнозов.

Long
Вычислить неопределенность
(Дополнительный)

Определяет, вычислять ли неопределенность прогнозирования при обучении, прогнозировании в объекты или прогнозировании в растр.

Этот параметр доступен только в том случае, если значением параметра Тип модели является На основе леса.

  • Отмечено - вычислить доверительный интервал неопределенности прогнозирования.
  • Не отмечено – неопределенность не вычисляется. Это значение по умолчанию
Boolean
Выходной файл обученной модели.
(Дополнительный)

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

File
Тип модели
(Дополнительный)

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

  • На основе лесаМодель будет создана с использованием адаптации алгоритма случайного леса. Модель будет использовать предложения сотен деревьев решений. Каждое дерево решений будет создано из случайно сгенерированного поднабора исходных данных и исходных переменных.
  • Градиентный бустингМодель будет создана с использованием алгоритма Extreme Gradient Boosting (XGBoost). Модель создаст последовательность из сотен деревьев, в которой каждое последующее дерево исправляет ошибки предыдущих деревьев.
String
Упорядочивание L2 (Lambda)
(Дополнительный)

Слагаемое регуляризации, которое снижает чувствительность модели для отдельных объектов. Увеличение этого значения сделает модель более консервативной и предотвратит переобучение данных обучения. Если значение равно 0, модель становится традиционной моделью с градиентным бустингом. Значение по умолчанию равно 1.

Этот параметр доступен только в том случае, если значением параметра Тип модели является Градиентный бустинг.

Double
Минимальное сокращение потерь для разбиений (Gamma)
(Дополнительный)

Порог минимального снижения потерь, необходимого для разбиения деревьев.

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

Этот параметр доступен только в том случае, если значением параметра Тип модели является Градиентный бустинг.

Double
Скорость обучения (Eta)
(Дополнительный)

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

Этот параметр доступен только в том случае, если значением параметра Тип модели является Градиентный бустинг.

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

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

Этот параметр доступен только в том случае, если значением параметра Тип модели является Градиентный бустинг.

Long
Оптимизация параметров
(Дополнительный)

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

  • Отмечено — для поиска набора гиперпараметров будет использоваться метод оптимизации.
  • Не отмечено — метод оптимизации не будет использоваться. Это значение по умолчанию

Boolean
Метод оптимизации
(Дополнительный)

Указывает метод оптимизации, который будет использоваться для выбора и проверки точек поиска для нахождения оптимального набора гиперпараметров. Точки поиска — это комбинации гиперпараметров в пространстве поиска, заданные параметром Настройка параметров модели. Эта опция доступна, если отмечен параметр Параметры оптимизации.

  • Случайный поиск (Быстрый)Для выбора точек поиска в пространстве поиска будет использоваться алгоритм стратифицированной случайной выборки. Это значение по умолчанию
  • Случайный поиск (Надежный)Для выбора точек поиска будет использоваться алгоритм стратифицированной случайной выборки. Каждый поиск будет выполняться 10 раз с использованием разных случайных точек начала. Результатом каждого поиска будет медианный лучший результат, определяемый значением параметра Оптимизировать целевые данные (Цель). Эта опция доступна, если значением параметра Тип модели является На основе леса.
  • Поиск по сеткеБудет выбрана каждая точка поиска в пространстве поиска.
String
Оптимизировать целевые данные (Цель)
(Дополнительный)

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

  • R-квадратМетод оптимизации максимизирует R2 для поиска оптимального набора гиперпараметров. Эта опция доступна только в том случае, если прогнозируемая переменная не является категориальной. Используется по умолчанию, когда прогнозируемая переменная не является категориальной.
  • Среднеквадратическая ошибка (RMSE)Метод оптимизации минимизирует среднеквадратическую ошибку для поиска оптимального набора гиперпараметров. Эта опция доступна только в том случае, если прогнозируемая переменная не является категориальной.
  • ТочностьМетод оптимизации максимизирует точность для поиска оптимальной модели. Эта опция доступна только в том случае, если прогнозируемая переменная является категориальной. Используется по умолчанию, когда прогнозируемая переменная является категориальной.
  • Коэффициент корреляции Мэтьюза (MCC)Метод оптимизации максимизирует коэффициент корреляции Мэтьюза, чтобы найти оптимальный набор гиперпараметров. Эта опция доступна только в том случае, если прогнозируемая переменная является категориальной.
  • F1-оценкаМетод оптимизации максимизирует F1-оценку для поиска оптимального набора гиперпараметров. Эта опция доступна только в том случае, если прогнозируемая переменная является категориальной.
String
Число запусков для набора параметров
(Дополнительный)

Число точек поиска в пространстве поиска, заданном параметром Настройка параметров модели, которое будет проверено. Этот параметр доступен, если для параметра Метод оптимизации установлено значение Случайный поиск (Быстрый) или Случайный поиск (Надежный).

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

Список гиперпараметров и пространств их поиска. Настройте пространство поиска каждого гиперпараметра, указав нижнюю границу, верхнюю границу и интервал. Нижняя и верхняя границы определяют диапазон возможных значений гиперпараметра.

Ниже приведен диапазон допустимых значений для каждого гиперпараметра:

  • Число деревьев (number_of_trees) — целое значение больше 1.
  • Максимальная глубина дерева ((maximum_depth) — целое значение, большее или равное 0.
  • Минимальный размер листа (minimum_leaf_size) — целое значение больше 1.
  • Данные, доступные для одного дерева (%) (sample_size) — целое значение больше 0 и меньше или равно 100.
  • Число произвольно выбранных переменных (random_variables) — целочисленное значение, меньшее или равное количеству независимых переменных. Сюда входят независимые переменные из полей, объектов расстояния и растров.
  • Скорость обучения (Eta) (eta) — значение двойной точности больше 0 и меньше или равно 1.
  • Упорядочивание L2 (Lambda) (reg_lambda) — значение двойной точности, большее или равное 0.
  • Минимальное сокращение потерь для разбиений (Gamma) (gamma) — значение двойной точности, большее или равное 0.
  • Максимальное количество бинов для разбиений поиска (max_bins) — целое значение, большее 1 или равное 0. Значение 0 означает, что модель создаст кандидата разбиения в каждой точке данных.

Value Table
Выходная таблица настройки параметров
(Дополнительный)

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

Table
Включать все вероятности прогнозирования
(Дополнительный)

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

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

Производные выходные данные

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

Если отмечен параметр Вычислить неопределенность инструмент вычислит 90% интервал прогнозирования вокруг каждого прогнозируемого значения Переменной для прогнозирования.

Raster Layer

arcpy.stats.Forest(prediction_type, in_features, {variable_predict}, {treat_variable_as_categorical}, {explanatory_variables}, {distance_features}, {explanatory_rasters}, {features_to_predict}, {output_features}, {output_raster}, {explanatory_variable_matching}, {explanatory_distance_matching}, {explanatory_rasters_matching}, {output_trained_features}, {output_importance_table}, {use_raster_values}, {number_of_trees}, {minimum_leaf_size}, {maximum_depth}, {sample_size}, {random_variables}, {percentage_for_training}, {output_classification_table}, {output_validation_table}, {compensate_sparse_categories}, {number_validation_runs}, {calculate_uncertainty}, {output_trained_model}, {model_type}, {reg_lambda}, {gamma}, {eta}, {max_bins}, {optimize}, {optimize_algorithm}, {optimize_target}, {num_search}, {model_param_setting}, {output_param_tuning_table}, {include_probabilities})
ИмяОписаниеТип данных
prediction_type

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

  • TRAINМодель будет обучена, но прогнозы созданы не будут. Используйте эту опцию для оценки точности модели перед созданием прогнозов. Эта опция создаст выходную диагностику модели в окне сообщений и диаграмму значимости переменных. Это значение по умолчанию
  • PREDICT_FEATURESДля объектов будут созданы прогнозы или классификация. Независимые переменные должны быть представлены и для обучающих объектов, и для прогнозируемых объектов. Выходными данными этой опции будут класс объектов, диагностика модели в окне сообщений, дополнительная таблица и диаграмма значимости переменных.
  • PREDICT_RASTERРастр прогнозирования будет построен для области пересечения независимых растров. Независимые растры должны быть представлены и для обучающей области, и для прогнозируемой области. Выходными данными этой опции будут поверхность прогнозирования, диагностика модели в окне сообщений, дополнительная таблица и диаграмма значимости переменных.
String
in_features

Класс объектов, содержащий параметр variable_predict и, дополнительно, независимые переменные обучения из полей.

Feature Layer
variable_predict
(Дополнительный)

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

Field
treat_variable_as_categorical
(Дополнительный)
  • CATEGORICALЗначение variable_predict является категориальной переменной, и будет выполняться классификация.
  • NUMERICЗначение variable_predict является непрерывным, и будет выполняться регрессия. Используется по умолчанию
Boolean
explanatory_variables
[[Variable, Categorical],...]
(Дополнительный)

Список полей, представляющих независимые переменные, которые помогут прогнозировать значения или категории variable_predict. Используйте параметр treat_variable_as_categorical для любых переменных, которые представляют классы или категории (например, почвенно-растительный покров – его наличие или отсутствие). Укажите переменную как CATEGORICAL, если она представляет классы или категории, например, земельный покров или наличие или отсутствие какого-либо явления, и укажите NUMERIC, если переменная является непрерывной.

Value Table
distance_features
[distance_features,...]
(Дополнительный)

Независимые объекты расстояния обучения. Независимые переменные будут созданы автоматически, путем вычисления расстояния от предоставленных объектов до in_features. Расстояния будут вычислены от каждого из входных объектов в значении in_features до ближайших значений distance_features. Если входные distance_features являются полигонами или линиями, атрибуты расстояния вычисляются как расстояние между ближайшими сегментами пары объектов.

Feature Layer
explanatory_rasters
[[Variable, Categorical],...]
(Дополнительный)

Независимые переменные обучения, извлеченные из растров. Независимые переменные обучения будут автоматически созданы путем извлечения значений ячеек растра. Для каждого объекта в in_features значение ячейки растра извлекается в именно в этом местоположении. При извлечении значения растра используется билинейный пересчет растра, если только он не определен как категориальный, в этом случае используется метод ближайшего соседа. Укажите растр как CATEGORICAL, если он представляет классы или категории, например, земельный покров или наличие или отсутствие какого-либо явления, и укажите NUMERIC, если переменная является непрерывной.

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

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

Feature Layer
output_features
(Дополнительный)

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

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

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

Raster Dataset
explanatory_variable_matching
[[Prediction, Training],...]
(Дополнительный)

Список значений explanatory_variables, заданных в параметре in_features, справа и соответствующие поля из features_to_predict слева, например, [["LandCover2000", "LandCover2010"], ["Income", "PerCapitaIncome"]].

Value Table
explanatory_distance_matching
[[Prediction, Training],...]
(Дополнительный)

Список значений distance_features, заданных в параметре in_features, справа и соответствующие объекты из параметра features_to_predict слева.

Можно предоставить значения explanatory_distance_features, которые больше подходят для features_to_predict, если те, что используются для обучения, находятся в другой изучаемой области или периоде времени.

Value Table
explanatory_rasters_matching
[[Prediction, Training],...]
(Дополнительный)

Список значений explanatory_rasters, заданных в параметре in_features, справа и соответствующие растры из параметра features_to_predict или output_raster слева.

Значения explanatory_rasters, наиболее подходящие для параметра features_to_predict, если те, что используются для обучения, находятся в другой изучаемой области или периоде времени.

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

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

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

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

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

Определяет то, как полигоны будут рассматриваться при обучении модели, если значениями для in_features являются полигоны с категориальным значением variable_predict и заданы только значения explanatory_rasters.

  • TRUEПолигон делится на все ячейки растра с центроидами, попадающими в пределы полигона. Затем значения растра в каждом центроиде извлекаются и используются для обучения модели. Модель больше не обучается на полигоне, а обучается на значениях растра, извлеченных для каждого центроида ячейки. Это значение по умолчанию
  • FALSEКаждому полигону назначается среднее значение среднее значение нижележащего непрерывного растра и значение большинства – для категориальных растров.
Boolean
number_of_trees
(Дополнительный)

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

Если значением параметра model_type является FOREST-BASED, большее число деревьев обычно приводит к более точным прогнозам модели; однако расчет модели займет больше времени. Если значением параметра model_type является GRADIENT_BOOSTED, большее количество деревьев может привести к более точным прогнозам модели; однако это также может привести к переобучению обучающих данных. Чтобы избежать переобучения данных, укажите значения для параметров maximum_depth, reg_lambda, gamma и eta.

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

Минимальное число наблюдений, необходимых для сохранения листа (т.е. конечного объекта на дереве, без дальнейшего разбиения). Минимум по умолчанию для регрессии составляет 5, а для классификации – 1. Для очень больших данных увеличение этого числа увеличит время работы инструмента.

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

Максимальное число разбиений, которые будут сделаны вниз по дереву . При большей максимальной глубине будет создано больше разбиений, что может увеличить вероятность чрезмерной подгонки модели. Если значение параметра model_type равно FOREST-BASED, значение по умолчанию управляется данными и зависит от числа созданных деревьев и количества включенных переменных. Если значение параметра model_type равно GRADIENT_BOOSTED, значением по умолчанию будет 6.

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

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

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

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

Число независимых переменных, используемых для создания каждого дерева решений.

Каждое из деревьев решений в лесу создается с использованием случайного поднабора заданных независимых переменных. Увеличение числа переменных, используемых для создания каждого дерева решений, увеличит вероятность чрезмерной подгонки модели, особенно, если имеется одна или больше доминирующая переменная. Обычно используется квадратный корень из общего количества независимых переменных (полей, расстояний и растров), если значение variable_predict является категориальным, или деление общего количества независимых переменных (полей, расстояний и растров) на 3, если значение variable_predict является числовым.

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

Процент (от 10 до 50) от in_features, чтобы сохранить их как тестовый набор данных для проверки. Обучение модели будет происходить без этого произвольного поднабора данных, и значения наблюдений для этих объектов будут сравниваться с прогнозируемым значением. Значение по умолчанию – 10 процентов.

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

Матрица несоответствий, в которой суммируется производительность модели на основе данных проверки. Матрица сравнивает спрогнозированные моделью категории для данных проверки с фактическими категориями. Эту таблицу можно использовать для вычисления дополнительных диагностик, не включенных в выходные сообщения. Этот параметр доступен, если значение variable_predict является категориальным и значением параметра treat_variable_as_categorical является CATEGORICAL.

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

Таблица, которая содержит R2 для каждой модели, если значение variable_predict не является категориальным, или точность каждой модели, если значение является категориальным. Эта таблица включает линейчатую диаграмму распределения точности или значений R2. Это распределение можно использовать для оценки стабильности модели. Этот параметр доступен, если значение number_validation_runs больше 2.

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

Определяет, будет ли каждая категория в обучающем наборе данных, независимо от последовательности, представлена в каждом дереве. Этот параметр доступен, если значением параметра model_type является FOREST-BASED.

  • TRUEКаждое дерево включает все категории, представленные в обучающем наборе данных.
  • FALSEКаждое дерево создается на основе произвольной выборки категорий в обучающем наборе данных. Это значение по умолчанию
Boolean
number_validation_runs
(Дополнительный)

Число итераций инструмента

Распределение значений R-квадрат или точности всех моделей можно отобразить с помощью параметра output_validation_table. Если значением параметра prediction_type является PREDICT_RASTER или PREDICT_FEATURES, для прогнозирования будет использоваться модель, которая выдала медианное значение R-квадрат или точности. Использование медианного значения помогает обеспечить стабильность прогнозов.

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

Определяет, вычислять ли неопределенность прогнозирования при обучении, прогнозировании в объекты или прогнозировании в растр.

Этот параметр доступен, если значением параметра model_type является FOREST-BASED.

  • TRUEДоверительный интервал прогнозирования будет вычислен.
  • FALSEНеопределенность не вычисляется. Это значение по умолчанию
Boolean
output_trained_model
(Дополнительный)

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

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

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

  • FOREST-BASEDМодель будет создана с использованием адаптации алгоритма случайного леса. Модель будет использовать предложения сотен деревьев решений. Каждое дерево решений будет создано из случайно сгенерированного поднабора исходных данных и исходных переменных.
  • GRADIENT_BOOSTEDМодель будет создана с использованием алгоритма Extreme Gradient Boosting (XGBoost). Модель создаст последовательность из сотен деревьев, в которой каждое последующее дерево исправляет ошибки предыдущих деревьев.
String
reg_lambda
(Дополнительный)

Слагаемое регуляризации, которое снижает чувствительность модели для отдельных объектов. Увеличение этого значения сделает модель более консервативной и предотвратит переобучение данных обучения. Если значение равно 0, модель становится традиционной моделью с градиентным бустингом. Значение по умолчанию равно 1.

Этот параметр доступен, если значением параметра model_type является GRADIENT_BOOSTED.

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

Порог минимального снижения потерь, необходимого для разбиения деревьев.

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

Этот параметр доступен, если значением параметра model_type является GRADIENT_BOOSTED.

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

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

Этот параметр доступен, если значением параметра model_type является GRADIENT_BOOSTED.

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

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

Этот параметр доступен, если значением параметра model_type является GRADIENT_BOOSTED.

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

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

  • TRUEДля поиска набора гиперпараметров будет использоваться метод оптимизации.
  • FALSEМетод оптимизации не будет использоваться. Это значение по умолчанию
Boolean
optimize_algorithm
(Дополнительный)

Указывает метод оптимизации, который будет использоваться для выбора и проверки точек поиска для нахождения оптимального набора гиперпараметров. Точки поиска — это комбинации гиперпараметров в пространстве поиска, заданные параметром model_param_setting. Эта опция доступна, если значением параметра optimize является TRUE.

  • RANDOMДля выбора точек поиска в пространстве поиска будет использоваться алгоритм стратифицированной случайной выборки. Это значение по умолчанию
  • RANDOM_ROBUSTДля выбора точек поиска будет использоваться алгоритм стратифицированной случайной выборки. Каждый поиск будет выполняться 10 раз с использованием разных случайных точек начала. Результатом каждого поиска будет медианный лучший результат, определяемый значением параметра optimize_target. Эта опция доступна, если значением параметра model_type является FOREST-BASED.
  • GRIDБудет выбрана каждая точка поиска в пространстве поиска.
String
optimize_target
(Дополнительный)

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

  • R2Метод оптимизации максимизирует R2 для поиска оптимального набора гиперпараметров. Эта опция доступна только в том случае, если прогнозируемая переменная не является категориальной. Используется по умолчанию, когда прогнозируемая переменная не является категориальной.
  • RMSEМетод оптимизации минимизирует среднеквадратическую ошибку для поиска оптимального набора гиперпараметров. Эта опция доступна только в том случае, если прогнозируемая переменная не является категориальной.
  • ACCURACYМетод оптимизации максимизирует точность для поиска оптимальной модели. Эта опция доступна только в том случае, если прогнозируемая переменная является категориальной. Используется по умолчанию, когда прогнозируемая переменная является категориальной.
  • MCCМетод оптимизации максимизирует коэффициент корреляции Мэтьюза, чтобы найти оптимальный набор гиперпараметров. Эта опция доступна только в том случае, если прогнозируемая переменная является категориальной.
  • F1-SCOREМетод оптимизации максимизирует F1-оценку для поиска оптимального набора гиперпараметров. Эта опция доступна только в том случае, если прогнозируемая переменная является категориальной.
String
num_search
(Дополнительный)

Число точек поиска в пространстве поиска, заданном параметром model_param_setting, которое будет проверяться. Этот параметр доступен, если значением параметра optimize_algorithm является RANDOM или RANDOM_ROBUST.

Long
model_param_setting
[model_param_setting,...]
(Дополнительный)

Список гиперпараметров и пространств их поиска. Настройте пространство поиска каждого гиперпараметра, указав нижнюю границу, верхнюю границу и интервал. Нижняя и верхняя границы определяют диапазон возможных значений гиперпараметра.

Ниже приведен диапазон допустимых значений для каждого гиперпараметра:

  • Число деревьев (number_of_trees) — целое значение больше 1.
  • Максимальная глубина дерева ((maximum_depth) — целое значение, большее или равное 0.
  • Минимальный размер листа (minimum_leaf_size) — целое значение больше 1.
  • Данные, доступные для одного дерева (%) (sample_size) — целое значение больше 0 и меньше или равно 100.
  • Число произвольно выбранных переменных (random_variables) — целочисленное значение, меньшее или равное количеству независимых переменных. Сюда входят независимые переменные из полей, объектов расстояния и растров.
  • Скорость обучения (Eta) (eta) — значение двойной точности больше 0 и меньше или равно 1.
  • Упорядочивание L2 (Lambda) (reg_lambda) — значение двойной точности, большее или равное 0.
  • Минимальное сокращение потерь для разбиений (Gamma) (gamma) — значение двойной точности, большее или равное 0.
  • Максимальное количество бинов для разбиений поиска (max_bins) — целое значение, большее 1 или равное 0. Значение 0 означает, что модель создаст кандидата разбиения в каждой точке данных.

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

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

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

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

  • ALL_PROBABILITIESВероятности для всех категорий категориальной переменной будут спрогнозированы и включены в выходные данные.
  • HIGHEST_PROBABILITY_ONLYТолько вероятность категории записи будет спрогнозирована и включена в выходные данные. Это значение по умолчанию
Boolean

Производные выходные данные

ИмяОписаниеТип данных
output_uncertainty_raster_layers

Если параметр calculate_uncertainty задан как TRUE, инструмент вычислит 90% интервал прогнозирования вокруг каждого прогнозируемого значения variable_predict.

Raster Layer

Пример кода

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

Следующий скрипт Python демонстрирует, как использовать функцию Forest.

import arcpy
arcpy.env.workspace = r"c:\data"

# Forest-based model using only the training method and all data
# comes from a single polygon feature class. The tool excludes 10% of the 
# input features from training and uses these values to validate the model.

prediction_type = "TRAIN"
in_features = r"Boston_Vandalism.shp"
variable_predict = "VandCnt"
explanatory_variables = [["Educat", "false"], ["MedAge", "false"], 
    ["HHInc", "false"], ["Pop", "false"]]
output_trained_features = "TrainingFeatures.shp"
number_of_trees = 100
sample_size = 100
percentage_for_training = 10

arcpy.stats.Forest(prediction_type, in_features, variable_predict, None,
    explanatory_variables, None, None, None, None, None, None, None, None,
    output_trained_features, None, True, number_of_trees, None, None, sample_size, 
    None, percentage_for_training)
Forest, пример 2 (автономный скрипт)

Следующий скрипт Python демонстрирует, как использовать функцию Forest для прогнозирования в объекты.

# Import system modules
import arcpy

# Set property to overwrite existing outputs
arcpy.env.overwriteOutput = True

# Set the work space to a gdb
arcpy.env.workspace = r"C:\Data\BostonCrimeDB.gdb"

# Forest-based model taking advantage of both distance features and 
# explanatory rasters. The training and prediction data has been manually
# split so the percentage to exclude parameter was set to 0. A variable importance
# table is created to help assess results and advanced options have been used
# to fine-tune the model.

prediction_type = "PREDICT_FEATURES"
in_features = r"Boston_Vandalism_Training"
variable_predict = "Vandalism_Count"
treat_variable_as_categorical = None
explanatory_variables = [["EduClass", "true"], ["MedianAge", "false"],
    ["HouseholdIncome", "false"], ["TotalPopulation", "false"]]
distance_features = r"Boston_Highways"
explanatory_rasters = r"LandUse true"
features_to_predict = r"Boston_Vandalism_Prediction"
output_features = r"Prediction_Output"
output_raster = None
explanatory_variable_matching = [["EduClass", "EduClass"], ["MedianAge", "MedianAge"], 
    ["HouseholdIncome", "HouseholdIncome"], ["TotalPopulation", "TotalPopulation"]]
explanatory_distance_matching = [["Boston_Highways", "Boston_Highways"]]
explanatory_rasters_matching = [["LandUse", "LandUse"]]
output_trained_features = r"Training_Output"
output_importance_table = r"Variable_Importance"
use_raster_values = True
number_of_trees = 100
minimum_leaf_size = 2
maximum_level = 5
sample_size = 100
random_sample = 3
percentage_for_training = 0

arcpy.stats.Forest(prediction_type, in_features, variable_predict,
    treat_variable_as_categorical, explanatory_variables, distance_features,
    explanatory_rasters, features_to_predict, output_features, output_raster,
    explanatory_variable_matching, explanatory_distance_matching, 
    explanatory_rasters_matching, output_trained_features, output_importance_table,
    use_raster_values, number_of_trees, minimum_leaf_size, maximum_level,
    sample_size, random_sample, percentage_for_training)
Forest, пример 3 (автономный скрипт)

Следующий скрипт Python демонстрирует, как использовать функцию Forest для создания поверхности прогнозирования.

# Import system modules
import arcpy

# Set property to overwrite existing outputs
arcpy.env.overwriteOutput = True

# Set the work space to a gdb
arcpy.env.workspace = r"C:\Data\Landsat.gdb"

# Using a forest-based model to classify a Landsat image. The TrainingPolygons feature 
# class was created manually and is used to train the model to 
# classify the remainder of the Landsat image.

prediction_type = "PREDICT_RASTER"
in_features = r"TrainingPolygons"
variable_predict = "LandClassName"
treat_variable_as_categorical = "CATEGORICAL" 
explanatory_variables = None
distance_features = None
explanatory_rasters = [["Band1", "false"], ["Band2", "false"], ["Band3", "false"]]
features_to_predict = None
output_features = None
output_raster = r"PredictionSurface"
explanatory_variable_matching = None
explanatory_distance_matching = None
explanatory_rasters_matching = [["Band1", "Band1"], ["Band2", "Band2"], ["Band3", "Band3"]]
output_trained_features = None
output_importance_table = None
use_raster_values = True
number_of_trees = 100
minimum_leaf_size = None
maximum_level = None
sample_size = 100
random_sample = None
percentage_for_training = 10

arcpy.stats.Forest(prediction_type, in_features, variable_predict,
    treat_variable_as_categorical, explanatory_variables, distance_features,
    explanatory_rasters, features_to_predict, output_features, output_raster,
    explanatory_variable_matching, explanatory_distance_matching, 
    explanatory_rasters_matching, output_trained_features, output_importance_table,
    use_raster_values, number_of_trees, minimum_leaf_size, maximum_level,
    sample_size, random_sample, percentage_for_training)

Параметры среды

Особые случаи

Генератор случайных чисел

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

Коэффициент параллельной обработки

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

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

  • Basic: Ограниченные
  • Standard: Ограниченные
  • Advanced: Ограниченные

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