查看原文
其他

【强基固本】白化变换:PCA白化、ZCA白化


“强基固本,行稳致远”,科学研究离不开理论基础,人工智能学科更是需要数学、物理、神经科学等基础学科提供有力支撑,为了紧扣时代脉搏,我们推出“强基固本”专栏,讲解AI领域的基础知识,为你的科研学习提供助力,夯实理论基础,提升原始创新能力,敬请关注。

来源:知乎—王亮
地址:https://zhuanlan.zhihu.com/p/414275930

01

白化变换
白化是一种线性变换,用于对源信号进行去相关,是一种重要的预处理过程,其目的就是降低输入数据的冗余性,使得经过白化处理的输入数据具有如下性质:
  • 消除了特征之间的相关性
  • 所有特征的方差都为 1
如我们有一批已经中心化(如果没有中心化也不影响协方差矩阵的分析)的数据    , 做成一个    的数据矩阵    ,则样本协方差矩阵是    ,或者修正样本协方差矩阵    (此二者只相差常数,为简单记,后面只考虑前者),那么做变换    , 其中    ,类似    的定义我们可以定义    ,于是此时样本协方差矩阵是    。
如果满足    ,则称该变换为白化变换,也就相当于此时的    是白噪声,彼此独立,方差为1。
设    为    的特征值分解,其中    是正交矩阵,那么    都是满足条件的白化变换矩阵,其中    为任意正交矩阵。
特别地,我们称    为PCA变换,称    为ZCA变换或马氏变换。


02

PCA白化

概念

PCA降维可以实现对数据特征的降维,把样本的n维特征降维为k维(0<k<n),降维后各维特征不相关。
PCA白化的实现与PCA降维类似,在求得协方差的特征值与特征向量以后,用特征向量矩阵的转置左乘原始数据矩阵以实现对数据的旋转变换,再对变换后数据矩阵每一维除以对应方差(即特征值)。
协方差矩阵的特征值就是各维特征的方差

算法过程

1. 输入样本数据:    ,其中    是数据维度,    是样本个数。
2. 将    的每一行进行零均值化,即减去这一行的均值,具体地为求所有样本在这一维的特征的平均值,然后这一行所有值减去该均值,结果记为    。
3. 计算零均值化后的数据计算协方差矩阵为

需要注意,这里协方差矩阵的计算采用极大似然估计的思想,所以系数为    ,这是对协方差矩阵的渐近无偏估计,真正的无偏估计是    。
4. 对协方差矩阵进行特征值分解

5. 对数据进行旋转(投影到主成分轴上,实现了去相关性)

6. 让每一维特征上的数据都除以该维特征的标准差(对每一个主成分轴上的数据进行缩放,使其方差为 1)

综上过程,PCA白化的定义为:

性质

数据在经过 PCA 白化以后,其协方差矩阵是一个单位矩阵,即各维度变得不相关,且每个维度方差都是 1。证明(假设    经过了零均值化):

上式第 2 步是把    表达式带入得到的;
第 3 步利用了矩阵    是对角阵的特性;
第 4 步是将    作特征值分解得到的;
第 5 步利用了    是酉矩阵的性质(    )。


03

ZCA白化

概念

ZCA 白化的全称是 Zero-phase Component Analysis Whitening。我对【零相位】的理解就是,相对于原来的空间(坐标系),白化后的数据并没有发生旋转(坐标变换)。

算法过程

ZCA白化则是在PCA白化基础上,将PCA白化后的数据旋转回到原来的特征空间,这样可以使得变换后的数据更加接近原始输入数据。ZCA白化的计算公式:

性质

数据在经过 ZCA 白化以后,其协方差矩阵也是一个单位矩阵,即各维度不相关,且每个维度方差都是 1。


04

正则化
在实践中,PCA 与 ZCA 白化都需要被正则化(Regularization)。即在缩放这个步骤之前,给每一个特征值先加上一个正则化项:

原因有两个:
1. 有时一些特征值在数值上接近0,在缩放步骤时将导致除以一个接近0的值;这可能使数据上溢或造成数值不稳定;
2. 对图像来说,正则化项对输入图像也有一些平滑去噪(或低通滤波)的作用,可改善学习到的特征。


05

PCA白化与ZCA白化的异同

白化效果可视化

同:都消除了特征之间相关性,同时使得所有特征的方差都为 1。
异:相比于PCA白化,ZCA白化把数据旋转回了原来的特征空间,使得处理后的数据更加的接近原始数据。

Reference

https://blog.csdn.net/ouyangfushu/article/details/84797210
https://blog.csdn.net/danieljianfeng/article/details/42147109
https://my.oschina.net/findbill/blog/543485
https://stats.stackexchange.com/questions/117427/what-is-the-difference-between-zca-whitening-and-pca-whitening
https://zhuanlan.zhihu.com/p/343118049
https://www.zhihu.com/question/265963803/answer/1504223285

本文目的在于学术交流,并不代表本公众号赞同其观点或对其内容真实性负责,版权归原作者所有,如有侵权请告知删除。


“强基固本”历史文章


更多强基固本专栏文章,

请点击文章底部“阅读原文”查看



分享、点赞、在看,给个三连击呗!

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存