简单介绍树回归的算法原理
线性回归方法可以有效的拟合所有样本点(局部加权线性回归除外)。当数据拥有众多特征并且特征之间关系十分复杂时,构建全局模型的想法一个是困难一个是笨拙。此外,实际中很多问题为非线性的,例如常见到的分段函数,不可能用全局线性模型来进行拟合。
树回归将数据集切分成多份易建模的数据,然后利用线性回归进行建模和拟合。
构建回归树算法伪代码:
寻找当前最佳待切特征和特征值并返回
如果当前最佳特征没有找到,不可切分,则把当前结点的数据均值作为叶节点
否则用最佳特征和特征值构建当前结点
切分后的左右节点分别递归以上算法
寻找最佳特征算法伪代码:
如果该数据集的特征值只有一种,不可切分,返回当前结点的数据均值作为特征值
否则重复一下步骤直到找到最小总方差
遍历每一列
遍历每列的值
用该值切分数据
计算总方差
如果总方差差值小于最初设定的阈值,不可切分
如果左右样本数小于最初设定的阈值,不可切分
否则返回最佳特征和最佳特征值。
需要输入的参数有:数据集,叶节点模型函数(均值),误差估计函数(总方差),允许的总方差最小下降值,节点最小样本数。