“强基固本,行稳致远”,科学研究离不开理论基础,人工智能学科更是需要数学、物理、神经科学等基础学科提供有力支撑,为了紧扣时代脉搏,我们推出“强基固本”专栏,讲解AI领域的基础知识,为你的科研学习提供助力,夯实理论基础,提升原始创新能力,敬请关注。
地址:https://zhuanlan.zhihu.com/p/41427593001
白化是一种线性变换,用于对源信号进行去相关,是一种重要的预处理过程,其目的就是降低输入数据的冗余性,使得经过白化处理的输入数据具有如下性质:假如我们有一批已经中心化(如果没有中心化也不影响协方差矩阵的分析)的数据 , 做成一个 的数据矩阵 ,则样本协方差矩阵是 ,或者修正样本协方差矩阵 (此二者只相差常数,为简单记,后面只考虑前者),那么做变换 , 其中 ,类似 的定义我们可以定义 ,于是此时样本协方差矩阵是 。如果满足 ,则称该变换为白化变换,也就相当于此时的 是白噪声,彼此独立,方差为1。设 为 的特征值分解,其中 是正交矩阵,那么 都是满足条件的白化变换矩阵,其中 为任意正交矩阵。特别地,我们称 为PCA变换,称 为ZCA变换或马氏变换。
02
概念
PCA降维可以实现对数据特征的降维,把样本的n维特征降维为k维(0<k<n),降维后各维特征不相关。PCA白化的实现与PCA降维类似,在求得协方差的特征值与特征向量以后,用特征向量矩阵的转置左乘原始数据矩阵以实现对数据的旋转变换,再对变换后数据矩阵每一维除以对应方差(即特征值)。算法过程
1. 输入样本数据: ,其中 是数据维度, 是样本个数。2. 将 的每一行进行零均值化,即减去这一行的均值,具体地为求所有样本在这一维的特征的平均值,然后这一行所有值减去该均值,结果记为 。
需要注意,这里协方差矩阵的计算采用极大似然估计的思想,所以系数为 ,这是对协方差矩阵的渐近无偏估计,真正的无偏估计是 。
5. 对数据进行旋转(投影到主成分轴上,实现了去相关性)
6. 让每一维特征上的数据都除以该维特征的标准差(对每一个主成分轴上的数据进行缩放,使其方差为 1)
性质
数据在经过 PCA 白化以后,其协方差矩阵是一个单位矩阵,即各维度变得不相关,且每个维度方差都是 1。证明(假设 经过了零均值化):
03
概念
ZCA 白化的全称是 Zero-phase Component Analysis Whitening。我对【零相位】的理解就是,相对于原来的空间(坐标系),白化后的数据并没有发生旋转(坐标变换)。算法过程
ZCA白化则是在PCA白化基础上,将PCA白化后的数据旋转回到原来的特征空间,这样可以使得变换后的数据更加接近原始输入数据。ZCA白化的计算公式:
性质
数据在经过 ZCA 白化以后,其协方差矩阵也是一个单位矩阵,即各维度不相关,且每个维度方差都是 1。
04
在实践中,PCA 与 ZCA 白化都需要被正则化(Regularization)。即在缩放这个步骤之前,给每一个特征值先加上一个正则化项:
1. 有时一些特征值在数值上接近0,在缩放步骤时将导致除以一个接近0的值;这可能使数据上溢或造成数值不稳定;2. 对图像来说,正则化项对输入图像也有一些平滑去噪(或低通滤波)的作用,可改善学习到的特征。
05
同:都消除了特征之间相关性,同时使得所有特征的方差都为 1。异:相比于PCA白化,ZCA白化把数据旋转回了原来的特征空间,使得处理后的数据更加的接近原始数据。Reference
https://blog.csdn.net/ouyangfushu/article/details/84797210https://blog.csdn.net/danieljianfeng/article/details/42147109https://my.oschina.net/findbill/blog/543485https://stats.stackexchange.com/questions/117427/what-is-the-difference-between-zca-whitening-and-pca-whiteninghttps://zhuanlan.zhihu.com/p/343118049https://www.zhihu.com/question/265963803/answer/1504223285
本文目的在于学术交流,并不代表本公众号赞同其观点或对其内容真实性负责,版权归原作者所有,如有侵权请告知删除。
“强基固本”历史文章
更多强基固本专栏文章,
请点击文章底部“阅读原文”查看
分享、点赞、在看,给个三连击呗!