(第四次)回归与决策树
在大数据分析与计算的广阔天地里,回归和决策树是两颗璀璨的明星,它们在数据挖掘、机器学习等诸多领域都有着广泛且关键的应用。今天,我们就沿着思维导图的脉络,深入探寻回归与决策树的奥秘。
一、回归章
回归分析是一种用于研究变量之间关系的统计方法,主要目的是通过已知的自变量来预测因变量的数值。
(一)线性回归
线性回归是回归分析中最基础也最常用的一种,它假设自变量和因变量之间存在线性关系。
- 模型拟合
要建立线性回归模型,就需要进行模型拟合,找到最能代表数据趋势的线性方程。这时候,最小二乘法就派上了大用场。简单来说,最小二乘法就是通过最小化实际值与预测值之间的误差平方和,来确定线性方程中的系数。比如,我们有一组关于房屋面积和房价的数据,用最小二乘法就能找到一条直线,使得所有房屋面积对应的实际房价与这条直线预测的房价之间的误差平方和最小,这样的直线就是我们的线性回归模型。 - 求解方法
除了最小二乘法,还有其他求解线性回归模型的方法。正规方程法是直接通过求导等数学运算,从理论上推导出模型系数的解析解。而梯度下降法则是一种迭代优化的方法,它就像在一座山上找最低点,每次朝着误差下降最快的方向(梯度的反方向)迈一小步,不断迭代,直到找到最优的模型系数。对于数据量很大的情况,梯度下降法通常比正规方程法更高效。
(二)逻辑回归
逻辑回归虽然名字里有 “回归”,但它实际上是一种分类算法,主要用于二分类问题,比如判断一封邮件是垃圾邮件还是正常邮件。
- 逻辑函数
逻辑回归之所以能用于分类,是因为它引入了逻辑函数(也叫 Sigmoid 函数)。这个函数的形状是一个 S 型曲线,它可以将线性回归得到的结果映射到 0 到 1 之间的概率值。比如,当我们用逻辑回归判断邮件是否为垃圾邮件时,逻辑函数会输出一个 0 到 1 之间的数,这个数可以理解为该邮件是垃圾邮件的概率,若概率大于 0.5,就判断为垃圾邮件,否则为正常邮件。 - 二分类
在二分类过程中,需要确定决策规则,也就是根据什么来判断样本属于哪一类,像刚才提到的概率阈值 0.5 就是一种决策规则。同时,还需要定义损失函数,损失函数用来衡量模型预测的好坏,通过最小化损失函数,来优化逻辑回归模型的参数,使得模型的分类效果更好。
二、决策树章
决策树是一种树形结构的分类或回归模型,它通过对数据特征的逐步判断,最终得出分类或回归的结果,就像我们做决策时,一步步思考判断一样。
(一)特征划分
在构建决策树时,首先要解决的是如何选择特征进行划分,也就是每次在树的节点上,选择哪个特征来将数据分成不同的子集。
- 信息增益
信息增益是一种常用的特征选择指标。它基于信息论中的熵(熵是用来衡量数据不确定性的指标,熵越大,不确定性越高)。信息增益的计算是用父节点的熵减去子节点的加权熵,信息增益越大,说明用该特征划分后,数据的不确定性降低得越多,这个特征就越适合用来划分。例如,在判断动物种类时,“是否有羽毛” 这个特征如果能让数据的不确定性大幅降低,那它的信息增益就大,会被优先选择。 - 信息增益比
不过,信息增益存在偏向于选择取值较多的特征的问题,信息增益比则可以纠正这个偏差。它是用信息增益除以特征本身的熵,这样能更公平地选择特征。 - 基尼指数
基尼指数也是用于特征划分的指标,它衡量的是数据的不纯度,基尼指数越小,数据的纯度越高。在选择特征时,会选择使划分后基尼指数下降最多的特征。
(二)特征选择
除了上述基于特征划分指标的方法,还有其他特征选择的策略。
- 过滤式方法:是先对特征进行过滤,选择出符合一定条件的特征,然后再训练模型。比如,通过计算特征与目标变量的相关系数,选择相关系数高的特征。
- 包裹式方法:则是把特征选择和模型训练结合起来,将特征子集的选择看作一个优化问题,用模型的性能来评价特征子集的好坏。
- 嵌入式方法:是在模型训练的过程中同时进行特征选择,比如一些正则化的线性模型,在训练时会自动对不重要的特征进行惩罚,使其系数变为 0,从而实现特征选择。
(三)树构建
决策树的构建主要包括树的生成和树的剪枝两个部分。
- 树的生成
树的生成是从根节点开始,不断选择特征进行划分,生成子节点,直到满足停止条件(比如所有样本都属于同一类,或者没有更多特征可划分等)。常见的树的生成算法有:
ID3 算法:它主要使用信息增益来选择特征,只能处理离散型特征,并且不能处理缺失值。
C4.5 算法:是对 ID3 算法的改进,它使用信息增益比来选择特征,既可以处理离散型特征,也可以处理连续型特征,还能处理缺失值。
CART 算法:既可以用于分类,也可以用于回归。在分类时,使用基尼指数选择特征;在回归时,使用平方误差等指标。CART 生成的是二叉树,每个节点最多有两个子节点。 - 树的剪枝
树的生成过程可能会导致决策树过于复杂,出现过拟合现象(也就是对训练数据拟合得很好,但对新数据的预测效果很差)。这时候就需要进行树的剪枝,剪枝分为:
- 预剪枝:在树的生成过程中,提前判断是否需要继续划分,如果划分后模型的性能提升不明显,就停止划分,从而避免生成过于复杂的树。
- *后剪枝:是在生成完整的决策树之后,再从下往上判断每个子树是否有必要存在,如果将子树替换成一个叶节点后,模型的性能没有下降甚至提升,就进行剪枝。后剪枝通常能得到泛化能力更好的决策树,但计算成本更高。
三、总结
回归和决策树在大数据分析与计算中都有着不可替代的作用。回归主要用于数值型数据的预测,帮助我们了解变量之间的线性或非线性关系;决策树则通过树形结构,直观地对数据进行分类或回归,易于理解和解释。无论是特征选择、模型拟合还是树的构建与剪枝,这些技术都是为了让我们能从海量的数据中挖掘出有价值的信息,为决策提供有力的支持。随着大数据技术的不断发展,回归和决策树也在不断地演进和优化,在更多的领域发挥着重要的作用。