我在二进制属性上使用PCA来减少问题的维度(属性)。初始尺寸为592,在PCA之后,尺寸为497.我之前使用过PCA,在另一个问题中使用数字属性,它设法在更大程度上减小尺寸(初始尺寸的一半)。我相信二进制属性会降低PCA的功能,但我不知道为什么。你能解释一下为什么PCA不能像数字数据一样好用。
谢谢。
答案 0 :(得分:3)
0/1数据的主要成分可能会缓慢或迅速下降, 和连续数据的PC也 - 这取决于数据。你能描述一下你的数据吗?
以下图片旨在比较连续图像数据的PC 与量化为0/1的相同数据的PC相比:在这种情况下,不确定。
将PCA视为获得大矩阵近似的一种方法,
首先是一个术语:近似A~c U V T ,c [Ui Vj]
考虑一下,A说10k x 500:U 10k长,V 500长。
顶行为c U1 V,第二行为c U2 V ...
所有行都与V成比例。
同样,最左边的列是c U V1 ...
所有列都与U成比例
但如果所有行都相似(彼此成比例),
他们无法靠近有行或列的A matix 0100010101 ...
更多的术语,A~c1 U1 V1 T + c2 U2 V2 T + ...,
我们可以越接近A:越高的c i 越快..
(当然,所有500个术语都完全重新创建A,在舍入误差范围内。)
顶行是“lena”,一个着名的512 x 512矩阵, 具有1项和10项SVD近似值。 最下面一行是离散化为0/1,同样是1个术语和10个术语。 我认为0/1 lena会更糟糕 - 评论,有人吗?
(U V T 也写成U⊗V,称为“dyad”或“外部产品”。)
(维基百科文章 Singular value decomposition 和Low-rank approximation 有点数学。 一个AMS专栏 大卫奥斯汀, We Recommend a Singular Value Decomposition 给出了一些关于SVD / PCA的直觉 - 强烈推荐。)