十种常见的回归算法总结和介绍

网站建设3年前发布
41 00

线性回归是机器学习中最简单的算法,它可以通过不同的方式进行训练。 在本文中,我们将介绍以下回归算法:线性回归、Robust 回归、Ridge 回归、LASSO 回归、Elastic Net、多项式回归、多层感知机、随机森林回归和支持向量机。除此以外,本文还将介绍用于评估回归模型的最常用指标,包括均方误差 (MSE)、均方根误差 (RMSE) 和平均绝对误差 (MAE)。,十种常见的回归算法总结和介绍,下一步将创建一些简单的图表来检查数据。 进行EDA将帮助我们熟悉数据和获得数据的信息,尤其是对回归模型影响最大的异常值。,查看数据集的描述,十种常见的回归算法总结和介绍,我们将从训练一个线性回归模型开始,训练之前需要确定数据的特征和目标,训练的特征的 X ,目标变量的 y ,在本例中我们的目标为 Price 列。,之后,将数据分成训练集和测试集。 我们将在训练集上训练我们的模型,然后使用测试集来评估模型。,为了评估回归模型还创建了一些辅助函数。,对于线性回归而言,一般都会有以下的假设:,线性假设:线性回归假设输入和输出之间的关系是线性的。所以可能需要转换数据以使关系线性化(例如,指数关系的对数转换)。,去除噪音:线性回归假设您的输入和输出变量没有噪声。这对于输出变量最重要,如果可能希望删除输出变量 (y) 中的异常值。,去除共线性:当具有高度相关的输入变量时,线性回归将会过拟合。需要将输入数据进行相关性计算并删除最相关的。,高斯分布:如果输入和输出变量具有高斯分布,线性回归将会做出更可靠的预测。对于分布的转换可以对变量使用变换(例如 log 或 BoxCox)以使它们的分布看起来更像高斯分布。,对数据进行处理:使用标准化或归一化重新调整输入变量,线性回归通常会做出更可靠的预测。,下面我们开始进行回归回归算法的示例,有了第一个模型,那么就要知道评价模型的指标,以下是回归问题的三个常见评估指标:,平均绝对误差 (MAE) 是误差绝对值的平均值:,十种常见的回归算法总结和介绍,均方误差 (MSE) 是均方误差的平均值:,十种常见的回归算法总结和介绍,均方根误差 (RMSE) 是均方误差的平方根:,十种常见的回归算法总结和介绍,这三个指标中:,这些都是损失函数,我们的训练目标就是最小化他们。,Robust回归是一种回归分析形式,它的目标是克服传统参数和非参数方法的一些局限性,旨在不受基础数据生成过程违反回归假设的过度影响。,当数据包含异常值时,则会考虑Robust回归。 在存在异常值的情况下,最小二乘估计效率低下并且可能存在偏差。 因为最小二乘预测被拖向离群值,并且因为估计的方差被人为夸大,结果是离群值可以被掩盖了。,随机样本共识 (RANSAC) 是一种迭代方法,它从一组观察到的包含异常值的数据中估计数学模型的参数,而异常值不会对估计值产生影响。 因此它也可以理解为一种异常值检测方法。,一个基本的假设是,数据由“内值”和“异常值”组成,“内值”即数据的分布可以用一组模型参数来解释,但可能受噪声影响,“异常值”是不符合模型的数据。RANSAC还假设,给定一组(通常很小)内点,存在一个程序可以估计模型的参数,以最优地解释或拟合该数据。,Ridge回归通过对系数的大小施加惩罚来解决普通最小二乘法的一些问题。 Ridge系数最小化惩罚残差平方和,十种常见的回归算法总结和介绍,alpha >= 0 是控制收缩量的复杂性参数:alpha 值越大,收缩量越大,因此系数对共线性的鲁棒性更强。,Ridge回归是一个 L2 惩罚模型。 将权重的平方和添加到最小二乘成本函数。,LASSO 回归是一种估计稀疏系数的线性模型。 在数学上,它由一个用 L1 先验作为正则化器训练的线性模型组成。 最小化的目标函数是:,十种常见的回归算法总结和介绍,Elastic Net 使用 L1 和 L2 先验作为正则化器进行训练。 这种组合允许学习一个稀疏模型,其中很少有像 Lasso 那样的非零权重,同时仍然保持 Ridge 的正则化属性。,当多个特征相互关联时,Elastic Net络很有用。 Lasso 可能会随机选择关联特征其中之一,而 Elastic Net 可能会同时选择两者。 Elastic Net最小化的目标函数是:,机器学习中的一种常见模式是使用在数据的非线性函数上训练的线性模型。 这种方法保持了线性方法通常快速的性能,同时允许它们适应更广泛的数据。,可以通过从系数构造多项式特征来扩展简单的线性回归。 在标准线性回归中,可能有一个看起来像这样的二维数据模型:,十种常见的回归算法总结和介绍,如果我们想对数据拟合抛物面而不是平面,我们可以将特征组合成二阶多项式,使模型看起来像这样:,十种常见的回归算法总结和介绍,这仍然是一个线性模型:那么如果我们创建一个新的变量,十种常见的回归算法总结和介绍,通过重新标记数据,那么公式可以写成,十种常见的回归算法总结和介绍,可以看到到生成的多项式回归属于上面的同一类线性模型(即模型在 w 中是线性的),并且可以通过相同的技术求解。 通过考虑使用这些基函数构建的高维空间内的线性拟合,该模型可以灵活地拟合更广泛的数据范围。,梯度下降是一种非常通用的优化算法,能够为各种问题找到最佳解决方案。 梯度下降的一般思想是迭代地调整参数以最小化成本函数。 梯度下降测量误差函数相对于参数向量的局部梯度,它沿着梯度下降的方向前进。 一旦梯度为零,就达到了最小值。,多层感知机相对于简单回归任务的好处是简单的线性回归模型只能学习特征和目标之间的线性关系,因此无法学习复杂的非线性关系。 由于每一层都存在激活函数,多层感知机有能力学习特征和目标之间的复杂关系。,十种常见的回归算法总结和介绍,以上就是我们常见的10个回归算法,下面看看结果的对比,十种常见的回归算法总结和介绍,十种常见的回归算法总结和介绍,可以看到,虽然本例的差别很小(这是因为数据集的原因),但是每个算法还是有细微的差别的,我们可以根据不同的实际情况选择表现较好的算法。,在本文中,我们介绍了机器学习中的常见的线性回归算法包括:

© 版权声明

相关文章