使用PCA时,样本数不超过特征/维数

问题描述

嗨,我有1200个数组和(92,144)大小的训练数据,每个数组的范围从-2.5到2.5。我想通过应用PCA压缩每个单独的数组的大小。所以我将阵列展平,这就是我得到的训练数据(1200,13248)。但是问题是与阵列大小相比,我的训练样本数量更少。当我使用95%方差时,它仅使用90个分量,得到的形状为(1200,90),而当我对其进行逆变换以恢复原始形状时,我得到的结果非常好。我将其与使用RMSE的原始数组进行了比较,RMSE的价值较小。因此,我只想知道即使使用较少的样本还是使用PCA压缩数据还是值得的,还是我应该制作更多重复的样本然后再进行处理。反转后结果很好,所以我不确定我做错了什么。

这是我的PCA代码

Light Content

这是我用于检查RMSE的代码

from sklearn.decomposition import PCA

pca = PCA(.95)

lower_dimensional_data = pca.fit_transform(np.array(a)) # a is training data of shape (1200,13248)
lower_dimensional_data.shape #output (1200,90)

approximation = pca.inverse_transform(lower_dimensional_data)

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)