【漫话机器学习系列】045.特征向量(Eigenvector)

特征向量(Eigenvector)

特征向量(Eigenvector) 是线性代数中的一个重要概念,与矩阵的特征值(Eigenvalue)密切相关。它在许多数学、物理和机器学习领域中起着关键作用,尤其是在主成分分析(PCA)、奇异值分解(SVD)和网络图分析中。


定义

对于一个 n×n 的矩阵 A,如果存在一个非零向量 v 和一个标量 λ,使得:

其中:

  • v 是矩阵 A 的特征向量(Eigenvector)。
  • λ 是与特征向量 v 相关联的特征值(Eigenvalue)。

特征向量 v 在矩阵 A 的作用下,方向保持不变,只有大小被特征值 λ 放大或缩小。


性质

  1. 非零性:特征向量 v 必须是非零向量。
  2. 方向性:特征向量只定义方向,不定义大小,因此可以进行归一化处理。
  3. 线性独立性:不同特征值对应的特征向量是线性独立的。

几何解释

特征向量是矩阵 A 的变换下,其方向不改变的向量,而特征值表示变换后向量的伸缩因子。例如,在二维平面上,矩阵的特征向量可以看作是变换保持不变的主要轴。


计算特征向量

  1. 特征值的求解 :

    根据特征值的定义,有 ,其中 是单位矩阵。

    解方程 ,可以求解特征值 λ。

  2. 特征向量的求解 :

    对于每个特征值 λ,求解 的解 v 即为对应的特征向量。


应用

  1. 主成分分析(PCA)

    PCA通过计算数据协方差矩阵的特征向量和特征值,找到数据主要变化方向的主成分。

  2. 奇异值分解(SVD)

    特征向量用于分解矩阵,为降维、压缩和模式识别提供基础。

  3. 图分析

    在网络图中,特征向量用于评估节点的重要性(如PageRank算法)。

  4. 量子力学

    在量子力学中,特征向量用于描述状态空间中的基矢量。

  5. 振动分析

    特征向量用于描述机械系统振动的模式。


示例

Python 示例:计算矩阵的特征向量

python 复制代码
import numpy as np

# 定义矩阵
A = np.array([[4, 2],
              [1, 3]])

# 计算特征值和特征向量
eigenvalues, eigenvectors = np.linalg.eig(A)

print("特征值:", eigenvalues)
print("特征向量:\n", eigenvectors)

运行结果

Matlab 复制代码
特征值: [5. 2.]
特征向量:
 [[ 0.89442719 -0.70710678]
 [ 0.4472136   0.70710678]]

总结

特征向量是矩阵变换中保持方向不变的向量,它在许多机器学习算法和物理建模中起着基础性作用。理解特征向量及其性质,是掌握线性代数和机器学习的重要一步。

相关推荐
航天智算8 分钟前
300 万预算 国产信创遥感 AI 全自动处理生产线配置实战
大数据·人工智能·昇腾·国产算力·算力适配
yangmu320311 分钟前
ReShade + GITC DLSS 5 插件安装与调参指南
人工智能
AI 编程助手GPT18 分钟前
GPT 排的日志时间线差一小时?用 zoneinfo 复现夏令时回拨
人工智能·python·gpt
Thanks_ks38 分钟前
【第 003 讲】全面认识 Python:语言起源与设计哲学 | 行业地位与流行趋势 | 技术优势与应用领域 | 技术边界与工程局限
人工智能·python·数据分析·编程语言·python 入门·web 开发·python 之禅
Dawson Zhu43 分钟前
【Runtime推理引擎④】多流并发执行:用Stream+Event让计算与通信重叠
人工智能·语言模型·架构·aigc·agi
qyr67891 小时前
全球卫星遥感服务市场前景研究与行业发展趋势
大数据·人工智能·卫星遥感服务
麻瓜code1 小时前
Spring AI 全模块 API 字典一览(1.1.0 版)
人工智能·windows·spring
Peng25051 小时前
从 0 到持续运行:用 Hermes Agent + Python 搭一个小红书 AI 资讯自动发布系统
人工智能
程序员果子1 小时前
Ontology
大数据·人工智能·智能体·ontology·本体
用户790860057261 小时前
给 AI 装上耳朵:离线语音识别与唤醒,国内环境踩坑实录
python