Что происходит в CART — и шесть простых шагов для построения модели.

Дерево классификации и регрессии является частью алгоритма дерева решений.

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

Дерево решений основано на жадном подходе «сверху вниз».

Алгоритм ID3 использует усиление информации, тогда как C4.5 использует коэффициент усиления для разделения.

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

Как CART вычисляет общий коэффициент Джини для каждой переменной,

Например,

переменная temp = {горячий, мягкий, холодный, холодный, холодный, мягкий, горячий, мягкий} и target = {да, да, нет, нет, да, да, нет, да}

Теперь, чтобы рассчитать Джини для темпа (в целом), сначала нам нужно рассчитать

Джини (в целом горячий) Да =1 Нет = 1, следовательно, 1- (1/2)² — (1/2)² = 0,5

Джини (в целом мягкий) Да = 3, Нет = 0, следовательно, 1- (3/3)² — (0/3)² = 0

Джини (в целом холодный) Да = 1 Нет = 2, следовательно, 1 — (1/3)² — (2/3² = 0,46)

Общая температура Джини = (2/8)*0,5 + (3/8)*0 + (3/8)*0,46 = 0,297

Точно так же мы можем вычислить коэффициент Джини для других переменных, таких как скорость ветра, погода и т. д.

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

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

Вот шесть простых и быстрых шагов для выполнения CART в R,

Шаг 1: контролируемый метод CART, мы используем библиотеку (rpart) и библиотеку (rpart.plot)

Шаг 2: Задайте параметры управления с помощью функции rpart.control() — установите minbucket (конечный узел) и minsplit (минимальное наблюдение должно существовать в узле для разделения)

ПРИМЕЧАНИЕ: чем меньше minsplit и minbucket, тем больше дерево. Теперь нельзя поставить minbucket = 1, что означает только 1 атрибут, и эта модель дает самую высокую точность. И, следовательно, модель переобучена и не дает такой же точности на невидимом наборе данных.

Шаг 3: создайте модель с помощью функции rpart().

Шаг 4. Сократите дерево на основе таблицы сложных параметров (CP) и xerror.

Шаг 5. Создайте диаграмму с помощью функции fancyRpartplot().

Шаг 6: предскажите класс невидимого набора данных, используя функцию predict().

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