exponenta event banner

Растущие деревья принятия решений

По умолчанию fitctree и fitrtree используйте стандартный алгоритм CART [1] для создания деревьев решений. То есть они выполняют следующие шаги:

  1. Начните со всех входных данных и изучите все возможные бинарные разделения на каждом предикторе.

  2. Выберите разделение с наилучшим критерием оптимизации.

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

  3. Навязать раскол.

  4. Повторите рекурсивно для двух дочерних узлов.

Объяснение требует еще двух пунктов: описание критерия оптимизации и правило остановки.

Правило остановки: Прекращение разделения при любом из следующих удержаний:

  • Узел является чистым.

    • Для классификации узел является чистым, если он содержит только наблюдения одного класса.

    • Для регрессии узел является чистым, если среднеквадратичная ошибка (MSE) для наблюдаемого ответа в этом узле опускается ниже MSE для наблюдаемого ответа во всех данных, умноженных на допуск по квадратичной ошибке на узел (QuadraticErrorTolerance параметр).

  • Их меньше, чем MinParentSize наблюдения в этом узле.

  • Любое разделение, наложенное на этот узел, приводит к появлению нижестоящих элементов с числом менее MinLeafSize наблюдения.

  • Алгоритм расщепляется MaxNumSplits узлы.

Критерий оптимизации:

  • Регрессия: среднеквадратичная ошибка (MSE). Выберите разделение, чтобы минимизировать MSE прогнозов по сравнению с данными обучения.

  • Классификация: одна из трех мер в зависимости от установления SplitCriterion пара имя-значение:

    • 'gdi'(индекс разнообразия Джини, по умолчанию)

    • 'twoing'

    • 'deviance'

    Дополнительные сведения см. в разделе ClassificationTree .Подробнее

Альтернативные методы выбора разделенного предиктора см. в разделе Выбор метода выбора разделенного предиктора.

Для непрерывного предсказателя дерево может разделяться на полпути между любыми двумя соседними уникальными значениями, найденными для этого предсказателя. Для категориального предиктора с уровнями L дерево классификации должно учитывать 2L-1-1 разделения, чтобы найти оптимальное разделение. Кроме того, можно выбрать эвристический алгоритм, чтобы найти хорошее разделение, как описано в разделе Расщепление категориальных предикторов в деревьях классификации.

Для двухъядерных систем и выше, fitctree и fitrtree параллелизировать деревья обучающих решений с помощью стандартных блоков Intel ® Threading Building Blocks (TBB). Подробные сведения о TBB Intel см. в разделе https://software.intel.com/en-us/intel-tbb.

Ссылки

[1] Брейман, Л., Дж. Х. Фридман, Р. А. Ольшен и К. Дж. Стоун. Деревья классификации и регрессии. Бока Ратон, Флорида: Чепмен энд Холл, 1984.

См. также

| | |

Связанные темы