我浏览了 Robust PCA 的算法和一些论文,虽然我理解它,但矩阵 M 由低秩矩阵 L 和稀疏矩阵 S 组成。如果我是正确的,它可以是稀疏矩阵 S用于识别异常值。现在我有两个问题,我们将不胜感激 statexchange 社区的任何帮助:
问题1:。如果数据是一维时间序列,我将如何将其转换为二维矩阵。我尝试了两种方法,一种是,假设我有 7 天的数据,每天我收集 24 个数据点(只是说)所以我所做的就是将我的一维向量重塑为一个二维形状数组(#每天的记录,#days) 即 (24,7) 但它的意思是第一列将仅包含第一天的数据,第二列将仅包含第二天的数据,依此类推。第二种方法是我只是简单地将形状为 (168,1) 的一维时间序列向量重塑为 (24,7) 的二维矩阵,但在这种情况下,输入是水平分布的,即前 7 个输入第 1 行第 1 天,第 2 行第 7-14 个条目,第 3 行第 15-21 个条目,依此类推。
但是,当我对其应用 R-PCA 算法时,从第二种方法获得的 2-d 矩阵的重构值与几乎匹配的原始时间序列(PCP 的目的)匹配,而重构的(L+S)从第一种方式重塑矩阵的值几乎是随机的,并且与原始矩阵 M 的值并不真正匹配。知道这是如何发生的以及为什么发生的吗?
问题2:。我将如何使用稀疏矩阵来确定异常。我正在考虑一些距离测量的东西,但任何对此的见解/参考也将受到欢迎。