$\bf{X} \bf{X}^T$和$ \bf{X}^T \bf{X}$的非零特征值和特征向量之间的关系
设\(\lambda_i\)为\(\bf{X} \bf{X}^T\)的特征值,对应的特征向量为\(\mathbf{\alpha}_i\),则
\tag{1}
\]
\((1)\)式两边同时左乘\(\bf{X}^T\),有
\]
即
\tag{2}
\]
\((2)\)式意味着\(\lambda_i\)是矩阵\(\bf{X}^T \bf{X}\)的特征值,其对应的一个特征向量为\(\bf{X}^T \mathbf{\alpha}_i\)。
注意到
\tag{3}
\]
\((2)\)式和\((3)\)式说明,\(\bf{X} \bf{X}^T\)和\(\bf{X}^T\bf{X}\)的非零特征根是一样的,非零特征根对应的特征向量具有如下关系:
- 若\(\mathbf{\alpha}_i\)是\(\bf{X} \bf{X}^T\)的一个特征向量,那么\(\bf{X}^T \mathbf{\alpha}_i\)为\(\bf{X}^T\bf{X}\)的一个特征向量,二者分别对应同一个非零特征值
- 若\(\mathbf{\beta}_i\)是\(\bf{X}^T\bf{X}\)的一个特征向量,那么\(\bf{X} \mathbf{\beta}_i\)为\(\bf{X}\bf{X}^T\)的一个特征向量,二者分别对应同一个非零特征值(证法类似,此处略去)
这一结论的具体应用如下:
假如样本矩阵\(\bf{X}\)有100个观测,1000个变量,其维度\(n\times p=100 \times 1000\),现在要计算\(\bf{X}^T\bf{X}\)的特征向量。注意到,一方面\(\bf{X}^T\bf{X}\)的维度为\(1000 \times 1000\),维度很大,直接输进软件里求解的话会耗费大量时间;另一方面,\(\bf{X}\bf{X}^T\)的维度为\(100 \times 100\),维度适中,直接输进软件里求解的话较快。因此,可以先求得\(\bf{X}\bf{X}^T\)的非零特征根对应的特征向量,然后分别再左乘矩阵\(\bf{X}^T\)即可解决问题。
随机推荐
- FTCL:Fine-grained Temporal Contrastive Learning for Weakly-supervised Temporal Action Localization概述
1.针对的问题 现有的方法主要遵循于通过优化视频级分类目标来实现定位的方式,这些方法大多忽略了视频之间丰富的时序对比关系,因此在分类学习和分类-定位自适应的过程中面临着极大的模糊性.(1)在弱监督设置 ...
- Day12 面向对象
面向对象 前提须知:Java中想要创建对象,必须要有类的存在 类和对象的关系: 依赖关系:需要根据类,创建对象 数量关系:根据一个类,可以创建出多个对象 创建Student类的对象进行使用 创建对象的 ...
- VUE学习-元素过渡
单元素过渡 appear 初始渲染 通过 appear attribute 设置节点在初始渲染的过渡 appear + css <transition appear appear-class=& ...
- Java面向对象之Object类
Object类 Object类是所有Java类的根父类 如果在类的声明中未使用extends关键字指明其父类,则默认父类为java.lang.Object类 Object类中的功能(属性.方法)就具有 ...
- Spring的IOC源码分析
Spring IOC 容器源码分析 Spring 最重要的概念是 IOC 和 AOP,本篇文章其实就是要带领大家来分析下 Spring 的 IOC 容器.既然大家平时都要用到 Spring,怎么可以不 ...
- 以MPU6050为例的硬件IIC的使用
目录 参考调试MPU6050与EEPROM的经验,整合了目标内存/寄存器地址是否为16位的情况,合并了单字节与多字节间的操作,添加了返回值与读写超时功能:硬件IIC的7位从机地址查询方式读写参考代码 ...
- .NET CORE-通过内置IOC容器IServiceCollection进行服务注册
第一种方式: 在Startup中的ConfigureServices方法中注册服务: services.AddTransient<ITestServiceA, TestServiceA>( ...
- React.js 修改文本中数字样式
export function numberToColor(text, color = '#635BFF', size = '12px') { let reg = /(\d+)/g; return t ...
- python经典例题
[程序1] 题目:有1.2.3.4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少? num_list=[] cou=0 for i in range(1,5): for j in rang ...
- moco的使用方法
需要模拟第三方接口测试并调用,找了很多mock工具,在git上找到了moco,学习一番,分享一下. 一.下载moco,moco地址 下载后,是一个jar包. 二.配置moco的配置文件 (1)在jar ...