线性回归原理与使用

news2024/11/23 23:51:18

1 回归

             预测年薪  =   0.5 * 工作年限  +  0.7 * 学历数值

    回归的目的就是预测 数值型的目标值。         求解回归方程式 系数 (0.5 ,0.7)的过程就是 回归。  

2 简单线性回归

      样本特征只有一个的线性回归 ,称为简单线性回归。

     

      举例: 房屋面积与价格的关系           y =   a x + b

  

   3 最小二乘法  

 第一个距离度量值可能为0 

第二个 非连续不可导,求解麻烦。

第三个 可导可度量。适合!!!

简单线性回归,  就是要找到参数a, b,  使y = ax +b ,对所有样本的误差的总和最小。

4 最小二乘法推导(台湾叫最小平方法法)

Loss= Σ (a𝑥i + 𝑏 − 𝑦i) ^2     

 Loss对b求导 (求b)

2 Σ (a𝑥i + 𝑏 − 𝑦i)  = 0       =>       

         同时除以N 

 即 

 

Loss对 a求导 (求a)

2 Σ (a𝑥i + 𝑏 − 𝑦i) * xi = 0         将 上一步得到的b带入       得到a       =>  

    

具体推导可参考:最小二乘法详细推导 - 知乎 

二、 多元线性回归

  1)概念

       多元线性回归如下图。(往往一个模型由多个变量来决定,而不是单个简单线性回归)

 

2 目标 

      目标即是找到一组参数。   所有样本的 误差平方和最小。即     

  其中:

                           

 

 3   推导:

      

 

 

       

 

      最终得到: 

三、 回归算法 度量

 对于分类算法,我们可以使用 准确率acuracy和recall和f1-score来度量模型。

对于回归算法,怎么度量呢?

1 )均方误差MSE( mean squared error)

上述公式即为线性回归求解的损失函数(此处使用测试集,而非回归训练集),除以 总数m。

除以m, 表示平均。 避免同一模型,因测试数据数量差异导致上述结果 相差太大。

2)均方根误差RMSE( root mean squared error)

 

均方误差,会将数据值放大。比如房价预测,数值是万级别, 结果误差值会放大到 百万级别,同原始值没有可比性。

所以使用均方根误差RMSE 来将误差还原为同一数值级别。

3) 平均绝对误差MAE(mean absolute error)

MAE同 均方根误差比较类似。

4) R 方(R squared error) 。

 上面几个衡量标准对不同的模型,可能有不同的值范围。比如收入是几万,   预测身高可能是0.5 到2.0 米。    这怎么衡量模型到底好和坏呢?

分类模型,我们度量都是在0-1 的范围。 那么 回归模型是否有类似的衡量标准呢。

       答案是肯定的,   即是R方度量。

 

可以设想下: 

分母: 为 预测值 - 平均值,  平均值相当于一个不经过模型随便猜测都能得到的一个结果。

分子: 预测试 - 真实值  ,

             模型越好, 预测值越接近真实值,右边被减数 这个值越接近0.  则R方值 越接近 1

              模型越差,这个值越大, 则右边被减数越接近 1,  则R方值 越接近 0

因此 R方值【0,1】,可以按值大小评估回归模型。 越大越好。

5)SKLearn 使用R2

    from sklearn.metrics import r2_score

    r2_score(y_true , y_predict)

     y_true, 标签值       y_predict模型预测值

注:

R2 =1.   表明, 我们的模型结果都与真实值一样。可能发生了过拟合。

R2 < 0,           说明我们的模型,还不如基准平均模型,很可能数据没有线性关系。

到这里标准线性回归就讲完了。  但是实际应用使用标准线性回归一般很少,都会使用Lasso\Ridge\ElasticNet

四、 Ridge 岭回归

     

 

           岭回归最早用于解决特征数多于样本, ,    左侧不可逆,导致无解。        

注: 从数学上来看,  添加惩罚项,求解结果还是跟原来保持一致,只是求解范围更小了。

        数学上可以证明上式的等价形式如

          

             损失函数跟线性回归还是一样, 只是参数的取值变的更小(求解空间平方和<=t)。

           标准线性回归,在使用普通最小二乘法回归的时候,当两个变量具有相关性的时候,可能会使得其中一个系数是个很大正数,另一个系数是很大的负数。通过岭回归的 参数平方和<=t限制,可以避免这个问题。

五、 LASSO回归

1) LASSO回归求解

              也称 L1-norm ,即1-范式

        

 

LASSO回归 使用了绝对值的一阶惩罚函数代替了Ridge岭回归 平方和的二阶函数。

LASSO回归求解结果如下:

  (坐标下降法求解过程参考:LASSO回归求解 - 知乎 )视频:02-11-LASSO回归求解_哔哩哔哩_bilibili

            

  

      m: 为特征维度         n为样本数 , 其中

   

   

注: 上述求解时,可以先给定一个 值, 和一组 初始参数值 W = (0, 0, 0,..0)   [随机任意值,一般给0即可]

         求Wk  :    先求Pk值,  Mk值,   看Pk取值范围,得到 具体的Wk

         遍历m次,即得到最终的m个参数 W* 

对Lasso回归,   值越大, 越来越多的参数越趋近于0。

2) Lasso回归优化:

可以看到上面Lasso回归求解时,  都是给定了一个,求得得参数基本能满足要求。

最终取多少,模型能得到W*最优呢?

可以使用交叉验证方法, 给定一组值,拿测试数据来校验误差得分,根据评价得分指标来得到最优

i) 模型求解:

如下截图: GridSearchCV。 交叉验证各个 ,  将训练数据分成5折, 1折用来计算模型的均方误差值。误差最小的参数即为最佳参数。

ii) 模型评价:  

对于上述步骤求得的最佳参数(假如lamda=0.01,  normalize=True), 则最终模型如下图第一行,咱们可以把模型对训练数据和 测试数据(上述步骤预留20%)分别计算MSE值。

test集得到的MSE 29, 相比训练集得到的MSE 20, 相差比较大 。 咱们可能会认为模型过拟合,考虑优化。  重新选定 lamda=0.01为中心,给定一组 lamda的值,重新开始步骤 i) ii), 反复迭代优化模型。

                 

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/472695.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

想搞懂 API ,先了解这些技术

在学习 API 相关技术之前&#xff0c;我们需要理解什么是 API。API&#xff08;Application Programming Interface&#xff0c;应用程序编程接口&#xff09;是为了帮助不同的应用程序之间实现数据和功能交换而设计的一组软件接口。使用 API&#xff0c;开发者可以访问底层数据…

c# 数据保存为PDF(一) (spire pdf篇)

文章目录 前言了解 Spire使用Spire.PDF1 创建简单的PDF文档2 创建带有格式的PDF文档&#xff08;使用Draw&#xff09;头部信息页眉页脚测试数据完整的代码 3 创建带有格式的PDF文档&#xff08;使用Gird&#xff09;小结 先上一个效果图 前言 项目中需要将一些数据转存为PDF …

unity GI Shader 实现

之前分享了一篇对unity全局光照的解析&#xff0c;里面提到了一些东西&#xff0c;需要在Shader内实现&#xff0c;在这一篇补上。 要实现对全局GI的shader实现&#xff0c;我们可以通过对unity内置的Lit进行解析查看。 烘焙的方式有很多种&#xff0c;选择合适的方式烘焙和使…

python-使用Qchart总结4-绘制多层柱状图

1、上代码 import sysfrom PyQt5.QtChart import QChart, QChartView, QBarCategoryAxis, QValueAxis, QBarSeries, QBarSet from PyQt5.QtGui import QPainter, QColor from PyQt5.QtWidgets import QMainWindow, QApplicationfrom untitled import Ui_MainWindow #从生成好的…

财报解读:连续三年逆势增长的背后,欧派家居到底靠的是什么?

能在过去3年逆势增长的家居企业并不多&#xff0c;而欧派家居就是其中一个。4月25日&#xff0c;欧派家居发布2022年年度报告。据年报数据显示&#xff0c;2022年&#xff0c;欧派家居共实现营业收入224.80亿元&#xff0c;净利润约26.88亿元。 从2020年到2022年&#xff0c;欧…

设计模式——单例设计模式

目录 一、设计模式概述和分类 1.1 设计模式介绍 1.2 23种设计模式 二、创建型设计模式-单例模式 2.1 介绍 2.2 八种单例模式的创建方式 2.2.1 饿汉式&#xff08;静态常量&#xff09; 2.2.2 饿汉式&#xff08;静态代码块&#xff09; 2.2.3 懒汉式&#xff08;线程不…

SSH客户端工具输入目标地址端口远程失败故障原因和解决方案

问题表现&#xff1a;SSH客户端工具输入目标地址端口远程失败时&#xff0c;出现ssh client 报 algorithm negotiation failed的异常信息。 使用SSH Secure Shell Client连接Linux服务器的SSH的时候有时会出现错误提示信息&#xff1a;ssh algorithm negotiation failed。这是…

基于DSP+FPGA+ADS1282支持32Bit高精度数据采集方案(三)系统性能测试

系统性能分析与测试 本章将首先对系统电路的噪声和温漂进行分析&#xff0c;而后对采集系统的性能进行 测试&#xff0c;并对测试数据进行分析。 5.1 高精度 AD 转换电路噪声和温漂分析 5.1.1 电阻噪声与温漂 1 、电阻的噪声 电阻是一种噪声源&#xff0c;其严重程度取…

与贵州公安面对面|欧科云链天眼中国行,他们都说“行”

4月28日&#xff0c;为期两天“链上天眼科技助警中国行贵州站”&#xff08;以下简称&#xff1a;贵州站&#xff09;迎来了尾声。 继首日亮相中共中央政法委员会机关报-法制日报社主办的“政法智能化建设技术装备及成果展巡展贵州站”&#xff0c;引发贵州省政法机关单位的广…

基于.Net开发的、支持多平台、多语言餐厅点餐系统

今天给大家推荐一套支持多平台、多语言版本的订单系统&#xff0c;适合餐厅、酒店等场景。 项目简介 这是基于.Net Framework开发的&#xff0c;支持手机、平板、PC等平台、多语言版本开源的点餐系统&#xff0c;非常适合餐厅、便利店、超市、酒店等&#xff0c;该系统基础功…

vue3+ts+vite自适应项目——搭建项目

系列文章目录 第一章&#xff1a;搭建项目 目录 系列文章目录 前言 一、搭建项目 二、安装sass 1.安装依赖 2.测试 三、引入element-plus 1.引入库 1.1 安装 2.2引入插件 2.3测试 2.自定义主题 四、实现自适应 1.安装 2.引入 总结 前言 本项目主要目的是熟练…

Web前端学习路线 Web前端面试题 Web前端简历及常用工具

文章目录&#xff1a; 一&#xff1a;web前端学习路线 二&#xff1a;web前端常用工具 手册 文档 教程 插件 组件 三&#xff1a;IT计算机web前端面试题和面试需知 一&#xff1a;web前端学习路线 web前端学习路线 二&#xff1a;web前端常用工具 手册 文档 教程 插件 组件 …

浙大数据结构第三周初识二叉树

03-树1 树的同构 (25分) 给定两棵树T1和T2。如果T1可以通过若干次左右孩子互换就变成T2&#xff0c;则我们称两棵树是“同构”的。例如图1给出的两棵树就是同构的&#xff0c;因为我们把其中一棵树的结点A、B、G的左右孩子互换后&#xff0c;就得到另外一棵树。而图2就不是同构…

[2023.4.28]知识体系脑图

整理下工作5年来的知识体系脑图&#xff1a;

Vulnhub:DerpNStink 1靶机

kali&#xff1a;192.168.111.111 靶机&#xff1a;192.168.111.130 信息收集 端口扫描 nmap -A -v -sV -T5 -p- --scripthttp-enum 192.168.111.130 通过nmap的http-enum脚本发现目标80端口存在wordpress&#xff0c;访问目标网站的wordpress被重定向到http://derpnstink.…

政务智能办体验升级、乳腺癌创新药加速研发,飞桨和文心大模型驱动应用智能涌现...

4月27日&#xff0c;百度“飞桨中国行”落地上海&#xff0c;围绕“如何运用深度学习平台大模型技术打造壁垒快速破局”主题&#xff0c;飞桨携手区域企业、高校院所、硬件厂商、开发者等生态伙伴共话 AI 技术新动向和产业升级新趋势&#xff0c;助力上海夯实具有国际影响力的人…

设计模式 -- 状态模式

前言 月是一轮明镜,晶莹剔透,代表着一张白纸(啥也不懂) 央是一片海洋,海乃百川,代表着一块海绵(吸纳万物) 泽是一柄利剑,千锤百炼,代表着千百锤炼(输入输出) 月央泽,学习的一种过程,从白纸->吸收各种知识->不断输入输出变成自己的内容 希望大家一起坚持这个过程,也同…

系统集成项目管理工程师 笔记(第11章:项目人力资源管理)

文章目录 项目人力资源管理 过程11.2.1 编制项目人力资源计划的工具与技术 375&#xff08;1&#xff09;层次结构图&#xff08;工作、组织、资源 分解结构&#xff09;&#xff08;2&#xff09;矩阵图&#xff08;责任分配矩阵&#xff0c;RAM&#xff09;&#xff08;3&…

KubeSphere 社区双周报 | 杭州站 Meetup 议题征集中 | 2023.04.14-04.27

KubeSphere 社区双周报主要整理展示新增的贡献者名单和证书、新增的讲师证书以及两周内提交过 commit 的贡献者&#xff0c;并对近期重要的 PR 进行解析&#xff0c;同时还包含了线上/线下活动和布道推广等一系列社区动态。 本次双周报涵盖时间为&#xff1a;2023.04.14-2023.…

开源+实时+数据即服务的架构——唐建法受邀出席2023数据技术嘉年华【干货回顾】

点击报名 假设原料是一个产品公司的 SaaS 业务系统、一套 CRM、一套工单系统、一个内部人事系统&#xff0c;和内部研发管理系统&#xff1b;现在给到你 40min 的时间&#xff0c;能做出怎样的数据菜肴&#xff1f; 如果这里的厨师是 Tapdata&#xff0c;那么答案可以是一个实时…