机器学习--2.多元线性回归

多元线性回归

1、基本概念

1.1、连续值

1.2、离散值

1.3、简单线性回归

1.4、最优解

1.5、多元线性回归

2、正规方程

2.1、最小二乘法

2.2、多元一次方程举例

2.3、矩阵转置公式与求导公式

2.4、推导正规方程0的解

2.5、凸函数判定

成年人最大的自律就是:克制自己去纠正别人的欲望。俗话说人教人教不会,事儿教人一次就会。希望呢,你赶紧进入社会,经历经历一些困难和挫折,然后这样的话你才能够快速的成长,是吧?事教人一次就会。

好,那么我们继续看咱们的正规方程。咱们说咱们通过最小的乘法求解出了正规方程,这个特别有用,对不对。看正规方程现在是不是就可以帮助我们去求解?这个多元一次方程呀。好,那么。咱们的最小的乘法之所以能够求解。

发现啊,这个最小二乘法它的公式呢,是HC塔Xi-Y,是不是带了一个平方,对不对啊,它带了一个平方,那么像这样的方程,如果咱们画图画出来。

是不是,你看它是不是一个抛物线形式啊,画图画出来的话,咱们给一个红色啊,啊就是这个方程,它大概是这样。

啊,画图画出来,那么它大概呢,就是一个这样的形式。它是抛物线形式的。

那现在呢,咱们就能够看到,但凡是这样的方程,那你想一定忽悠。

最小值对不对是吧,因为你看这个抛物线是吧,下面肯定有一个最小值对吧,那这个时候呢,咱们。咱们就要这个介绍一下这个凸函数这个概念啊。那什么样的函数是凸函数呢?咱们先看。那你看左边这个是凸函数还是右边这个是凸函数呀,那么很多根据直观是吧,你自己的这个知识,你肯定会判定左边这个是猪还是猪,在这里我要告诉你,右边这个是主函数。啊,因为凸函数这个概念,它来自欧美,来自美国。我们就把它翻译成了凸函数,其实人家美国是吧。呃,在进行文件说明的时候,人家还有一个词叫下凸,然后中国人翻译就把这个下给去掉了。所以说这个。咱看到的这个图函数,机器学习的图函数和咱们实际生活当中的这个汉字的这个概念是吧,稍微有点偏差,所以你加一个下图你就能够知道了。你看你一旦将下空,那很显然就是你的抛物线向上,那很显然它是不是就有最小值呀。

好,那么咱们先来基本概念,知道了是不是啊,这个函数是吧,我们把它叫做损失函数,那这个损失函数如果要是通函数的话。

还有一个好处就是我们,嗯,可以就是可以确定它呢,一定是这个它的极值呢,就是咱们的自由基。

他呢,一定是全局最优解。因为你这个方程是二次开口,它的开口向上,这个时候呢,你看咱们求导,0,导数等于0,是不是就可以求解最优值啊,对不对,所以说呢,这就是为什么我们要了解图函数概念。

另外一个问题就出来了,这个函数咱画出来图,简单的咱能够知道说他是下图,那如果给你一个函数,咱们怎么去判定呀。

对不对,如果他要不是图函数,它有没有这个最小值,有没有最优解呢?

对不对,那你看一下这个图形,看一下这个图片是不是你像这个它就是一个非突函数,看到了这个就是一个非凸函数,那就像连绵不绝的山脉一样,那这个时候呢。你看他们求解的是吧,比如说这个值是吧,它可能就会得到一个局部最优肌,而不是全局的,因为一旦你落到山谷,这个时候呢,你优化你就走不出来了,很可能就走不出来了,你就不能够走到全局的这个最小值。所以如果不是非同函数是吧,可能咱们有一个求解大解出来,它不是最最优的。那么上面呢,是我们平面的,接下来你看咱们也可以看一个立体的,你看立体左边的这个是吧,它就属于是图函数下凸函数是吧,右边这个就属于是非凸的是吧,立体的。来去,那我们如何判定呢?真正的问题了是吧?判断口函数的方式呢?哎,有很多,那么其中一个非常直观的有效的就是一个方法,就是看黑色矩阵是否是半正定。啊,这一个判定当中有两个非常关键的概念,首先是黑色矩阵,还有就是半程定,咱们看一下黑色矩阵啊。是什么?黑色矩阵是由目标函数点在X处的二阶偏导组成的对称矩阵啊,哎,这就是黑色矩阵,那我们先看黑色矩阵,因为我们上面推导咱们用的是最小的乘法推导正规方程是吧?那我们最后呢,已经求得了它的一界偏导数,看是不是就是它。那我们对一阶偏导数继续求导,咱们是不是就可以得到二阶电的500越位,继续对它求导啊,咱们就可以得到下面这个,一旦我们得到了下面这个是吧,它呢就叫做。啊,这个就叫做黑色矩阵,现在你明白什么是黑色矩阵了吧,这个是不是也很简单对吧,有个概念就行了,好,那么得到了这个黑色矩阵之后呢,大家看啊。

这个对咱们的式子来说,就是在导入的基础上,再次对C塔求导,其结果就是XTX,所谓正定。那接下来咱们看后半部分的概念,什么是正定呢?就是XTX,它的特征值全为正数,这个就是正明。

他这是正定的概念,半正定呢,就是XTX这个矩阵相乘是吧,咱们的特征值大于0就可以啊,特征值大于0就可以,这个就是半等性。

啊对,就是半个点,那我们上面的判断依据是黑色矩阵是否为半证点,如果要示范正定,那么它就属于是图函数,如果要不是半生点,比如说你的课程只有负的,对不对,对不对,那这个时候呢,你就不是那个函数。

啊,那么我们所求解的这个XT和X,它是半证定吗?对不对,你看他是半正病吗?显而易见它是半正经,为什么呢,你看。

咱们的黑色矩阵是XT和X相乘对不对?那这里咱们对C塔损失函数求二阶导数的黑色矩阵是XT和X,得到的一定是半正定的,是自己和自己做点儿成。

那么他呢,是自己和自己做顶称,那具体我们再说一下啊,为什么自己和自己做第二成,咱们得到的就是一定是半正定的。

对不对?那为什么一定犯成0,当X为任意大小的视矩阵时啊,再给一个任意的。

XT.

和X矩阵乘法一定是半正定,为什么呢?想要证明它是半正经,咱们可以考虑对于任意非零向要。

证明

和XT相乘,然后在后面再乘以V负就行。

这个呢,就涉及到咱们先行代数当中半正定的概念。

好,那么咱们呢,就让它相乘是吧,乘完之后呢,你看要注意这是一个这个四个矩阵相乘,咱们矩阵虽然不满足交换率,但是它可以结合对不对,那我们怎么结合呢。

前两个集合就是VT和XT进行结合,结合之后啊,这个时候环节。

就是这两个。

然后后面这两个集合。

因为前面是VTXT,那这个时候咱就可以把T提出来啊,提出来之后X提到前面,那就是XV啊,XV×XV就是XV的转置乘以XV的转置,这个时候它们俩进行相乘,咱们得到一个结果啊,那就是因为你是两个相乘嘛,那就是数2÷2X的平方,它一定是大于等于0的。

其中这个数杠数杠XV表示向量XV的范数,什么是范数呢?什么是范数,这个是一个概念是吧,就是你这两个区面相乘,然后来个开始放啊香肠乘完之后呢,来一个。

因此呢,一定是伴正定的,那到这里我相信各位小伙伴接受起来是吧,那就有一定的难度了。

OK, 咱们先来简化一下,你记住就行了,面试的时候你只要能够说出来主函数是什么,你就跟他强调一下,这就是下图。

把咱们机器学习当中的这个最小的乘法啊。那么它呢,就是一个凸函数。因为呢,我们对于它的最小值乘法二次求导,咱们能够得到这儿啊,能够得到这儿。

XT和X相乘,你知道它是半正定的就够了。

啊,当然我们知道数学它的证明和证明和验证是无止境的,是不是啊,我们学习这个是吧,咱们是为了应用啊,站到巨人的肩膀上,这就很好,所以说我们直接拿来用是吧,就可以了啊。

那这里呢,咱们就不再做数学推导证明了,哎,我也证明不了,太难了。

是吧,更高级的是吧,咱也证明不了,一体学习当中往往损失函数都是图函数物一样进行学习呢,就是咱们所说的常规的算法,就是咱们s learn当中的这些算法,那么到深度学习当中呢,算式函数往往是非度函数。

既然找到了姐妹,必是全局最优,那他不是?

最优解也可以,只要咱们的模型开用就行是吧?

机器学习的特点就是不强调模型百分之百正确,只要有价值开用就行,明白吗?那只要有价值开用就行。咱们从北京到深圳,你开奔驰宝马也能到,是不是啊,你开这个普通的汽车是不是也能到,你骑自行车、走路也能到。明白吗?所以说这个机器学习的特点是吧,他不强调模型百分之百正确,只要有价值开用就行。那你得有一个成本的这个考虑是吧,能够就可以。

好,最后呢,我们一起来看一下数据的配,就是这你看这个函数方程能画出来就是一个心角,好,那么呃,我把这个对这个美丽的数学图形呢,送给各位坚持学习的路飞小伙伴们,好,这一小节的内容我们就提录到这儿,那么到此为止呢,咱们正规方程的介绍我们就告一段落了,好,那么下面的课程当中呢,我们会使用正规方程,咱们呢,哎。实战一下是吧,我们使用正规方程来解决一个咱们的线性回归问题啊,使用正规方程来去解决咱们的线性规则问题,也就是说这个时候我们要算法建模了。好,那么呃,大家呢,梳理一下我的第二个大部分正规方程,咱们所讲的知识点,最小的乘法。最小二乘法当中的正规方程,我们使用正规方程对多元一次发生的求解矩阵的转置。求导公式,还有咱们推导正规方程,咱们。如何一步步进行推导的,还有咱们图函数的判定是吧?我们之所以能够对最小2乘法进行求最小值,求导数,定导数等于0去求最小值,原因就是因为咱们的这个最小儿乘法啊,注意啊,咱们的最小的乘法它也叫损失函数,就是那个GC塔。它呢是一个凸函数,所以咱们才可以对它进行求解。

3、线性回归实战

3.1、使用正规方程进行求解

3.1.1、简单线性回归
3.1.2、多元线性回归

3.2、机器学习库scikit-learn

3.2.1、scikit-learn简介
3.2.2、scikit-learn实现简单线性回归
3.2.3、scikit-learn实现多元线性回归

4、线性回归算法推导

4.1、深入理解回归

4.2、误差分析

4.3、最大似然估计

4.4、高斯分布-概率密度函数

4.5、误差总似然

4.6、最小二乘法MSE

4.7、归纳总结升华

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

2025最新软件测试面试大全(附答案+文档)

🍅 点击文末小卡片 ,免费获取软件测试全套资料,资料在手,涨薪更快 1、问:你在测试中发现了一个bug,但是开发经理认为这不是一个bug,你应该怎样解决? 首先,将问题提交到缺陷管理库里…

手写MVVM框架-环境搭建

项目使用 webpack 进行进行构建,初始化步骤如下: 1.创建npm项目执行npm init 一直下一步就行 2.安装webpack、webpack-cli、webpack-dev-server,html-webpack-plugin npm i -D webpack webpack-cli webpack-dev-server html-webpack-plugin 3.配置webpac…

如何自定义软件安装路径及Scoop包管理器使用全攻略

如何自定义软件安装路径及Scoop包管理器使用全攻略 一、为什么无法通过WingetUI自定义安装路径? 问题背景: WingetUI是Windows包管理器Winget的图形化工具,但无法直接修改软件的默认安装路径。原因如下: Winget设计限制&#xf…

数据结构实战之线性表(三)

目录 1.顺序表释放 2.顺序表增加空间 3.合并顺序表 4.线性表之链表实现 1.项目结构以及初始代码 2.初始化链表(不带头结点) 3.链表尾部插入数据并显示 4.链表头部插入数据 5.初始化链表(带头结点) 6.带头结点的链表头部插入数据并显示 7.带头结…

5.6 Mybatis代码生成器Mybatis Generator (MBG)实战详解

文章目录 前言一、Mybatis Generator简介二、Maven插件运行方式三、生成配置 generatorConfig.xml MyBatis3Simple风格MyBatis3风格MyBatis3DynamicSql风格 四、Java代码运行方式五、MGB生成全部表六、增加Ext包七、Git提交总结 前言 本文我们主要实战Mybatis官方的代码生成器…

DeepSeek:全栈开发者视角下的AI革命者

目录​​​​​​​ DeepSeek:全栈开发者视角下的AI革命者 写在前面 一、DeepSeek的诞生与定位 二、DeepSeek技术架构的颠覆性突破 1、解构算力霸权:从MoE架构到内存革命 2、多模态扩展的技术纵深 3、算法范式的升维重构 4、重构AI竞争规则 三、…

(篇一)基于PyDracula搭建一个深度学习的界面之添加启动界面

文章目录 基于PyDracula搭建一个深度学习的界面插入一个启动界面1启动页面的资源如何加载与管理?2启动界面的代码如何写? 基于PyDracula搭建一个深度学习的界面 插入一个启动界面 1启动页面的资源如何加载与管理? 1. 问题一 启动界面包含一…

无人机图传模块 wfb-ng openipc-fpv,4G

openipc 的定位是为各种模块提供底层的驱动和linux最小系统,openipc 是采用buildroot系统编译而成,因此二次开发能力有点麻烦。为啥openipc 会用于无人机图传呢?因为openipc可以将现有的网络摄像头ip-camera模块直接利用起来,从而…

拍照对比,X70 PRO与X90 PRO+的细节差异

以下是局部截图(上X70P下X90PP) 对比1 这里看不出差异。 对比2 X90PP的字明显更清楚。 对比3 中下的字,X90PP显然更清楚。

深度探索 C 语言操作符:从基础到实战应用

前言: 在 C 语言的编程体系中,操作符就像是一个个精密的齿轮,相互配合驱动着程序的运转。熟练掌握操作符的使用,不仅能编写出高效、简洁的代码,还能深入理解程序运行的底层逻辑。接下来,让我们一同深入探索…

从零开始实现一个双向循环链表:C语言实战

文章目录 1链表的再次介绍2为什么选择双向循环链表?3代码实现:从初始化到销毁1. 定义链表节点2. 初始化链表3. 插入和删除节点4. 链表的其他操作5. 打印链表和判断链表是否为空6. 销毁链表 4测试代码5链表种类介绍6链表与顺序表的区别7存储金字塔L0: 寄存…

简单本地部署deepseek(软件版)

Download Ollama on Windows 下载 下载安装 winr 输入 cmd 然后输入ollama -v,出现ollama版本,安装成功 deepseek-r1 选择1.5b 输入 cmd 下面代码 ollama run deepseek-r1:1.5b 删除deepseek的代码如下: ollama rm deepseek-r1:1.5b 使用…

21.2.1 基本操作

版权声明:本文为博主原创文章,转载请在显著位置标明本文出处以及作者网名,未经作者允许不得用于商业目的。 Excel的基本操作步骤: 1、打开Excel:定义了一个Application对象: Microsoft.Office.Interop.E…

SGlang 专为大模型设计的高效服务框架

SGlang 是一种专为大型语言模型(LLM)和视觉语言模型(VLM)设计的高效服务框架,旨在提升模型的推理速度和灵活性。以下是关于 SGlang 框架的详细介绍: 1. 框架背景与目标 SGlang 是一种快速服务框架&#x…

基于SpringBoot+vue高效旅游管理系统

Spring Boot后端与Vue前端融合:构建高效旅游管理系统 目录 一、项目简介 二、开发技术与环境配置 2.1 SpringBoot框架 2.2 Java语言简介 2.3 Vue的介绍 2.4 mysql数据库介绍 2.5 B/S架构 三、系统功能实现 四、系统项目截图 登录页面 后台管理页面 用户…

visual studio安装

一、下载Visual Studio 访问Visual Studio官方网站。下载 Visual Studio Tools - 免费安装 Windows、Mac、Linux 在主页上找到并点击“下载 Visual Studio”按钮。 选择适合需求的版本,例如“Visual Studio Community”(免费版本)&#x…

【HarmonyOS之旅】基于ArkTS开发(三) -> 兼容JS的类Web开发(四) -> 常见组件(一)

目录 1 -> List 1.1 -> 创建List组件 1.2 -> 添加滚动条 1.3 -> 添加侧边索引栏 1.4 -> 实现列表折叠和展开 1.5 -> 场景示例 2 -> dialog 2.1 -> 创建Dialog组件 2.2 -> 设置弹窗响应 2.3 -> 场景示例 3 -> form 3.1 -> 创建…

Java中的object类

1.Object类是什么? 🟪Object 是 Java 类库中的一个特殊类,也是所有类的父类(超类),位于类继承层次结构的顶端。也就是说,Java 允许把任何类型的对象赋给 Object 类型的变量。 🟦Java里面除了Object类,所有的…

manimgl安装

一、环境 笔记本 $ lsb_release -a No LSB modules are available. Distributor ID: Ubuntu Description: Ubuntu 22.04.5 LTS Release: 22.04 Codename: jammy二、安装miniconda3 manimgl基于python开发,为了防止将笔记本中已有的python环境破坏,因此…

c++中priority_queue的应用及模拟实现

1.介绍 priority_queue 是一种数据结构,它允许你以特定的顺序存储和访问元素。在 C 标准模板库(STL)中,priority_queue 是一个基于容器适配器的类模板,它默认使用 std::vector 作为底层容器,并且默认使用最…