如何使用线性判别分析获得的投影重建数据

时间:2016-04-13 14:04:04

标签: matlab classification linear-discriminant

我正在尝试从LDA获得的预测中重建数据。这个想法是评估从减少的LDA因子集获得的重建误差。在下面的matlab代码中,问题是如何使用投影数据p和特征向量LTrans来获得重建。

L = fitcdiscr(data,class);
[LTrans,Lambda] = eig(L.BetweenSigma,L.Sigma,'chol');
[Lambda,sorted] = sort(diag(Lambda),'descend'); % sort by eigenvalues
LTrans = LTrans(:,sorted);
xc = L.X;
mu = mean(xc);
Xm = bsxfun(@minus, xc, mu);
for i_fact=1:size(L.Sigma,2)
  z = Xm*LTrans(:,1:i_fact);
  p = z*LTrans(:,1:i_fact)';
  p = bsxfun(@plus, p, mu);
end

0 个答案:

没有答案