我有一个二进制形式的 NxM 数据集。我在上面应用了各种维度技术,并绘制了前两个维度。这就是我如何直观地了解该技术是否适合我的数据集。是否有更合适/方法/启发式/正式的方法来测试我使用的降维技术的适用性?
问问题
842 次
2 回答
1
对数据进行降维的主要目的是尽可能地捕捉原始数据的分布,即使是在降维之后。因此,我们要确保尽可能多地捕获数据的方差。
假设您有一个 N*N 矩阵,我们对 X 执行 SVD(奇异值分解)。然后,我们将观察奇异值,即生成的 S 矩阵中的对角线条目。(X = USV)
并且您想根据捕获的所需百分比方差在某个索引 K 处将它们切断:
∑ i=1 K sigma(i) / ∑ i=1 N sigma(i)
如果您选择U 的前 K 列,那么您将原始 N 维减少为 K 维。
于 2017-03-30T18:37:33.617 回答
0
您可以使用 SOM 技术来查看二维中的多个暗淡。还有其他技术,如果我能记住他们的名字,我会更新答案,但我习惯了 SOM。
您可以单击此处找到适用于 matlab 的一个好的 SOM 工具箱。
这有助于您进行可视化,但评估应使用效率计来衡量对您的降维重要的内容(SOM 本身可以用作降维技术)。什么是重要的,以最小的损失压缩数据?尽可能压缩数据?以可见的方式表示数据?您可能可以衡量技术效率,而无需查看它们如何改变数据空间表示,您所需要的只是一个衡量您的技术有多好的函数。
于 2013-07-30T18:57:06.513 回答