• AI学习指南数学工具篇-PCA的数学原理


    AI学习指南数学工具篇-PCA的数学原理

    协方差矩阵与特征值分解:解释PCA背后的数学原理

    在深入了解主成分分析(Principal Component Analysis, PCA)的数学原理之前,我们首先需要了解一些基础的数学工具,其中最重要的就是协方差矩阵与特征值分解。

    协方差矩阵

    协方差矩阵是用来衡量两个随机变量之间的线性关系强度和方向的。对于一个包含n个样本的数据集,假设有p个特征,那么协方差矩阵的维度为p×p。其定义如下:

    假设我们有p个特征变量 x 1 , x 2 , . . . , x p x_1, x_2, ..., x_p x1,x2,...,xp,对应的协方差矩阵为 Σ \Sigma Σ,则其元素为
    Σ i j = 1 n − 1 ∑ k = 1 n ( x k i − x i ˉ ) ( x k j − x j ˉ ) \Sigma_{ij} = \frac{1}{n-1}\sum_{k=1}^{n}(x_{ki} - \bar{x_i})(x_{kj} - \bar{x_j}) Σij=n11k=1n(xkixiˉ)(xkjxjˉ)
    其中, x i ˉ \bar{x_i} xiˉ表示第i个变量的均值。

    特征值分解

    对于一个对称矩阵 Σ \Sigma Σ,存在一组标量 λ 1 , λ 2 , . . . , λ p \lambda_1, \lambda_2, ..., \lambda_p λ1,λ2,...,λp和对应的正交归一化向量 e 1 , e 2 , . . . , e p e_1, e_2, ..., e_p e1,e2,...,ep,使得
    Σ e i = λ i e i \Sigma e_i = \lambda_i e_i Σei=λiei
    这里 λ i \lambda_i λi Σ \Sigma Σ的特征值, e i e_i ei为对应的特征向量。

    以上就是协方差矩阵与特征值分解的基本概念和定义。在PCA中,我们会利用这些数学工具来进行主成分的计算与选择。

    主成分的计算与选择:如何确定主成分的数量以及如何选择主成分

    主成分的计算

    PCA的核心思想是将原始的高维数据映射到低维空间,而且尽可能保留数据的信息。假设我们有p个特征,我们希望将数据映射到k维空间(其中k < p),那么我们需要计算出这k个主成分。计算主成分主要分为以下几个步骤:

    1. 数据标准化:对原始数据进行标准化处理,使得每个特征的均值为0,方差为1。
    2. 计算协方差矩阵:利用标准化后的数据计算协方差矩阵。
    3. 特征值分解:对协方差矩阵进行特征值分解,得到特征值和对应的特征向量。
    4. 选择主成分:根据特征值的大小,选择前k个特征值对应的特征向量作为主成分。

    确定主成分的数量

    确定主成分的数量是PCA中一个非常重要的问题。通常来说,我们会选择保留的方差(explained variance)超过一个阈值,比如95%。确定主成分的数量主要有两种方法:

    1. 方差解释率:计算每个主成分对总方差的贡献率,然后选择贡献率较高的主成分。
    2. 特征值:根据特征值的大小选择主成分,一般来说,特征值较大的主成分对数据的信息保留较多。

    示例

    接下来,我们通过一个具体的示例来演示PCA的数学原理。假设我们有一个二维的数据集 X = { x 1 , x 2 , . . . , x n } X=\{x_1, x_2, ..., x_n\} X={x1,x2,...,xn},其中每个样本有两个特征 x = ( x 1 , x 2 ) x=(x_1, x_2) x=(x1,x2)。我们的目标是将这个二维数据集映射到一维空间。首先,我们需要计算协方差矩阵:

    Σ = 1 n − 1 ∑ i = 1 n ( x i − x ˉ ) ( x i − x ˉ ) T \Sigma = \frac{1}{n-1} \sum_{i=1}^{n} (x_i - \bar{x})(x_i - \bar{x})^T Σ=n11i=1n(xixˉ)(xixˉ)T

    然后进行特征值分解,得到特征值和对应的特征向量。假设我们得到的特征值为 λ 1 , λ 2 \lambda_1, \lambda_2 λ1,λ2,对应的特征向量为 e 1 , e 2 e_1, e_2 e1,e2。我们选择特征值较大对应的特征向量 e 1 e_1 e1作为我们的主成分。最终,我们将数据集映射到一维空间,得到降维后的数据集 Y = { y 1 , y 2 , . . . , y n } Y=\{y_1, y_2, ..., y_n\} Y={y1,y2,...,yn}

    以上就是关于PCA的数学原理的一个简单示例。

    总结

    在本文中,我们详细介绍了PCA背后的数学原理,包括协方差矩阵与特征值分解以及主成分的计算与选择。通过学习这些数学工具,我们可以更好地理解PCA的原理和应用,为后续的深入学习和研究打下坚实的数学基础。希望本文能对正在学习AI的同学们有所帮助。

  • 相关阅读:
    stm8L 串口收发数据错误问题
    解决Ubuntu18.04安装好搜狗输入法后无法打出中文的问题
    基于FPGA点阵显示屏设计-毕设
    Nginx之带宽限制解读
    java毕业设计景区管理系统mybatis+源码+调试部署+系统+数据库+lw
    Python、Rust中的协程
    用DIV+CSS技术设计的公益主题网站——防止电信诈骗(web前端网页制作课作业)
    冥想第五百四十四天
    MySQL8.0 导入Scott数据库
    形态学 - 细化
  • 原文地址:https://blog.csdn.net/zhaopeng_yu/article/details/138923018