Ich habe einen Datensatz mit 25000 Zeilen und 761 Spalten, die eine binäre Antwortspalte enthält. Meine binäre Antwort hatte Werte "-1" und "1". Ich habe versucht, darauf zu laufen xgboost und haben immer einen Fehler bekommen, dieFehlerbehebung XGBoost in 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
sagt- änderte ich das Niveau meiner Antwort mit dem folgenden Kommando-
levels(output)[levels(output)=="-1"] <- "0"
ich immer noch die gleichen Fehler und bin mir nicht sicher, was genau das Problem ist. Ein wichtiger Punkt ist, dass dies ein seltenes Ereigniserkennungsproblem ist, wobei der Anteil der positiven Fälle bei 1% der Gesamtbeobachtungen liegt. Könnte das der Grund sein, dass ich den Fehler bekomme?
Ich denke, dass die Variable 'output' zwischen 0 und 1 sein muss, kein Faktor. Es ist möglich, dass Sie die Antwort rekodieren müssen, wenn Sie 'xgboost' verwenden. – steveb