R 和 PMML xgboost 概率输出之间的最小差异

Minimal differences between R and PMML xgboost probabilities output

我在 R 中构建了一个 xgboost 模型并将其导出到 PMML(使用 r2pmml)。
我用 R 和 PMML(Java)测试了相同的数据集,概率输出非常接近,但它们在 1e-8 和 1e-10 之间都有很小的差异。 这些差异太小,不可能是由输入数据问题引起的。

这是不同language/software之间四舍五入的经典行为还是我哪里做错了

the probabilities output are very close but they all have a small difference between 1e-8 and 1e-10.

XGBoost 库使用 float32 数据类型(单精度浮点数),在此范围内(概率值,介于0 和 1).

因此,您观察到的差异小于“自然精度”,不应引起进一步的关注。

(J)PMML 表示执行与本机 XGBoost 表示完全相同的计算(助推器浮点值的总和,对其应用归一化函数)。