1. 维数灾难
随着维度的增加,分类器性能逐步上升,到达某点之后,其性能便逐渐下降。
有⼀系列的图片,每张图片的内容可能是猫也可能是狗;我们需要构造⼀个分类器能够对猫、狗自
动的分类。首先,要寻找到⼀些能够描述猫和狗的特征,这样我们的分类算法就可以利用这些特征
去识别物体。猫和狗的皮毛颜色可能是⼀个很好的特征,考虑到红绿蓝构成图像的三基色,因此用
图片三基色各自的平均值称得上方便直观。这样就有了⼀个简单的Fisher分类器:
If 0.5*red + 0.3*green + 0.2*blue > 0.6 : return cat;
else return dog;
使用颜色特征可能无法得到⼀个足够准确的分类器,如果是这样的话,我们不妨加入⼀些诸如图像
纹理(图像灰度值在其X、Y方向的导数dx、dy),就有5个特征(Red、Blue、Green、dx、dy)来设计
我们的分类器: 也许分类器准确率依然无法达到要求,加入更多的特征,比如颜色、纹理的统计
信息等等,如此下去,可能会得到上百个特征。那是不是我们的分类器性能会随着特征数量的增加
而逐步提高呢?答案也许有些让⼈沮丧,事实上,当特征数量达到⼀定规模后,分类器的性能是在
下降的。 随着维度(特征数量)的增加,分类器的性能却下降了 。
假设猫和狗图片的数量是有限的(样本数量总是有限的),假设有10张图片,接下来就用这仅有的10
张图片来训练我们的分类器。
单一特征的分类器,在训练集上表现并不好。
增加⼀个特征,比如绿色&