train是一个带有100k行和50个列的pandas数据框,target是一个pandas系列。
xgb_classifier = xgb.XGBClassifier(nthread=-1, max_depth=3, silent=0,
objective='reg:linear', n_estimators=100)
xgb_classifier = xgb_classifier.fit(train, target)
predictions = xgb_classifier.predict(test)
然而,在训练后,当我使用这个分类器来预测值时,整个结果数组都是相同的数字。你有什么想法为什么会发生这种情况?
数据澄清: 大约50个数值特征和一个数值目标
我也尝试过使用sklearn中的RandomForestRegressor
来处理相同的数据,它确实给出了真实的预测结果。也许这是xgboost实现中的一个合法bug?