线性回归—求解介绍及回归扩展

做为机器学习中的线性回归,它是一个典型的回归问题,因为容易理解、可解释性强,被普遍应用于机器学习的过程当中。为了深刻了解线性回归相关知识,飞马网于4月12日晚邀请到前后在1号店、飞牛网等电商企业从事算法工做的张飞老师,在线上直播中,为咱们分享线性回归知识。算法

线性回归_页面_01.jpg 

如下本次是分享实录:机器学习

一.回归的概念函数

回归在咱们的平常工做中常常会用到,好比预测销量、房价等,咱们首先来了解一下什么是回归?学习

线性回归_页面_02.jpg 

二.变量之间的关系资源

两个变量之间的关系是怎样的呢?主要包括两种关系:肯定性关系和非肯定性关系。肯定性关系能够经过函数表达出来,例如圆点周长与半径的关系、速度和时间与路程的关系、X与Y的函数关系等。非肯定性关系表示两变量之间一种宏观上的关系,不能精确用函数关系来表达,例如青少年身高与年龄的关系、身高与体重的关系、药物浓度与反应率的关系。文档

线性回归_页面_03.jpg 

三.线性回归的概念直播

咱们下面来介绍线性回归的概念。当两个变量存在准确、严格的直线关系时,能够用Y=a+bX(X为自变量,Y是因变量),表示二者的函数关系。电商

线性回归_页面_04.jpg 

那为何叫“回归”呢?这里简单了解一下。高尔顿在研究人的身高时,发现父代与子代的身高不是处于两个极端,而是反映了一个规律,这两种身高父亲的儿子的身高,有向他们父辈的平均身高回归的趋势,即当父亲高于平均身高时,他们的儿子身高比他更高的几率要小于比他更矮的几率;父亲矮于平均身高时,他们的儿子身高比他更矮的几率要小于比他更高的几率,这就是所谓的回归效应。变量

线性回归_页面_05.jpg 

四.线性回归求解(回归参数的估计)原理

1.最小二乘法:

要求出a和b这两个参数,就要用到最小二乘法的计算方法,咱们看下图的回归方程。最小二乘法即保证各实测点到回归直线的纵向距离的平方和最小,并使计算出的回归方程最能表明实测数据所反映出的直线趋势。

线性回归_页面_06.jpg 

咱们简单了解一下最小二乘法计算过程的例子:

线性回归_页面_07.jpg 

函数模型写成矩阵式以下图。t1至tn为输入值,b0、b1作了一个矩阵乘法,y1到yn是实际的值。

线性回归_页面_08.jpg 

根据下面这张图中的战舰数据,咱们求b1。

线性回归_页面_09.jpg 

具体计算过程以下:

线性回归_页面_10.jpg 

上面所讲的最小二乘法均是在二元状况下,咱们再看看多元状况下的最小二乘法,也能够用矩阵式表达,以下图所示:

线性回归_页面_11.jpg 

用矩阵转置的运算方法来求解,会涉及矩阵逆的计算,就会有一个问题,若是数据量较大,计算就会很是慢,这是就要判断拟合的好坏,那咱们用什么指标来衡量呢?第一个方法是咱们计算出SE、SR、ST。

线性回归_页面_13.jpg 

线性回归_页面_14.jpg 

咱们也能够经过另外的指标—相关系数来衡量拟合的好坏:

线性回归_页面_15.jpg 

在多元线性回归时,数据量比较大的状况下,最小二乘法求解耗费的资源较大,那咱们有没有其它的方法呢?咱们来看下面这张图:

线性回归_页面_16.jpg 

2.梯度降低:

由此咱们引出全新的一个方法来求解线性回归参数—梯度降低,这是咱们经常使用到的一个方法,它计算量较小,且能够获得一个相对而言的局部最优解。一块儿来看一下梯度降低的方法和算法过程图:

线性回归_页面_17.jpg 

梯度降低本质上是求出一个函数的最小值,使得它的损失函数最小,所以针对损失函数用梯度降低,就可以使梯度降低和线性回归整合,看下图:

线性回归_页面_18.jpg 

①梯度降低Feature Scaling

为了加快梯度降低的执行速度,咱们就要将特征标准化,经常使用的标准化方法以下:

线性回归_页面_19.jpg 

下面是一个练习题:

线性回归_页面_20.jpg 

②梯度降低 多元

在实际问题中,咱们的特征不可能只有两个,也许会有不少个,这边举了一个房价的例子:

线性回归_页面_21.jpg 

它的损失函数和以前同样,只是变成了在多元状况下,梯度求解也是由以前的一元改成多元状况,把对应的值求出来,咱们来看图:

线性回归_页面_22.jpg 

下面咱们来看一下例子:

线性回归_页面_23.jpg 

在实际工做中,这个方法常被用于进行机器算法求解,或者是转置矩阵的形式。

③随机梯度降低

梯度降低有一个扩展性问题,当样本点很大的时候,计算起来就会很慢,因此接下来又提出了随机梯度降低算法。

随机梯度降低算法计算起来很快,可是收敛的过程比较曲折,总体效果上,大多数时候它只能接近局部最优解,而没法真正达到局部最优解,适合用于较大训练集的状况。

它的公式如图所示:

线性回归_页面_24.jpg 

3.比较最小二乘法与梯度降低:

介绍完最小二乘法和梯度降低以后,咱们把二者进行一个比较:

线性回归_页面_25.jpg 

五.回归扩展

最后一部分是对于线性回归的扩展,主要介绍岭回归与Lasso回归。

1.岭回归:

其实就是在本来的方程里加入了I2范数,为何要加I2范数呢?I2范数就是一个惩罚项,使得模型的泛化能力更强,防止咱们把参数求解出来以后,在预测过程当中所产生模型训练过拟合现象,在预测结果上达到预约效果。

线性回归_页面_26.jpg 

2.Lasso回归:

它是加入了I1范数,I1的好处是存文档时,把某些待估系数输送到邻之间。从下图中能够很直观地看出岭回归与Lasso回归的区别。

线性回归_页面_27.jpg 

以上五大部分就是张老师要讲解的主要内容,下面是最后的问答环节,咱们一块儿来看看都有些什么问题。

1.请问函数的推导过程是否是都要记清楚,仍是能运用模型就能够了?

张老师:咱们在学习算法时,对算法的基本原理要清楚,像线性回归的求参过程、最小二乘法、梯度降低法,对这些知识的掌握都要比较熟练,至于函数的推导过程不须要彻底掌握,但对它的原理必定要清楚,不然就达不到预期效果,不知道如何去调优。

2.为何最小二乘法是最优方法?

张老师:最小二乘法只是求解线性回归的一种方法,这种方法是求坐标轴实际值与目标值之间的差的平方,它的精度比较弱,适用的模型只有线性回归,在特征很是多时,求解速度也会很是慢,致使模型没法求解成功,通常状况下,咱们都是运用梯度降低法来求解参数值,它能逼近局部最优解,因此咱们更推荐梯度降低法。

3.归一化怎么应用?

张老师:归一化有不少方法,用当前值减去平均值再除以最大值减最小值,这个是比较简单的方法,但这个方法有必定的局限性,好比样本里面出现异常值,可能会对归一化的顺序产生必定影响,还有其它的一些方法。至于怎么去应用,咱们要根据具体的应用场景去选择相应的方法。

 

以上就是本次线上直播的所有内容,相信经过本次学习,在实际工做当中,你们能更熟练地去运用线性回归算法。想了解更多更详细内容的小伙伴们,能够关注服务号:FMI飞马网,点击菜单栏飞马直播,便可进行学习。

 

 

服务号.jpg

相关文章
相关标签/搜索