回归树顾名思义,就是回归算法 + 二叉树模型

回归

这个算法来自于农业致富。张麻子今年计划养猪,买了种猪还要买饲料,但是头疼的就是不知道饲料应该买多少。焦头烂额的他去网上找了找,发现猪吃多少和体重有关,比如100斤的猪要吃100斤的饲料,所以,用种猪体重的均值即可预测要吃多少饲料。

分类

但是是个人就知道,这样预测难免过于粗糙,他转眼一想,可不可以将猪的体重分类统计呢?假设先分为两组,100斤以下的猪平均要吃80斤,100斤以上的平均要吃110斤。这样就可以根据种猪中两组体重的猪的数量进行预测了。

最佳分割点

如果说可以按照100斤为界线进行分类统计,那同样可以根据90斤或者110斤进行分类统计,它们统计出来的结果有什么区别呢?不知道,不知道就做了再说。

张麻子为了简化计算,以50斤和200斤为界限,10斤为步长,对每一种分割点进行计算,找出它们之中MSE损失函数最小的作为最佳分割点

多特征

张麻子还觉得不稳,他发现种猪吃多少不仅跟体重有关,还跟品种有关(品种用毛色的深浅来度量)。

在刚刚体重最佳分割点的基础上,将种猪分为A、B两组。再根据毛色特征分别计算A、B两组内毛色的最佳分割点。最后就得到了2^2=4组。

这样就更精确了。这种分治的思想是不是有点像二叉树结构,1分为2,2分为4…

原来回归树就是用树形结构求解回归问题。

需要注意几个问题:

  • 树分裂的终止条件。1. 当分裂之后数据不纯度的减小量达到阈值时(也就是再分裂不能有效显著提高精度了);2. 树的深度达到了事先设定的预定值(如果有的话)。
  • 有个弊端就是这是贪心算法,不一定能保证达到全局最优。