可以说我们有某些产品。我们也有关于这些产品的某些输入特征,如库存、销售、价格、成本等,基于我们想要对这些部分进行评分的这些特征。分数应该反映它是否短缺。短缺是指高需求(销售)和低库存/供应。100分表示缺货。1分表示不缺。
现在我使用随机森林模型并使用模型中的概率作为分数。然而,这导致许多产品的得分在 0-10 到 90-100 之间。很少有产品的得分在 10-90 之间。
有没有更好的方法可以让分数更加分散?
可以说我们有某些产品。我们也有关于这些产品的某些输入特征,如库存、销售、价格、成本等,基于我们想要对这些部分进行评分的这些特征。分数应该反映它是否短缺。短缺是指高需求(销售)和低库存/供应。100分表示缺货。1分表示不缺。
现在我使用随机森林模型并使用模型中的概率作为分数。然而,这导致许多产品的得分在 0-10 到 90-100 之间。很少有产品的得分在 10-90 之间。
有没有更好的方法可以让分数更加分散?
关于 10-90 之间的分数,我认为训练数据可能使得该集中的样本很少。
这看起来像是一个回归问题,尝试在您的训练数据上训练一个 XGB 回归器。可以在 sklearn 文档中找到其实现。如果您的训练样本质量好,即来自每个范围的足够样本,这将有所帮助。
我假设您目前正在训练二元分类模型,对吧?
您可以尝试训练一个预测分数在 0 到 100 之间的回归模型。最好在训练数据中包含一些介于 10 到 90 之间的示例,因为这会使模型学习分数的分布。但即使你没有这种实例,在某些情况下,模型也有可能(虽然不确定)会预测这个范围内的实例。