首页 > 其他分享 >PCA主成分分析背后的数学原理(一般情形)

PCA主成分分析背后的数学原理(一般情形)

时间:2024-12-24 16:46:55浏览次数:4  
标签:mathbf Vert text tr 成分 数学原理 quad PCA sigma

前言

\(\quad\) 在$《深度学习》^{[1]} $一书中,为说明Linear ALgebra在深度学习中的作用,chapter2的最后一节引入了PCA的思想,并且为方便起见,提前给定了解码器的映射,即 \(f(\mathbf{c}) = \mathbf{Dc}\) ,其中\(\mathbf{D} \in \mathbb{R}^{n\times l}\) , 那么相应的编码器的映射需要依照解码器给出,在教材中利用 \(\textbf{L}^2\) 范数对解码后的向量与原向量间距离最小给出了相应的编码器函数-也为简单的线性映射,即\(r(\mathbf{x}) = g(f(\mathbf{x})) = \mathbf{D}\mathbf{D}^{T}\mathbf{x}\),现在我们已经知道这些解码与编码的映射,但具体的映射是什么呢?也就是我们前面所引入的矩阵$\mathbf{D} $具体而言是什么?

\(\quad\) 教材中具体推导了 $l=1 $的情形,其实就是在解决以下的优化问题:

\[\mathbf{d}^*= \mathop{\arg\min}\limits_{\mathbf{d}} \sum_{i} \Vert \mathbf{x}^{(i)} -\mathbf{d}\mathbf{d}^T\mathbf{x}^{(i)}\Vert_2^{2} \quad subject \ to \ \Vert \mathbf{d} \Vert_2 = 1 \]

\(\quad\) 下面,我们对于一般的情形,推导该过程。

问题描述

上面一般情形的问题可以转换为下面的最优化问题:

\[\mathbf{D}^* =\mathop{\arg\min}\limits_{\mathbf{D}} \sum_{i} \Vert \mathbf{x}^{(i)} -\mathbf{D}\mathbf{D}^T\mathbf{x}^{(i)}\Vert_2^{2} \quad subject \ to \ \mathbf{D}^T\mathbf{D} = \mathbf{I}_l \]

\(\quad\) 下面对上述问题进行化简:首先,为符号简便起见,记 \(\mathbf{X} = [\mathbf{x^{(1)}},\mathbf{x^{(2)}},\dots,\mathbf{x^{(n)}}]^T\) ,则上述问题可以写为:

\[\mathbf{D}^* =\mathop{\arg\min}\limits_{\mathbf{D}} \Vert \mathbf{X} -\mathbf{D}\mathbf{D}^T\mathbf{X} \Vert_F^{2} \quad subject \ to \ \mathbf{D}^T\mathbf{D} = \mathbf{I}_l \]

问题求解

$ Lemma1 (Von-Neumann迹不等式)^{[2]}$
如果 $\mathbf{A},\mathbf{B} \in \mathbb{C}^{n \times n} $ ,令 \(\sigma(A) = [\sigma_{1}(\mathbf{A}),\dots,\sigma_{n}(\mathbf{A})]^T\) , \(\sigma(B) = [\sigma_{1}(\mathbf{B}),\dots,\sigma_{n}(\mathbf{B})]^T\) ,各自奇异值满足: $\sigma_{1}(\mathbf{A}) \geq \dots \geq \sigma_{n}(\mathbf{A}) $ , $\sigma_{1}(\mathbf{B}) \geq \dots \geq\sigma_{n}(\mathbf{B}) $ ,
则有: $\left | tr(AB) \right | \leq \sigma(A)^T \sigma(B) $ .

证明:可以参照詹兴致的《矩阵论》第四章。

\(\quad\) 回到上面的分析,需要解决下面问题:

\[\begin{equation*} \begin{split} \mathbf{D}^* &= \mathop{\arg\min}\limits_{\mathbf{D}} \Vert \mathbf{X} - \mathbf{X} \mathbf{D} \mathbf{D}^T \Vert_F^2 \quad \text{subject to} \quad \mathbf{D}^T \mathbf{D} = \mathbf{I}_l \\ &= \mathop{\arg\min}\limits_{\mathbf{D}} \text{tr}[(\mathbf{X} - \mathbf{X}\mathbf{D} \mathbf{D}^T )^T (\mathbf{X} - \mathbf{X}\mathbf{D} \mathbf{D}^T )] \quad \text{subject to} \quad \mathbf{D}^T \mathbf{D} = \mathbf{I}_l \\ &= \mathop{\arg\min}\limits_{\mathbf{D}} \text{tr}(\mathbf{X}^T \mathbf{X} - \mathbf{X}^T \mathbf{X}\mathbf{D} \mathbf{D}^T - \mathbf{D} \mathbf{D}^T \mathbf{X}^T \mathbf{X} + \mathbf{D} \mathbf{D}^T \mathbf{X}^T \mathbf{X} \mathbf{D} \mathbf{D}^T) \quad \text{subject to} \quad \mathbf{D}^T \mathbf{D} = \mathbf{I}_l \\ &= \mathop{\arg\min}\limits_{\mathbf{D}} -2 \text{tr}( \mathbf{X}^T \mathbf{X}\mathbf{D} \mathbf{D}^T) + \text{tr}( \mathbf{X}^T \mathbf{X} \mathbf{D} \mathbf{D}^T) \quad \text{subject to} \quad \mathbf{D}^T \mathbf{D} = \mathbf{I}_l \\ &= \mathop{\arg\min}\limits_{\mathbf{D}} - \text{tr}( \mathbf{X}^T \mathbf{X}\mathbf{D} \mathbf{D}^T) \quad \text{subject to} \quad \mathbf{D}^T \mathbf{D} = \mathbf{I}_l \\ &= \mathop{\arg\max}\limits_{\mathbf{D}} \text{tr}( \mathbf{D} \mathbf{D}^T\mathbf{X}^T \mathbf{X}) \quad \text{subject to} \quad \mathbf{D}^T \mathbf{D} = \mathbf{I}_l \\ \end{split} \end{equation*} \]

\(\quad\) 对于上面的最大化问题,我们可以先求到其一个上界,由Lemma1 Von-Neumann迹不等式, \(tr(\mathbf{D} \mathbf{D}^T\mathbf{X}^T \mathbf{X}) \leq \sigma(\mathbf{D} \mathbf{D}^T)^T\mathbf{X}^T \mathbf{X}\) .由于 $ \mathbf{D} \mathbf{D}^T$ 是实对称矩阵,则 $ \mathbf{D} \mathbf{D}^T$ 的奇异值为 $ \mathbf{D} \mathbf{D}^T$ 的特征值的绝对值,又由约束可知,$\mathbf{D}^T \mathbf{D} = \mathbf{I}_l $,且 \(\mathbf{D} \mathbf{D}^T\) 与 \(\mathbf{D}^T \mathbf{D}\) 有相同的非零特征值,剩下的只是0,则 $ \mathbf{D} \mathbf{D}^T$ 的特征值为 \(1 \dots 1, 0 \dots ,0\) ,其中有 $ l $ 个1, $ n-l $ 个0.代回上述Von-Neumann迹不等式,得到: \(tr(\mathbf{D} \mathbf{D}^T\mathbf{X}^T \mathbf{X}) \leq \sum_{i = 1}^{l} \sigma_{i}(\mathbf{X}^T \mathbf{X}) =\sum_{i = 1}^{l} \lambda_{i}(\mathbf{X}^T \mathbf{X})\) ,再通过取 \(\mathbf{D}\) 为 \(\mathbf{X}^T\mathbf{X}\) 的前 $ l $ 个最大特征值的特征向量即可达到上面不等式的上界。

参考文献

[1] LeCun Y, Bengio Y, Hinton G. Deep learning[J]. nature, 2015, 521(7553): 436-444.

[2] 詹兴致. 矩阵论[M]. 高等教育出版社, 2008.

标签:mathbf,Vert,text,tr,成分,数学原理,quad,PCA,sigma
From: https://www.cnblogs.com/amuse123/p/18628040

相关文章

  • 使用分页插件完成分页查询,mybatis完成多对一联表,mybatis完成一对多联表,动态sql
    1.使用分页插件完成分页查询1.引入依赖<dependency><groupId>com.github.pagehelper</groupId><artifactId>pagehelper</artifactId><version>5.3.3</version></dependency>2.在mybatis.xml里面配置<plugins><!......
  • DGCRN模型数学原理及运算过程详解
    这是一份用于动态图卷积循环网络DGCRN模型理解的入门教程,采用论文公式与示例结合的方式阐述动态图的实现过程与图卷积GCN在RNN中的运用。本文关于数学原理部分不一定完全严谨,如有错误请在评论区指出。 模型来自论文:DynamicGraphConvolutionalRecurrentNetworkforTraf......
  • 【机器学习】机器学习的基本分类-无监督学习-主成分分析(PCA:Principal Component Anal
    主成分分析(PrincipalComponentAnalysis,PCA)主成分分析(PCA)是一种常用的降维技术,用于将高维数据投影到低维空间,同时尽可能保留原数据的主要信息(方差)。1.PCA的核心思想目标:找到新的坐标轴(主成分),使得数据投影到这些轴上的方差最大化。主成分:数据的主要变化方向。第一个主......
  • 主成分分析与因子分析的区别
    两种都是场景且古老的降维方法。主成分分析强调因子最大化地离散程度,从数据角度上的聚集程度,较难显示出业务上的含义。因子分析则强调因子相关性的聚集,降维后的结果更容易从业务角度进行解释和理解。   ......
  • 【机器学习】深入解析 PCA 与三元组损失:从理论推导到实践应用
    深入解析PCA与三元组损失:从理论推导到实践应用PCA(PrincipalComponentAnalysis)主成分分析详解1.基本概念1.1什么是PCA?1.2核心目标1.3应用场景2.数学原理详解2.1问题形式化2.2数据预处理2.3协方差矩阵的计算2.4特征值分解2.5最大方差推导2.6数据降维......
  • PCA(主成分分析法)原理以及应用+代码实现
    前言 PCA多用于对数据特征集进行降维,也方便对数据集进行可视化操作,说白了最后进行结果展示那么多特征向量要一起表示的话肯定很难展示,超过三维的数据就很难展示了。而PCA可对特征集进行简化,通俗的来讲也就是合并好理解。PCA应用的范围很广因此很有必要要学习,原理肯定还是数学证......
  • 主成分分析-PCA
        PCA(PrincipalComponentAnalysis),即主成分分析方法,是一种使用最广泛的数据降维算法。PCA的主要思想是将n维特征映射到k维上,这k维是全新的正交特征也被称为主成分,是在原有n维特征的基础上重新构造出来的k维特征。PCA的工作就是从原始的空间中顺序地找一组相互正交......
  • 多系统集成分析——ERP与OA、PLM、MES、CRM、WMS、SRM、HR
    “集成审批抓OA、集成设计抓PLM、集成生产抓MES、集成销售抓CRM、集成仓储抓WMS、集成采购抓SRM、集成人力抓HR。” 一、ERP与OA系统的集成1、业务的审批流集成:在ERP系统中发起的销售、采购等审批流程可统一集成到OA系统中进行,审批结果再反馈回ERP系统。2、基础数据同步集......
  • 降维方法 主成分分析和因子分析
    初次发布于我的个人文档。(每次都是个人文档优先发布哦)本文简要介绍一下主成分分析和因子分析的原理,但是不涉及具体代码实现。这是因为现在已经有很多现成的软件或库实现了这两个算法,读者只需要一两句简单的命令就可以使用了,所以没有必要在这里讲解。而且你可能会在PythonR......
  • 主成分分析(PCA)详解
    ✅作者简介:2022年博客新星第八。热爱国学的Java后端开发者,修心和技术同步精进。......