把几个降维的算法(FA PCA SVD ICA LPP LDA )归纳一下

因子分析(FA)

因子分析其实就是认为高维样本点实际上是由低维样本点经过高斯分布、线性变换、误差扰动生成的,因此高维数据可以使用低维来表示(本质上就是一种降维算法)。

因子分析(factor analysis)是一种数据简化的技术。它通过研究众多变量之间的内部依赖关系,探求观测数据中的基本结构,并用少数几个假想变量来表示其基本的数据结构。这几个假想变量能够反映原来众多变量的主要信息。原始的变量是可观测的显在变量,而假想变量是不可观测的潜在变量,称为因子。

主成分分析(PCA)

这个比较简单,主要是去相关(注意不是去独立,去独立是ICA的本事),寻找方差最大的投影方向,或者理解成能量最大化逼近(据Andrew说PCA的解释有9,10来种)。然后建议看看Andrew的PCA的课,最后讲到的applications会很有启发,让人意识到PCA并不仅仅是一个降维的工具,发挥点想象力还可以有别的作用,简单地摘抄如下:

Applications:
1.Visualization
(降维后以便数据可视化)
2.Compression
(数据压缩存储)
3.Learning
(特征维数太大时易过拟合但在工业界有点滥用了。)
4.Anomaly detection
(看异常数据是否落在子空间,并不是一个好的检测算法)
5.Matching/distance calculations
(如人脸识别 将灰度图表示成一维的向量,找到PCA的子空间,使用子空间投影距离来度量两张人脸的相似度,而不是传统的欧几里得距离。简直酷毙了!)

在lecture15中,Andrew又补充了一个 Latent Semantic Indexing (LSI) 相当于上节课新增的一个application。 没听太明白,大概意思好像是说判断两个documents的相似性,如果用传统的余弦距离的话,study和learn就是正交的,相似度为0,而使用PCA则很好的避免了这个缺点,因为我们使用了在主方向或者子空间的投影距离来衡量相似度,这样的话,learn和study仍会保留正的相关性。

关于FA和PCA(都是认为数据存在于子空间),高斯混合模型(GMM,Gaussian Mixture Model)和K-means(都是聚类算法)的一个很好的图表区分。
具体使用哪种算法取决于你认为数据是结合在数据块中还是存在于子空间中。
把几个降维的算法(FA PCA SVD ICA LPP LDA )归纳一下_第1张图片

奇异值分解(SVD)

从Andrew的课来看:
SVD 相当于an implementation of PCA
1.现在的计算机计算SVD已经很成熟了,Andrew本人将其视作平方运算这样的计算。
2.用SVD来实现PCA,避免了高维sigma矩阵(设计矩阵/协方差矩阵)的计算,太妙了!!!

独立成分分析(ICA)

动机源自于cocktail party problem(鸡尾酒会问题),大概联想一下就知道ICA主要是要干嘛的;ICA与被称为盲源分离(Blind Source Separation,BSS)或盲信号分离的方法具有非常密切的关系。“源”在此处的意思是指原始信号,即独立成分,如鸡尾酒会中的说话者;而“盲”表示我们对于混合矩阵所知甚少,仅仅对源信号做非常弱的假定。ICA是实现盲源分离的其中一种,但也许是被最广泛使用的方法。

推荐电子工业出版社的一本中译本教材《独立成分分析》,稍稍一读感觉之前到处搜罗资料的时间真是浪费了,很多时候确实是外国的月亮更圆啊。

下面摘录一下lecture15(前半节课讲的LSI和SVD,后半节课讲的ICA)中关于ICA的部分:stems from cocktail party problem, 目的是分离出不同讲话人的声音(独立成分)。

先讲一下cdf(cumulative distribution function, 累积分布函数),其实就是概率论中的分布函数。
开始推导ICA,可能写得比较乱,顺序看就行了(主要是三张图片):

源声音恢复过程中有两个ambiguities
1,order of speaker(意思是分离出来的声音/独立成分与说话人没有明确对应关系)
2,signs(意思是分离出来的声音正负也比较ambiguous??)

ICA依赖于S(源声音,speakers)是non-Gaussian分布的,如果是高斯分布则无法使用ICA,因为高斯分布是旋转对称的,无法分辨出轴到底在哪。。。 不懂??

把几个降维的算法(FA PCA SVD ICA LPP LDA )归纳一下_第2张图片
上图中的概率变换公式如果是一维的可以推导,但是现在这种形式不知道怎么来的,暂且这么认为吧??

选择sigmoid作为分布函数的原因是因为方便(而且它不是高斯的分布函数),没有什么深层次原因。
把几个降维的算法(FA PCA SVD ICA LPP LDA )归纳一下_第3张图片
看起来比较easy的感觉。(图片中的stochastic gradient ascent为随机梯度上升,与batch gradient ascent相对应。 )

应用:
EEG图中减去心跳与眨眼的电位(用ICA提取)

至此,ICA大致也掌握了!

局部保留投影(LPP)

最早是何晓飞(芝加哥大学,现在在浙大CAD)发表在NIPS上的文章提出来的,原文摘要称”LPP should be seen as an alternative to Principal Component Analysis (PCA)”.

线性判别式分析( LDA)

LDA也叫做Fisher线性判别(Fisher Linear Discriminant ,FLD),是模式识别的经典算法,它是在1996年由Belhumeur引入模式识别和人工智能领域的。线性鉴别分析的基本思想是将高维的模式样本投影到最佳鉴别矢量空间,以达到抽取分类信息和压缩特征空间维数的效果,投影后保证模式样本在新的子空间有最大的类间距离和最小的类内距离,即模式在该空间中有最佳的可分离性。

你可能感兴趣的:(算法,降维算法)