常见的七种回归技术

2024-06-23 13:08
文章标签 技术 常见 回归 七种

本文主要是介绍常见的七种回归技术,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

介绍


      根据受欢迎程度,线性回归和逻辑回归经常是我们做预测模型时,且第一个学习的算法。但是如果认为回归就两个算法,就大错特错了。事实上我们有许多类型的回归方法可以去建模。每一个算法都有其重要性和特殊性。

内容


1.什么是回归分析?

2.我们为什么要使用回归分析?

3.回归有哪些类型 ?

4.线性回归

5.逻辑回归

6.多项式回归

7.逐步回归

8.岭回归

9.Lasso回归

10.ElasticNet回归

什么是回归分析?


       回归分析是研究自变量和因变量之间关系的一种预测模型技术。这些技术应用于预测,时间序列模型和找到变量之间关系。例如可以通过回归去研究超速与交通事故发生次数的关系。

我们为什么要用回归分析?


     这里有一些使用回归分析的好处:它指示出自变量与因变量之间的显著关系;它指示出多个自变量对因变量的影响。回归分析允许我们比较不同尺度的变量,例如:价格改变的影响和宣传活动的次数。这些好处可以帮助市场研究者/数据分析师去除和评价用于建立预测模型里面的变量。

回归有哪些类型?


      我们有很多种回归方法用预测。这些技术可通过三种方法分类:自变量的个数、因变量的类型和回归线的形状。

1.线性回归

       线性回归可谓是世界上最知名的建模方法之一,也是应该是我们第一个接触的模型。在模型中,因变量是连续型的,自变量可以使连续型或离散型的,回归线是线性的。

线性回归用最适直线(回归线)去建立因变量Y和一个或多个自变量X之间的关系。可以用公式来表示:

Y=a+b*X+e

a为截距,b为回归线的斜率,e是误差项。


      简单线性回归与多元线性回归的差别在于:多元线性回归有多个(>1)自变量,而简单线性回归只有一个自变量。到现在我们的问题就是:如何找到那条回归线?

      我们可以通过最小二乘法把这个问题解决。其实最小二乘法就是线性回归模型的损失函数,只要把损失函数做到最小时得出的参数,才是我们最需要的参数。


我们一般用决定系数(R方)去评价模型的表现。

重点

1.自变量与因变量之间必须要有线性关系

2.多重共线性、自相关和异方差对多元线性回归的影响很大。

3.线性回归对异常值非常敏感,其能严重影响回归线,最终影响预测值。

4.在多元的自变量中,我们可以通过前进法,后退法和逐步法去选择最显著的自变量。

2.逻辑回归

逻辑回归是用来找到事件成功或事件失败的概率。当我们的因变量是二分类(0/1,True/False,Yes/No)时我们应该使用逻辑回归。


重点

1.在分类问题中使用的非常多。

2.逻辑回归因其应用非线性log转换方法,使得其不需要自变量与因变量之间有线性关系。

3.为防止过拟合和低拟合,我们应该确保每个变量是显著的。应该使用逐步回归方法去估计逻辑回归。

4.逻辑回归需要大样本量,因为最大似然估计在低样本量的情况下表现不好。

5.要求没有共线性。

6.如果因变量是序数型的,则称为序数型逻辑回归。

7.如果因变量有多个,则称为多项逻辑回归。

3.多项式回归

如果一个回归,它的自变量指数超过1,则称为多项式回归。可以用公式表示:

y = a + b * x^2

在这个回归技术中,最适的线不是一条直线,而是一条曲线。


重点

1.很多情况下,我们为了降低误差,经常会抵制不了使用多项式回归的诱惑,但事实是,我们经常会造成过拟合。所以要经常的把数据可视化,观察数据与模型的拟合程度。

2.特别是要看曲线的结尾部分,看它的形状和趋势是否有意义。高的多项式往往会产生特别古怪的预测值。

4.逐步回归

      当我们要处理多个自变量时,我们就需要这个回归方法。在这个方法中选择变量都是通过自动过程实现的,不需要人的干预。

      这个工程是通过观察统计值,比如判定系数,t值和最小信息准则等去筛选变量。逐步回归变量一般是基于特定的标准加入或移除变量来拟合回归模型。一些常用的逐步回归方法如下:

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

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

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

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

5.岭回归

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

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

      岭回归是通过岭参数λ去解决多重共线性的问题。看下面的公式:


     其中loss为损失函数,penalty为惩罚项。

重点

1.岭回归的假设与最小二乘法回归的假设相同除了假设正态性。

2.它把系数的值收缩了,但是不会为0.

3.正则化方法是使用了l2正则.

6.LASSO回归

       和岭回归类似,Lasso(least Absolute Shrinkage and Selection Operator)也是通过惩罚其回归系数的绝对值。看下面的公式:


       Lasso回归和岭回归不同的是,Lasso回归在惩罚方程中用的是绝对值,而不是平方。这就使得惩罚后的值可能会变成0.

重点

1.其假设与最小二乘回归相同除了正态性。

2.其能把系数收缩到0,使得其能帮助特征选择。

3.这个正则化方法为l1正则化。

4.如果一组变量是高度相关的,lasso会选择其中的一个,然后把其他的都变为0.

7.ElasticNet回归

      ElasticNet回归是Lasso回归和岭回归的组合。它会事先训练L1和L2作为惩罚项。当许多变量是相关的时候,Elastic-net是有用的。Lasso一般会随机选择其中一个,而Elastic-net则会选在两个。


      与Lasso和岭回归的利弊比较,一个实用的优点就是Elastic-Net会继承一些岭回归的稳定性。

重点

1.在选择变量的数量上没有限制

2.双重收缩对其有影响

3.除了这7个常用的回归技术,你也可以看看贝叶斯回归、生态学回归和鲁棒回归。

如何去选择回归模型


      面对如此多的回归模型,最重要的是根据自变量因变量的类型、数据的维数和其他数据的重要特征去选择最合适的方法。以下是我们选择正确回归模型时要主要考虑的因素:

1.数据探索是建立预测模型不可或缺的部分。它应该是在选择正确模型之前要做的。

2.为了比较不同模型的拟合程度,我们可以分析不同的度量,比如统计显著性参数、R方、调整R方、最小信息标准、BIC和误差准则。另一个是Mallow‘s Cp准则。

3.交叉验证是验证预测模型最好的方法。你把你的数据集分成两组:一组用于训练,一组用于验证。

4.如果你的数据集有许多让你困惑的变量,你就不应该用自动模型选择方法,因为你不想把这些变量放在模型当中。

5.不强大的模型往往容易建立,而强大的模型很难建立。

6.回归正则方法在高维度和多重共线性的情况下表现的很好。

参考


http://www.analyticsvidhya.com/blog/2015/08/comprehensive-guide-regression/



文/成鹏9(简书作者)
原文链接:http://www.jianshu.com/p/15dd20f8d02c
著作权归作者所有,转载请联系作者获得授权,并标注“简书作者”。

这篇关于常见的七种回归技术的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1087239

相关文章

C语言线程池的常见实现方式详解

《C语言线程池的常见实现方式详解》本文介绍了如何使用C语言实现一个基本的线程池,线程池的实现包括工作线程、任务队列、任务调度、线程池的初始化、任务添加、销毁等步骤,感兴趣的朋友跟随小编一起看看吧... 目录1. 线程池的基本结构2. 线程池的实现步骤3. 线程池的核心数据结构4. 线程池的详细实现4.1 初

【专题】2024飞行汽车技术全景报告合集PDF分享(附原数据表)

原文链接: https://tecdat.cn/?p=37628 6月16日,小鹏汇天旅航者X2在北京大兴国际机场临空经济区完成首飞,这也是小鹏汇天的产品在京津冀地区进行的首次飞行。小鹏汇天方面还表示,公司准备量产,并计划今年四季度开启预售小鹏汇天分体式飞行汽车,探索分体式飞行汽车城际通勤。阅读原文,获取专题报告合集全文,解锁文末271份飞行汽车相关行业研究报告。 据悉,业内人士对飞行汽车行业

金融业开源技术 术语

金融业开源技术  术语 1  范围 本文件界定了金融业开源技术的常用术语。 本文件适用于金融业中涉及开源技术的相关标准及规范性文件制定和信息沟通等活动。

AI(文生语音)-TTS 技术线路探索学习:从拼接式参数化方法到Tacotron端到端输出

AI(文生语音)-TTS 技术线路探索学习:从拼接式参数化方法到Tacotron端到端输出 在数字化时代,文本到语音(Text-to-Speech, TTS)技术已成为人机交互的关键桥梁,无论是为视障人士提供辅助阅读,还是为智能助手注入声音的灵魂,TTS 技术都扮演着至关重要的角色。从最初的拼接式方法到参数化技术,再到现今的深度学习解决方案,TTS 技术经历了一段长足的进步。这篇文章将带您穿越时

系统架构设计师: 信息安全技术

简简单单 Online zuozuo: 简简单单 Online zuozuo 简简单单 Online zuozuo 简简单单 Online zuozuo 简简单单 Online zuozuo :本心、输入输出、结果 简简单单 Online zuozuo : 文章目录 系统架构设计师: 信息安全技术前言信息安全的基本要素:信息安全的范围:安全措施的目标:访问控制技术要素:访问控制包括:等保

前端技术(七)——less 教程

一、less简介 1. less是什么? less是一种动态样式语言,属于css预处理器的范畴,它扩展了CSS语言,增加了变量、Mixin、函数等特性,使CSS 更易维护和扩展LESS 既可以在 客户端 上运行 ,也可以借助Node.js在服务端运行。 less的中文官网:https://lesscss.cn/ 2. less编译工具 koala 官网 http://koala-app.

JVM 常见异常及内存诊断

栈内存溢出 栈内存大小设置:-Xss size 默认除了window以外的所有操作系统默认情况大小为 1MB,window 的默认大小依赖于虚拟机内存。 栈帧过多导致栈内存溢出 下述示例代码,由于递归深度没有限制且没有设置出口,每次方法的调用都会产生一个栈帧导致了创建的栈帧过多,而导致内存溢出(StackOverflowError)。 示例代码: 运行结果: 栈帧过大导致栈内存

Spring的设计⽬标——《Spring技术内幕》

读《Spring技术内幕》第二版,计文柯著。 如果我们要简要地描述Spring的设计⽬标,可以这么说,Spring为开发者提供的是⼀个⼀站式的轻量级应⽤开发框架(平台)。 作为平台,Spring抽象了我们在 许多应⽤开发中遇到的共性问题;同时,作为⼀个轻量级的应⽤开发框架,Spring和传统的J2EE开发相⽐,有其⾃⾝的特点。 通过这些⾃⾝的特点,Spring充分体现了它的设计理念:在

java线程深度解析(六)——线程池技术

http://blog.csdn.net/Daybreak1209/article/details/51382604 一种最为简单的线程创建和回收的方法: [html]  view plain copy new Thread(new Runnable(){                @Override               public voi

java线程深度解析(二)——线程互斥技术与线程间通信

http://blog.csdn.net/daybreak1209/article/details/51307679      在java多线程——线程同步问题中,对于多线程下程序启动时出现的线程安全问题的背景和初步解决方案已经有了详细的介绍。本文将再度深入解析对线程代码块和方法的同步控制和多线程间通信的实例。 一、再现多线程下安全问题 先看开启两条线程,分别按序打印字符串的