У меня есть набор данных с 25000 строк и 761 столбцов, который включает в себя один столбец двоичного ответа. Мой двоичный ответ имел значения «-1» и «1». Я пытался запустить xgboost на него, и получаю сообщение об ошибке, которое says-Устранение неполадок XGBoost в R
xg_base<-xgboost(data = features,label = output,objective="binary:logistic",eta=1,nthreads=2,nrounds = 10
, verbose = T, print.every.n = 5)
Error in xgb.iter.update(bst$handle, dtrain, i - 1, obj) :
label must be in [0,1] for logistic regression
Я изменил уровни моего ответа, используя следующую command-
levels(output)[levels(output)=="-1"] <- "0"
я до сих пор продолжаю получать ту же ошибку , и я не уверен, в чем именно проблема. Важным моментом является то, что это редкая проблема обнаружения событий, причем доля положительных случаев составляет 1% от общего числа наблюдений. Может быть, причина в том, что я получаю ошибку?
Я думаю, что переменная 'output' должна быть между 0 и 1, а не фактором. Возможно, вам нужно перекодировать ответ при использовании 'xgboost'. – steveb