С5.0 не предсказывает?Размер дерева = 1 - PullRequest
0 голосов
/ 07 июня 2019

В начале моего прогноза у меня было 5 переменных (предиктор = числовой тип данных) и одна целевая переменная (Philips с 6 уровнями = коэффициент типа данных). Прогноз сработал нормально, и размер дерева был около 35, но результаты (точность) были недостаточно хорошими. Поэтому я попытался уменьшить 6 уровней цели до 2 уровней (верхняя скобка = 1, нижняя скобка = 2). Но когда я пытаюсь предсказать эти 2, C5.0 не предсказывает вообще, а размер дерева равен 1. Как будто он игнорирует 5 переменных предиктора. Я сделал прогноз следующим образом.

1. Changing the 6 levels to 2 (orignal dataframe):
cdf$Philips[cdf$Philips == 2] <- 1
cdf$Philips[cdf$Philips == 3] <- 1
cdf$Philips[cdf$Philips == 4] <- 6
cdf$Philips[cdf$Philips == 5] <- 6

Есть ли ошибка в процессе сокращения до двух уровней? На следующем шаге я создал новый фрейм данных обучения (frame) с кадрами данных, содержащий только 5 переменных-предикторов и целевую переменную (Philips). Я проверил также его структуру, чтобы убедиться, что каждый столбец имеет правильный тип данных.

data.frame':    139 obs. of  6 variables:
BFI_Extraversion     : num  1.38 2.25 4.12 3.5 4.12 ...
BFI_Agreeableness    : num  3.78 3.89 4.33 3.33 4.22 ...
BFI_Conscientiousness: num  4.11 4.22 4.56 3.67 4.22 ...
BFI_Neuroticism      : num  2.57 2.71 2.14 2.86 1.57 ...
BFI_Openness         : num  1.89 3.67 3.89 3.56 4.11 ...
Philips              : Factor w/ 2 levels "1","6": 1 1 2 2 2 2 1 1 2 2 ... 

И на последнем шаге я построил модель прогнозирования, подобную этой, и взглянул на сводку модели:

C50ModelPhilips <- C5.0(train[,1:5], train$Philips) 
summary(C50ModelPhilips)

Резюме:

 Decision Tree   
  ----------------  
  Size      Errors  

     1   65(46.8%)   <<


   (a)   (b)    <-classified as
  ----  ----
          65    (a): class 1
          74    (b): class 6

Спасибо за помощь!

...