一、VC维
当,时,易得:被给bound住。
图1.1 限界函数的上限图1.2 不等式的右值更新
图1.3 学习的可行性分析
VC维:最小断点值或能shatter的最大值。
这里的指的是存在个输入能被给shatter,不是任意个输入都能被给shatter。如:2维感知机能shatter平面上呈三角形排列的3个样本点,却shatter不了平面上呈直线排列的3个样本点,因为当另外2个点标签值一致时,中间那个点无法取与它们相反的标签值。若无断点,则该下,VC维为无穷。所以,存在断点即可以推出有限VC维。
图1.5 常见假设集对应的VC维
维感知器算法下,VC维?!
图1.6 感知器的VC维证明如下:
图1.7 证明1图1.8 证明2
- 当的大小为时,
对于矩阵,易得是的矩阵,的秩小于等于。
所以,存在,行向量之间线性无关,每一行向量可取任意标签值。
因此,能shatter这个对应的个样本点,即VC维。 - 当的大小为时,
对于矩阵,易得是的矩阵,的秩小于。
所以,任意,总有一行与其他行向量线性相关,该行的标签值受到限制。
因此,不能shatter这个对应的个样本点,即VC维。
综上所述,易得对于维感知器,其VC维。
二、VC维的意义
VC维,反映的是的自由度,可粗略认为是自由参数的个数(不总是)。
图2.1 VC维的意义1图2.2 VC维的意义2
VC维增大,减小,模型复杂度增大;VC维减小,增大,模型复杂度减小。
图2.3 VC维与模型复杂度1图2.4 VC维与模型复杂度2
图2.5 VC维与模型复杂度3
图2.6 VC维传达的信息
给定差异容忍度、概率容忍度、VC维,求满足条件需要多少样本。
理论上,约等于10000倍的VC维;实际上,取10倍的VC维就足够了。
可见,VC维是十分松弛的,
- 使用霍夫丁不等式,不管、输入分布;
- 使用成长函数,不管具体的;
- 使用的多项式,不管(VC维相同);
- 使用联合bound,不管。
之所以使用VC维是为了定性分析VC维里包含的信息,而且它对所有模型都近似松弛。
图2.8 VC维的使用意义
网友评论