Як намалювати дерево рішень у r (з прикладом)
У машинному навчанні дерево рішень — це тип моделі, яка використовує набір змінних предиктора для створення дерева рішень, яке передбачає значення змінної відповіді.
Найпростіший спосіб побудувати дерево рішень у R — це використати функцію prp() із пакету rpart.plot .
У наступному прикладі показано, як використовувати цю функцію на практиці.
Приклад: малювання дерева рішень у R
Для цього прикладу ми використаємо набір даних Hitters із пакету ISLR , який містить різноманітну інформацію про 263 професійних бейсболістів.
Ми використаємо цей набір даних для побудови дерева регресії, яке використовує хоум-рани та зіграні роки для прогнозування зарплати певного гравця.
Наступний код показує, як підібрати це дерево регресії та як використовувати функцію prp() для малювання дерева:
library (ISLR) library (rpart) library (rpart.plot) #build the initial decision tree tree <- rpart(Salary ~ Years + HmRun, data=Hitters, control=rpart. control (cp= .0001 )) #identify best cp value to use best <- tree$cptable[which. min (tree$cptable[," xerror "])," CP "] #produce a pruned tree based on the best cp value pruned_tree <- prune (tree, cp=best) #plot the pruned tree prp(pruned_tree)
Зверніть увагу, що ми також можемо налаштувати вигляд дерева рішень за допомогою аргументів faclen , extra , roundint і digits у функції prp ():
#plot decision tree using custom arguments
prp(pruned_tree,
faclen= 0 , #use full names for factor labels
extra= 1 , #display number of observations for each terminal node
roundint= F , #don't round to integers in output
digits= 5 ) #display 5 decimal places in output
Ми бачимо, що дерево має шість кінцевих вузлів.
Кожен термінальний вузол відображає прогнозовану зарплату гравців у цьому вузлі, а також кількість спостережень з вихідного набору даних, які належать до цього рейтингу.
Наприклад, ми бачимо, що в початковому наборі даних було 90 гравців із досвідом менше 4,5 років і їхня середня зарплата становила 225,83 тисячі доларів .
Ми також можемо використовувати дерево, щоб передбачити зарплату певного гравця на основі його багаторічного досвіду та середнього хоумрану.
Наприклад, очікувана зарплата гравця, який має 7 років досвіду та 4 хоум-рани в середньому, становить 502,81 тис. доларів .
Це одна з переваг використання дерева рішень: ми можемо легко візуалізувати та інтерпретувати результати.
Додаткові ресурси
Наступні посібники надають додаткову інформацію про дерева рішень:
Введення в дерева класифікації та регресії
Дерево рішень проти випадкових лісів: у чому різниця?
Як підібрати дерева класифікації та регресії в R