回归是统计学中最有力的工具之一,机器学习监督学习算法分为分类算法和回归算法两种。回归算法用于连续型分布预测,可以预测连续型数据而不仅仅是离散的类别标签。
回归分析在机器学习领域得到广泛应用,例如预测商品销量、交通流量、房价以及天气情况等
回归算法是一种常用的机器学习算法,用于建立自变量X和因变量Y之间的关系。从机器学习的角度来看,它用于构建一个算法模型(函数),以实现属性X和标签Y之间的映射关系。在学习过程中,该算法试图找到最佳的参数关系,以使拟合程度最好
在回归算法中,算法(函数)的最终结果是一个连续的数据值。输入值(属性值)是一个d维度的属性/数值向量
一些常用的回归算法包括线性回归、多项式回归、决策树回归、Ridge回归、Lasso回归、ElasticNet回归等等
本文将介绍一些常见的回归算法,以及它们各自的特点
线性回归通常是人们学习机器学习和数据科学的第一个算法。线性回归是一种线性模型,它假设输入变量 (X) 和单个输出变量 (y) 之间存在线性关系。一般来说,有两种情况:
单变量线性回归是一种建模方法,用于分析单个输入变量(即单个特征变量)与单个输出变量之间的关系
多变量线性回归(也称为多元线性回归):它对多个输入变量(多个特征变量)和单个输出变量之间的关系进行建模。
当我们想要为非线性可分数据创建模型时,多项式回归是最受欢迎的选择之一。它类似于线性回归,但使用变量 X 和 y 之间的关系来找到绘制适合数据点的曲线的最佳方法。
支持向量机在分类问题中是众所周知的。SVM 在回归中的使用称为支持向量回归(SVR)。Scikit-learn在 SVR()中内置了这种方法。
决策树是一种用于分类和回归的非参数监督学习方法。目标是创建一个模型,通过学习从数据特征推断出的简单决策规则来预测目标变量的值。一棵树可以看作是一个分段常数近似。
随机森林回归与决策树回归基本上非常相似。它是一种元估计器,可以在数据集的各个子样本上拟合多个决策树,并通过平均来提高预测准确性和控制过拟合
随机森林回归器在回归问题中的表现可能会优于决策树,也可能不如决策树(尽管在分类问题中通常更好),这是由于树构造算法本身存在微妙的过拟合和欠拟合的权衡
LASSO回归是一种变体的收缩线性回归。收缩是将数据值收缩到中心点作为平均值的过程。这种回归类型非常适用于具有严重多重共线性(特征之间高度相关)的模型
岭回归(Ridge regression)和LASSO回归非常相似,因为这两种技术都采用了收缩方法。Ridge和LASSO回归都非常适用于具有严重多重共线性问题(即特征之间高度相关)的模型。它们之间的主要区别在于Ridge使用L2正则化,这意味着没有一个系数会像LASSO回归中那样变为零(而是接近零)
ElasticNet 是另一个使用 L1 和 L2 正则化训练的线性回归模型。它是 Lasso 和 Ridge 回归技术的混合体,因此它也非常适合显示重度多重共线性(特征相互之间高度相关)的模型。
在权衡Lasso和Ridge之间时,一个实际的优势是Elastic-Net可以在旋转下继承Ridge的一些稳定性
XGBoost 是梯度提升算法的一种高效且有效的实现。梯度提升是一类可用于分类或回归问题的集成机器学习算法
XGBoost是一个开源库,最初由陈天奇在他于2016年的论文《XGBoost: A Scalable Tree Boosting System》中开发。该算法的设计旨在具有高效和效率的计算能力
在局部加权线性回归(Local Weights Linear Regression)中,我们也是在进行线性回归。然而,与普通线性回归不同的是,局部加权线性回归是一种局部线性回归方法。它通过引入权值(核函数),在进行预测时,只使用与测试点相近的部分样本来计算回归系数。普通线性回归则是全局线性回归,它使用全部的样本来计算回归系数
优点就是通过核函数加权来预防欠拟合,缺点也很明显K需要调试。当多元线性回归过拟合的时候,可以尝试高斯核局部加权来预防过拟合。
使用贝叶斯推断方法求解的线性回归模型被称为贝叶斯线性回归
贝叶斯线性回归是一种将线性模型的参数视为随机变量的方法,并通过先验计算后验。贝叶斯线性回归可以通过数值方法求解,在特定条件下也可以得到解析形式的后验或相关统计量
贝叶斯线性回归具有贝叶斯统计模型的基本性质,可以求解权重系数的概率密度函数,进行在线学习以及基于贝叶斯因子(Bayes factor)的模型假设检验
贝叶斯回归的优点在于其具有数据自适应能力,可以重复利用数据并防止过度拟合。在估计过程中,可以引入正则化项,例如在贝叶斯线性回归中引入L2正则化项,就可以实现贝叶斯岭回归
缺点就是学习过程开销太大。当特征数在10个以为,可以尝试贝叶斯回归。
以上是常用的回归算法及其特点在机器学习中的应用的详细内容。更多信息请关注PHP中文网其他相关文章!