Как предварительно обрабатывать различные виды данных (непрерывные, дискретные, категориальные) перед изучением дерева решений

datascience.stackexchange https://datascience.stackexchange.com/questions/6721

Вопрос

Я хочу использовать некоторое обучение дерева решений, например, классификатор случайного леса.

У меня есть данные разных типов: непрерывные, дискретные и категориальные. Как мне нужно предварительно обработать данные, чтобы иметь постоянные результаты?

Это было полезно?

Решение

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

Категориальные входы, которые не имеют разумного порядка, являются особым случаем. Если ваша случайная реализация леса не имеет встроенного способа справиться с категориальным вводом, вам, вероятно, следует использовать кодирование 1-Hot:

  • Если категориальная стоимость имеет категории $ n $, вы кодируете стоимость, используя измерения $ n $, один соответствует каждой категории.
  • Для каждой точки данных, если он находится в категории $ k $, соответствующее измерение $ k $ установлено в 1, а остальные установлены на 0.

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

Лицензировано под: CC-BY-SA с атрибуция
Не связан с datascience.stackexchange
scroll top