为什么Matlab在计算PCA系数时强制使用符号约定?

为什么Matlab在计算PCA系数时强制使用符号约定?,matlab,pca,svd,Matlab,Pca,Svd,我正在对我的数据(图像序列)应用PCA,但当我使用PCA(Matlab工具箱)命令并手动创建矩阵和使用SVD命令时,得到了不同的结果 在做了一些搜索之后,我发现matlab在系数计算的PCA代码中强制执行了一些符号约定,这是为什么?中提到的是符号模糊问题 尽管奇异值分解(SVD)和特征值分解(EVD)已经建立,并且可以通过最先进的算法进行计算,但通常没有提到存在内在的符号不确定性,这会显著影响从其结果中得出的结论和解释我们通过从奇异向量和单个数据向量的内积的符号确定奇异向量的符号来解决符号模糊问

我正在对我的数据(图像序列)应用PCA,但当我使用PCA(Matlab工具箱)命令并手动创建矩阵和使用SVD命令时,得到了不同的结果

在做了一些搜索之后,我发现matlab在系数计算的PCA代码中强制执行了一些符号约定,这是为什么?

中提到的是符号模糊问题

尽管奇异值分解(SVD)和特征值分解(EVD)已经建立,并且可以通过最先进的算法进行计算,但通常没有提到存在内在的符号不确定性,这会显著影响从其结果中得出的结论和解释我们通过从奇异向量和单个数据向量的内积的符号确定奇异向量的符号来解决符号模糊问题。数据向量可能有不同的方向,但选择大多数向量指向的方向既直观又实用。这可以通过评估签名内积和的符号来找到。