【漫话机器学习系列】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]]

总结

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

相关推荐
m0_662577978 小时前
用Python生成艺术:分形与算法绘图
jvm·数据库·python
工具箱大集合8 小时前
英语课件PPT免费模板2026实测优选清单
人工智能·ppt
BullSmall8 小时前
Apifox AI 配置的完整参数表
人工智能
MORE_778 小时前
leecode100-买卖股票的最佳时期-贪心算法
python·算法·贪心算法
WJX_KOI8 小时前
OpenClaw 纯 Windows 环境源码部署教程(含修改脚本配置)
人工智能·windows
AI科技星8 小时前
基于wr/c + h/c = 1的螺旋线矢量特性及应用分析
c语言·开发语言·人工智能·opencv·算法·计算机视觉·r语言
言之。8 小时前
GPT能否替代人类在复杂任务下的直觉?
人工智能·gpt
嵌入式学习和实践8 小时前
当MCU遇上大模型:在单片机上实现AI对话的硬核玩法
人工智能·单片机·大模型
摸鱼仙人~8 小时前
拆解 Qwen2.5-7B:从结构打印看懂大语言模型的设计细节
人工智能·语言模型·自然语言处理
前端摸鱼匠9 小时前
【AI大模型春招面试题8】词元化(Tokenization)的作用是什么?BPE、WordPiece、Unigram的原理与优缺点?
人工智能·ai·面试·职场和发展·求职招聘