提升是通过拟合一系列小模型来构建较大的加法神经网络模型的过程。每个小模型在前一个模型经过尺度统一的残差的基础上进行拟合。然后所有模型组合在一起构成一个较大的最终模型。该过程可使用验证来评估要拟合多少个组件模型,但不超过指定的数目。
提升往往比拟合单个大模型要快。但是,基本模型应该为 1 到 2 个节点的单层模型,否则若是指定了大量模型,拟合较快的优势就会丧失。
使用“模型启动”控制面板中的“提升”面板可指定组件模型数和学习率。使用“模型启动”控制面板中的“隐藏层结构”面板可指定基本模型的结构。
学习率必须为 0 < r ≤ 1。学习率接近 1 会导致最终模型收敛更快,但是也更容易过度拟合数据。当指定小的“模型数”时,可以使用接近 1 的学习率。
接下来我们举例说明提升的工作原理:假定您指定的基本模型包含一层和两个节点,并且模型数等于 8。第一步先要拟合一个单层两节点模型。将该模型的预测值以学习率来统一尺度,然后从实际值中减去预测值以构成尺度统一的残差。第二步则是拟合另一个单层两节点模型,其中的响应值是上一步中模型的尺度统一的残差。该过程会一直持续到拟合了 8 个模型为止,或一直持续到增加另一个模型却不能使验证统计量更好为止。最后,所有组件模型组合在一起构成一个大的最终模型。在本例中,若停止之前拟合了 6 个模型,则最终模型包含一层和 2 x 6 = 12 个节点。
警告:您无法在两层神经网络中使用提升。若在第二层中指定任何非零值并且还指定了提升,则忽略第二层。