【深度学习与实战】2.3、线性回归模型与梯度下降法先导案例--最小二乘法(向量形式求解)

news2025/4/7 18:47:49

为了求解损失函数 loss = (f(x)-y)^2 = (wx-y)^2对 w 的导数,并利用最小二乘法向量形式求解 w 的值‌

这是‌线性回归‌的平方误差损失函数,目标是最小化预测值 X_w 与真实值 y 之间的差距。

损失函数‌:
考虑多个样本的情况,损失函数为所有样本的平方误差之和:

L = (Xw-Y)^2

                      =( X w-Y )^{\top} ( X w-Y )

                                                         =w^{\mathsf{T}} X^{\mathsf{T}} X w-Y^{\mathsf{T}} X w-w^{\mathsf{T}} X^{\mathsf{T}} Y+Y^{\mathsf{T}} Y

  • L 是损失函数
  • X 是 n\times m 的设计矩阵(n个样本,m个特征)。
  • w是 m\times 1 的权重向量。
  • Y是 n\times 1 的目标值向量。
  • 对于两个列向量\partialb,它们的点积(内积)就是\partial ^Tb,  \partial ^T是向量 \partial 的转置

针对 f(x) =w^{\mathsf{T}} X^{\mathsf{T}} X w-Y^{\mathsf{T}} X w-w^{\mathsf{T}} X^{\mathsf{T}} Y+Y^{\mathsf{T}} Y函数求导,有一下性质:

\frac{\partial AB}{\partial B} = A^T,\frac{\partial A^TB}{\partial A} = B,\frac{\partial C^TAC}{\partial C} = 2AC

对每项求导 
 第一项   w^{\mathsf{T}} X^{\mathsf{T}} X w

        将 \frac{\partial C^TAC}{\partial C} = 2AC 公式代入得

        X^T \cdot w^T X w  \Rightarrow  X^T\cdot 2AC \Rightarrow 2X^TXw

        w^{\mathsf{T}} X^{\mathsf{T}} X w  = 2X^TXw

        其中  w^T  为 C^TX 为 Aw 为 c

第二项  Y^{\mathsf{T}} X w

        将 \frac{\partial AB}{\partial B} = A^T 公式代入得

       Y^{\mathsf{T}} X \cdot w\Rightarrow A^T \Rightarrow (Y^{\mathsf{T}} X)^T

         Y^{\mathsf{T}} X w = (Y^{\mathsf{T}} X)^T

        其中 Y^{\mathsf{T}} X 为 A,w 为 B

第三项 w^{\mathsf{T}} X^{\mathsf{T}} Y

        将 \frac{\partial A^TB}{\partial A} = B 代入得

        w^{\mathsf{T}} \cdot X^{\mathsf{T}} Y\Rightarrow B\Rightarrow X^{\mathsf{T}} Y

        w^{\mathsf{T}} X^{\mathsf{T}} Y = X^{\mathsf{T}} Y

        其中 w^T 为 A^T,X^{\mathsf{T}} Y 为 B

第四项 没有 w 看作常数项 常数项的导数为0
合并项得

        f(x) =w^{\mathsf{T}} X^{\mathsf{T}} X w-Y^{\mathsf{T}} X w-w^{\mathsf{T}} X^{\mathsf{T}} Y+Y^{\mathsf{T}} Y

     = 2X^TXw-(Y^{\mathsf{T}} X)^T-X^{\mathsf{T}} Y+0

=2X^TXw-X^{\mathsf{T}} Y-X^{\mathsf{T}} Y         

=2X^TXw-2X^{\mathsf{T}} Y                      

=2(X^TXw-X^{\mathsf{T}} Y)                     

 令 \frac{\partial f(w)}{\partial w} = 0,得

 2(X^TXw-X^{\mathsf{T}} Y) = 0

X^TXw=X^{\mathsf{T}} Y

(X^TX)^{-1}X^TXw=(X^TX)^{-1}X^{\mathsf{T}} Y (X^TX 可逆时)

w=(X^TX)^{-1}X^{\mathsf{T}} Y

(X^TX)(X^TX)^{-1}互为逆矩阵  (X^TX)(X^TX)^{-1} = 1

得出结果
   w=(X^TX)^{-1}X^{\mathsf{T}} Y

解释:

(X^TX)(X^TX)^{-1} = 1,(X^TX)(X^TX)^{-1}互逆

逆矩阵的定义

如果 B是 A的逆矩阵,则满足:

AB=BA=I(单位矩阵 类似于数值乘法中的 1)

 即无论 A左乘还是右乘 B,结果均为单位矩阵。

必要条件 

AB必须是方阵(行数=列数)

A必须可逆,矩阵的行列式不为零(即行列式 det(A) \neq 0

直观理解

 逆矩阵的作用类似于“倒数”。例如,数值中 2\times \frac{1}{2} = 1,类似地,矩阵中 A\times A^{-1} = I

单位矩阵 I在矩阵乘法中的作用类似于数值乘法中的 1。

示例验证

取矩阵 A=\begin{bmatrix} 1 & 2 \\ 3& 4 \end{bmatrix},其行列式det(A) = -2 \neq 0,故可逆。

计算逆矩阵:

A^{-1} = \frac{1}{det(A)}\begin{bmatrix} 4 &-2 \\ -3& 1 \end{bmatrix}= \frac{1}{-2}\begin{bmatrix} 4 &-2 \\ -3& 1 \end{bmatrix}= \begin{bmatrix} -2 &1 \\ \frac{3}{2}& -\frac{1}{2} \end{bmatrix}

(1) 第一行第一列的元素 (C_{11}​)

C_{11}=\frac{1}{-2}\times 4=-2

(2) 第一行第二列的元素 (C_{12}​)

C_{12}=\frac{1}{-2}\times -2 = 1

(3) 第一行第二列的元素 (C_{21}​)

C_{21}=\frac{1}{-2}\times -3 = \frac{3}{2}

(4) 第一行第二列的元素 (C_{22}​)

C_{22}=\frac{1}{-2}\times 1 =- \frac{1}{2}

 

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

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

相关文章

【Django】教程-2-前端-目录结构介绍

【Django】教程-1-安装创建项目目录结构介绍 3. 前端文件配置 3.1 目录介绍 在app下创建static文件夹, 是根据setting中的配置来的 STATIC_URL ‘static/’ templates目录,编写HTML模板(含有模板语法,继承,{% static ‘xx’ …

详解list容器

1.list的介绍 list的底层结构是双向带头循环链表,允许随机的插入和删除,但其内存空间不是连续的。随机访问空间能力差,需要从头到尾遍历节点,不像vector一样高效支持 2.list的使用 构造函数 1.默认构造函数:创建一个…

leetcode_977. 有序数组的平方_java

977. 有序数组的平方https://leetcode.cn/problems/squares-of-a-sorted-array/ 1.题目 给你一个按 非递减顺序 排序的整数数组 nums,返回 每个数字的平方 组成的新数组,要求也按 非递减顺序 排序。 示例 1: 输入:nums [-4,-1…

网络探索之旅:网络原理(第二弹)

上篇文章,小编分享了应用层和传输层深入的一点的知识,那么接下来,这篇文章,继续分享网络层和数据链路层。 网络层 了解这个网络层,那么其实就是重点来了解下IP这个协议 对于这个协议呢,其实也是和前面的…

深入剖析 JVM:从组成原理到调优实践

深入剖析 JVM:从组成原理到调优实践 深入剖析 JVM:从组成原理到调优实践一、JVM 组成架构:运行 Java 程序的 “幕后引擎”1.1 内存结构:数据存储的 “分区管理”1.2 执行引擎:字节码的 “翻译官”1.3 本地方法接口&…

阿里云下一代可观测时序引擎-MetricStore 2.0

作者:徐昊(博澍) 背景 作为可观测场景使用频度最高的数据类型,Metrics 时序数据在可观测领域一直占有着重要地位,无论是从全局视角来观测系统整体状态,还是从大范围数据中定位某一个异常的位置&#xff0…

从入门到精通【 MySQL】 数据库约束与设计

文章目录 📕1. 数据库约束✏️1.1 NOT NULL 非空约束✏️1.2 DEFAULT 默认值约束✏️1.3 UNIQUE 唯一约束✏️1.4 PRIMARY KEY 主键约束✏️1.5 FOREIGN KEY 外键约束✏️1.6 CHECK 约束 📕2. 数据库设计✏️2.1 第一范式✏️2.2 第二范式✏️2.3 第三范…

Dubbo 通信流程 - 服务的调用

Dubbo 客户端的使用 在 Dubbo 应用中,往类成员注解 DubboReference,服务启动后便可以调用到远端: Component public class InvokeDemoFacade {AutowiredDubboReferenceprivate DemoFacade demoFacade;public String hello(String name){// …

【数据结构】哈夫曼树

哈夫曼树 在学习哈夫曼树之前,先了解以下几个概念: 一:**路径长度:**在一棵树中,从一个节点到另一个节点所经过的“边”的数量,被我们称为两个节点之间的路径长度。 二:**树的路径长度&#xf…

HCIP(TCP)(2)

1. TCP三次握手 SYN (同步序列编号) 报文: 客户端发送 SYN 报文,开始建立连接,并初始化序列号。 SYN-ACK (同步序列编号-确认) 报文: 服务器收到 SYN 报文后,回复 SYN-ACK 报文,确认连接请求,并初始化自己的序列号和确…

基于Web的交互式智能成绩管理系统设计

目录 摘要 绪论 一、应用背景 二、行业发展现状 三、程序开发的重要意义 四、结语 1 代码 2 数据初始化模块 3 界面布局模块 4 核心功能模块 5 可视化子系统 6 扩展功能模块 7 架构设计亮点 功能总结 一、核心数据管理 二、智能分析体系 三、可视化系统 四、扩…

k8s日志管理

k8s日志管理 k8s查看日志查看集群中不是完全运行状态的pod查看deployment日志查看service日志进入pod的容器内查看日志 管理k8s组件日志kubectl logs查看日志原理 管理k8s应用日志收集k8s日志思路收集标准输出收集容器中日志文件 k8s查看节点状态失败k8s部署prometheus监控 k8s…

element-plus中,Loading 加载组件的使用

一.基本使用 给一个组件&#xff0c;如&#xff1a;table表格&#xff0c;加上v-loading"true"即可。 举例&#xff1a;复制如下代码。 <template><el-table v-loading"loading" :data"tableData" style"width: 100%"><…

Mybatis_Plus中的常用注解

目录 1、TableName TableId TableId的type属性 TableField 1、TableName 经过以上的测试&#xff0c;在使用MyBatis-Plus实现基本的CRUD时&#xff0c;我们并没有指定要操作的表&#xff0c;只是在 Mapper接口继承BaseMapper时&#xff0c;设置了泛型User&#xff0c;而操…

高并发金融系统,“可观测-可追溯-可回滚“的闭环审计体系

一句话总结 在高并发金融系统中&#xff0c;审计方案设计需平衡"观测粒度"与"系统损耗"&#xff0c;通过双AOP实现非侵入式采集&#xff0c;三表机制保障操作原子性&#xff0c;最终形成"可观测-可追溯-可回滚"的闭环体系。 业务痛点与需求 在…

企业内训|DeepSeek技术革命、算力范式重构与场景落地洞察-某头部券商

3月19日北京&#xff0c;TsingtaoAI公司负责人汶生受邀为某证券公司管理层和投资者举办专题培训&#xff0c;围绕《DeepSeek技术革命、算力范式重构与场景落地洞察》主题&#xff0c;系统阐述了当前AI技术演进的核心趋势、算力需求的结构性变革&#xff0c;以及行业应用落地的关…

VS Code C/C++项目设置launch.json中的environment参数解决支持库路径问题

问题描述 Windows 11 VS Code C/C 开发环境搭建分别写了c和cpp两个示例代码&#xff0c;在运行过程中c代码没有发现问题&#xff08;可能简单&#xff0c;没有用到太多支持&#xff09;&#xff0c;但使用了stl的cpp代码并没有运行出来&#xff0c;如下图&#xff1a; 出问题…

怎样解决 Windows 11 上的 DirectX 错误,最新DX 问题解决方法

在使用 Windows 11 操作系统的过程中&#xff0c;大家可能会遇到 DirectX 错误的情况&#xff0c;这可能会给游戏体验、多媒体应用甚至是系统的整体性能带来负面影响。不过别担心&#xff0c;本文将为大家详细介绍如何解决 Windows 11 上的 DirectX 错误&#xff0c;让您的系统…

PH热榜 | 2025-03-30

1. Deepcord 标语&#xff1a;Discord 数据分析&#xff1a;获取指标洞察与受众研究 介绍&#xff1a;Deepcord&#xff1a;为社区建设者提供的Discord分析工具。跟踪超过50万个服务器的指标&#xff0c;发现热门社区&#xff0c;监控竞争对手&#xff0c;找到你的目标受众。…