线性回归算法梳理

本文详细梳理了线性回归算法,包括机器学习的概念(有监督、无监督、泛化能力)、过拟合与欠拟合的解决方案、交叉验证的类型及其作用,以及线性回归的原理、损失函数、代价函数、目标函数和优化方法(梯度下降、牛顿法、拟牛顿法)。同时,介绍了线性回归的评估指标R^2和sklearn库中LinearRegression的参数详解。

线性回归算法梳理

1.机器学习的一些概念

1.1有监督
监督,通俗来讲就是分类,就是把训练样本,在某种评价下得到最佳的模型,然后再利用这个模型将输入映射为相应的输出,对输出进行简单的判断从而实现分类的目的。

1.2无监督
无监督,我们事先没有任何训练样本,而直接对数据进行建模。比如我们去参观一个画展,我们完全对艺术一无所知,但是欣赏完多幅作品之后,我们也能把它们分成不同的派别。

1.3泛化能力
学习方法的泛化能力(generalization ability)是指由该学习方法学习到的模型对位置数据的预测能力,是学习方法本质上重要的性质。

1.4过拟合与欠拟合
过拟合(over-fitting):如果一味追求提高对训练数据的预测能力,所选模型的复杂程度则往往会比真模型高。这种现象称为过拟合(over-fitting)。简言之,也就是学习器把训练样本学得“太好”了得时候,很可能已经把训练样本自身的一些特点当作了所有潜在样本都会具有的一些性质,这样就会导致泛化能力差。过拟合图如下:
在这里插入图片描述
解决过拟合的方法:正则化(regularization),正则化是结构风险最小化策略的实现,是在经验风险上加一个正则项(regualrizer)或惩罚项(penalty term)。
欠拟合(underfitting):是指是对训练样本的一般性质尚未学好。欠拟合图如下:在这里插入图片描述
解决欠拟合的方法:可以增大数据集,增加训练轮数。

1.4交叉验证
交叉验证的基本想法是重复地使用数据;把给定的数据进行切分,将切分的数据集组合为训练集和测试集,再次基础上反复的进行训练、测试以及模型的选择。
1.4.1简单交叉验证
简单的交叉验证的方法是:首先随机地将已给数据分为两部分,一部分作为训练集,一部分作为测试集;然后训练集在各种条件下(例如,不同的参数个数)训练模型,从而得到不同的模型;在测试集上评价各个模型的测试误差,选出测试误差最小的模型。
1.4.2S折交叉验证
应用最多的是S折交叉验证 ,方法如下:首先随机地将已给数据切分为S个互不相交的大小相同的子集;然后利用S-1个子集的数据训练模型,利用余下的子集测试模型;将这一过程对可能的S种选择重复进行;最后选出S次评测中平均测试误差最小的模型。
1.4.3留一交叉验证
S折交叉验证的特殊情形是S=N,成为留一交叉验证,往往在数据缺乏的情况下使用。这里N为给定数据的容量。

2.线性回归的原理
所谓回归就是找最大共性,通俗的讲,万事万物都向中间靠拢。对于线性回归就是找到最适合的一条线(想象一个高维)来最好的拟合我们的数据。如下图所示:
在这里插入图片描述
3.线性回归损失函数、代价函数、目标函数
3.1损失函数(loss)
样本模型真实值(y)和预测值(y_)的误差,即loss=(y-y_)^2,损失函数越小,说明拟合的越好,模型亦越好。
3.2代价函数(cost)
定义在整个训练集上的,整个样本误差的平均,即损失函数的平均值。cost = 1/m*sigma(y-y_)^2
3.3目标函数
目标函数为如下式子:
在这里插入图片描述推导过程:
在这里插入图片描述

4.优化方法
4.1梯度下降法
梯度法思想的三要素:出发点、下降方向、下降步长。梯度下降法是机器学习中常用的权重更新表达式。
所谓梯度下降就是首先找到一个出发点,也就是随机初始化初始值,然后迭代,新的值能够使J(thea)更小。

在这里插入图片描述
2.牛顿法

在这里插入图片描述
3.拟牛顿法
在这里插入图片描述
5.线性回归的评估指标
评估方法
最常用的评估项R^2:在这里插入图片描述
R^2的取值越接近1我们认为模型拟合的越好。
6.sklearn参数详解
LinearRegression(fit_intercept=True,normalize=False,copy_X=True,n_jobs=1)
fit_intercept:是否有截据,如果没有则直线过原点。
normalize:是否将数据归一化
copy_X:默认为True,当为True时,X会被copied,否则X将会被覆写。
n_jobs:默认值为1。计算时使用的核数。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值