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.