Различия между adabag и rpart - PullRequest
       24

Различия между adabag и rpart

0 голосов
/ 22 октября 2018

Я нашел что-то странное (по крайней мере для меня) при использовании пакетов rpart и adabag в R (версия R 3.5.1 (2018-07-02) - "Feather Spray")).

Мне интересно, что является причиной получения разных деревьев при использовании обоих пакетов, даже если параметризация одинакова.Посмотрите на код ниже:

library(rpart); library(adabag);
set.seed(32323)

N<-1000
x<-rnorm(N)
y<-0.6^2*x+sqrt(1-0.6^2)*rnorm(N)
z<-rep(0,N)
for(i in 1:N){
  if(x[i]-y[i]+0.2*rnorm(1)>1.0){
    z[i]=1
  }
}

myData<-data.frame(x,y,z)

tree<-rpart(formula=z ~ .,myData, method="anova", cp=0,maxdepth=10,minbucket=30, xval=10)
plot(tree, uniform=TRUE, compress=TRUE)
text(tree, use.n = FALSE, all=FALSE)
print(tree)

myData.Ada<-myData
myData.Ada$z<-as.factor(myData$z)
adaboost <- boosting(z ~ .,data = myData.Ada, boos = F, mfinal=1, coeflearn="Breiman", control=rpart.control(method="anova", cp=0, maxdepth=10, minbucket = 30, xval=10))
plot(adaboost$tree[[1]], uniform=TRUE, compress=TRUE)
text(adaboost$tree[[1]], use.n = FALSE, all=FALSE)
print(adaboost$tree[[1]])

для меня параметризация такая же, но деревья разные.Пока я знаю, что adabag использует rpart для создания деревьев, в чем причина этого?

С уважением, Wojtek

...