scikit-learn 度量函数中的权重

数据挖掘 机器学习 Python scikit-学习
2022-02-27 13:06:35

大多数scikit-learn度量函数都可以选择考虑样本权重。使用此选项的目的或用例是什么?班级不平衡?

2个回答

不平衡类绝对是一个用例,另一个目的是成本敏感学习,其中每个类错误分类的成本是不同的。特别是 scikit-learn 为每个样本赋予权重,因此它具有更大的灵活性。

样本权重改变了每个样本被输入模型训练的概率。例如,我们有 4 个A, B, C, D带有权重的样本1,2,3,4,这意味着我们的模型拟合样本的概率是样本的两倍,拟合样本的概率是B样本A的 3 倍CA

当您想知道这样做的目的是什么时,让我们想象一下我们的模型在输入不同权重的样本时会变成什么。

示例:榴莲世界

如果你出生在一个到处都是榴莲的国家,长大后,“水果”这个词的意思是闻起来很糟糕,但我们都知道大多数水果闻起来很香。

机器学习模型也是如此,当我们的模型无法识别榴莲时,只需喂更多榴莲(增加体重,因为我们生活中的榴莲比苹果或香蕉少)。这就是所谓的“不平衡类”的情况。

什么时候(如果)你非常讨厌榴莲(假设你闻到榴莲会死),但你不能很好地识别榴莲,如何让你活下来?只喂更多的榴莲和非榴莲样品,你可能会失去区分苹果和香蕉的能力,但你会活下来。这就是所谓的“成本敏感”的情况。