0-1损失函数说明


19

我试图了解损失函数的用途,但我不太了解。

因此,据我所知,损失函数是用于引入某种度量的,我们可以用它来度量不正确决策的“成本”。

假设我有一个包含30个对象的数据集,我将它们划分为20/10这样的训练/测试集。我将使用0-1损失函数,所以可以说我的类标签集为M,函数看起来像这样:

大号一世Ĵ={0一世=Ĵ1个一世Ĵ一世Ĵ中号

因此,我在训练数据上构建了一个模型,可以说我正在使用Naive Bayes分类器,并且该模型正确地分类了7个对象(为它们分配了正确的类别标签),并且错误地分类了3个对象。

因此我的损失函数将返回“ 0” 7次和“ 1” 3次-我可以从中获得什么样的信息?我的模型对30%的对象进行了错误分类吗?还是还有更多呢?

如果我的思维方式有任何错误,我感到非常抱歉,我只是在尝试学习。如果我提供的示例“太抽象”,请告诉我,我将尝试更加具体。如果您尝试使用其他示例来解释该概念,请使用0-1损失函数。

Answers:


14

您已经正确总结了0-1损失函数,可以有效地查看准确性。您的1成为分类错误指标,无论它们如何分类。由于10个项目中有3个为1,因此分类精度为70%。

如果更改损失函数的权重,此解释将不再适用。例如,在疾病分类中,错过疾病的阳性病例(假阴性)比错误地诊断疾病(假阳性)可能要昂贵得多。在这种情况下,您的损失函数将对假阴性分类错误赋予更大的权重。在这种情况下,您损失的总和将不再代表准确性,而是错误分类的总“成本”。0-1损失函数在准确性上具有独特性,因为您关心的只是是否正确,而不是错误的产生方式。


@JohnnyJohansson,这是统计中准确性的定义,请参见en.wikipedia.org/wiki/Sensitivity_and_specificity
Tim

@Tim-我仍然对0-1损失函数感到困惑-生成的矩阵是否可以具有大于1的任何值,即如果存在3个未分类,我们在相应的条目中将看到3的值吗?看到这里math.stackexchange.com/questions/2623072/...
泽维尔Bourret Sicotte

2

Yes, this is basically it: you count the number of misclassified items. There is nothing more behind it, it is a very basic loss function. What follows, 0-1 loss leads to estimating mode of the target distribution (as compared to L1 估计中位数和 L2 估计均值损失)。


0

I think your confusion is not differentiating the loss for one data point vs. the loss for the whole data set.

Specifically, your L(y,y^) is the loss for one data point (I am changing the notation little bit). And the loss for the whole data set, i.e., classification accuracy, needs to summing all data points.

iL(yi,y^i)

我实际上得到了区别,但是除了计算整个数据集的损失之外,我很难理解一个数据点需要什么损失?当为某些特定问题选择适当的损失函数时,我应该考虑什么?
约翰尼·约翰逊
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.