【老计带你懂线性代数】09:特征值与特征向量,矩阵最本质的方向
【老计带你懂线性代数】09特征值与特征向量矩阵最本质的方向开头矩阵也有它的脾气从这一篇开始我们进入线性代数里最有魔力、也是AI最倚重的部分。特征值和特征向量名字听着吓人但它抓住的东西极其深刻一个矩阵变换最本质的性格藏在它的特征值和特征向量里。PCA降维靠它、谷歌的PageRank靠它、很多AI里的谱方法、稳定性分析都靠它。可以说理解了特征值和特征向量你就拿到了打开AI很多核心算法的钥匙。这一篇不堆公式用几何直觉把它讲透。一个变换里的特殊方向回忆第06篇一个矩阵就是对空间的一次变换旋转、缩放、拉扯。变换发生时空间里绝大多数向量方向都会被改变它们被转向了别处。但是有那么几个特殊的方向变换之后方向纹丝不动只是被拉长或缩短了。这些方向上的向量就是特征向量被拉长或缩短的倍数就是特征值。用大白话说特征向量是这个变换的骨干方向变换再怎么折腾整个空间这几个方向始终指着原来的朝向或恰好反向只是长度变了。特征值告诉你在这个骨干方向上变换到底是拉伸大于1、压缩0到1之间、还是翻转负数。打个比方想象你揉捏一块橡皮泥变换空间大部分纹路都被揉得改变了方向乱成一团。但有几条特殊的纹路你怎么揉它们始终指着原来的方向只是变长了或变短了。这几条打不弯的纹路就是特征向量它们各自变长变短的倍数就是特征值。它们是这次揉捏动作骨子里的主方向。这里要打消一个顾虑怎么求出特征值和特征向量你完全不用手算。手工求解要解一个叫特征方程的东西几阶以上就非常繁琐那是数学课折磨人的地方。但在AI和工程里这活儿百分之百交给计算机NumPy一行np.linalg.eig就把所有特征值特征向量给你算出来了又快又准。你要掌握的不是怎么算而是算出来的东西是什么意思、能拿来干什么。这也是这个系列一贯的立场理解直觉和用途把计算交给工具。就像你开车不需要会造发动机用特征值不需要会手工求解。抓住方向不变、只被缩放的主方向这个含义知道它能帮你找出数据或变换的主结构会用NumPy求出来并解读对搞AI的人就完全够用了。真正重要的是下一篇要讲的怎么把它用到降维上让这个抽象工具变成实实在在的本领。为什么它揭示了矩阵的本质为什么说特征向量特征值抓住了矩阵的本质因为它们把一个复杂的变换拆解成了几个最简单的动作在几个特定方向上的纯拉伸缩放。一个矩阵作用在空间上看起来又转又拉、很复杂。但如果你站在它的特征向量方向上看一切都变得极简在这些方向上变换什么花样都没有就是单纯地按特征值倍数拉伸。特征向量给了我们一副看穿这个变换的眼镜透过它复杂的变换现出了最朴素的本来面目。而且特征值的大小直接告诉你哪个方向是这个变换里最重要、影响最大的方向。特征值最大的那个特征向量是变换拉伸得最狠的方向往往就是数据里信息最集中、最主要的方向。这一点是PCA的直接基础下一篇会看到找数据里方差最大的主方向就是找协方差矩阵最大特征值对应的特征向量。一个生活化的例子找到人群的主方向为了让特征向量特征值更接地气举个数据分析的画面。想象一堆人的身高体重数据画成散点图。你会发现这堆点大致沿着一个方向拉成一个椭圆因为身高和体重是正相关的高的人往往也重。这堆数据的分布可以用一个矩阵协方差矩阵来描述。而这个矩阵的特征向量恰好指向数据散布的主方向和次方向。最大特征值对应的特征向量指向椭圆的长轴也就是数据变化最大、最主要的方向身高体重一起增长的那个综合趋势小特征值对应的特征向量指向短轴是次要的、变化小的方向。看特征向量帮我们从一堆杂乱的点里自动找出了它们分布的骨架方向。这正是它在数据分析里的核心价值从数据里提取出最主要的变化方向。你如果只想用一个数字概括每个人降到一维最好的办法就是把他们投影到那条长轴最大特征向量上这个投影保留了最多的信息。这就是下一篇PCA的核心思想而它的引擎正是特征值和特征向量。理解了这个画面PCA对你就不再是黑箱。输入和输出长什么样输入一个方阵特征值特征向量只对方阵有定义。输出一组特征值每个是一个数和对应的一组特征向量每个是一个向量。一个n乘n的矩阵通常有n个特征值和特征向量。NumPy里用np.linalg.eig一次求出所有特征值和特征向量。上代码找出矩阵的特征值和特征向量# 依赖pip install numpyimportnumpyasnp# 一个变换矩阵Anp.array([[2,0],[0,3]])# 这个对角矩阵含义:横方向拉2倍、纵方向拉3倍# 直觉上,横轴和纵轴就是它的特征方向,特征值分别是2和3eigenvalues,eigenvectorsnp.linalg.eig(A)print(特征值:,eigenvalues)# [2. 3.]print(特征向量(每一列是一个):\n,eigenvectors)# 验证特征向量的定义:矩阵乘特征向量 特征值乘特征向量(方向不变,只缩放)veigenvectors[:,1]# 取第二个特征向量print(\n验证第二个特征向量:)print( A乘v ,A v)print( 特征值乘v ,eigenvalues[1]*v)print( 两者相等,说明A作用在v上只是把它拉长了,方向没变)# 一个更一般的矩阵(不是对角的),特征方向就没那么显然了Bnp.array([[2,1],[1,2]])vals,vecsnp.linalg.eig(B)print(\n矩阵B的特征值:,np.round(vals,3))# [3. 1.]print(B的特征向量:\n,np.round(vecs,3))print(最大特征值3对应的方向,是B拉伸得最狠、最主要的方向)# 对比:一个普通向量会被改变方向unp.array([1,0])print(\n普通向量[1,0]经B变换后:,B u,(方向被改变了,不是特征向量))运行输出示例特征值: [2. 3.] 特征向量(每一列是一个): [[1. 0.] [0. 1.]] 验证第二个特征向量: A乘v [0. 3.] 特征值乘v [0. 3.] 两者相等,说明A作用在v上只是把它拉长了,方向没变 矩阵B的特征值: [3. 1.] B的特征向量: [[ 0.707 -0.707] [ 0.707 0.707]] 最大特征值3对应的方向,是B拉伸得最狠、最主要的方向 普通向量[1,0]经B变换后: [2 1] (方向被改变了,不是特征向量)运行你会看到对角矩阵A的特征值就是2和3横纵方向的拉伸倍数、特征向量就是横轴纵轴验证了A乘特征向量等于特征值乘特征向量方向不变只缩放矩阵B的特征值是3和1最大特征值3对应的方向是它拉伸最狠的主方向而普通向量[1,0]经B变换后方向改变了说明它不是特征向量。核心就是那个验证特征向量经过变换方向不变、只被按特征值缩放这就是它的定义。在AI里怎么用特征值特征向量是AI里一批核心算法的共同基石PCA降维数据协方差矩阵的特征向量就是主成分特征值大的方向就是方差大、信息多的方向第10篇会彻底讲透呼应《老计带你懂AI算法》的PCA篇。PageRank谷歌搜索的起家算法把网页链接关系写成矩阵它的主特征向量就给出了每个网页的重要性排名。特征向量在这里成了谁最重要的答案。谱聚类用矩阵的特征向量来做聚类处理复杂形状的数据。稳定性与动力学分析特征值的大小决定一个系统是收敛还是发散在优化、循环网络的稳定性里有用。一句话凡是要找一个矩阵或一堆数据里最主要、最本质的方向基本都会用到特征值和特征向量。它是从数据里提取主结构的通用工具。这里补一个对PCA很关键的知识点对称矩阵的特征向量特别好、特别听话。什么是对称矩阵就是沿对角线翻折后和自己一样的方阵。AI里一个极重要的矩阵数据的协方差矩阵描述各特征之间怎么一起变化的恰好就是对称矩阵。对称矩阵有两个漂亮性质它的特征值一定是实数不会冒出复数来添乱而且不同特征值对应的特征向量互相垂直正交。互相垂直意味着这些主方向彼此独立、不重叠正好可以当作一组理想的新坐标轴。打个比方对称矩阵的特征向量就像给数据量身定做的一套横平竖直、互不干涉的新坐标系。这为什么重要因为下一篇的PCA正是要给数据换一套更好的坐标系还记得第07篇说的换基吗而协方差矩阵是对称的保证了PCA找出的那些主成分方向天然互相垂直、干净利落用起来毫无后顾之忧。你现在不用深究只要记住协方差矩阵是对称的、它的特征向量正交又是实数这是PCA能优雅工作的数学保障。这个铺垫会让你下一篇看PCA时格外顺畅。常见误区特征值特征向量只对方阵有定义长方形矩阵没有但有下下篇讲的奇异值是它的推广。特征向量的长度不重要方向才重要NumPy给出的是长度归一化的版本你也可以随意缩放它还是特征向量。不是所有方阵都有实数特征值比如纯旋转矩阵的特征值是复数因为旋转没有方向不变的实向量但AI里常用的对称矩阵如协方差矩阵一定有实特征值不用担心。别被名字劝退抓住变换中方向不变、只被缩放的特殊方向这一个画面就够用了。小结与承上启下特征向量变换中方向纹丝不动、只被拉伸缩短的特殊方向是变换的骨干方向。特征值对应特征向量被拉伸缩短的倍数正是拉伸、负是翻转、绝对值是缩放程度。为什么重要它把复杂变换拆成几个方向上的纯缩放揭示矩阵本质特征值最大的方向是最主要的方向。AI应用PCA、PageRank、谱聚类、稳定性分析的共同基石用来提取数据的主结构。我们知道了特征值特征向量能找出矩阵的主方向。下一篇就把它用起来讲特征分解与PCA看数据协方差矩阵的特征向量怎么就成了主成分把降维这件事从线代的根上彻底讲透和前面两个系列的PCA彻底打通。我们下一篇见。延伸阅读3Blue1Brown《线性代数的本质》特征值与特征向量这一集的几何讲解堪称经典https://www.3blue1brown.com/topics/linear-algebraNumPy 官方文档np.linalg.eighttps://numpy.org/doc/stable/reference/generated/numpy.linalg.eig.htmlPageRank 与特征向量的关系可按关键词PageRank eigenvector检索说明以上为官方与经典公开资料地址可能随版本调整如打不开可用标题搜索。

相关新闻

.NET 11 - ASP.NET Core 支持使用Zstandard进行压缩和解压缩

.NET 11 - ASP.NET Core 支持使用Zstandard进行压缩和解压缩

1. 简单介绍 微软在2026/10/13发布了.NET11 Release Candidate 2,11月微软将会发布.NET11正式版,这是一个STS版本(Standard Term Support),微软提供两年支持。当前需要安装Visual Studio Code with the C# Dev Kit或者Visual Studio 2026 In…

2026/10/18 9:59:08 阅读更多 →
(论文速读)PAConv:通过动态卷积核组装实现点云位置自适应卷积

(论文速读)PAConv:通过动态卷积核组装实现点云位置自适应卷积

论文题目: PAConv: Position Adaptive Convolution with Dynamic Kernel Assembling on Point Clouds(PAConv:面向点云的动态卷积核组装位置自适应卷积) 会议: CVPR 2021 摘要: 本文提出位置自适应卷积&am…

2026/10/17 6:51:00 阅读更多 →
EMUI8开机执行sh脚本:修改ramdisk与init.rc的完整指南

EMUI8开机执行sh脚本:修改ramdisk与init.rc的完整指南

做 Android 系统定制的人,应该都碰到过这类需求:手上的设备跑的是 EMUI8(某厂商基于 Android 8.x 开源系统深度定制的 ROM),希望在设备每次开机时自动执行一段 sh 脚本。可能是要调整内核参数、挂载额外分区、拉一个本…

2026/10/17 6:51:00 阅读更多 →

最新新闻

Spring Boot服务如何改造成AI可调用的MCP工具

Spring Boot服务如何改造成AI可调用的MCP工具

1. 为什么要把Spring Boot服务改造成AI可调用的工具1.1 一个真实的需求场景手头有一套跑了两年多的Spring Boot订单系统,接口稳定、日志齐全、权限体系也完善。某天团队想用AI助手做一个“智能客服”,让AI能直接查订单状态、改收货地址、发起退款。第一反…

2026/10/18 10:02:38 阅读更多 →
基于YOLOv8的电动车头盔检测系统实战解析

基于YOLOv8的电动车头盔检测系统实战解析

说到电动车戴头盔检测,这两年做安防和智慧交通的团队应该都不陌生。交管那边对骑乘人员不戴头盔的行为一直在抓,单靠路面交警人力盯,效率确实太低,尤其是在上下班高峰期的路口,车流一多根本看不过来。于是“用摄像头自…

2026/10/18 10:02:38 阅读更多 →
HIS系统实战拆解:从部署避坑到二次开发

HIS系统实战拆解:从部署避坑到二次开发

简介:这是一套完整的医院信息系统(HIS)源代码,适合医疗信息化开发人员、医院信息科员工以及对医院业务流程建模感兴趣的软件工程师,既可用于学习研究也可作为项目参考。系统采用Delphi开发,界面基于VCL组件…

2026/10/18 10:02:38 阅读更多 →
Python批量提取Word文档图片与嵌入文件实战

Python批量提取Word文档图片与嵌入文件实战

简介:这份资源面向需要用Python自动化处理Word文档的开发者与办公自动化爱好者,聚焦于从.docx文件中批量导出内嵌图片与OLE嵌入文件这一具体问题。包内共2033个文件,以908个py源码、880个pyc字节码为主,辅以C扩展头文件、pyd动态库…

2026/10/18 10:02:38 阅读更多 →
HCNA 912题网络基础梳理:OSI、IP编址与VLAN易错点

HCNA 912题网络基础梳理:OSI、IP编址与VLAN易错点

简介:这是一份面向华为HCNA/HCDA认证考生的题库资料,共912道真题及答案,覆盖IP地址与子网掩码计算、PPP与数据链路层协议、OSI模型、TCP/UDP传输层协议、VLAN与STP等核心考点,适合备考冲刺和基础知识查漏补缺。资料为单PDF文件&am…

2026/10/18 10:02:38 阅读更多 →
Il2CppDumper v6.7.46:Unity IL2CPP元数据恢复核心工具

Il2CppDumper v6.7.46:Unity IL2CPP元数据恢复核心工具

简介:Il2CppDumper-win-v6.7.46 是一款面向Unity逆向分析工程师与安全研究人员的成熟IL2CPP逆向工具集,专为还原Unity原生构建(il2cpp)产物中的类型结构与元数据而设计,适用于Unity 5.3至2020版本的Android&#xff08…

2026/10/18 10:01:37 阅读更多 →

日新闻

基于GMM的语音识别系统原理与MATLAB实现详解

基于GMM的语音识别系统原理与MATLAB实现详解

说到基于高斯混合模型(GMM)的语音识别系统,很多人第一反应就是一堆数学公式,觉得门槛很高。但如果你真的在MATLAB里把它落地跑通,会发现核心其实就是三件事:把声音变成特征向量,用GMM给每个类别…

2026/10/18 0:00:55 阅读更多 →
数字图像处理入门:反白、灰度化、调色板修改与导出txt实践

数字图像处理入门:反白、灰度化、调色板修改与导出txt实践

数字图像处理这四个字听起来挺唬人,但落到具体操作上,无非就是让计算机按你的想法“摆弄”像素。我在一个模拟项目X里用了一套特别经典的基础处理流程:对图像做反白、改调色板、彩色转灰度,最后把像素数据导出成txt文件。单看每一…

2026/10/18 0:00:55 阅读更多 →
机器人大脑技术盘点:具身智能的感知、决策与数据闭环

机器人大脑技术盘点:具身智能的感知、决策与数据闭环

如果你的信息流最近也天天刷到“机器人大脑”这个词,你会发现一个很有意思的现象:每个人说的“大脑”根本不是同一个东西。有人指的是大语言模型,有人指的是运动控制系统,还有人指的是能理解物理世界的端到端模型。在2026年这个时…

2026/10/18 0:00:55 阅读更多 →

周新闻

基于GMM的语音识别系统原理与MATLAB实现详解

基于GMM的语音识别系统原理与MATLAB实现详解

说到基于高斯混合模型(GMM)的语音识别系统,很多人第一反应就是一堆数学公式,觉得门槛很高。但如果你真的在MATLAB里把它落地跑通,会发现核心其实就是三件事:把声音变成特征向量,用GMM给每个类别…

2026/10/18 0:00:55 阅读更多 →
数字图像处理入门:反白、灰度化、调色板修改与导出txt实践

数字图像处理入门:反白、灰度化、调色板修改与导出txt实践

数字图像处理这四个字听起来挺唬人,但落到具体操作上,无非就是让计算机按你的想法“摆弄”像素。我在一个模拟项目X里用了一套特别经典的基础处理流程:对图像做反白、改调色板、彩色转灰度,最后把像素数据导出成txt文件。单看每一…

2026/10/18 0:00:55 阅读更多 →
机器人大脑技术盘点:具身智能的感知、决策与数据闭环

机器人大脑技术盘点:具身智能的感知、决策与数据闭环

如果你的信息流最近也天天刷到“机器人大脑”这个词,你会发现一个很有意思的现象:每个人说的“大脑”根本不是同一个东西。有人指的是大语言模型,有人指的是运动控制系统,还有人指的是能理解物理世界的端到端模型。在2026年这个时…

2026/10/18 0:00:55 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/18 0:55:02 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/17 17:22:31 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/16 14:23:36 阅读更多 →