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

2023-简单点-机器学习中矩阵向量求导

机器学习中矩阵向量求导的概念是什么?

在机器学习中,矩阵向量求导的概念主要涉及对函数中的矩阵或向量参数进行求导运算。这种求导运算可以帮助我们了解函数值随参数的变化情况,进而应用于优化算法中。具体来说,当损失函数是一个关于模型参数(通常表示为矩阵或向量)的函数时,我们需要计算损失函数关于模型参数的导数,即梯度。这个梯度可以用来更新模型参数,使得损失函数值降低,从而提高模型的性能。

矩阵向量求导可以分为多种类型,包括向量对标量的求导、向量对向量的求导、以及矩阵对矩阵的求导等。每种类型都有其特定的定义和计算规则。例如,向量对标量的求导实际上是对向量中的每个分量分别对标量进行求导,并将结果按向量形式排列。而矩阵对矩阵的求导则更为复杂,涉及到矩阵间的逐元素求导和排列方式等问题。

在机器学习的实际应用中,我们通常使用数值方法来计算雅可比矩阵和梯度等,例如使用有限差分法或反向传播算法等。这些方法可以帮助我们有效地计算梯度并更新模型参数,从而实现模型的优化和训练。

求导的布局?

矩阵求导的两种布局分别是分子布局(Numerator Layout)和分母布局(Denominator Layout)。

大牛链接
在这里插入图片描述

全文就这句最重要
总而言之,所谓的向量矩阵求导本质上就是多元函数求导,仅仅是把把函数的自变量,因变量以及标量求导的结果排列成了向量矩阵的形式,方便表达与计算,更加简洁而已。

所有的都可对标量的求导,然后根据布局构成最终的结果。

对标量求导

  • 分子布局,我们求导结果的维度以分子为主,对于标量求导,结果的维度和分子的维度是一致的。也就是说,如果向量y是一个m维的列向量,那么求导结果也是一个m维列向量。如果如果向量y是一个m维的行向量,那么求导结果也是一个m维行向量。
  • 分母布局,我们求导结果的维度以分母为主,对标量求导,如果向量y是一个m维的列向量,那么求导结果是一个m维行向量。如果如果向量y是一个m维的行向量,那么求导结果是一个m维的列向量向量.

上面的是对标量的求导,那么对向量的求导呢?

对向量求导

在这里插入图片描述
参考

如何记住这么多的求导?如何推到没见过的呢?

有三种方法

1 定义法

逮着向量中的标量进行求导:

这里是引用

总结一下, 转化为对每一标量求导,然后进行布局

这里是引用
大家自己推一推

巩固一下
在这里插入图片描述

常见的规则

在这里插入图片描述

2 微分法

这个就有点不显而易见了

这里是引用

涉及到 trace了,背景知识如下

这里是引用

举例背诵

这里是引用

终于背完了,那么开始

这里是引用

自己趁热打铁一下:

这里是引用

3 链式法则法

这里是引用

在这里插入图片描述
趁热打铁一下:

这里是引用
下面的也可自己推导一下:
在这里插入图片描述

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

相关文章:

  • 帮管客CRM SQL注入漏洞复现
  • 如何编写自己的python包,并在本地进行使用
  • xv6 磁盘中断流程和启动时调度流程
  • Spring Security 6.x 系列(6)—— 显式设置和修改登录态信息
  • Linux的软件安装
  • 443. 压缩字符串
  • Python面经【6】
  • 2020年6月9日 Go生态洞察:VS Code Go扩展加入Go项目
  • C语言错误处理之“非局部跳转<setjmp.h>头文件”
  • 【SpringCloud】微服务架构设计模式
  • 【EI会议征稿】第三届航空航天工程与系统国际研讨会(ISAES 2024)
  • 唯创知音WT588F02A-16S录音语音芯片在宠物喂食器中的应用:小芯片,大功能
  • SELinux零知识学习三十七、SELinux策略语言之约束(1)
  • sqli-labs靶场详解(less25/25a-less28/28a)
  • 如何优化 Elasticsearch 查询性能
  • 成功的蓝图:实现长期成长与卓越表现的 6 项策略
  • 【JavaEE初阶】认识线程、创建线程
  • uniapp中uni.navigateBack返回后刷新页面数据
  • sed文本 免交互
  • 轻巧高效的剃须好工具,DOCO黑刃电动剃须刀上手
  • 第15关 K8s HPA:自动水平伸缩Pod,实现弹性扩展和资源优化
  • 接口测试工具(Jmeter)必学技巧
  • C++面试,说明const和#define的特点和区别
  • aikit 2023 3D与机械臂结合!
  • 模拟退火算法应用——求解TSP问题
  • 【LeetCode】每日一题 2023_11_28 设计前中后队列(数组/链表/双端队列)
  • python基于YOLOv8全系列模型【n/s/m/l/x】开发构建不同参数量级的钢铁产业产品智能自动化检测识别系统
  • 力扣142. 环形链表 II
  • 【设计模式-2.2】创建型——简单工厂和工厂模式
  • 将文件读入C中的字符数组