背景

有很多Sparse PCA 算法运用了收缩算法,但是呢,往往只考虑如何解决,每一次迭代的稀疏化问题,而忽略了收缩算法的选择。

总括

Hotelling's deflation

公式

\(A_t = A_{t-1}-x_tx_t^{\mathrm{T}}A_{t-1}x_tx_t^{\mathrm{T}}\)

特点

如果\(x_t\)是\(A_{t-1}\)的特征向量
那么
\(A_tx_t = (A_{t-1}-x_tx_t^{\mathrm{T}}A_{t-1}x_tx_t^{\mathrm{T}})x_t =0\)
所以,\(x_t\)依然是A_t的特征值为0所对应的特征向量。
但是,如果\(x_t\)不是特征向量,\(A_tx_t=0\)这个性质就不存在了,而且,\(A_t\)不一定是半正定矩阵。

Projection deflation

公式

\(A_t = (I-x_tx_t^{\mathrm{T}})A_{t-1}(I-x_tx_t^{\mathrm{T}})\)

特点

半正定

假设\(A_{t-1}\)是半正定的。那么,对于任意的\(x\)
\(x^{\mathrm{T}}A_tx = [x^{\mathrm{T}}(I-x_tx_t^{\mathrm{T}})]A_{t-1}[(I-x_tx_t^{\mathrm{T}})x]\geq0\)

另外\(A_tx_t=0\)
\(A_tx_t=(I-x_tx_t^{\mathrm{T}})A_{t-1}(I-x_tx_t^{\mathrm{T}})x_t=0\)

不过,\(A_sx_t \quad s>t\)的值往往不是0

Schur complement deflation

Orthogonalized projection deflation

公式

\(A_t = (I-\mathcal{P}^{(t)})A(I-\mathcal{P}^{(t)})\)
\(\mathcal{P}^{(t)}\)是投影矩阵,满足:
\(\mathcal{P}^{(t)\mathrm{T}}\mathcal{P}^{(t)}=\mathcal{P}^{(t)}\)
\(\mathcal{P}^{(t)}\mathcal{P}^{(t)}=\mathcal{P}^{(t)}\)

\(X=[x_1,x_2,\ldots,x_t]=QR\)
则:
\(\mathcal{P}^{(t)}=Q_{1...t}Q_{1...t}^{\mathrm{T}}\)(假设X的秩为t)
其中\(Q_{1...t}\)为\(Q\)的前t列。

Orthogonalized Hotelling's deflation

公式

\(A_t = A_{t-1} - q_tq_t^{\mathrm{T}}A_{t-1}q_tq_t^{\mathrm{T}}\)
\(q_t=\frac{(I-\mathcal{P}^{(t-1)})x_t}{\|(I-\mathcal{P}^{(t-1)})x_t\|}\)

特点

XXX

Deflation Methods for Sparse PCA的更多相关文章

  1. Spectral Bounds for Sparse PCA: Exact and Greedy Algorithms[贪婪算法选特征]

    目录 概括 Sparse PCA Formulation 非常普遍的问题 Optimality Conditions Eigenvalue Bounds 算法 代码 概括 这篇论文,不像以往的那些论文 ...

  2. Sparse PCA 稀疏主成分分析

    Sparse PCA 稀疏主成分分析 2016-12-06 16:58:38 qilin2016 阅读数 15677 文章标签: 统计学习算法 更多 分类专栏: Machine Learning   ...

  3. Sparse PCA: reproduction of the synthetic example

    The paper: Hui Zou, Trevor Hastie, and Robert Tibshirani, Sparse Principal Component Analysis, Journ ...

  4. 压缩感知与稀疏模型——Convex Methods for Sparse Signal Recovery

    第三节课的内容.这节课上课到半截困了睡着了,看着大家都很积极请教认真听讲,感觉很惭愧.周末不能熬太晚.这个博客就记录一下醒着时候听到的内容. Motivation 目前的时代需要处理的数据量维度可能很 ...

  5. A direct formulation for sparse PCA using semidefinite programming

    目录 背景 Sparse eigenvectors(单个向量的稀疏化) 初始问题(low-rank的思想?) 等价问题 最小化\(\lambda\) 得到下列问题(易推) 再来一个等价问题 条件放松( ...

  6. Kernel Methods (5) Kernel PCA

    先看一眼PCA与KPCA的可视化区别: 在PCA算法是怎么跟协方差矩阵/特征值/特征向量勾搭起来的?里已经推导过PCA算法的小半部分原理. 本文假设你已经知道了PCA算法的基本原理和步骤. 从原始输入 ...

  7. 主成分分析(PCA)原理总结

    主成分分析(Principal components analysis,以下简称PCA)是最重要的降维方法之一.在数据压缩消除冗余和数据噪音消除等领域都有广泛的应用.一般我们提到降维最容易想到的算法就 ...

  8. Python机器学习笔记 使用scikit-learn工具进行PCA降维

    之前总结过关于PCA的知识:深入学习主成分分析(PCA)算法原理.这里打算再写一篇笔记,总结一下如何使用scikit-learn工具来进行PCA降维. 在数据处理中,经常会遇到特征维度比样本数量多得多 ...

  9. 深入学习主成分分析(PCA)算法原理(Python实现)

    一:引入问题 首先看一个表格,下表是某些学生的语文,数学,物理,化学成绩统计: 首先,假设这些科目成绩不相关,也就是说某一科目考多少分与其他科目没有关系,那么如何判断三个学生的优秀程度呢?首先我们一眼 ...

随机推荐

  1. C# 实体/集合差异比较,比较两个实体或集合值是否一样,将实体2的值动态赋值给实体1(名称一样的属性进行赋值)

    /// <summary> /// 实体差异比较器 /// </summary> /// <param name="source">源版本实体& ...

  2. 前后端分离djangorestframework——分页组件

    Pagination 为什么要分页也不用多说了,大家都懂,DRF也自带了分页组件 这次用  前后端分离djangorestframework——序列化与反序列化数据  文章里用到的数据,数据库用的my ...

  3. Android 加了自定义Application后报错 Unable to instantiate activity ComponentInfo ClassNotFoundException

    在Android自定义一个类继承集成Application后,并在AndroidManifest.xml里面配置了application的name属性为该类名称后报错: Unable to insta ...

  4. HDU ACM 1690 Bus System (SPFA)

    Bus System Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total ...

  5. Python中关于with open file as 的用法

    最近用到python来处理文本文件了,然后需要处理文件.发现python中提供的with   open  as   这个还是用的不错的!好的,废话不多说了,看下例子: with open('./sig ...

  6. php学习----面向对象

    面向对象 项目代码都应该由单个能起子程序作用的对象组成 重用性.灵活性.扩展性 变量 $this 代表自身的对象. PHP_EOL 为换行符. PHP 中创建对象 类创建后,我们可以使用 new 运算 ...

  7. LeetCode算法题-Add Strings(Java实现)

    这是悦乐书的第223次更新,第236篇原创 01 看题和准备 今天介绍的是LeetCode算法题中Easy级别的第90题(顺位题号是415).给定两个非负整数num1和num2表示为字符串,返回num ...

  8. Linux 小知识翻译 - 「代理服务器」

    这回聊聊「代理服务器」. 在公司里,不通过代理服务器无法连接互联网的,由于代理服务器的原因,有些服务的使用是受到限制的. 有人可能会觉得为什么会存在这种东西?(这里指代理服务器) Proxy本来的意思 ...

  9. C语言 求两数的最大公约数和最小公倍数

    //作者:凯鲁嘎吉 - 博客园 http://www.cnblogs.com/kailugaji/ #include<stdio.h> //最大公约数 int gys(int x,int ...

  10. tomcat启动超过时间

    Server Tomcat v9.0 Server at localhost was unable to start within 45 seconds. 运行超时 最近我切换了JDK版本之后,将10 ...