The VC Dimension

Definition of VC Dimension

  • 可以学习的情形:
    • mH(N)m_{\mathcal H}(N)kk处为突破点(好的假设集H\mathcal H
    • NN足够大(好的数据集D\mathcal D),(大概率)使得Ein(h)Eout(h)E_{in}(h) \approx E_{out}(h)
    • 有一个算法A\mathcal A,能够选择一个有较小Ein(h)E_{in}(h)的模式gg(好的算法A\mathcal A
    • (大概率)可以实现学习
  • VC维度:对最大的非突破点的形式化名称,(dvc=k1d_{vc}=k-1
  • NdvcN \le d_{vc},假设集H可以被N完全分割
  • N>dvcN \gt d_{vc},N是假设集H上的一个突破点
  • dvcd_{vc}有限时,可以推导出gg是能够泛化的(Ein(g)Eout(g)E_{in}(g) \approx E_{out}(g)
    • 和算法A本身无关
    • 对输入的概率分布无关
    • 和目标函数无关

VC Dimension of Perceptron

  • 1D感知器,dvcd_{vc}为2
  • 2D感知器,dvcd_{vc}为3
  • dD感知器,dvcd_{vc}为d+1(可证)

Physical Intuition of VC Dimension

  • 假设集参数w=(w0,w1,,wd)\bold w = (w_0, w_1, \ldots, w_d)创建了自由度
  • 假设集的个数M=HM=|\mathcal H|类比了自由度
  • 假设集的强度dvc=d+1d_{vc}=d+1决定了有效的二元分类的自由度
  • 对M的分析可以等价替换为对dvcd_{vc}的分析
  • 选择一个合适的dvcd_{vc}十分重要

Interpreting VC Dimension

  • 对VC界限的一种思考:模型复杂度

    • 指定假设坏模式的概率为δ=4(2N)dvcexp(18ϵ2N)\delta=4(2N)^{d_{vc}}\exp(-\frac18\epsilon^2N)

    • 那么在概率下,我们可以根据泛化误差(Eout(g)Ein(g)8Nln(4(2N)dvcδ)|E_{out}(g)-E_{in}(g)| \le \sqrt{ \frac 8 N \ln (\frac {4(2N)^{d_{vc}}} {\delta})})来导出最坏上界:Eout(g)Ein(g)+8Nln(4(2N)dvcδ)E_{out}(g) \le E_{in}(g) + \sqrt{ \frac 8 N \ln (\frac {4(2N)^{d_{vc}}} {\delta})}

    • 后一项记为Ω(N,H,δ)\Omega(N,\mathcal H,\delta),称为对模式复杂性的惩罚项

    • Coursera - 机器学习基石 - 课程笔记 - Week 7

    • dvcd_{vc}上升,内误差会下降但模式复杂性会上升

    • dvcd_{vc}下降,模式复杂性会下降,但内误差会上升

    • 最佳的(外误差最小)dvcd_{vc}^\ast在中间位置

  • 另外一个说法:样本复杂度

    • 理论上需要万倍于dvcd_{vc}的数据量
    • 实际上,大约十倍于dvcd_{vc}的数据量可以满足误差要求
  • 很宽松

  • 在已知dvcd_{vc}的情况下,认知模型有多复杂,并估计需要多少的样本实现学习

相关文章: