두 작업 : 주성분 분석 : 단계, 응용 프로그램 코드입니다. 당신은 어떤 프로그래밍 언어를 사용할 수있는 코드를 잘 알고 있습니다.

두 작업 : 주성분 분석 : 단계, 응용 프로그램 코드입니다. 당신은 어떤 프로그래밍 언어를 사용할 수있는 코드를 잘 알고 있습니다.

주성분 분석은 주 성분의 이러한 치수의 감소 기술을 생성하는 약간의 지표의 포괄적 인 분석은, 그것이 가장 많은 정보를 원래의 변수를 반영 보통 선형 원래의 변수로 표현 수 통계적 다중 지표 인 조합. 사상 PCA는 언급은 m 차원 직교 새로운 기능이다 m 차원 (M <N)에서 N 차원 기능을 매핑하는 것을 특징으로 주성분으로서 그 m 차원 재 구축하지 단순히 N 행 상기 나노 치수 피쳐 치수를 뺀다. PCA의 핵심 아이디어는 데이터를 구별하기 쉽게, 프로젝션 데이터의 방향을 따라 가장 크다.

PCM의 차원 감소의 단계 :

센터링 후 새로운 데이터의 평균값을 뺀 원래 데이터] 1. 우리는 일반적으로 행 선택이 각 기능에 대한 평균 특성이다;

2. 시크 기능 공분산 행렬;

공분산 행렬의 고유치 및 고유 벡터

배열은 또한 대응하는 특징 벡터를 제공 따른 내림차순 4. 고유치는 몇몇 주요 컴포넌트를 선택 투영 매트릭스를 찾을.

데이터가 우리 투영 매트릭스 차원 축소에 의해 구.

PCM 응용 프로그램 :

  1. 主成分分类
    

    다른 지표를 수집한다 대한 주성분 분석, 산점도가 알 수있는, 그것이 분류 될 수있다

  2. 主成分回归
    

    다수의 독립 변수가 공통으로 나타나는 경우, 주성분 분석은 고전 회귀 극복 불충분

MATLAB 코드 구현

단계 :

데이터 1 중앙

2. 추구하는 기능 공분산 행렬

공분산 행렬의 고유 값 및 고유 벡터를 찾을합니다

, 승순 (K)의 최대 값을 취득하고, 대응하는 고유 벡터의 제 특성 값은 K 행렬로 구성된 열 벡터로서 특징

5. 선택된 샘플 포인트는 선택된 특징 벡터 K 투영

모두;

모든을 닫습니다;

X = [2.5 2.4;

0.5 0.7;

2.2 290;

1.9 2.2;

3.1 3.0;

2.3 2.7;

2 160;

11.1;

1.5 1.6;

1.1 0.9];

X = X '

% X = [74 87
84 88 74 86 69 73 64;

%
69 84 74 85 84 85 83 83 (77);

%
87 86 83 86 85 83 91 89 85;

%
69 100 82 96 84 82 97 98 76;

%
46 53 88 89 97 97 48 89 (36);

%
59 98 93 94 98 100 79 83 61];

% X = X ';

% X = 2 0
-1.4;

%
2.2 0.2 -1.5;

%
2.4 0.1 -1;

%
1.9 0 -1.2];

% X = X ';

[A, B] = 크기 (X);

M = SUM (X) / A]

난 = 1의 경우 : B

B(:,i)=X(:,i)-M(i);

%B=zscore(X);

종료

S = 1 / (A-1) B B ';

[벡터 값 = EIG (S);

벡터

DIAG 값 = (값)

varine = SUM (값);

[value_sort는 첨자] 정렬 (값 '이 하강을') =;

value_sort;

첨자;

value_sort = value_sort / SUM (value_sort);

비교 = 0;

서명 = 0;

난 = 1의 경우 : B

if compare<0.9

    sign=sign+1;

    compare=compare+value_sort(i);

end

종료

내가 1 = 대한 : 기호

P(:,i)=vector(:,subscript(i));

종료

D는 제로 (기호, 기호) =;

내가 1 = 대한 : 기호

D(i,i)=value(subscript(i));

종료

출시 두 원저 · 원의 칭찬 0 · 조회수 (141)

추천

출처blog.csdn.net/ManWen_Li/article/details/104383678