线性回归算法梳理

机器学习的一些概念

有监督学习

监督式学习(英语:Supervised learning),是机器学习的一种方法,可以由训练集中学到或建立一个模式(函数 / learning model),并依此模式推测测试集。训练集是由输入物件(通常是向量)和预期输出所组成。函数的输出可以是一个连续的值(称为回归分析),或是预测一个分类标签(称作分类)

无监督学习

无监督学习(英语:Unsupervised learning)是机器学习的一种方法,没有给定事先标记过的训练集,自动对输入的数据进行聚类。无监督学习的主要运用包含:聚类(Cluster Analysis)、关系规则(Association Rule)、维度缩减(Dimensionality Reduce)。它是监督式学习和强化学习等策略之外的一种选择。
一个常见的无监督学习是数据聚类。在人工神经网络中,生成对抗网络(GAN)、自组织映射(SOM)和适应性共振理论(ART)则是最常用的非监督式学习。

泛化能力

是指一个机器学习算法对于没有见过的样本的识别能力。我们也叫做举一反三的能力,或者叫做学以致用的能力。

举个例子,通过学习,小学生就可以熟练的掌握加减法,那么他们是怎么做到的呢?第一步学生们先感性的知道了在有一个苹果的基础上再拿来一个苹果的话就是一种加法,第二步知道个数可以用阿拉伯数字抽象的表示,到了0到9这十个数字和他们的抽象含义,第三步学习十以内的加减法,第四步推广到了多位数的加减法。

过拟合/欠拟合,偏差,方差

什么叫过拟合,还是用上面一个例子, 如果一个学生只学会1+1 = 2, 考试的时候2 + 1却算不出来答案, 这就叫过拟合。没有学以致用的能力,也称泛化能力差。 模型的过拟合其实就是模型的复杂度要比实际问题高,导致模型要死记硬背。

什么叫欠拟合, 就是模型的复杂度过底,没有很好的学习到问题。举个例子,假设点遵循y = x2, 而你用y = x去拟合, 怎么样都拟合不了。

说到过拟合,欠拟合,不得不提到偏差(Bias)跟方差(Variance)的问题。下面一张图直观的解析了什么叫低/高方差,什么叫低/高偏差。
在这里插入图片描述
偏差.
偏差度量了学习算法的期望预测与真实结果的偏离程序, 即 刻画了学习算法本身的拟合能力.

方差.
方差度量了同样大小的训练集的变动所导致的学习性能的变化, 即 刻画了数据扰动所造成的影响 .也可以说是评估模型的稳定性

想当然地, 我们希望偏差与方差越小越好, 但实际并非如此. 一般来说, 偏差与方差是有冲突的, 称为偏差-方差窘境 (bias-variance dilemma).

  • 给定一个学习任务, 在训练初期, 由于训练不足, 学习器的拟合能力不够强, 偏差比较大, 也是由于拟合能力不强,
    数据集的扰动也无法使学习器产生显著变化, 也就是欠拟合的情况;
    那么怎么办呢,可以:1)添加更多的特征项。2)添加多项式。3)减少正则化参数

  • 随着训练程度的加深, 学习器的拟合能力逐渐增强, 训练数据的扰动也能够渐渐被学习器学到;

  • 充分训练后, 学习器的拟合能力已非常强, 训练数据的轻微扰动都会导致学习器发生显著变化,
    当训练数据自身的、非全局的特性被学习器学到了,则将发生过拟合.
    那怎么办呢? 可以:1)重新清洗数据, 2)增大数据的训练量, 3)采用正则化方法
    在这里插入图片描述

交叉验证

模型的Error = Bias + Variance,Error反映的是整个模型的准确度,Bias反映的是模型在样本上的输出与真实值之间的误差,即模型本身的精准度,Variance反映的是模型每一次输出结果与模型输出期望之间的误差,即模型的稳定性。在这里插入图片描述
我们可以根据j_cv 与 j_train两个来判断是处于欠拟合还是过拟合
下面图片一次从1次项增加到4次项, 可以看到,Jcv先是降低,然后升高。在左边,训练的效果不好,欠拟合,就是偏差高,在右边,训练的效果很好,但是JCV很高, 因为过拟合了。 方差很大。
在这里插入图片描述

线性回归原理

先从简单的二维平面开始。 假设上面有一系列散落的点。线性回归要找的就是一个函数或者说一种关系,去最好的描述(拟合)这些散点。

线性回归的损失函数,代价函数,目标函数

损失函数/代价函数

线性回归一般应用平方形式的损失函数。应用平方形式主要是为了得到正的结果,这样正负误差不会相互抵消。这里你就会问,绝对值也是正的结果啊,为什么不用绝对值?
因为平方对大误差的惩罚大于绝对值对大误差的惩罚.
(10-8)2 = 4, |10 - 8| = 2
(10-5)2 = 25, |10 - 5| = 5

目标函数

目标函数就是最小化损失函数, 同时还要考虑到结构风险(模型复杂度)跟经验风险(对训练集的拟合程度),所以需要添加正则项, 常用的有L1, L2范数。
因此最后的目标函数为在这里插入图片描述
J(f)是专门用来度量模型复杂度的。

优化方法

梯度下降方法

梯度实际上是函数值增加最快的方向。

比如说,你站在一个山上,梯度所指示的方向是高度增高最快的方向。沿着梯度的反方向走,能最快减你所在位置的高度,但是如果你乱走,可能走半天所在位置高度也没有变化多少。也就是说,如果你一直沿着梯度的反方向走,你就能最快的到达山的某个低谷。 或者局部低估。

如果把目标函数画出来,就是一个碗状的图形,然后总能打到全局最低点。 即可得w, b求出结果

线性回归评估标准

  • MSE (mean square error)

在这里插入图片描述

  • RMSE(root mean square error)

在这里插入图片描述
平均误差对异常点较敏感,如果回归器对某个点的回归值很不合理,那么它的误差则比较大,从而会对RMSE的值有较大影响,即平均值是非鲁棒的

  • r-Square

在这里插入图片描述

SKLEARN参数解析

fit_intercept : 默认True, 有截距, False则无截距

normalize:默认False, fit_intercept 选了False的话, 这个参数就没有意义, 如果选择了的话,会对X进行L2范式正则化。 如果想要进行标准化处理的话, 用prerocessing里面的StandardScaler.

copy_X: 默认True, Fasle的话会覆盖原来的X

n_jobs: 用多少核进行计算, 默认 None,(1个), -1代表用所有

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值