我正在使用在稀疏矩阵(csr)上训练的xgboost MultiClass模型。 当我使用模型在稀疏矩阵上进行预测时-如果我对整个矩阵(一次拍摄)进行预测,则对同一行将获得不同的预测值;或者-对行的子集进行预测。
就像我愿意
dmx = xgb.DMatrix(sparse,feature_names=modelFeatures)
predictions1 = model.predict(dmx)
然后,如果我这样做
indices = [n1,n2,n3,n4,...]
dmx = xgb.DMatrix(sparse[indices],feature_names=modelFeatures)
predictions2 = model.predict(dmx)
然后,具有索引n1,n2,n3 ...的行在预测1和预测2之间具有不同的预测值。
我确实读过https://github.com/dmlc/xgboost/issues/2488-但这并不是我的情况。我在网上找不到任何其他东西可以回答正在发生的事情。
我们将不胜感激任何帮助。
谢谢