Инструмент Классификация на основе леса и регрессия обучает модель на основании известных значений, предоставленных как часть обучающего набора данных. Затем эту модель прогнозирования можно использовать для прогноза неизвестных значений в наборе данных прогнозирования, который содержит такие же связанные независимые переменные. Строит модели и выполняет прогнозирование при помощи адаптации алгоритма произвольного леса, метода контролируемого машинного обучения Лео Бреймана и Адели Катлер. Инструмент создает множество деревьев решений, называемое лесом, которое потом используется для прогнозирования. Каждое дерево строит свой собственный прогноз и используется как часть схемы предложений для создания конечного прогноза. Итоговое прогнозирование основано не на каком-то отдельном дереве, а лесе в целом. Использование целого леса вместо отдельных деревьев помогает избежать чрезмерной подгонки модели к обучающему набору данных, что происходит при использовании и произвольного поднабора обучающих данных, и независимых переменных для каждого дерева и всего леса.
Возможное применение
Ниже приведены потенциальные варианты применения этого инструмента:
- Имеются данные данные о наличии морских водорослей, а также ряд экологических независимых переменных, представленных и как атрибуты, и как растры, в дополнение к расстояниям до заводов вверх по течению и крупных портов. Появление морских водорослей в будущем может быть предсказано на основе будущих прогнозов для тех же экологических независимых переменных.
- Предположим, у вас есть данные о урожайности на сотнях ферм по всей стране, а также другие атрибуты на каждой из этих ферм (количество сотрудников, площадь в акрах и т. п.), а также ряд растров, которые представляют уклон, высоту, количество осадков и температуру на каждой ферме. Используя фрагменты этих данных, вы можете предоставить набор объектов, представляющих фермы, урожайность на которых неизвестна (но имеются все остальные переменные), и выполнить прогнозирование урожайности.
- Стоимость жилья можно спрогнозировать на основе цен домов, которые были проданы в текущем году. Цена домов при продаже, а также информация о числе спален, расстоянии до школ, близости автомагистралей, среднем доходе и числе преступлений могут быть использованы для прогноза продажной стоимости аналогичных домов.
- Типы землепользования можно классифицировать с использованием обучающих данных и комбинации растровых слоев, включая несколько отдельных каналов и продукты, например, NDVI.
- Имеется информация об уровне свинца в крови детей и ID налогового участка их домов в сочетании с атрибутами уровня участка, такими как возраст дома, атрибутами уровня переписи населения, такими как доход и уровень образования, и национальный набор данных, отражающий выброс токсичных веществ свинца и его соединений. Можно спрогнозировать риск воздействия свинца для участков без данных об уровне свинца в крови. Эти прогнозы риска могут стимулировать политику и образовательные программы в области.
Обучение модели
Первым шагом при использовании инструмента Классификация на основе леса и регрессия является обучение модели для прогнозирования. Обучение строит лес, который устанавливает отношения между независимыми переменными и параметром Переменной для прогнозирования. Не зависимо от того, выберете ли вы опцию Только обучение или обучение и прогноз, инструмент начнет работу с построения модели на основании параметра Переменная для прогнозирования и любых сочетаний параметров Независимые переменные обучения, Независимые объекты расстояния обучения и Независимые обучающие растры (доступно с лицензией дополнительного модуля Spatial Analyst). Инструмент оценивает производительность созданной модели и предоставляет дополнительную диагностику.
По умолчанию 10 процентов обучающих данных исключаются из обучения с целью проверки. После того, как модель обучена, она используется для прогнозирования значений тестовых данных, чьи спрогнозированные значения сравниваются со значениями наблюдений, чтобы предоставить меру точности прогноза на основании данных, которые не были включены в процесс обучения. Также сюда входит дополнительная диагностика модели, включая характеристики произвольного леса, не вошедшие в набор ошибки (OOB) и краткая информация о значимости переменных. Эти выходные данные более подробно описываются далее.
Модель может быть построена для прогнозирования или категориальной Переменной для прогнозирования (классификация), или непрерывной Переменной для прогнозирования (регрессия). Если выбрано Рассматривать переменную как Категориальную, построение модели происходит на основании деревьев классификации. Если оставить не отмеченным, параметр Переменная для прогнозирования рассматривается как непрерывная, и построение модели происходит на основании деревьев регрессии.
Независимые переменные обучения
Одной из самых распространенных форм независимых переменных, используемых для обучения модели произвольного леса, являются поля в обучающем наборе данных, которые также содержат Переменную для прогнозирования. Эти поля могут быть непрерывными или категориальными. Независимо от того, выберете ли вы прогнозирование непрерывных переменных или категориальных, каждая из Независимых переменных обучения может быть непрерывной или категориальной. Если обученная модель также используется для прогнозирования, каждая из предоставленных Независимых переменных обучения должна быть доступна и для обучающего набора данных, и для набора данных прогнозирования.
Независимые объекты расстояния обучения
Хотя Классификация на основе леса и регрессия не является пространственным инструментом машинного обучения, одним из способов усиления влияния пространства в анализе является использование объектов расстояния. Если вы моделируете производительность ряда розничных магазинов, переменная, представляющая расстояние до автомагистрали или ближайшего конкурента, может быть критичной для получения точного прогноза. Аналогично, если моделируется качество воздуха, независимая переменная, представляющая расстояние до основного источника загрязнения или до основных дорог, может иметь решающее значение. Объекты расстояния используются для автоматического создания независимых переменных путем вычисления расстояния от предоставленных объектов до Входных обучающих объектов. Расстояния будут вычислены от каждого из входных Независимых объектов расстояния обучения до ближайшего Входного обучающего объекта. Если входные Независимые объекты расстояния обучения являются полигонами или линиями, атрибуты расстояния вычисляются как расстояние между ближайшими сегментами пары объектов. Но для полигонов и линий расстояния рассчитываются по-разному. Более подробно см. Как инструменты близости вычисляют расстояние.
Независимые обучающие растры
Независимые обучающие растры также могут использоваться для обучения модели, что позволяет обрабатывать источники данных, включая изображения, ЦМР, модели плотности населения или измерения параметров среды. Параметр Независимые обучающие растры доступен, только если имеется лицензия Spatial Analyst. Если Входные обучающие объекты являются точками, инструмент извлекает независимые переменные в каждом местоположении точки. Для многоканальных растров используется только первый канал. При работе с набором данных мозаики сначала используйте инструмент Создать слой мозаики.
Эти растры могут быть непрерывными или категориальными. Независимо от того, выберете ли вы прогнозирование непрерывных переменных или категориальных, каждый из Независимых обучающих растров может быть непрерывным или категориальным.
Если Входные обучающие объекты являются полигонами, Переменная для прогнозирования является категориальной и используются Независимые обучающие растры, то для такого варианта есть возможность Конвертировать полигоны в разрешение растра для обучения. Если эта опция включена, полигон разделяется на точки в центроидах каждой из ячеек растра, попадающих в полигон, а полигон рассматривается как точечный набор данных. Значения растра в местоположении каждой точки затем извлекаются и используются для обучения модели. Модель больше не обучается на самом полигоне, а обучается на значениях растра, извлеченных для каждого центроида ячейки. Для числовых переменных используется билинейный метод пересчета, а для категориальных переменных – ближайший. Размером ячейки конвертированных полигонов по умолчанию будет максимальный размер ячейки входных растров. Но это можно изменить при помощи параметра среды Размер ячейки. Если опция не включена, в модели будет использоваться одно значение растра для каждого полигона. Каждому полигону назначается среднее значение для непрерывных растров и значение большинства для категориальных растров.
Прогнозирование, использующее модель на основе леса
Рекомендуется начать с опции Только обучение, оценить результаты анализа, настроить включенные переменные и дополнительные параметры, как необходимо, и, как только найдена хорошая модель, запустить инструмент заново для прогнозирования по объектам или растру. При переходе к прогнозированию лучше всего изменить параметр Обучающие данные, исключенные из проверки (%) на 0%, чтобы можно было включить все доступные обучающие данные в итоговую модель, используемую для прогноза. Прогнозирование можно выполнить следующими способами:
Прогнозирование в той же изучаемой области
При прогнозировании в объекты в одной и то же изучаемой области, каждый объект прогнозирования должен включать все связанные независимые переменные (поля), а также перекрывающиеся экстенты с Независимыми объектами расстояния обучения и Независимыми обучающими растрами.
При прогнозировании в растр в одной и то же изучаемой области, с использованием предоставленных Независимых обучающих растров, прогнозом будет перекрывающийся экстент независимых растров.
Прогнозирование в другой изучаемой области
При прогнозировании в объекты в другой изучаемой области, каждый объект прогнозирования должен включать все связанные независимые переменные (поля), а новые независимые объекты расстояния и независимые растры должны сопоставляться с соответствующими Независимыми объектами расстояния обучения и растрами. Эти новые объекты расстояния и растры должны быть доступны для новой изучаемой области и соответствовать Независимым объектам расстояния обучения и Независимым обучающим растрам. Например, если для обучения модели используется категориальный растр, соответствующий независимый растр прогнозирования не может содержать другие категории или сильно отличающийся диапазон значений.
При прогнозировании в растр в другой изучаемой области, должны быть предоставлены новые независимые растры прогнозирования, и они должны соответствовать Независимым обучающим растрам. Соответствующий независимый растр прогнозирования не может содержать другие категории или сильно отличающийся диапазон значений. Итоговый Выходной растр прогнозирования будет перекрывать экстент всех предоставленных независимых растров прогнозирования.
Прогнозирование в другой период времени путем сопоставления независимых переменных, используемых для обучения, с переменными с проецированием на будущее
При прогнозировании в другой период времени в будущем, в объекты или в растр, каждая спроецированная независимая переменная прогноза (поля, объекты расстояния и растры) необходимо сопоставить с соответствующими независимыми переменными обучения.
Прогнозирование в объекты
Модель, обученную с любыми сочетаниями Независимых переменных обучения, Независимых объектов расстояния обучения и Независимых обучающих растров, можно использовать для прогнозирования либо в точки, либо в полигоны в одной и той же или разных изучаемых областях. Для прогнозирования в объекты необходимо, чтобы каждый объект, получающий прогноз, содержал значения для каждого предоставленного поля, объекта расстояния и растра.
Если имена полей Input Training Features и Input Prediction Features не совпадают, предоставляется параметр сопоставления переменных. При сопоставлении независимых переменных поля Prediction и Training должны быть одного типа (double в Training должно соответствовать double в Prediction).
Чтобы использовать объекты расстояния или растры, отличающиеся от тех, что использовались для обучения модели, чтобы выполнить прогнозирования в другой изучаемой области или в другой период времени, предоставляются параметры Сопоставить объекты расстояния и Сопоставить независимые растры.
Прогнозирование в растры
Использование модели, которая обучена только при помощи Независимых обучающих растров можно чтобы прогнозировать раст в той же самой или другой изучаемой области. Чтобы использовать растры прогнозирования, отличающиеся от тех, что использовались для обучения модели, чтобы выполнить прогнозирования в другой изучаемой области или в другой период времени, предоставляется параметр Сопоставить независимые растры. Выходной растр прогнозирования может быть создан при наличии лицензии Spatial Analyst путем выбора Прогнозировать в растр для Типа прогнозирования.
Выходные сообщения и диагностика
Этот инструмент также создает сообщения и диаграммы, которые помогают понять производительность модели. Вы можете получить доступ к сообщениям, наведя курсор мыши на индикатор выполнения, щелкнув на кнопку всплывающего окна и развернув раздел Сообщения на панели Геообработка. Доступ к сообщениям предыдущего запуска инструмента Классификация на основе леса и регрессия можно получить также через Историю геообработки. В сообщения входит информация о характеристиках модели, не вошедших в набор ошибках, значимости переменных и диагностика проверки.
Таблица характеристик леса содержит информацию о ряде важных аспектов модели леса, одни из которых выбраны при помощи параметров в Дополнительных опциях леса, а другие управляются данными. Управляемые данными характеристики леса могут оказаться важными для оптимизации производительности модели. Диапазон глубины деревьев показывает минимальную и максимальную глубину дерева, найденные в лесу, (максимум задается как параметр, но возможна глубина, которая меньше максимума). Средняя глубина дерева показывает среднюю арифметическую глубину деревьев в лесу. Если максимальная глубина задана равной 100, а диапазон и средняя глубина показывают, что в большинстве случаев используется гораздо меньшая глубина, уменьшение параметра максимальной глубины увеличит производительность модели, так как сократится вероятность чрезмерной подгонки модели под обучающие данные. Опция Число произвольно выбранных переменных говорит о количестве произвольно выбранных переменных, используемых для любого заданного дерева в лесу. Каждое дерево будет иметь разное сочетание переменных, но их количество будет равно этому числу. Выбранное по умолчанию число основывается на сочетании числа объектов и числа доступных переменных. Для регрессии оно составляет треть общего числа независимых переменных (включая объекты, растры и объекты расстояния). Для классификации оно равно квадратному корню из общего числа переменных.
В дополнение к основным характеристикам леса предоставляются ошибки, не вошедшие в набор (OOB), для оценки точности модели. И среднеквадратическая ошибка (MSE), и % изменчивости основываются на возможности модели точно прогнозировать значение Переменной для прогнозирования на основании наблюдаемых значений в обучающем наборе данных. OOB – это ошибка прогнозирования, вычисленная с использованием данных, которые являются частью обучающего набора данных, но не рассматриваются поднабором деревьев, составляющих лес. Если вы хотите обучить модель на 100% ваших данных, вы будете полагаться на OOB для оценки точности модели. Эти ошибки выдаются для половины числа деревьев и общего числа используемых деревьев, чтобы помочь оценить, улучшит ли производительность модели увеличение числа деревьев. Если значения ошибок и процента объясненных вариаций одинаковы для обоих количество деревьев, то это указывает на возможность использования меньшего числа деревьев для минимизации влияния на производительность модели. Однако рекомендуется использовать столько деревьев, сколько позволяет машина. Большее число деревьев в лесу приведет к стабильности в результатах и модели, которая которая менее подвержена шуму в данных и схеме выборки.
Если Переменная для прогнозирования является категориальной (это определяется параметром Рассматривать переменную как Категориальную), то ошибки OOB вычисляются на основе процента некорректных классификаций для каждой категории среди деревьев, которые не видят поднабор деревьев в лесу. Процент некорректных классификаций OOB для каждой категории печатается в сообщениях геообработки. Среднеквадратическая ошибка классификаций также печатается и может быть интерпретирована как общая доля некорректных классификаций OOB среди всех категорий. Если вы используете небольшое число для параметра Число деревьев, то допустимо, что каждое дерево не будет видеть никакие обучающие данные из одной или нескольких категорий. В этом случае ошибка OOB будет 100 процентов.
Еще одним важным фактором производительности модели являются используемые независимые переменные. В таблице высокой значимости переменных перечислены переменные с 20 наивысшими оценками важности. Значимость рассчитывается при помощи коэффициента Джини, который можно рассматривать как количество раз, когда переменная отвечает за разделение, и влияние этого разделения, деленное на количество деревьев. Разделение – это каждое отдельное решение в дереве решений. Значимость переменной можно использовать для создания более простой модели, которая содержит переменные, определенные как значимые.
Дополнительная столбчатая диаграмма, показывающая значимость каждой переменной, использованной в модели, создается, если задана Выходная таблица диагностики; диаграмма будет доступна на панели Содержание. Переменные, использованные в модели, показываются в диаграмме по оси y, а их значимость на основании коэффициента Джини – по оси x.
Если задано значение для Числа проходов проверки, вместо столбчатой диаграммы создается блочная диаграмма важности переменных. На блок-диаграмме показывается распределение значений важности переменных по всем прогонам проверки. Распределение важности переменной является показателем устойчивости модели леса. Если важность переменной изменяется во время прогонов проверки в широких пределах, указанных в длинном прямоугольнике на диаграмме, это может указывать на нестабильную модель леса. Нестабильную модель обычно можно улучшить, увеличив Число деревьев для получения более сложных отношений в данных.
Важность переменных позволяет вам понять, какие переменные влияют на результаты модели, и не является показателем того, насколько хорошо модель прогнозирует (как значение R2 в регрессионных моделях). Рекомендуется использовать для обучения все данные, задав для параметра Данные обучения, исключенные для проверки значение 0, и исследуя диаграмму важности переменных. Затем изменяйте другие параметры, в частности Число деревьев и Максимальная глубина деревьев и изучайте диаграммы, до тех пор пока не получите стабильную модель. После обучения стабильной в отношении важности переменных модели вы можете увеличить Обучающие данные, исключаемые для проверки, чтобы определить точность вашей модели. Изучите ошибки «Out of Bag» в диагностических сообщениях, чтобы определить точность вашей модели. Если у вас есть точная модель со стабильной значимость переменных, вы можете установить Число проходов для проверки на 1 и получить одну столбчатую диаграмму, которая отобразит конечную значимость переменных вашей модели.
Другим важным способом оценки производительности модели является использование модели для прогнозирования значений для объектов, которые не были включены в обучение модели. По умолчанию такой тестовый набор данных составляет 10 процентов от Входных обучающих объектов, он может контролироваться при помощи параметра Обучающие данные, исключенные из проверки (%). Одним из недостатков OOB является то, что он использует поднабор леса (деревья, не использующие определенный объект из обучающего набора данных), а не лес в целом. Путем исключения некоторых данных из проверки, метрики ошибок могут оцениваться для всего леса.
При прогнозировании непрерывных переменных, значения наблюдений для каждого тестового объекта сравниваются с прогнозами для этих объектов на основании обученной модели, и получаются соответствующие R-квадрат, p-значение и стандартная ошибка. Эта диагностика будет меняться каждый раз при прохождении процесса обучения, так как выборка тестового набора данных является произвольной. Для создания модели, не меняющейся при каждом запуске, можно задать начальное значение в параметре среды Генератор случайных чисел.
При прогнозировании категориальной переменной в окне сообщений показывается и чувствительность, и точность. Эта диагностика вычисляется при помощи матрицы неточностей которая отслеживает каждый вариант, когда категория интереса правильно или неправильно классифицирована, и когда другие категории неправильно классифицированы как категория интереса. Чувствительность каждой категории показывается как процент числа случаев, когда объекты этой категории наблюдений точно прогнозировались для этой категории. Например, если вы прогнозируете Land и Water, и Land имеет чувствительность, равную 1.00, то каждый объект, который должен был быть отмечен Land, был правильно спрогнозирован. Однако если объект Water был не точно помечен как Land, это не отразится в числе чувствительности для Land. Но это может отразиться на числе чувствительности Water, так как это может указывать на то, что один из объектов water не был предсказан правильно.
Диагностика точности учитывает и то, насколько хорошо спрогнозированы объекты в определенной категории, и то, как часто другие категории были ошибочно классифицированы для категории интереса. Это дает представление о том, как часто категория определяется правильно среди общего числа "путаницы" для этой категории. При классификации переменной только с двумя классами, мера точности одинакова для каждого класса, а чувствительность различается. При классификации переменной с большим, чем два, количеством классов, для каждого из классов и точность, и чувствительность различны.
Такая же диагностика также предоставляется, чтобы сравнить спрогнозированные значения со значениями наблюдений для обучающего набора данных. Эта диагностика может помочь понять, насколько модель подходит к обучающим данным.
Диагностика независимых диапазонов поможет оценить, действительно ли те значения, которые использовались для обучения, проверки и прогноза, являются достаточно эффективными для построения корректной модели и позволяют доверять другим диагностикам модели. Данные, которые используются для обучения случайной модели леса, оказывают огромное влияние на качество итоговой классификации и прогноза. В идеале обучающие данные должны представлять репрезентативную выборку тех данных, которые вы моделируете. По умолчанию 10% обучающих данных случайным образом исключаются, итогом этого являются поднабор обучения и поднабор проверки во Входных обучающих объектах. Таблица Диагностики диапазона независимых переменных показывает минимальное и максимальное значения для этих поднаборов и, в случае прогноза объектов или растров, для данных, которые использовались в прогнозе.
В связи с тем, что поднаборы определяются случайным образом, значения переменных в обучающем поднаборе могут быть нерепрезентативными по отношению ко всем значениям во Входных обучающих объектах. Для каждой независимой переменной в столбце Training Share указан процент перекрытия между значениями в обучающем поднаборе и значениями всех объектов во Входных обучающих объектах. Например, если переменная A из Входных обучающих объектов принимает значения от 1 до 100, а обучающий поднабор включает значения от 50 до 100, то значение Training Share для переменной A будет 0.50 или 50%. Для переменной A 50% диапазона значений во Входных обучающих объектах покрывается обучающим поднабором данных. Если обучающий поднабор не закрывает значительный диапазон значений, найденных во Входных обучающих объектах, для каждой независимой переменной модели, то имеет смысл использовать другие варианты диагностики модели. Аналогичные вычисления выполняются и при проведении диагностики Доля проверки. Важно, чтобы значения, которые используются для проверки модели, покрывали как можно больший диапазон значений, используемых для обучения модели. Например, если переменная A из Входных обучающих объектов принимает значения от 1 до 100, а обучающий поднабор включает значения от 1 до 10, то значение Доли обучения для переменной A будет 0.10 или 10%. Этот маленький диапазон может покрывать только все высокие или все низкие значения и, таким образом, будет влиять на другие диагностики. Если в проверочном поднаборе содержатся только низкие значения, то другие диагностики модели, например, среднеквадратическая ошибка и % описанных переменных будут по факту говорить о том, как хорошо модель предсказывает низкие значения, а не весь диапазон значений из Входных обучающих объектов.
Диагностика Доли прогноза довольно важна. Модели на основе леса не выполняют экстраполяцию, они могут только классифицировать или прогнозировать диапазон значений, на которых обучалась модель. Доля прогноза - это процент перекрытия между значениями обучающих и предсказываемых данных. Значения, отличные от нуля, говорят о том, что вы пытаетесь предсказать значение, на котором модель не была обучена. Значение 1 говорит о том, что диапазон значений в обучающем поднаборе и диапазон значений, который используется для прогноза, совпадают. Значения больше 1 говорят о том, что диапазон значений в обучающем поднаборе больше, чем диапазон значений в прогнозе.
Все три диагностики корректны, если диапазоны поднаборов совпадают. Например, если во входном поднаборе для переменной C содержатся значения от 1 до 100, а в обучающем поднаборе от 90 до 200, они будут перекрываться на 10%, но их диапазоны не совпадают. В этом случае диагностика помечается звездочкой, что говорит о несовпадающих диапазонах. Проверьте минимальное и максимальное значения, чтобы понять, насколько сильно в какую сторону они не совпадают. Доля прогноза помечается значком плюс (+), если предполагается, что модель будет предсказывать значения за пределами диапазона обучающих данных.
Нет однозначных правил по допустимым значениям для таблица Диагностики диапазоне независимых переменных. Доля обучения и Доля проверки должны быть максимально высокими, т.к. ограничивают обучающие данные. Доля прогноза не должна быть меньше 1. Если диагностика Доля проверки является низкой, учитывайте повышение значения параметра Обучающие данные, исключенные из проверки(%). Также можно запустить модель несколько раз и выбрать тот запуск балансирует значения диагностик диапазонов. В сообщениях будет указано значение случайных местоположений при каждом запуске.
Инструмент также создает множество выходных данных. Выходные обученные объекты будут содержать все Входные обучающие объекты и Независимые переменные обучения, использованные в модели. Для регрессии, обученные объекты отображаются на карте на основе стандартизированной невязки прогнозирования. Для классификации, символы обученных объектов основаны на правильности классификации объектов. Если модель правильно прогнозирует известную категорию, объект помечается как Классифицирован правильно; иначе - как Неверная классификация.
Поля обученных объектов включают извлеченные значения растров для каждой переменной Независимые обучающие растры и вычисленные значения расстояния для каждой переменной Независимые объекты расстояния обучения. Эти новые поля можно использовать для повторного запуска обучающей части анализа без необходимости каждый раз извлекать значения растра и вычислять значения расстояния. Выходные обученные объекты также будут содержать прогнозы для всех объектов, и использованные при обучении, и исключенных для тестирования, что может помочь в оценке производительности модели. Поле trained_features в Выходных обученных объектах получит значение 0 для всех тестовых данных (указывая, что они не участвовали в обучении) и 1 для всех обучающих данных. При применении этого инструмента для прогнозирования, он создаст новый класс объектов, содержащий значения Выходные обученные объекты, или новую Выходную поверхность прогноза, если предоставлены независимые растры.
Дополнительные опции леса
Сила метода на основе леса заключается в определении общих черт слабых предикторов (или деревьев) и их объединении для создания мощного предиктора (леса). Если отношения постоянно определяются сингулярными деревьями, это означает, что в данных имеются сильные отношения, которые можно выявить, даже если модель не является комплексной. Настройка параметров леса может помочь в создании высокого числа слабых предикторов, в итоге приводящих к сильной модели. Слабых предикторов можно создать при использовании меньшего количества информации для каждого дерева. Это может быть достигнуто при помощи любых комбинаций использования небольших поднаборов объектов для каждого дерева, небольшого числа переменных для каждого дерева и малой глубиной деревьев. Число деревьев управляет тем, сколько таких слабых предикторов создано, и чем слабее предикторы (деревья), тем больше деревьев необходимо создать для сильной модели.
В инструменте доступны следующие дополнительные опции обучения и проверки:
- Значение по умолчанию для параметра Число деревьев равно 100. Увеличение числа деревьев в модели леса приведет к более точному прогнозированию модели, но модель будет дольше вычисляться.
- Минимальный размер листа – минимальное число наблюдений, необходимых для сохранения листа (т.е. конечного объекта на дереве, без дальнейшего разбиения). Минимум по умолчанию для регрессии составляет 5, а для классификации – 1. Для очень больших наборов данных увеличение этого числа сократит время работы инструмента. Для очень маленьких размеров листа (близких к заданному минимуму), лес будет подвержен шуму в ваших данных. Для получения более стабильной модели поэкспериментируйте с увеличением Минимального размера листа.
- Максимальная глубина дерева – максимальное число разбиений, которые будут сделаны вниз по дереву. При использовании большей максимальной глубины будет создано больше разбиений, что может увеличить вероятность чрезмерной подгонки модели. Значение по умолчанию управляется данными и зависит от числа созданных деревьев и количества включенных переменных. Обратите внимание, что узел невозможно разбить после того, как он достиг Минимального размера листа. Если заданы и Минимальный размер листа, и Максимальная глубина дерева, Минимальный размер листа будет доминировать в определении глубины деревьев.
- Параметр Данные, доступные для одного дерева (%) определяет процент Входных обучающих объектов, используемых для каждого дерева решений. По умолчанию это 100 процентов от данных. Каждое дерево решений в лесу создается с с использованием произвольного поднабора (примерно две трети) доступных обучающих данных. Понижение процента входных данных для каждого дерева решений увеличит скорость инструмента при работе с очень большими наборами данных.
- Параметр Число произвольно выбранных переменных задает число независимых переменных, используемых для создания каждого дерева решений. Каждое из деревьев решений в лесу создается с использованием случайного поднабора заданных независимых переменных. Увеличение числа переменных, используемых для создания каждого дерева решений, увеличит вероятность чрезмерной подгонки модели, особенно, если имеется хотя бы одна доминирующая переменная. Обычно используется (и по умолчанию используется инструментом) квадратный корень от общего числа независимых переменных (поля, объекты расстояния и растры, если Переменная для прогнозирования является числовой, или общее число независимых переменных (поля, объекты расстояния и растры) делится на 3, если Переменная для прогнозирования является категориальной.
- Параметр Обучающие данные, исключенные из проверки (%) указывает процент (от 10 до 50) от Входных обучающих объектов, которые сохраняются как тестовый набор данных для проверки. Обучение модели будет происходить без этого произвольного поднабора данных, и значения наблюдений для этих объектов будут сравниваться с прогнозируемыми значениями для проверки производительности модели. Значение по умолчанию – 10 процентов.
- Если отмечен параметр Вычислить неопределенность, инструмент вычислит интервал 90-процентного предсказания вокруг каждого предсказанного значения Переменной для предсказания. Если Тип прогнозирования - Только Прогнозирование в объекты или Прогнозирование в объекты, добавляются два дополнительных поля к Выходным объектам обучения или Выходным прогнозируемым объектам. Эти поля, оканчивающиеся на _P05 и _P95, обозначают верхнюю и нижнюю границы интервала прогнозирования. Для каждого нового наблюдения вы можете прогнозировать с 90-процентной вероятностью, что значение нового наблюдения попадет в этот интервал, исходя из тех же самых независимых переменных. При использовании опции Прогнозирование в растры два растра, отражающие верхнюю и нижнюю границу интервала прогнозирования, добавляются на панели Содержание. Интервал прогнозирования вычисляется с использованием лесов квантильной регрессии. В лесу квантильной регрессии вместо сохранения окончательного прогноза из леса прогнозируемые значения для каждого листа леса сохраняются и используются для построения распределения прогнозируемых значений.
Рекомендации
Далее приводятся рекомендации по использованию инструмента Классификация на основе леса и регрессия:
- Модель леса следует обучать не менее, чем на нескольких сотнях объектов для получения наилучшего результата, этот инструмент не подходит для очень маленьких наборов данных.
- Инструмент может плохо срабатывать при попытке прогнозировать независимые переменные, находящиеся вне диапазона независимых переменных, используемых для обучения модели. Модели на основе леса не выполняют экстраполяцию, они могут только классифицировать или прогнозировать диапазон значений, на которых обучалась модель. Если прогнозируемое значение на основании независимых переменных намного выше или ниже диапазона исходного обучающего набора, модель будет оценивать значение как находящееся рядом с самым высоким или низким значением в исходном наборе данных.
- Для увеличения производительности при извлечении значений из Независимых обучающих растров и вычисления расстояний с использованием Независимых объектов расстояния обучения, рассмотрите возможность обучения модели на 100% данных без исключения данных для проверки и выберите создание Выходных обученных объектов. В следующий раз при запуске инструмента используйте Выходные обученные объекты как Входные обучающие объекты, а все извлеченные значения и расстояния – как Независимые переменные обучения, вместо того, чтобы извлекать их каждый раз при обучении модели. Если вы решите сделать это, установите Число деревьев, Максимальную глубину дерева и Число произвольно выбранных переменных равными 1, чтобы создать очень маленькое фиктивное дерево для быстрой подготовки данных для анализа.
В целях улучшения производительности параметр Независимые объекты расстояния обучения недоступен при использовании параметра Тип прогнозирования Прогнозировать в растр. Для включения расстояний в объекты, как независимые переменные, вычислите растры расстояния с помощью инструментов Накопление расстояния и включите растры расстояния в параметр Независимые обучающие растры.
- Хотя по умолчанию параметр Число деревьев равен 100, это число не управляется данными. Число деревьев необходимо увеличивать при сложных отношениях между независимыми переменными, размером набора данных и Переменной для прогнозирования, в дополнение к изменчивости этих переменных.
- Увеличьте Число деревьев в лесу и следите за изменением ошибки OOB или классификации. Рекомендуется увеличить Число деревьев не менее, чем 3 раза, хотя бы 500 деревьев, чтобы наилучшим образом оценить производительность модели.
- Время выполнения инструмента очень чувствительно к количеству переменных, используемых для каждого дерева. Применение меньшего числа переменных для дерева уменьшает вероятность чрезмерной подгонки, однако при этом убедитесь,что используете достаточно много деревьев для улучшения производительности модели.
- Для создания модели, не меняющейся при каждом запуске, можно задать начальное значение в параметре среды Генератор случайных чисел. Произвольность в модели останется, но произвольность будет согласована между запусками.
Справочная информация
Breiman, Leo. (1996). "Out-Of-Bag Estimation." Abstract.
Breiman, L. (1996). "Bagging predictors." Machine learning 24 (2): 123–140.
Breiman, Leo. (2001). "Random Forests." Machine Learning 45 (1): 5-32. https://doi.org/10.1023/A:1010933404324.
Breiman, L., J.H. Friedman, R.A. Olshen, and C.J. Stone. (2017). Classification and regression trees. New York: Academic. Chapter 4.
Dietterich, T. G. (2000, June). "Ensemble methods in machine learning." In International workshop on multiple classifier systems,. 1–15. Springer, Berlin, Heidelberg.
Gini, C. 1912 1955. Variabilità e mutabilità. Reprinted in Memorie di metodologica statistica (eds. E. Pizetti and T. Salvemini). 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." In Document analysis and recognition, 1995., proceedings of the third international conference on Document Analysis and Recognition Vol. 1: 278-282. IEEE.
James, G., D. Witten, T. Hastie, and R. Tibshirani. (2013). An introduction to statistical learning Vol. 112. New York: springer.
LeBlanc, M. and R. Tibshirani. (1996). "Combining estimates in regression and classification." Journal of the American Statistical Association 91 (436): 1641–1650.
Loh, W. Y. and Y. S. Shih. (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. and Y. Bengio. (2000). "Inference for the generalization error." In Advances in neural information processing systems, 307-313.
Strobl, C., A. L. Boulesteix, T. Kneib, T. Augustin, and A. Zeileis. (2008). "Conditional variable importance for random forests." BMC bioinformatics 9 (1): 307.
Zhou, Z. H. (2012). "Ensemble methods: foundations and algorithms". CRC press.