[机器学习与scikit-learn-27]:算法-回归-多元线性回归的几何原理、线性代数原理、本质(去掉激活函数的神经元)

2023-11-13

作者主页(文火冰糖的硅基工坊):文火冰糖(王文兵)的博客_文火冰糖的硅基工坊_CSDN博客

本文网址:https://blog.csdn.net/HiWangWenBing/article/details/123540305


目录

第1章 回归概述

1.1 回归的案例

1.2 什么是回归

1.3 应用场合 

1.4 回归算法的种类

1.5 线性回归的结果问题的思路

1.6 线性回归的本质

第2章 多元线性回归

2.1 一元线性回归的本质与原理

2.2 二元线性回归

2.3 多元线性回归的几何原理

2.5 多元线性回归与深度学习的神经元

第3章 最小二乘法求解多维线性拟合的参数

3.1 什么最小二乘法概述

3.2 关于二乘法的进一步了解


第1章 回归概述

1.1 回归的案例

1.2 什么是回归

回归模型是一种预测性的建模技术,它研究的是因变量(目标)和自变量(预测器)之间的连续关系。回归是一种应用广泛的预测建模技术,这种技术的核心在于预测的结果连续型变量

决策树,随机森林,支持向量机的分类器等分类算法预测标签分类型离散变量。

无监督学习算法比如PCA,KMeans并不求解标签,而是预测标签。

1.3 应用场合 

这种技术通常用于预测分析时间序列模型以及发现变量之间的因果关系。例如,司机的鲁莽驾驶与道路交通事故数量之间的关系,最好的研究方法就是回归

回归算法源于统计学理论,它可能是机器学习算法中产生最早的算法之一,其在现实中的应用
非常广泛,包括使用其他经济指标预测股票市场指数,根据喷射流的特征预测区域内的降水量,根据公司的广告花费预测总销售额,或者根据有机物质中残留的碳-14的量来估计化石的年龄等等,只要一切基于特征预测连续型变量的需求,我们都使用回归技术。

既然线性回归是源于统计分析,是结合机器学习与统计学的重要算法。通常来说,我们认为统计学注重先验,重还原历史,而机器学习重结果,重在预测未来。

1.4 回归算法的种类

回归需求在现实中非常多,也有各种各样的回归类算法。

(1)根据输出的目标来分类

  • 逻辑回归:输出是离散量(用于分类):用数学曲线进行分割,分类,上图用直线分割样本的分布,即用直线分割自变量与因变量的空间位置关系。
  • 模拟回归:输出是连续量(用于拟合):用数学曲线进行模拟、拟合,上图用直线拟合自变量与因变量的关系。

(2)根据回归的因变量与自变量的关系来分

  • 线性回归:自变量与因变量的关系是一次函数关系,即直线关系。

  • 非线性归回:自变量与因变量的关系是二次以及以上的函数关系,即非直线关系。

(3)根据自变量的数量来分

  • 一元回归:一个自变量属性,一个因变量输出

y = kx + b

  • 多元回归:多个自变量属性,一个因变量输出

多元线性(直线叠加):

多元非线性(多项式): 

 回归问题在现实中的泛用性,回归家族可以说是非常繁荣昌盛,家大业大了。

在此基础之上,衍生出了岭回归,Lasso,弹性网,除此之外,还有众多分类算法改进后的回归,比如回归树,随机森林的回归,支持向量回归,贝叶斯回归等等。除此之外,我们还有各种鲁棒的回归:比如RANSAC,Theil-Sen估计,胡贝尔回归等等。

1.5 线性回归的结果问题的思路

回归类算法的数学相对简单,通常,理解线性回归可以有两种角度:矩阵的角度和代数的角度。

回归的本质代数,是因变量y(输出)与自变量(输入Xi)的关系。

回归的表达式矩阵,线性代数,通过矩阵来表达多元自变量Xi同时与一元输出y之间的内在多重关系(矩阵系数)。

几乎所有机器学习的教材都是从线性代数的角度来理解线性回归的,类似于我们在逻辑回归和支持向量机中做的那样,将求解参数(系数矩阵)的问题转化为一个带条件的最优化问题,然后使用三维图像让大家理解求极值的过程。

1.6 线性回归的本质

就是给定一组样本,N元自变量输入(Xi, i=0,1,2...N-1)和因变量输出,通过某种自带参数的数据模型去拟合样本内部的关系,最简单的线性模型就是直线模型:y=kx+b,其中k,b就是模型自带的参数,x就是输入因变量,y是因变量输出。

第2章 多元线性回归

最常见的回归模型是:多元线性回归,结合数据的预处理技术可以解决线性拟合和非线性拟合问题 。

2.1 一元线性回归的本质与原理

(1)从何几点角度看

一元线性回归的样本点(X,Y),就是二维平面上的点。

(2)从代数的角度看

就是根据样本数据(X,Y)的数值,求y = kx + b中参数k和b的最佳值的过程。

两个样本点:(X1, Y1),  (X2, Y2) 决定一条直线。

当有无数个样本点的时候,无法用一条直线穿过所有的样本点,只能优化拟合出一条直线(y=kx+b), k和b是待优化的参数,使得所有的样本点到该直线的距离之和最小。

2.2 二元线性回归

 (1)从何几点角度看

一元线性回归的样本点(X1, X2, Y),就是三维空间上的空间点。

X1和X2是不同的维度。

(X1, Y)的关系就是在(X1, Y)平面上的投影平面上的点。

(X2, Y)的关系就是在(X2, Y)平面上的投影平面上的点。

(X1, X2, Y)的关系(X1, X2, Y)在空间中的点。

(2)从代数的角度看

就是根据样本数据(X1,X2,Y)的数值,求y = k1x1+ b1 + k2x2 + b2 = k1x1 + k2x2 + b中参数k1,k2, b的最佳值的过程。这是两条直线在空间中联合,联合成一个空间的平面。

空间中的3个样本点(X11,X21,Y1), (X12,X22,Y2)决定一个空间平面。

空间中的3个样本点(X1,Y,Z1),(X2,Y2,Z2), (X3,Y3,Z3)决定一个空间平面。

当有无数个样本点的时候,无法用一个平面穿过所有的样本点,只能优化拟合出一个平面(y=K1X1 + K2X2 + b), k1, K2和b是待优化的参数,使得所有的样本点到该片面的距离之和最小。

2.3 多元线性回归的几何原理

通用表达式:(X1, Xi, ...Xn,Y)

(1)当n=1时,为一元回归,用一直线拟合二维平面上的部分点。

所谓拟合,所谓机器学习,就是通过求解找到参数k和b,使得现存的样本点到拟合直线的距离的平方和最小。

(2)当n=2时,为二元回归,用一平面拟合三维空间中的部分点。

所谓拟合,所谓机器学习,就是通过求解找到参数k1, k2和b,使得现存的样本点到拟合平面的距离的平方和最小。

(3)当n=3时,为三元回归,用一立体拟合四维空间中的部分点。

所谓拟合,所谓机器学习,就是通过求解找到参数k1, k2, k3和b,使得现存的样本点到拟合立方体的距离的平方和最小。

(4)当n=m时,为m元回归,用m维空间的形态拟合m+1维空间中的部分点。

m维空间,在m+1为空间中,只是部分的样本点分布,只占用m+1维空间的部分空间。

m维是属性值,第m+1维度是标签值。 

2.4 多维线性回归的线性代数原理

2.5 多元线性回归与深度学习的神经元

我们会发现,多元线性回归,就是深度学习神经元,是去掉激活函数的单个神经元!!!

 

第3章 最小二乘法求解多维线性拟合的参数

所谓拟合,所谓机器学习,就是通过求解找到参数k1, k2, k3,...km和b(它们代表拟合出来的m维空间的形状),使得现存的m+1维度空间中的样本点到拟合出来的m维空间形状的距离的平方和最小。数学上,这种求解方法,称为最小二乘法。

3.1 什么最小二乘法概述

最小二乘法公式是一个数学的公式,在数学上称为曲线拟合,不仅仅包括线性回归方程,还包括矩阵的最小二乘法。

最小二乘法也可以叫做最小平方和,其目的就是通过最小化该误差的平方和,使得拟合对象或拟合函数无限接近目标对象。换句话说,最小二乘法可以用于对函数的拟合。

Y = K1X1 + K2X2+.....KmXm + B

有了上述的公式可以看出:

(1)(X1i, X2i, .....Xni,Yi)是已知的。n是维度,i是样本序号。

(2)K1, K2.....Km,b是未知的。

(3)E = f(K1, K2.....Km,b)是多元二次函数关系,有最小值,如抛物线。

备注:

最小二乘是用来表达拟合曲线与正式样本之间的误差函数

可以通过牛顿法、梯度下降法获得K1, K2....Km,b的最佳值,是的在现有样本上的误差最小!!!

3.2 关于二乘法的进一步了解

[数值计算-16]:最小二乘法的求解1 - 一元二次方程解析法求解_文火冰糖的硅基工坊的博客-CSDN博客_最小二乘法求二次方程

[数值计算-17]:最小二乘法的求解2 - 二元二次线性方程组求解_文火冰糖的硅基工坊的博客-CSDN博客_最小二乘法在线

[数值计算-18]:最小二乘的求解法3 - 链式求导与梯度下降法求解loss函数的最优化参数(Python, 超详细、可视化)_文火冰糖的硅基工坊的博客-CSDN博客_链式法则求导例题

最小二乘法的本质是什么? - 知乎

[数值计算-11]:多元函数求最小值 - 偏导数与梯度下降法&Python法代码示例_文火冰糖的硅基工坊的博客-CSDN博客

[数值计算-18]:最小二乘的求解法3 - 链式求导与梯度下降法求解loss函数的最优化参数(Python, 超详细、可视化)_文火冰糖的硅基工坊的博客-CSDN博客_链式法则求导例题


作者主页(文火冰糖的硅基工坊):文火冰糖(王文兵)的博客_文火冰糖的硅基工坊_CSDN博客

本文网址:https://blog.csdn.net/HiWangWenBing/article/details/123540305

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

[机器学习与scikit-learn-27]:算法-回归-多元线性回归的几何原理、线性代数原理、本质(去掉激活函数的神经元) 的相关文章

随机推荐

  • Eggjs 从放弃到开始使用

    原文 codesky me archives eg 用掘金刊登虽然分流了但是主要是 现在分享的曝光率实在太低了 所以 支持的请点下原博收藏下关注下以及我的微博 咦 这篇文章标题为什么反了 实际上这是个人走过的心路历程 最初看到 eggjs
  • FastDFS的Tracker及Storage节点添加及删除

    1 增加Storage节点 通过配置 自动加入 1 安装Storage并配置mod fastdfs conf及storage conf 设置fdfs storaged及nginx自启动 2 启动新加的storage节点 会自动同步相同gro
  • openGL之API学习(四)纹理操作

    纹理操作代码流程 向着色器传递纹理单元 glUniform1i gSampler 0 向GPU上传纹理数据 GLuint m textureObj glGenTextures 1 m textureObj 生成一个纹理对象 一个纹理对象有多
  • 谁会嫌钱多啊,最适合打工人小白的Python兼职攻略以及接私活经验!

    这次小编想谈谈一个非常热门的话题 就是如何在学习python的同时去赚钱 在这篇文章中 你会学习到如何通过学习python来赚取副业收入 相信大家都对钱感兴趣吧 如果你和马云爸爸对钱不敢兴趣的话 那这篇文章就不适合你了 如果你想知道如何使用
  • 计算机英语-基础知识

    计算机专业英语基础知识 1 专业英语的专业性和客观性 科技文章属于严肃的书面语体 崇尚严谨周密 逻辑性强 要求层次分明 重点突出 各个领域的专业英语都以表达科技概念 理论和事实为主要目的 因此 它们很注重客观事实和真相 要求逻辑性强 条理规
  • APISIX源码解析-插件-客户端IP【real-ip】

    real ip 客户端IP插件 关键属性 源码解析 real ip 插件用于动态改变传递到 APISIX 的客户端的 IP 和端口 local function get addr conf ctx if conf source http x
  • 卷运维不如卷网络安全

    最近发现很多从事运维的选择了辞职 重新规划自己的职业发展方向 运维工程师这个岗位在IT行业里面确实是处于最底层的 不管什么环节出现问题 基本都是运维背锅 背锅也就罢了 薪资水平也比不上别的岗位 一般运维的薪资水平大多数都是6 9K 还要高频
  • 【Rust】用RefCell避开`&mut XX`导致的借用检查

    derive Debug struct WhatAboutThis lt a gt name String nickname Option lt a str gt impl lt a gt WhatAboutThis lt a gt fn
  • 什么是本地储存?

    本地储存的作用 把一些数据记录在浏览器中 是浏览器提供给我们的一些本地存储数据的机制 localStorage 永久缓存 除非手动删除 sessionStorage 会话缓存 关闭浏览器就没有了 共同点 只能存储字符串格式的数据 local
  • 爬虫最快框架collyx,今天开源了...

    作者 TheWeiJun 工欲善其事 必先利其器 大家好 我是TheWeiJun 之前接触colly时 写过一篇关于colly框架的文章 由于当时能力有限加上时间不够充足 一直没能够去研究这个框架 后来经过3个多月的不断尝试完善 基于col
  • int类型数据相乘,溢出问题,负号变正号

    int相乘 不做强转的话 结果为int 溢出会出现结果不正确的情况 下面方法是个坑儿 如果要使用 需加强转 获取和日期间隔一定时间的时期 适合计算短时间间隔的情况 长时间间隔会出现溢出问题 影响正负号 方法待删除 param d1 para
  • UE4和C++ 开发-新手常用C++API

    C 暴露给蓝图可编辑 UCLASS Blueprintable 创建FString FString Printf TEXT aa bb 蓝图调用变量 UCLASS ClassGroup Custom meta BlueprintSpawna
  • Android使用Direct Textures提高glReadPixels、glTexImage2D性能

    from https www jianshu com p 1fa36461fc6f Android使用Direct Textures提高glReadPixels glTexImage2D性能 熊皮皮 关注 2017 02 05 15 52
  • weblogic双机(多机)集群搭建

    进去正题 1 创建集群 点击 锁定并编辑 选择 环境 gt 群集 gt 新建 gt 集群 填写 名称 选择 单点传送 点击 确定 集群创建完成 建议名称为 CLuster 项目名 一个项目配置一个集群环境 2 创建计算机 Machine 选
  • windows下的C++ socket服务器(1)

    windows下的C socket服务器 1 windows下的一个C socket服务器 用到了C 11的相关内容 现在还不是很完善 以后会不断改进的 include
  • 【已解决】android7.0以上使用charles抓HTTPS包报错certificate_unknown

    手机上是否有装证书都可以使用下面的方法 在你的AndroidManifest xml文件中添加如下配置
  • java Swing 时间选择器控件

    效果图 简要说明 一个视图类 HongYeLingGuDate 一个抽象接口 SelectHYDateAbstract 需要导入的jar包 http download csdn net detail male09 9884835 中的 fl
  • keil5报错:* RESTRICTED VERSION WITH 0800H BYTE CODE SIZE LIMIT; USED: 08B5H BYTE (108%) *保姆级教程

    项目场景 keil uVsion5的编译的时代码的字节过大出现 问题描述 RESTRICTED VERSION WITH 0800H BYTE CODE SIZE LIMIT 原因分析 原因就是你的keil为2048字节代码限制的版本 而你
  • docker从入门到实践

    本文的主要目的是帮助零基础的读者快速上手docker 并掌握一些相关的常见命令 同时 本文也是作者对学习docker的一个笔记记录 本文主要是从实例出发 讲解一些docker的基本操作 若有不妥或错误之处 烦请指出 不胜感激 PS 关于do
  • [机器学习与scikit-learn-27]:算法-回归-多元线性回归的几何原理、线性代数原理、本质(去掉激活函数的神经元)

    作者主页 文火冰糖的硅基工坊 文火冰糖 王文兵 的博客 文火冰糖的硅基工坊 CSDN博客 本文网址 https blog csdn net HiWangWenBing article details 123540305 目录 第1章 回归概