XGBoost在Python中与C中预测结果相差极大

现象

在Python中对于同一组特征的预测结果与C中的预测结果完全不同,相差极大,可以排除是精度问题。

网上的方法

网上查了很久,基本上都是在说不能用save_model要用dump_model,但实测dump_model出来的text及json均无法被XGBoosterLoadModel读取。

解决方法

其实问题根本不在于model,用save_model就是对的。
问题在于XGDMatrixCreateFromMat的缺省值参数:

missing – which value to represent missing value

这里我写的0,但是改成负数-1、-1000等,结果就对了,原因未知,希望能有大佬能讲解一下。

添加新评论