1.2西瓜问题的版本空间
通过学习得到的模型对应了假设空间中的一个假设.于是,图1.2的西瓜版本空间给我们带来一个麻烦:现在有三个与训练集一致的假设,但与它们对应的模型在面临新样本的时候,却会产生不同的输出.例如,对(色泽:青绿;根蒂=蜷缩;敲声=沉闷)这个新收来的瓜,如果我们采用的是“好瓜Hf色泽:术)八(根蒂=蜷缩)八(敲声=木)”,那么将会把新瓜判断为好瓜,而如果采用了另外两个假设,则判断的结果将不是好瓜.那么,应该采用哪一个模型(或假设)呢?
若仅有表1.1中的训练样本,则无法断定上述三个假设中哪一个“更好”.然而,对于一个具体的学习算法而言,它必须要产生一个模型.这时,学习算法本身的“偏好”就会起到关键的作用.例如,若我们的算法喜欢“尽可能特殊”的模型,则它会选择“好瓜÷÷(色泽=术)八(根蒂=蜷缩)八(敲声:浊响)”;但若我们的算法喜欢“尽可能一般”的模型,并且由于某种原因它更“相信”根蒂,则它会选择“好瓜÷÷(色泽= *)八(根蒂=蜷缩)八(敲声:水)”.机器学习算法在学习过程中对某种类型假设的偏好,称为“归纳偏好”(inductive bias),或简称为,“偏好”.任何一个有效的机器学习算法必有其归纳偏好,否则它将被假设空间中看似在训练集上“等效”的假设所迷惑,而无法产生确定的学习结果,可以想象,如果没有偏好,我们的西瓜学习算法产生的模型每次在进行预测时随机抽选训练集上的等效假设,那么对这个新瓜“(色泽=青绿;根蒂:蜷缩;敲声:沉闷)”,学得模型时而告诉我们它是好的、时而告诉我们它是不好的,这样的学习结果显然没有意义.归纳偏好的作用在图1.3这个回归学习图示中可能更直观.这里的每个训练样本是图中的一个点(。,可),要学得一个与训练集一致的模型,相当于找到一条穿过所有训练样本点的曲线.