条件概率 条件分布 组合模型初探
我们已经学习了一系列不同的模型用于解决分类问题和回归问题。经常发现的一件事情是,我们可以通过某种方式将多个模型结合到一起的方法来提升性能,而不是独立地使用一个单独的模型。这个小节我们先来提纲挈领的讨论一下“组合模型”的思想方法,这种讨论可以给我们以启发,
(1)例如,我么可以训练 L 个不同的模型,然后使用每个模型给出的预测的平均值进行预测,这样的模型的组合有时被称为委员会(committee)。
(2)委员会方法的一个重要的变体,被称为提升方法(boosting),这种方法按顺序训练多个模型,其中 每一轮中用来训练一个特定模型的误差函数依赖于前一个模型的表现(也即每轮的调整策略由上一轮模型的表现决定)。与单一模型相比,这个模型可以对性能产生显著的提升。
(3)与对一组模型的预测求平均的方法不同,另一种形式的模型组合是 选择 一个模型进行预测,其中模型的选择是输入变量的一个函数(也即有输入变量决定选择什么模型)。因此不同的模型用于对输入空间的不同的区域(特征维度切面)进行预测。这种方法的一种广泛使用的框架被称为 决策树(decision tree) ,其中选择的过程可以被描述为一个二值选择的序列,对应于对树结构的遍历。这种情况下,各个单独的模型通常被选得非常简单,整体的模型灵活性产生于 与输入相关的选择过程 。决策树既可以应用于分类问题也可以应用于回归问题。
决策树的一个局限性是对于输入空间的划分基于的是一种硬划分,对于输入变量的任意给定的值,只有一个模型用于做出预测。通过将一个概率框架用于模型组合,决策过程可以被软化,例如,如果我们有一组 K 个模型用于描述条件概率分布 ,其中 是输入变量, 是目标变量, 是模型的索引,那么我们可以进行一种概率形式的混合,形式为: ,其中 表示与输入相关的混合系数。这样的模型可以被看成 混合概率模型 ,其中分量的概率密度以及混合系数都以输入变量为条件,被称为专家混合(mixture of experts)
构建一个委员会的最简单的方法是对一组独立的模型的预测取平均,这样的方法非常符合概率统计的思想,它综合考虑了偏置和方差之间的折中,它将模型的误差分解为:
1. 偏置分量:产生于模型和真实的需要预测的函数之间的差异; 2. 方差分量:表示模型对于单独的数据点的敏感性;
当然,在实际的应用中,我们只有一个单独的数据集,因此我们必须寻找一种方法来表示委员会中不同模型之间的变化性。一种方法是使用自助(boostrap)数据集。
考虑一个回归问题,其中我们试图预测一个连续变量的值,并且假设我们生成了 M 个自助数据集然后使用每个数据集训练出了预测模型的一个独立的副本 ,其中 。委员会预测为:
这个方法被称为自助聚集(boostrap aggregation)或者打包(bagging)
假设我们试图预测的真实的回归函数为 ,从而每个模型的输出可以写成真实值加上误差的形式,即:
这样,平方和误差函数的形式为: ,其中 表示关于输入变量 的一个频率期望。于是,各个模型独立预测的平均误差为:
类似地,委员会方法的预测的期望误差为:
如果我们假设误差的均值为零,且不具有相关性,即: ,那么我们有:
这个结果表明:
一个模型的平均误差可以仅仅通过对模型的M个版本求平均的方法减小M倍。这看起来是一个非常牛逼的事情,但不幸的是,它依赖于我们的关键假设,即由各个单独的模型产生的误差是不相关的,但是在实际应用中,各个模型之间的误差通常是“高度相关的”,因此整体的误差下降是通常很小的。 然后,可以证明,委员会误差的期望不会超过各个分量模型的期望误差,即Ecom <= Eav
我就为了这个更新了~比上一版9