在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
matlab 中自带的函数就不必怀疑。 princomp:principal componet analysis (PCA). [COEFF,SCORE,latent,tsquare]=princomp(X); 参数: %%%%%%%%%%%%%%%%%% INPUT: X是数据:n*p,其中n代表样本个数,p代表特征维数 %%%%%%%%%%%%%%%%%% OUTPUT: COEFF: 协方差 p*p,投影矩阵 SCORE:投影之后的数据。如果样本个数<=特征维数,有一个有意思的 现象:SCORE(:,n:p), latent(n:p)都为零。为何呢?请以两个 数据点为例。即n=2,p=3;当选择了一个投影轴之后,再选一个 正交的抽,发现无论怎么选,它们投影之后都会重叠,即0。 latent:计算完之后并不是主成分归一化的权重。如果需要,用下面代码: cumsum(latent)./sum(latent);
很注意的是: 训练样本计算出来了协方差矩阵。如果来了一个测试集,我们不能再去重新 计算一个协方差矩阵。因为那样会使训练集和测试集投影到不同的空间上, 最终导致特征空间不一致,训练出来的参数毫无意义。
|
2023-10-27
2022-08-15
2022-08-17
2022-09-23
2022-08-13
请发表评论