机器学习--线性回归

这一块对应西瓜书第三章

03线性回归

3.1线性模型基本形式

其实 f(x)表达式可以理解为各属性的加权平均数。

3.2线性回归:

线性回归属于监督学习---目标值连续

常用于房价预测等情况:

3.2.1定义和公式:
线性回归 (Linear regression) 是利用回归方程 ( 函数 ) 对一个或多个自变量 ( 特征值) 和因变量 ( 目标值 ) 之间关系进行建模的一种分析方式。
只有一个自变量的情况称为 单变量回归 ,多于一个自变量情况的叫做 多元回归
通用公式其实就是上面的f(x)

3.2.2线性回归的特征与目标的关系分析

线性回归中主要有两种模型:线性关系 、非线性关系(线性关系就是一条直线,非线性关系就是曲线)
单变量线性关系 多变量线性关系

非线性关系

3.2.3线性回归的损失和优化

观察上面的图可以看出来,真实结果y和预测结果f(x)之间会存在误差---》损失。

3.2.3.1损失函数(最小二乘法):

进一步带入得到。(其中只有w/b未知)

像这种基于均方误差最小化进行模型求解的方法我们称为 最小二乘法

在线性回归中,最小二乘法就是试图找到一条直线,是所有样本到直线上的欧氏距离之和最小。

求解w b 使最小化的过程称为线性回归的最小二乘"参数估计",可以通过将J分别对w ,b

求偏导,令偏导=0的方法的到 w、b最优解。

3.2.3.2优化函数
找优化函数就是如何去求模型当中的 W ,使得损失最小?(目的是找到最小损失对应的W值)

常用两种方法:
正规方程、梯度下降法

2.1正规方程:

一般用于多元线性回归,即数据集并非单个属性,而是由多个属性构成

举例:

该解只适用于满秩矩阵,但实际我们往往遇到的不是满秩矩阵,遇到的变量数目超过样本量,导致X的列数大于行数,此时可解出多个w,均可使误差最小化,一般选哪个作为输出,常见做法是:引入正则项。

2.2梯度下降
以当前的所处的位置为基准,寻找这个位置最陡峭的地方,然后 朝着山的高度下降的地方走,(同理,如果我们的目标是上山,也就是爬到山顶, 那么此时应该是朝着最陡峭的方向往上)。然后每走一段距离,都反复采用同一 个方法,最后就能成功的抵达山谷。
按照梯度下降算法的思想,它将按如下操作达到最低点:

第一步,明确自己现在所处的位置

第二步,找到相对于该位置而言下降最快的方向

第三步, 沿着第二步找到的方向走一小步,到达一个新的位置,此时的位置肯定比原来低

第四部, 回到第一步

第五步,终止于最低点

下降公式:
1.α 在梯度下降算法中被称作为学习率或者步长,我们可以通过 α来控制每一步走的距离。
但步子太大--》会跨过山谷,步子太小---》速度太慢
2. 中减号 便是负方向
ps:
梯度的方向是 函数在给定点上升最快的方向,那么梯度的反方向就是函数在给定点下降最快的方向,这正是我们所需要的。 所以我们只要沿着梯度的反方向一直走,就能走到局部 的最低点!(微积分定义)

算法举例过程:

2.3 对比

3.3梯度下降介绍:
都是为了正确地调节权重向量, 通过为每个权重计算一个梯度,从而更新权值,使目标函数尽可能最小化 。其差别在于样本的使用方式不同
全梯度下降算法 (Full gradient descent ) , 计算训练集所有样本误差,对其求和再取平均值作为目标函数
随机梯度下降算法( Stochastic gradient descent )
目标函数不再是全体样本误差,而仅是单个样本误差,即每次只代入计算一个样本目标函数的梯度来更新权重,再取下一个样本重复此过程,直到损失 函数值停止下降或损失函数值小于某个可以容忍的阈值。
,
小批量梯度下降算法( Mini-batch gradient descent ), 每次从训练样本集上随机抽取一个小样本集,
随机平均梯度下降算法( Stochastic average gradient descent )
会给每个样本都维持一个平均值 , 后期计算的时候 , 参考这个平均值

相关推荐
橙子小哥的代码世界6 分钟前
【深度学习】05-RNN循环神经网络-02- RNN循环神经网络的发展历史与演化趋势/LSTM/GRU/Transformer
人工智能·pytorch·rnn·深度学习·神经网络·lstm·transformer
985小水博一枚呀2 小时前
【深度学习基础模型】神经图灵机(Neural Turing Machines, NTM)详细理解并附实现代码。
人工智能·python·rnn·深度学习·lstm·ntm
SEU-WYL3 小时前
基于深度学习的任务序列中的快速适应
人工智能·深度学习
OCR_wintone4213 小时前
中安未来 OCR—— 开启高效驾驶证识别新时代
人工智能·汽车·ocr
matlabgoodboy3 小时前
“图像识别技术:重塑生活与工作的未来”
大数据·人工智能·生活
最近好楠啊3 小时前
Pytorch实现RNN实验
人工智能·pytorch·rnn
OCR_wintone4213 小时前
中安未来 OCR—— 开启文字识别新时代
人工智能·深度学习·ocr
学步_技术3 小时前
自动驾驶系列—全面解析自动驾驶线控制动技术:智能驾驶的关键执行器
人工智能·机器学习·自动驾驶·线控系统·制动系统
IFTICing3 小时前
【文献阅读】Attention Bottlenecks for Multimodal Fusion
人工智能·pytorch·python·神经网络·学习·模态融合
大神薯条老师3 小时前
Python从入门到高手4.3节-掌握跳转控制语句
后端·爬虫·python·深度学习·机器学习·数据分析