刚学xgboost,通过下面的代码初步建立了模型,也能跑出结果,不过结果是以概率的形式展现的(不知道为什么),结果的正确率大概也只有50%,然后无论我怎么去调参数,结果永远是50%,不会改变,改变的只有概率的大小(没有用),郁闷了,请大家帮忙看下是怎么回事,该怎么去优化。(附上整理后的数据,id为因变量y,其余为变量x)
代码:
svmdata<-read.csv("E://12yue//12quan.csv",header=T)
ind<-sample(2,nrow(svmdata),replace=TRUE,prob=c(0.9,0.1))
traindata<-svmdata[ind==1, ]
testdata<-svmdata[ind==2, ]
tdata <- as.matrix(traindata)
edata <- as.matrix(testdata)
y <- as.matrix(traindata$id)
library(xgboost)
xgb <- xgboost(data=tdata,label=y,max.depth=6,eta=0.3,nrounds=5000,verbose=2,objective="binary:logistic")
pred <- predict(xgb,sdata)