背景

有很多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. Zabbix监控文件是否存在/文件大小

    检查C:\Zabbix\zabbix_agentd.log文件是否存在 zabbix_get -s 10.16.4.1 -k vfs.file.exists[C:\\Zabbix\\zabbix_ag ...

  2. 为什么会出现Notice: Undefined index: submit in D:\xampp\htdocs\test.php on line 19

    事例如下": <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http:/ ...

  3. 解决终端SSH连接服务器一段时间不操作之后卡死的问题

    卡死是因为LIUNX安全设置问题,在一段时间内没有使用数据的情况下会自动断开,解决方法就是让本地或者服务器隔一段时间发送一个请求给对方即可 在本地打开配置文件(不建议在server端设置) sudo ...

  4. mybatis中使用Integer类型的参数<if>判断问题

    mybatis对传入参数进行判断时,会使用if标签, 一般是判断不为null和'', 如下: <if test="name != null and 那么 != ''"> ...

  5. Vue编写的todolist小例子

    Vue编写的todolist小例子 本篇博客主要包含一个内容: 1.第一个内容:使用Vue编写todolist例子,包含的主要知识是v-model,v-for,el表达式,以及Vue中使用method ...

  6. X的平方根的golang实现

    实现 int sqrt(int x) 函数. 计算并返回 x 的平方根,其中 x 是非负整数. 由于返回类型是整数,结果只保留整数的部分,小数部分将被舍去. 输入: 输出: 输入: 输出: 说明: 的 ...

  7. Spring Boot 菜鸟教程 application.properties 常用配置

    SPRING CONFIG (ConfigFileApplicationListener) spring.config.name 配置文件名称,默认为application spring.config ...

  8. 安利一个_Java学习笔记总结

    javaIO 字符编码 多线程 线程池 ArrayList遍历方式 LinkedList遍历方式 Vector遍历方式 Vector, ArrayList, LinkedList 的区别是什么? Ha ...

  9. No such property: FOR_RUNTIME for class: org.gradle.api.attributes.Usage

    自从Android studio升级到3.1版本,谷歌又折腾出让你意想不到的错误.... 从github上下了个项目用来学习,却出现了如下错误: No such property: FOR_RUNTI ...

  10. [Git] Git操作命令

    基础操作 git配置 git config --global user.name "Your Name" git config --global user.email " ...