目录

Takahashi T, Kurita T. Robust De-noising by Kernel PCA[C]. international conference on artificial neural networks, 2002: 739-744.

这篇文章是基于对Kernel PCA and De-Noisingin Feature Spaces的一个改进。

针对高斯核:

\[k(x,y) = \exp (-\|x-y\|^2/c)
\]

我们希望最小化下式(以找到\(x\)的一个近似的原像):

\[\rho(z) = \|\Phi(z) - P_H \Phi(x)\|^2
\]

获得了一个迭代公式:

\[z(t) = \frac{\sum_{i=1}^N w_i k(x_i, z(t-1))x_i}{\sum_{i=1}^N w_i k(x_i, z(t-1))}
\]

其中\(w_i=\sum_{h=1}^Hy_h u_i^h\),\(u\)通过求解kernel PCA获得(通常是用\(\alpha\)表示的),\(z(0)=x\)。

主要内容

虽然我们可以通过撇去小特征值对应的方向,但是这对于去噪并不足够。Kernel PCA and De-Noisingin Feature Spaces中所提到的方法,也就是上面的那个迭代的公式,也没有很好地解决这个问题。既然\(\{y_h\}\)并没有改变——也就是说,我们可能一直在试图用带噪声的数据去恢复一个不带噪声的数据。

所以,作者论文,在迭代更新过程中,\(y_h\)也应该进行更新。



这样,每一步我们都可以看作是在寻找:

\[\|\Phi(z)-P_H\Phi(\widetilde{x}(t)\|
\]

的最小值。

从\((10)\)可以发现,除非\(\widetilde{x}(t)=z(t-1)\)是\(x\)的一个比较好的估计,否则,通过这种方式很有可能会失败(这里的失败定义为,最后的结果与\(x\)差距甚远)。这种情况我估计是很容易发生的。所以,作者提出了一种新的,更新\(\widetilde{x}(t)\)的公式:



其中\(B(t)\)为确定度,是一个\(M \times M\)的矩阵,定义为:

\[B(t) = diag(\beta_1(t), \ldots, \beta_M(t)) \\
\beta_j(t) = \exp (-(x_j - z_j (t-1))^2/2\sigma_j^2)
\]

对角线元素,反映了\(x_j\)和\(z_j(t-1)\)的差距,如果二者差距不大,说明\(P_H(x)\)和\(x\)的差距不大,\(x\)不是异常值点,所以,结果和\(x\)的差距也不会太大,否则\(x\)会被判定为一个异常值点,自然\(z\)应该和\(x\)的差别大一点。

\(\sigma_j\)的估计是根据另一篇论文来的,这里只给出估计的公式:



\(\mathrm{med}(x)\)表示\(x\)的中位数,\(\varepsilon_{ij}\)表示第\(i\)个训练样本第\(j\)个分量与其重构之间平方误差。话说,这个重构如何获得呢?

Robust De-noising by Kernel PCA的更多相关文章

  1. A ROBUST KERNEL PCA ALGORITHM

    目录 引 主要内容 问题一 问题二 Lu C, Zhang T, Du X, et al. A robust kernel PCA algorithm[C]. international confer ...

  2. Kernel Methods (5) Kernel PCA

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

  3. Kernel PCA 原理和演示

    Kernel PCA 原理和演示 主成份(Principal Component Analysis)分析是降维(Dimension Reduction)的重要手段.每一个主成分都是数据在某一个方向上的 ...

  4. 【模式识别与机器学习】——PCA与Kernel PCA介绍与对比

    PCA与Kernel PCA介绍与对比 1. 理论介绍 PCA:是常用的提取数据的手段,其功能为提取主成分(主要信息),摒弃冗余信息(次要信息),从而得到压缩后的数据,实现维度的下降.其设想通过投影矩 ...

  5. Probabilistic PCA、Kernel PCA以及t-SNE

    Probabilistic PCA 在之前的文章PCA与LDA介绍中介绍了PCA的基本原理,这一部分主要在此基础上进行扩展,在PCA中引入概率的元素,具体思路是对每个数据$\vec{x}_i$,假设$ ...

  6. Kernel PCA and De-Noisingin Feature Spaces

    目录 引 主要内容 Kernel PCA and De-Noisingin Feature Spaces 引 kernel PCA通过\(k(x,y)\)隐式地将样本由输入空间映射到高维空间\(F\) ...

  7. Kernel PCA for Novelty Detection

    目录 引 主要内容 的选择 数值实验 矩形框 spiral 代码 Hoffmann H. Kernel PCA for novelty detection[J]. Pattern Recognitio ...

  8. Missing Data in Kernel PCA

    目录 引 主要内容 关于缺失数据的导数 附录 极大似然估计 代码 Sanguinetti G, Lawrence N D. Missing data in kernel PCA[J]. europea ...

  9. 核化主成分分析(Kernel PCA)应用及调参

    核化这个概念在很多机器学习方法中都有应用,如SVM,PCA等.在此结合sklearn中的KPCA说说核函数具体怎么来用. KPCA和PCA都是用来做无监督数据处理的,但是有一点不一样.PCA是降维,把 ...

随机推荐

  1. 学习java 7.6

    学习内容: 方法重写注意事项:子类不能重写父类的私有方法 子类的访问权限不比父类的低(父类默认,子类可以是默认也可以是public) java中继承的注意事项:java中类只支持单继承,java中类支 ...

  2. C/C++ Qt 数据库与TableView多组件联动

    Qt 数据库组件与TableView组件实现联动,以下案例中实现了,当用户点击并选中TableView组件内的某一行时,我们通过该行中的name字段查询并将查询结果关联到ListView组件内,同时将 ...

  3. 12-gauge/bore shotgun

    12-gauge/bore shotgun不是弹夹(magazine)容量为12发的霰(xian)弹枪.[LDOCE]gauge - a measurement of the width or thi ...

  4. adverb

    An adverb is a word or an expression that modifies a verb, adjective, another adverb, determiner [限定 ...

  5. 关于learning Spark中文版翻译

      在网上找了很久中文版,感觉都是需要支付一定金币才能下载,索性自己翻译算了.因为对Spark有一定了解,而且书籍前面写道,对Spark了解可以直接从第三章阅读,就直接从第三章开始翻译了,应该没有什么 ...

  6. Ecshop 安装

    参考 http://www.68ecshop.com/article-617.html ecshop的安装第一步:下载ecshop网店系统正式版安装包 我们可以来ecshop开发中心的官网(www.6 ...

  7. 【leetcode】170. Two Sum III - Data structure design 两数之和之三 - 数据结构设计

    Design and implement a TwoSum class. It should support the following operations:  add and find. add  ...

  8. Gradle安装与配置

    一.Gradle安装 1.Gradle安装 (1)先安装JDK/JRE (2)Gradle下载官网 Gradle官网 (3)解压安装包到想安装到的目录.如D:\java\gradle-5.2.1 (4 ...

  9. HelloWorldModelMBean

    package mbeanTest; import java.lang.reflect.Constructor; import javax.management.Descriptor; import ...

  10. [项目总结]论Android Adapter notifyDataSetChanged与notifyDataSetInvalidated无效原因

    最近在开发中遇到一个问题,Adapter中使用notifyDataSetChanged 与notifyDataSetInvalidated无效,经过思考和网上查找,得出如下原因. 首先看一下notif ...