非负矩阵分解 (NMF) 和因子分析 (FA) 有什么区别?

机器算法验证 因子分析 非负矩阵分解
2022-03-29 00:19:51

我正在为一个多元数据集执行探索性因素分析 (EFA),其中变量都是相同物理测量的所有测量值,仅在空间中的不同位置。我的目的是提取一些可能被解释为导致观察的常见来源的潜在变量(即因素),然后将这些因素用于未来分析(在将每个因素分配给“来源”之后)。

EFA 效果很好,但我也可以获得负因子分数,我不确定这是物理解决方案。我遇到了 PMF(正矩阵分解)或 NMF/NNMF(非负矩阵分解),并且想知道将它用于我的目的是否也有意义。

这两种算法有什么区别?

例如,我用 NMF (W) 得到的分解矩阵与我用 EFA 得到的因子分数非常相似(只有某种随机行为)。然而,我无法理解一些事情:

  1. 在 EFA 中,因子得分是归一化的信号。分解后的W矩阵是什么单位?它与我的测量单位相同吗?

  2. 如果用不同的种子运行 NMF 会产生不同的解决方案,我应该采取什么解决方案?我应该多次运行它吗?

  3. 如果 (1) 为真,我能否以与我的因子分数相同的方式使用 W 矩阵?(即,W 矩阵中的每一列都是“共同因子”的因子分数?)

能得到一些帮助会很棒...

1个回答

NMF/PMF 通常用于进行低秩分解。它们可以像截断的 SVD 一样使用,仅用于降维。它们也可以像因子分析一样使用,以尝试识别理论认为数据背后的潜在变量。

被截断的等级-kSVD 要求对数据矩阵进行最佳分解X进入UDVT在哪里UVk正交列,并被选择以最小化重构元素的平方误差之和X. 一个近似的 NMF 分解X作为GHT在哪里GHk列和所有条目都是非负数。还有稀疏的 NMF 算法(惊喜!)另外使因子稀疏。

NMF/PMF 的一个经典应用是在分析化学中。例如,在颗粒物空气污染研究中, X可能是一个矩阵,其(s,t)entry 是化学物质的质量浓度s在测量时t. 等级分解k对应于一个模型k粒子源,与Gsk是物种的百分比浓度s在源kHkt来自源的粒子的质量浓度k有时t. 显然,这些将是非负面的。理想情况下G会有些稀疏——你想测量的物种,如果不是某个来源独有的,至少是一组来源特有的

[更新:即使在这个应用程序中的解释GH确实取决于它们的缩放方式。这总是真的G是物种来源信息和H是源时间信息,但得到H要成为质量浓度需要缩放行H总粒子质量浓度]

PMF(至少,该名称的软件)进行非负分解,但优化用户指定的重构误差平方和的加权和,其中权重基于(最好)先前已知或(通常)估计的测定误差从复制。这在计算上是一个更难的问题。该软件还允许对估计的分解进行限制——例如,该物种7仅在源中找到3,或源 4 中物种 2 的浓度大于 5%。

在空气污染分析中,PMF(尤其是)通常被视为估计真实来源,因子分析估计潜在变量的方式。在某些方面它比因子分析做得更好,因为非负约束降低了因子分析的不可识别性(旋转自由度)。

但是您可以在数据上运行 PMF/NMF,而无需对任何特定的潜变量模型做出任何理论上的承诺,这对于因子分析来说是不可取的。例如,NMF 已被用于在没有预先指定 cluster:word 关系的情况下对文档进行聚类的文本挖掘,以及用于聚类电影的 Netflix 奖竞赛。