机器学习回归算法总结

回归分析是研究自变量和因变量之间关系的一种预测模型技术。这些技术应用于预测,时间序列模型和找到变量之间关系。

  1. 线性回归
  2. 逻辑回归
  3. 多项式回归
  4. 逐步回归
  5. 岭回归
  6. Lasso回归
  7. ElasticNet回归

一、线性回归

参考原文:https://blog.csdn.net/liuzheng081/article/details/80857242
一元线性回归
这个方程对应的图像是一条直线,称作回归线。其中,𝜃1为回归线的斜率,𝜃0为回归线的截距。目标是拟合出一条直线。
需要使用到Cost Function(代价函数),代价函数越小,说明我们线性回归的越好,和训练数据拟合的越好。
常用代价函数是最小二乘法,以下是由来:

多元线性回归:
在这里插入图片描述
总结为矩阵形式在这里插入图片描述
寻找权重值 θ,使得对于每个样本ε(误差)值最小在这里插入图片描述
重点:误差是相对独立的而且具有相同的分布,服从均值为0方差为σ2的高斯分布!

所以我们将误差ε 带入高斯函数
在这里插入图片描述在这里插入图片描述
使用似然函数,来找到这些参数,使得跟我们的数据组合后恰好是真实值的最大可能性。

加入似然函数后如下
在这里插入图片描述
因为是一个连乘的结构,不好计算,我们在式子两边去对数,在不改变性质的情况下简化计算。
在这里插入图片描述
简化展开后如下
在这里插入图片描述
我们要使得上面的式子最大,则需要这式子最小。
在这里插入图片描述
最小二乘法为:
在这里插入图片描述
以上的推导就是线性回归这个损失函数的由来。
接下来我们要做的就是采用梯度下降法,迭代计算得到最终我们需要的一组θ

在这里插入图片描述
采用梯度下降法:
在这里插入图片描述在这里插入图片描述
当n=1时(一元):
在这里插入图片描述
当n>=1时:
在这里插入图片描述
线性回归的几个特点:

  1. 建模速度快,不需要很复杂的计算,在数据量大的情况下依然运行速度很快。
  2. 可以根据系数给出每个变量的理解和解释
  3. 对异常值很敏感

二、逻辑回归

参考:https://blog.csdn.net/program_developer/article/details/79113765
逻辑回归虽然名字中有“回归”,但实际却是一种分类学习方法,它将数据拟合到一个logit函数或者是logistic函数中,从而能够完成对事件发生的概率进行预测。
经典二分类算法
sigmoid函数
在这里插入图片描述
在这里插入图片描述
从函数图上可以看出,函数y=g(z)在z=0的时候取值为1/2,而随着z逐渐变小,函数值趋于0,z逐渐变大的同时函数值逐渐趋于1,而这正是一个概率的范围。所以我们定义线性回归的预测函数为Y=WTX,那么逻辑回归的输出Y= g(WTX),其中y=g(z)函数正是上述sigmoid函数(或者简单叫做S形函数)。这就是逻辑回归中的预测输出函数。
这个函数的作用说白了就是将线性值映射成概率值 。
总结:
1.在分类问题中使用的非常多。
2.逻辑回归因其应用非线性log转换方法,使得其不需要自变量与因变量之间有线性关系。
3.为防止过拟合和低拟合,我们应该确保每个变量是显著的。应该使用逐步回归方法去估计逻辑回归。
4.逻辑回归需要大样本量,因为最大似然估计在低样本量的情况下表现不好。
5.要求没有共线性。
6.如果因变量是序数型的,则称为序数型逻辑回归。
7.如果因变量有多个,则称为多项逻辑回归。

三、多项式回归

线性回归适合于线性可分的数据,当我们处理非线性可分的数据时可以使用多项式回归。在这种回归中,我们是要找到一条曲线来拟合数据点。

选择每个变量的确切的质数需要当前数据集合与最终输出的一些先验知识。下面描述了多项式回归:
在这里插入图片描述
多项式回归的特点:

  1. 能够拟合非线性可分的数据,更加灵活的处理复杂的关系
  2. 因为需要设置变量的指数,所以它是完全控制要素变量的建模
  3. 需要一些数据的先验知识才能选择最佳指数
  4. 如果指数选择不当容易出现过拟合

四、逐步回归

参考:https://blog.csdn.net/u012102306/article/details/52988660?depth_1-utm_source=distribute.pc_relevant.none-task&utm_source=distribute.pc_relevant.none-task
当我们要处理多个自变量时,我们就需要这个回归方法。在这个方法中选择变量都是通过自动过程实现的,不需要人的干预。

逐步回归变量一般是基于特定的标准加入或移除变量来拟合回归模型。一些常用的逐步回归方法如下:

1.标准逐步回归做两件事情。只要是需要每一步它都会添加或移除一些变量。

2.前进法是开始于最显著的变量然后在模型中逐渐增加次显著变量。

3.后退法是开始于所有变量,然后逐渐移除一些不显著变量。

4.这个模型技术的目的是为了用最少的变量去最大化模型的预测能力。它也是一种降维技术

五、 岭回归

当碰到数据有多重共线性时,我们就会用到岭回归。所谓多重共线性,简单的说就是自变量之间有高度相关关系。在多重共线性中,即使是最小二乘法是无偏的,它们的方差也会很大。通过在回归中加入一些偏差,岭回归酒会减少标准误差。

 ‘岭回归是一种专用于共线性数据分析的有偏估计回归方法,实质上是一种改良的最小二乘估计法,通过放弃最小二乘法的无偏性,以损失部分信息、降低精度为代价获得回归系数更为符合实际、更可靠的回归方法,对病态数据的拟合要强于最小二乘法。’ ---百度百科

岭回归是通过岭参数λ去解决多重共线性的问题。看下面的公式:
在这里插入图片描述
其中loss为损失函数,penalty为惩罚项。

重点
1.岭回归的假设与最小二乘法回归的假设相同除了假设正态性。
2.它把系数的值收缩了,但是不会为0.
3.正则化方法是使用了l2正则.

领回归的特点:

  1. 领回归的假设和最小平方回归相同,但是在最小平方回归的时候我们假设数据服从高斯分布使用的是极大似然估计(MLE),在领回归的时候由于添加了偏差因子,即w的先验信息,使用的是极大后验估计(MAP)来得到最终的参数
  2. 没有特征选择功能

六、 Lasso回归

Lesso与岭回归非常相似,都是在回归优化函数中增加了一个偏置项以减少共线性的影响,从而减少模型方程。不同的是Lasso回归中使用了绝对值偏差作为正则化项,Lasso回归可以表示成下面的式子:

岭回归和Lasso回归之间的差异可以归结为L1正则和L2正则之间的差异:
内置的特征选择(Built-in feature selection):这是L1范数很有用的一个属性,二L2范数不具有这种特性。因为L1范数倾向于产生系数系数。例如,模型中有100个系数,但其中只有10个系数是非零系数,也就是说只有这10个变量是有用的,其他90个都是没有用的。而L2范数产生非稀疏系数,所以没有这种属性。因此可以说Lasso回归做了一种参数选择形式,未被选中的特征变量对整体的权重为0。
稀疏性:指矩阵或向量中只有极少个非零系数。L1范数具有产生具有零值或具有很少大系数的非常小值的许多系数的属性。
计算效率:L1范数没有解析解,但L2范数有。这使得L2范数的解可以通过计算得到。L1范数的解具有稀疏性,这使得它可以与稀疏算法一起使用,这使得在计算上更有效率。

在这里插入图片描述
重点
1.其假设与最小二乘回归相同除了正态性。
2.其能把系数收缩到0,使得其能帮助特征选择。
3.这个正则化方法为l1正则化。
4.如果一组变量是高度相关的,lasso会选择其中的一个,然后把其他的都变为0.

七、ElasticNet回归

ElasticNet回归是Lasso回归和岭回归的组合。它会事先训练L1和L2作为惩罚项。当许多变量是相关的时候,Elastic-net是有用的。Lasso一般会随机选择其中一个,而Elastic-net则会选在两个。
在这里插入图片描述
与Lasso和岭回归的利弊比较,一个实用的优点就是Elastic-Net会继承一些岭回归的稳定性。

重点:
1.在选择变量的数量上没有限制
2.双重收缩对其有影响
3.除了这7个常用的回归技术,你也可以看看贝叶斯回归、生态学回归和鲁棒回归。

弹性回归网络的优点:

  1. 鼓励在高度相关变量的情况下的群体效应,而不像Lasso那样将其中一些置为0.当多个特征和另一个特征相关的时候弹性网络非常有用。Lasso倾向于随机选择其中一个,而弹性网络倾向于选择两个。
  2. 对所选变量的数量没有限制。
  • 4
    点赞
  • 63
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值