Lecture 5:Training versus Testing
参考:https://beader.me/mlnotebook/section2/vc-dimension-one.html
【概括】当M趋于无穷时,考虑如何去限制不等式右面 -> 考虑 增长函数 breakpoint
前四节汇总体系:
“什么时候机器学习是可行的”
两个关键问题:训练结果与测试结果类似、让错误足够小
假设集的大小很关键,同时解决两个问题很难
【关键】不等式
第m个方程遇到bad sample为事件,则遇到bad sample的概率为其所有方程遇到bad sample概率的联合概率。如果每个方程遇上bad sample这件事是互相独立的,则遇上bad sample的概率是各方程遇上bad sample的概率之和,因此他们的联合概率一定小于等于各个事件单独发生的概率之和。
但事实上bad event并不是完全独立的。想象两个非常类似的方程,他们遇到bad sample分别为事件与,因为这两个方程很接近,则往往发生时,也会发生,可以说与的重合度很高(overlapping)
考虑将h那么我们就会想,我们能不能把结果接近的那些方程看成一类,譬如有些方程他们的预测结果总是相同或是很接近的。
假设我们的算法要在平面上挑选一条直线方程作为,,当中有无限多个方程,但我们可以把这些个方程归为两类。一类是把判断成圈圈的,另一类是把判断为叉叉的。
不考虑共线的情况,从n个点的角度看,只有2的n次方种类的线
成长函数 (Growth Function)
在确定的情况下,growth function是一个与N相关的函数。用来替换M
下面是三种常见的成长函数:
当作用于有N个inputs的时,产生的dichotomies数量等于这N个点的排列组合数时,我们就称这N个inputs被给shatter掉了。或者也可以说产生的个dichotomies把这N个点的种排列组合给shatter了。
对于给定的成长函数,从出发,N慢慢增大,当增大到k时,出现产生的dichotomies数量小于于这N个点的排列组合数的情形,则我们说k是该成长函数的break point,对于任何个inputs而言,都没有办法再shatter他们。