为什么这个线性假设的 VC 维度等于 3?

数据挖掘 机器学习 机器学习模型 模型选择 vc理论
2022-02-10 05:51:49

我正在努力理解这一点。这是场景:

X = R^2
H = { h(x) = x + 10 }

我需要计算上述线性分隔符的 VC 尺寸。不知何故,这个线性分隔符的 VC 维度是 3。我只是不明白怎么做。

据我了解,VC 维度是最大有限子集的大小,X可以被h. 因此,如果存在n所有点都被 粉碎h的大小子集,并且存在n+1至少一个点未被 粉碎的大小子集h,则 VC 维度将为n

  • VC 维度是否 >= 1?

是的。我们只需要假设线上有一个点,通过保持线(X轴)稳定,我们可以翻转哪一边是正/负

  • VC 维度是否 >= 2?

是的,因为我们可以使用单行分隔所有 4 个组合 { ++, --, +-, -+ }

  • VC 维度是否 >= 3?

根据我的理解,这应该是 NO。我们怎么能把这个案子分开+ - +

但我正在看一个视频,它解释了 VC 维度,它说它是三个,我不明白如何。

2个回答

分类器的 VC 维度取决于数据点所属的空间维度。

在你的问题中,如果你的意思是xR2,则 VC 维数为 3。对于R2,您总是可以粉碎任何三个一般位置点(“一般位置”意味着它们不会巧合地位于同一条线上)。例如,考虑三点(0,0), (0,1), (1,0)无论您如何为它们分配标签,您始终可以用一条线将它们分开。(0,0), (0,1), (1,0), (1,1)如果您考虑带有label 的[+,-,-,+],这是不能用线分隔的“xor”情况。

为了xR,则 VC 维度为 2,因为您无法分离+-+

一般来说对于xRd,线性分类器的 VC 维度为d+1.

VC 维度取决于您的数据维度和您正在评估的函数族。

R2,家庭的VC维度h(x)定向线的数量是 3,因为使用定向线,考虑到所有 8 种可能的标签分配,您只能正确分类三个点,如下图所示:

在此处输入图像描述

图来自:https ://www.microsoft.com/en-us/research/wp-content/uploads/2016/02/svmtutorial.pdf

你的函数族h(x)=x+10是线族的一个子集,则 VC 为 3,您可以尝试绘制与上述相同的图形,但您的特定h(x). 考虑到这一系列函数的 16 种可能标签,您将无法分开 4 个点。