데이터의 크기를 줄이기 위해 주성분 분석을 적용하려고합니다. 200x146, 146 개의 피쳐 (치수)가있는 200 개의 관측 (샘플), 각 관측치는 세 가지 클래스 중 하나에 속할 수 있습니다. 내가하려는 것은 데이터를 시각화하여 데이터에 새 샘플을 추가 한 후 클래스 중심이 어떻게 움직이는 지 확인하는 것입니다. 이러한 높은 차원의 데이터를 그리는 것은 불가능하므로 거의 모든 클래스 클러스터에서 데이터를 나타내는 차원을 찾고 있습니다.주요 구성 요소 anaylsis, 얻은 계수는 무엇을 말해 줍니까?
나는 PCA가 고유 벡터의 고유 값을 계산하는 반면, 고유 값은 분산을 계산한다는 것을 알고 있습니다. 분산이 높을수록 데이터가 확산되고 시각화하는 것이 좋습니다. 최고 고유치를 갖는 고유 벡터가 주성분이고,이 성분에 직교하는 축은 PCA에 의해 발견된다. (내가 PCA의 기본 아이디어를 올바르게 이해 했는가?)
그러나 나는 이해하지 못한다. 내가 matlab 함수 pca()를 사용할 때 어떤 정보를 얻는가? 계수를 얻지 만, 그들은 나에게 무엇을 말해 줄까? 어떻게해야합니까? ) ';
data=trndata;
[coeff,score]=pca(data(:,1:end-1));
newinputdata=coeff(:, 1:3)*score(:, 1:3
newinputdata=newinputdata';
class1i=find(data(:,end)==1);
class2i=find(data(:,end)==2);
class3i=find(data(:,end)==3);
class1=newinputdata(class1i,:);
class2=newinputdata(class2i,:);
class3=newinputdata(class3i,:);
x=1;
y=2;
figure;
plot(class1(:,x), class1(:,y),'ro')
hold on
plot(class2(:,x), class2(:,y),'go')
hold on
plot(class3(:,x), class3(:,y),'bo')
PCA는 확실히 당신이 달성하기를 바라는 좋은 도구이지만, 3 가지 클래스가 있고 2D 선형 사운드를 투영하려고한다는 사실은 [선형 판별 분석] (https : // ko .wikipedia.org/wiki/Linear_discriminant_analysis)도 차원 감소에 사용됩니다. – kazemakase