【ML学习笔记】6:机器学习中的数学基础6(对角矩阵,对称矩阵,正交矩阵,特征分解)

本文主要是介绍【ML学习笔记】6:机器学习中的数学基础6(对角矩阵,对称矩阵,正交矩阵,特征分解),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

对角矩阵

对角矩阵不一定是个方阵,只要i≠j的位置元素值为0即可。但一般说对角矩阵,考虑的都是方阵的情况,对于方阵,那就是只有主对角线上的元素可以不为0,其它元素都是0。
主对角元从左上角到右下角的次序常常记为一个列向量:
这里写图片描述
然后以它们为主对角元的对角方阵就可以记为diag(v):
这里写图片描述

对角方阵和向量的标准乘积

对角矩阵和向量的乘积比较方便,可以表示成Hadamard乘积(元素对应乘积):
这里写图片描述
也就是把主对角元上的元素依次乘到向量的分量上去。

对角方阵求逆

对角矩阵求逆也很方便,只要把主对角线上每个元素变成其倒数就好:
这里写图片描述

对称矩阵

转置和自己相等的矩阵就是对称的,可见对称矩阵一定是个方阵,而且A[i][j]=A[j][i]。当某些不依赖参数顺序的双参数函数生成元素时,就经常会出现对称矩阵。
比如数据结构中学无向图时,邻接矩阵就是一个对称矩阵,因为i到j的权重和j到i的权重在无向图中是一样的(不依赖参数的顺序)。

单位向量e

具有单位L2范数的向量就是单位向量,也就是向量两端的欧几里徳距离等于1:
这里写图片描述

向量的正交

如果两个向量x和y的内积存在并且是0,那么这两个向量就是正交的。显然任意一个向量都会和同维度的零向量(L2范数为0的向量)正交,如果正交两个向量都不是零向量,它们的夹角就是90度。在n维的线性空间中,最多只能有n个非零向量互相正交。

向量的标准正交

如果一组单位向量互相正交,那么就称它们标准正交。

正交矩阵

行向量和列向量分别标准正交的方阵就是正交矩阵,显然单位矩阵I是一个特殊的正交矩阵。正交矩阵有这样的性质:
这里写图片描述
只要说明上面一条就行了,A转置的第i行,就是A的第i列,所以结果第i行第i列的元素就是两个一模一样的单位向量的内积,即是它的模1,所以整个主对角线上都是1。而对于那些i和j不相同的地方,因为相互正交,所以内积一定是0,所以除了主对角线上的其它位置的元素值都是0。

方阵的特征分解

这个在前面也了解过,特征分解可以把方阵A分解成一组特征向量和特征值。

方阵的特征向量和特征值

还是从这个经典的式子开始说:
这里写图片描述
一个n阶的方阵A乘以一个n维列向量v,相当于对这个列向量缩放了λ倍,那么这个v就是方阵A的一个特征向量,而λ是对应的特征值。这个特征向量是一个列向量,其实是右特征向量,其实也有左特征向量的(是一个行向量),但不太关注它。

特征向量有多少

如果找到了方阵A的一个特征向量v,那么v缩放非0的s倍的向量都是A的特征向量:
这里写图片描述
而且具有相同的特征值λ,因此特征向量如果有就有无穷多个,所以通常只考虑单位特征向量

特征分解式

如果n阶的方阵A有n个线性无关的特征向量v1~vn,对应特征值λ1~λn,定义方阵v和列向量λ:
这里写图片描述
则方阵A的特征分解如下:
这里写图片描述

证明特征分解

这一部分书上没有,自己推了一下,总之就是能从前面那个经典的式子推出特征分解的等式是成立的就可以。

从特征值和特征向量的定义式子Av=λv开始,展开也就是:
这里写图片描述
如果能找到方阵A的n个线性无关的特征向量,组成一个方阵V:
这里写图片描述
则方阵A右乘这个n个特征向量组成的方阵V,参考前面考虑的方阵A乘以特征向量v的展开式,可以得到:
这里写图片描述
(比较一下)
这里写图片描述
而要证的特征分解式中V和对角方阵diag(λ)的乘积:
这里写图片描述
(比较一下)
这里写图片描述
所以
这里写图片描述
因为前面说了找的是A的n个线性无关的特征向量v组成方阵V,所以方阵V的列向量是线性无关的,非奇异矩阵可逆。两边右乘V的逆矩阵:
这里写图片描述
这正是方阵的特征分解式。

有关特征分解还应知道的事

有时特征分解存在,但是会涉及复数(方阵可能没有实特征值,但一定有复特征值),但每个实对称矩阵都可以分解成实特征向量和实特征值
这里写图片描述
其中A是实对称矩阵,Q是A的特征向量组成的正交矩阵,Λ是特征值构成的对角矩阵(逆和转置相同),特征值Λ[i][i]对应于特征向量Q[:][i]。

具有特定特征值和特征向量的方阵,可以在特定的方向上延伸空间,比如拿前面推导中用的方阵A及其特征分解式中的特征向量组矩阵V来讲:
这里写图片描述
因为特征向量v1~vn都是相互正交的,所以一定可以看成n维线性空间的一组基,而用这个矩阵A去乘这个向量组构成的矩阵,也就是在这n个方向i上分别延伸之前的特征向量vi,延伸的倍数正是特征值λi。

反映在空间中,正交向量的延伸(以二维为例子):
这里写图片描述

定(definite)和特征值

正定矩阵:所有特征值都是正数的方阵。
半正定矩阵:所有特征值都是非负数的方阵。
负定矩阵:所有特征值都是负数的方阵。
半负定矩阵:所有特征值都是非正数的方阵。

这篇关于【ML学习笔记】6:机器学习中的数学基础6(对角矩阵,对称矩阵,正交矩阵,特征分解)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/474103

相关文章

C#基础之委托详解(Delegate)

《C#基础之委托详解(Delegate)》:本文主要介绍C#基础之委托(Delegate),具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1. 委托定义2. 委托实例化3. 多播委托(Multicast Delegates)4. 委托的用途事件处理回调函数LINQ

Java进阶学习之如何开启远程调式

《Java进阶学习之如何开启远程调式》Java开发中的远程调试是一项至关重要的技能,特别是在处理生产环境的问题或者协作开发时,:本文主要介绍Java进阶学习之如何开启远程调式的相关资料,需要的朋友... 目录概述Java远程调试的开启与底层原理开启Java远程调试底层原理JVM参数总结&nbsMbKKXJx

0基础租个硬件玩deepseek,蓝耘元生代智算云|本地部署DeepSeek R1模型的操作流程

《0基础租个硬件玩deepseek,蓝耘元生代智算云|本地部署DeepSeekR1模型的操作流程》DeepSeekR1模型凭借其强大的自然语言处理能力,在未来具有广阔的应用前景,有望在多个领域发... 目录0基础租个硬件玩deepseek,蓝耘元生代智算云|本地部署DeepSeek R1模型,3步搞定一个应

Java深度学习库DJL实现Python的NumPy方式

《Java深度学习库DJL实现Python的NumPy方式》本文介绍了DJL库的背景和基本功能,包括NDArray的创建、数学运算、数据获取和设置等,同时,还展示了如何使用NDArray进行数据预处理... 目录1 NDArray 的背景介绍1.1 架构2 JavaDJL使用2.1 安装DJL2.2 基本操

使用C#代码计算数学表达式实例

《使用C#代码计算数学表达式实例》这段文字主要讲述了如何使用C#语言来计算数学表达式,该程序通过使用Dictionary保存变量,定义了运算符优先级,并实现了EvaluateExpression方法来... 目录C#代码计算数学表达式该方法很长,因此我将分段描述下面的代码片段显示了下一步以下代码显示该方法如

MySQL中my.ini文件的基础配置和优化配置方式

《MySQL中my.ini文件的基础配置和优化配置方式》文章讨论了数据库异步同步的优化思路,包括三个主要方面:幂等性、时序和延迟,作者还分享了MySQL配置文件的优化经验,并鼓励读者提供支持... 目录mysql my.ini文件的配置和优化配置优化思路MySQL配置文件优化总结MySQL my.ini文件

HarmonyOS学习(七)——UI(五)常用布局总结

自适应布局 1.1、线性布局(LinearLayout) 通过线性容器Row和Column实现线性布局。Column容器内的子组件按照垂直方向排列,Row组件中的子组件按照水平方向排列。 属性说明space通过space参数设置主轴上子组件的间距,达到各子组件在排列上的等间距效果alignItems设置子组件在交叉轴上的对齐方式,且在各类尺寸屏幕上表现一致,其中交叉轴为垂直时,取值为Vert

Ilya-AI分享的他在OpenAI学习到的15个提示工程技巧

Ilya(不是本人,claude AI)在社交媒体上分享了他在OpenAI学习到的15个Prompt撰写技巧。 以下是详细的内容: 提示精确化:在编写提示时,力求表达清晰准确。清楚地阐述任务需求和概念定义至关重要。例:不用"分析文本",而用"判断这段话的情感倾向:积极、消极还是中性"。 快速迭代:善于快速连续调整提示。熟练的提示工程师能够灵活地进行多轮优化。例:从"总结文章"到"用

【前端学习】AntV G6-08 深入图形与图形分组、自定义节点、节点动画(下)

【课程链接】 AntV G6:深入图形与图形分组、自定义节点、节点动画(下)_哔哩哔哩_bilibili 本章十吾老师讲解了一个复杂的自定义节点中,应该怎样去计算和绘制图形,如何给一个图形制作不间断的动画,以及在鼠标事件之后产生动画。(有点难,需要好好理解) <!DOCTYPE html><html><head><meta charset="UTF-8"><title>06

学习hash总结

2014/1/29/   最近刚开始学hash,名字很陌生,但是hash的思想却很熟悉,以前早就做过此类的题,但是不知道这就是hash思想而已,说白了hash就是一个映射,往往灵活利用数组的下标来实现算法,hash的作用:1、判重;2、统计次数;