Я получил R-скрипт от кого-то для запуска модели случайного леса. Я изменил и запустил его с некоторыми данными о сотрудниках. Мы пытаемся предсказать добровольное увольнение.
Вот некоторая дополнительная информация: это модель классификации, в которой 0 = сотрудник остался, 1 = сотрудник уволен, в настоящее время мы рассматриваем только дюжину переменных предикторов, данные «несбалансированы» в том смысле, что записи в терминах составляют около 7 % от общего набора записей.
Я запускаю модель с различными вариантами выбора mtry и ntree, но остановился на следующем. OOB составляет 6,8%, что я считаю хорошим, но матрица путаницы, похоже, рассказывает другую историю для прогнозирования терминов, так как уровень ошибок довольно высок и составляет 92,79%. Правильно ли я считаю, что не могу положиться на эту модель и использовать ее, потому что высокая частота ошибок для прогнозирования сроков? или я тоже могу что-то сделать, чтобы использовать RF и получить меньшую частоту ошибок для прогнозирования условий?
FOREST_model <- randomForest(theFormula, data=trainset, mtry=3, ntree=500, importance=TRUE, do.trace=100)
ntree OOB 1 2
100: 6.97% 0.47% 92.79%
200: 6.87% 0.36% 92.79%
300: 6.82% 0.33% 92.55%
400: 6.80% 0.29% 92.79%
500: 6.80% 0.29% 92.79%
> print(FOREST_model)
Call:
randomForest(formula = theFormula, data = trainset, mtry = 3, ntree = 500, importance = TRUE, do.trace = 100)
Type of random forest: classification
Number of trees: 500
No. of variables tried at each split: 3
OOB estimate of error rate: 6.8%
Confusion matrix:
0 1 class.error
0 5476 16 0.002913328
1 386 30 0.927884615
> nrow(trainset)
[1] 5908