90年代初,Vapnik and A. Chervonenkis提出了支持向量机(Support vector machines, SVM)和VC(Vapnik-Chervonenkis)维数的概念。
结合上次所说的,我们可以得到如下式子:
Ein(g)与Eout(g)之差足够小,即大于一个阈值e(该希腊字母不好显示,暂用e代替)的几率小于右边的式子,这就是我们想要的hypothesis。
我们令Ein(g)与Eout(g)之差大于阈值e为一个事件,该事件(坏事情–我们不太希望看到的事情)发生的几率足够小,及好事情发生的机会足够大。式子如下:
经化简我们可以得到:
上式为Eout的信赖区间,当然我们更关注的是Eout的上限即右边式子:
该式子的函数图:
从上述函数图我们可以得到:
当dvc增大时,Ein逐渐减少,模型复杂度(hypothesis复杂度)逐渐变大;
当dvc减小时,模型复杂度也变小,但Ein变大
当dvc=dvc*时,能得到Eout最小,这是我们想要的。
由此我们可以得到:
要设计一个好的机器学习算法时,不是Ein越小越好,而是结合成本考虑,达到一个平衡才是最好的。
上面讲了这么多,那该式子有什么应用呢?
举个例子:给定e,dvc,…我们可以估计所需要的样本量。