Огляд дерева рішень в R

Дерево рішень в r - це форма керованого навчання, що використовується для виправлення проблем класифікації та регресії. Вони є сильним алгоритмом машинного навчання для роботи з дуже складними наборами даних. Основною концепцією дерева рішень є розділення даного набору даних. Для ознайомлення з цією статтею пропонується скласти основні поняття навчання алгоритму дерева рішень.

Дерево рішення в R

Для роботи з деревом рішення в R або в простому плані необхідно працювати з великими наборами даних, а пряме використання вбудованих пакетів R полегшує роботу. Дерево рішень - це нелінійна модель припущень, яка використовує структуру дерева для класифікації відносин. Дерево Рішення в R використовує два типи змінних: категоричну змінну (Так чи Ні) та безперервні змінні. Термінології дерева рішень, що складаються з кореневого вузла (утворює мітку класу), вузлів рішення (підвузли), термінального вузла (далі не розщеплюються). Унікальна концепція цього підходу до машинного навчання полягає в тому, що вони класифікують дані на класи, які утворюють потік "так" або "немає" (якщо є інший підхід) і представляють результати в структурі дерева. Алгоритм, який використовується в дереві рішень в R - це індекс Джині, посилення інформації, ентропія. Існують різні пакети для побудови дерева рішень в R: rpart (рекурсивний), учасник, випадковий Forest, CART (класифікація та регресія). Впровадити Дерево рішень у Р. досить просто.

Для чіткого аналізу дерево поділяють на групи: навчальний набір і тестовий набір. Наступна реалізація використовує набір даних про автомобіль. Цей набір даних містить 1727 опорних і 9 змінних, за допомогою яких побудовано дерево класифікації. У цій статті давайте дереву пакет «учасник». Функція create () дає умовні дерева з функцією сюжету.

Реалізація з використанням R

Метою є вивчення набору даних про автомобіль для прогнозування високої / низької та середньої вартості автомобіля.

i) Підготовка даних

Встановлення пакетів та завантаження бібліотек

Цей модуль читає набір даних як повний кадр даних, і структура даних задається наступним чином:

data<-car // Reading the data as a data frame
str(data) // Displaying the structure and the result shows the predictor values.

Вихід:

Determining Factordata$vhigh View(car)
> data<-car

ii) Розбиття даних

Розбиття даних за допомогою навчальних наборів даних. Дерево рішення розділяється на підвузли, щоб мати хорошу точність. Складність визначається розміром дерева та коефіцієнтом помилок. Тут робиться відтворюваність і генерується ряд рядків.

set. Seed (1234)
dt<-sample (2, nrow(data), replace = TRUE, prob=c (0.8, 0.2))
validate<-data(dt==2, )

Рис . : Показ даних

Далі, додаючи значення даних до 2

validate<-data(dt==2, )

Рис . : Відображення консолі R в R Studio

Створення дерева рішень у R із стороною пакета

  • Клацніть пакунок-> встановити -> учасник. Тут ми взяли перші три дані з вибірки 1727 спостережень на наборах даних. Створення моделі для прогнозування високих, низьких, середніх серед вхідних даних.

Впровадження:

library(party)
tree<-ctree(v~vhigh+vhigh.1+X2, data = train)
tree

Вихід:

Ділянки з використанням Ctree

Прогноз:

Проблема генерує ймовірність зарахування балів,

Впровадження:

predict(tree, validate, type="prob")
predict(tree, validate)

(1) vhigh vhigh vhigh vhigh vhigh vhigh vhigh vhigh vhigh vhigh vhigh

(12) vhigh vhigh vhigh vhigh vhigh vhigh vhigh vhigh vhigh vhigh vhigh

(23) vhigh vhigh vhigh vhigh vhigh vhigh vhigh vhigh vhigh vhigh vhigh vhigh

(34) vhigh vhigh vhigh vhigh vhigh vhigh vhigh vhigh vhigh vhigh vhigh vhigh

(45) vhigh vhigh vhigh vhigh vhigh vhigh vhigh vhigh vhigh vhigh vhigh

(56) vhigh vhigh vhigh vhigh vhigh vhigh vhigh vhigh vhigh vhigh vhigh

(67) vhigh vhigh vhigh vhigh vhigh vhigh vhigh vhigh vhigh vhigh vhigh

(78) vhigh vhigh vhigh високий високий високий високий високий високий високий

(89) високий високий високий високий високий високий високий високий високий

(100) високий високий високий високий високий високий високий високий високий

(111) високий високий високий високий високий високий високий високий високий

(122) високий високий високий високий високий високий високий високий високий

(133) високий високий високий високий високий високий високий високий високий

(144) високий високий високий високий високий високий високий високий високий

(155) високий високий високий високий високий високий високий високий високий

(166) високий високий високий високий високий високий високий високий високий

(177) високий високий високий високий середній мед med med med med med

(188) med med med med med med med med med med med med

(199) med med med med med med med med med med med med

(210) med med med med med med med med med med med med

(221) med med med med med med med med med med med med

(232) med med med med med med med med med med med med

(243) med med med med med med med med med med med med

(254) med med med med med med med med med низький низький

(265) низький низький низький низький низький низький низький низький низький низький

(276) низький низький низький низький низький низький низький низький низький низький

(287) низький низький низький низький низький низький низький низький низький низький

(298) низький низький низький низький низький низький низький низький низький низький

(309) низький низький низький низький низький низький низький низький низький низький

(320) низький низький низький низький низький низький низький низький низький низький

(331) низький низький низький низький низький

Рівні: високий низький середній високий

Дерево рішення з використанням rpart

Для передбачення класу за допомогою функції rpart () для методу класу. rpart () використовує міру індексу Джині для розділення вузлів.

library(rpart)
tr<-rpart (v~vhigh+vhigh.1+X2, train)
library (rpart. plot)
rpart. plot(tr)

"

rpart.plot(tr, extra=2)

Цей рядок малює дерево і відображає ймовірність створення додаткових функцій для встановлення 2, а отриманий результат наведено нижче.

Помилка помилкової класифікації

Коефіцієнт помилок запобігає надмірному розміщенню.

tbl<-table(predict(tree), train $v)
print(tbl)
tepre<-predict(tree, new=validate)

Вихід:

друк (tbl)

високий низький середній vhigh

високий 332 0 0 0

низький 0 359 0 0

med 0 0 350 0

vhigh 0 0 0 351

Висновок

Дерево рішень є ключовою проблемою для R, і міцність дерева полягає в тому, що вони легко зрозуміти і прочитати, якщо порівнювати їх з іншими моделями. Вони широко використовуються в проблемах науки даних. Ці інструменти виробляють ієрархію рішень, реалізованих у статистичному аналізі. Статистичні знання необхідні для розуміння логічних інтерпретацій дерева рішень. Як ми бачили, дерево рішень легко зрозуміти, і результати є ефективними, коли в ньому є менше міток класів, а інша їх нижня частина - коли є більше міток класів, обчислення ускладнюються. Цей пост робить досвідченим розробляти моделі прогнозування та навчання на основі дерев.

Рекомендовані статті

Це посібник з Дерева рішень в Р. Тут ми обговорюємо вступ, спосіб використання та реалізацію Р. Ви також можете ознайомитися з іншими запропонованими нами статтями, щоб дізнатися більше -

  1. Що таке бінарне дерево на Яві?
  2. R Мова програмування
  3. Що таке код Visual Studio?
  4. Вступ до лінійного графіка в R
  5. Посібник з біноміального розподілу в R

Категорія: