当前位置: 首页 > news >正文

机器学习——线性回归

回顾:
监督学习分为回归和分类
回归( Regression Prediction
  • 如何预测上海浦东的房价?
  • 未来的股票市场⾛向?
分类( Classification
  • 身⾼1.85m,体重100kg的男⼈穿什么尺码的T恤?
  • 根据肿瘤的体积、患者的年龄来判断良性或恶性?

线性回归的概念

        是⼀种通过属性的线性组合来进 ⾏预测的线性模型,其⽬的是找 到⼀条直线或者⼀个平⾯或者更⾼维的超平⾯,使得预测值与真实值之间的误差最⼩化。

         由上述所说,线性关系不仅仅只能存在 2 个变量(二维平面)。3 个变量时(三维空间),线性关系就是一个平面,4 个变量时(四维空间),线性关系就是一个体。以此类推…

        线性回归(LR)可分为:简单一元线性回归和多元线性回归,也就是我们平时接触的一次线性方程和多次线性方程,二者的主要区别也就是未知项的个数。 

接下来定义符号...

符号定义

m 代表训练集中样本的数量

n 代表特征的数量

x 代表特征/输入变量

y 代表目标变量/输出变量

(x,y)代表训练集中的样本

代表第i个观察样本

h 代表学习算法的解决方案或函数也称为假设(hypothesis)

,代表预测的值 

单变量线性回归(简单一元线性回归)

 

 这里可以设X0为1,

        损失函数(Loss Function)度量单样本预测的错误程度,损失函数值越⼩,模型就越好。常⽤的

        损失函数包括:0-1损失函数、平⽅损失函数、 绝对损失函数、对数损失函数等

        代价函数(Cost Function)度量全部样本集的平均误差。

        常⽤的代价函数包括均⽅误差、均⽅根误差、平均绝对误差等。

 

对于损失函数,这里采用平方和损:

(其中1/2是为了便于计算)

要找到一组w(w0,w1),使得残差平方和最小:

这里的代价函数是MSE:

 

如何求解此时的单变量线性回归?可以用最小二乘法、梯度下降等等,这里主要介绍梯度下降

梯度下降(单变量)

         梯度下降法的目标是最小化损失函数 J(w)。对于线性回归问题,通常使用均方误差(MSE)作为损失函数

        梯度是损失函数对参数的偏导数,表示损失函数在参数空间中的变化方向。对于线性回归,梯度计算如下: 

做法:

 

        对于其中的学习率选取要注意,不能太小,不然梯度下降太缓慢,也不能太大,可能导致无法收敛,甚至发散。

对于上述公式,结合我们前面的线性回归模型的公式:

那么:

最终:

        而对于梯度下降按照训练样本的使用,可以分为批量梯度下降、随机梯度下降、小批量梯度下降。

        对于批量梯度下降,梯度下降的每⼀步中,都⽤到了所有的训练样本,对于参数更新:

        对于随机梯度下降,梯度下降的每⼀步中,⽤到⼀个样本,在每⼀次计算之后便更新参数, ⽽不需要⾸先将所有的训练集求和,对于参数更新:

对于小批量梯度下降,梯度下降的每一步中,用到了一定批量的训练样本,每次计算常数b次训练实例,便更新一次参数w,对应参数更新:

多变量梯度下降(多元线性回归)

其实就是增加了X...其他与单变量一致...

当其中n=1时,就是单变量线性回归,当n>=时,

签连续

数据归一化/标准化

归一化(最大-最小规范化)

        将数据映射到[0,1]区间

        数据归⼀化的目的是使得各特 征对⽬标变量的影响⼀致,会将特 征数据进⾏伸缩变化,所以数据归 ⼀化是会改变特征数据分布的

Z-Score标准化

        处理后的数据均值为0,方差为1

        数据标准化为了不同特征之间具备 可⽐性,经过标准化变换之后的特征数 据分布没有发⽣改变。

为什么进行归一化/标准化?

提升模型精度:不同维度之间的 特征在数值上有⼀定⽐较性,可 以⼤⼤提⾼分类器的准确性。

加速模型收敛:最优解的寻优过程明 显会变得平缓,更容易正确的收敛到 最优解。 

所有数据都需要数据归一化/标准化?

需要做数据归⼀化/标准化

        线性模型,如基于距离度量的模型包括KNN(K近邻)、K-means聚类、感知 机和SVM。另外,线性回归类的⼏个模型⼀般情况下也是需要做数据归⼀化/ 标准化处理的。

不需要做数据归⼀化/标准化

        决策树、基于决策树的Boosting和Bagging等集成学习模型对于特征取值⼤ ⼩并不敏感,如随机森林、XGBoost、LightGBM等树模型,以及朴素⻉叶斯, 以上这些模型⼀般不需要做数据归⼀化/标准化处理 

正规方程 

        除了梯度下降,也可以利用正规方程来求解...

对于单变量,就是解决:

对于多变量,就是:

 最小二乘法(LSM)

 要找到一组w,使得 J(w)最小,也就是最小化

我们这里么将向量表达式转化为矩阵表达式,也就是:

其中的X为m行n+1列的矩阵(m是样本个数,n为特征个数),w为n+1行1列的矩阵(包含了w_0)Y为m行1列的矩阵,则:

 

 

 所以对于正规方程有:

TIPS:对于那些不可逆的矩阵,正规⽅程⽅法是不能⽤的。

这可能会出现欠拟合和过拟合现象。。。

过拟合处理

1.获得更多的训练数据

        使⽤更多的训练数据是解决过拟合问题最有效的⼿段,因为更多的样本能够让模 型学习到更多更有效的特征,减⼩噪声的影响。

2.降维

        即丢弃⼀些不能帮助我们正确预测的特征。可以是⼿⼯选择保留哪些特征,或者 使⽤⼀些模型选择的算法来帮忙(例如PCA)。

3.集成学习⽅法

        集成学习是把多个模型集成在⼀起,来降低单⼀模型的过拟合⻛险。

4.正则化

        正则化(regularization)的技术,保留所有的特征,但是减少参数的⼤⼩(magnitude),它可以改善或者减少过拟合问题。

 欠拟合处理

 1.添加新特征

        当特征不⾜或者现有特征与样本标签的相关性不强时,模型容易出现⽋拟 合。通过挖掘组合特征等新的特征,往往能够取得更好的效果。

2.增加模型复杂度

         简单模型的学习能⼒较差,通过增加模型的复杂度可以使模型拥有更强的 拟合能⼒。例如,在线性模型中添加⾼次项,在神经⽹络模型中增加⽹络层数 或神经元个数等。

3.减⼩正则化系数

        正则化是⽤来防⽌过拟合的,但当模型出现⽋拟合现象时,则需要有针对 性地减⼩正则化系数。

代价函数 

 

 对于其中λ的选择也很重要,λ过大可能出现:

此时梯度下降,能够得到:

其中:

常见的正则化

标签离qizho正规fan其中

其中L1正则化是指在损失函数中加入权值向量W的绝对值只和,功能是使得权重稀疏

L2是在损失函数中加入权值向量W的平方和,功能是使得权重平滑,能降低参数范数的总和 

 梯度下降与正规方程的比较

 

 线性回归的评价指标

 

 

对于指标,更具体的可以看我上章的内容... 

http://www.lryc.cn/news/576601.html

相关文章:

  • 【数据标注师】3D标注
  • 使用Calibre对GDS进行数据遍历
  • Note2.4 机器学习:Batch Normalization Introduction
  • 【go】初学者入门环境配置,GOPATH,GOROOT,GOCACHE,以及GoLand使用配置注意
  • LNA设计
  • 【安卓Sensor框架-1】SensorService 的启动流程
  • iOS 使用 SceneKit 实现全景图
  • MCPA2APPT:基于 A2A+MCP+ADK 的多智能体流式并发高质量 PPT 智能生成系统
  • 微处理原理与应用篇---STM32寄存器控制GPIO
  • Unity2D 街机风太空射击游戏 学习记录 #16 道具父类提取 旋涡道具
  • FPGA内部资源介绍
  • Python爬虫实战:研究sanitize库相关技术
  • 笔记07:网表的输出与导入
  • SQL关键字三分钟入门:RANK() —— 窗口函数
  • Java AI 新纪元:Spring AI 与 Spring AI Alibaba 的崛起
  • JavaScript正则表达式之正向先行断言(Positive Lookahead)深度解析
  • 第8章-财务数据
  • 某音Web端消息体ProtoBuf结构解析
  • TCP 在高速网络下的大数据量传输优化:拥塞控制、效率保障与协议演进​
  • Linux更改国内镜像源
  • InnoDB的undo日志涉及的页结构
  • C语言二级指针与多级指针
  • 国内公司把数据湖做成了数据库
  • uni-app项目实战笔记27--uniapp搜索页面的实现
  • 手势-handpose的pipeline介绍
  • nt!IoSynchronousPageWrite函数分析之atapi!IdeReadWrite----非常重要
  • 视频序列中的帧间匹配技术 FrameMatcher 详解
  • 智能制造——56页2025 智慧工厂解决方案【附全文阅读】
  • zookeeper Curator(3):Watch事件监听
  • 从单体架构到微服务:微服务架构演进与实践