我已经通过两种方式将受Scikit训练的Gradient BoosterRégressionTree(GBRT)模型集成到一个较大的程序中:
CoreML
和coremltools
有时候的预测是不同的,事实并非如此。
请注意,这是一个两类问题:输出为0或1。
为解释起见,我将重点放在两个样本上:样本3321和样本3330:预测这两个样本中的3321均为0类,但在iOS上预测为3330为1,在Linux / python版本上预测为0。
这就是我试图解决的问题:
由于我使用的是GBRT分类器,所以我想看看与每个类相关的概率。它们在两个样本中都不同:
在iOS版本中:
在python中:
显然,这些是不同的。
然后我尝试放入一个SVM分类器(其结果仅次于GBRT),该分类器具有以下几方面的概率:两者也不同(预测和概率)
然后我认为特征值可能不同(从迅速发送到python脚本时有所改变),因此在两种情况下,在调用预测变量之前,我都打印了特征向量:它们的值完全相同最后一位。
知道为什么会这样,还是正常吗?