目录
Support Vector Machine (1) : 简单SVM原理
Support Vector Machine (2) : Sequential Minimal Optimization
Support Vector Machine (3) : 再谈泛化误差(Generalization Error)
Support Vector Machine Python 代码实现
Support Vector Machine(3) : 再谈量化误差(Generalization Error)
在SVM第一节中我们有简单涉及到泛化误差这个概念。在SVM中,使得Margin最大的解即为使泛化误差最小。那么泛化误差到底是什么,为什么Margin最大时泛化误差就最小?下面我们来探究一下。
什么是泛化误差?Wiki给出这样一个描述:generalization error (also known as the out-of-sample error) is a measure of how accurately an algorithm is able to predict outcome values for previously unseen data. 意思就是泛化误差使用来描述一个在训练集上训练得到的模型(算法)对训练集以外的数据的预测准确度。这里用一个简单的例子来描述一下,假设学校要选出一个水平最高的同学去参加全国的物理竞赛(问题),那么我们需要有一个过程来选拔(训练)。这时候学校老师出了一张包含20道物理题的试卷(训练集)给大家做,得分最高的同学(Model)选为参加全国物理竞赛的选手(Decision Rule)。但是这一次得分最高的是否就代表全校最高水平呢?那肯定不一定,没准他恰好做过其中的19道题,然而实际水平并没有这么高,其他的物理题都不会做;如果是这种情况的话,我们就说泛化误差比较大。如果这次考核真的选出了最高水平的学生,那么我们就说泛化误差比较小。泛化误差大概就是这么一个东西。