주성분 분석의 목적: 데이터 압축, 데이터 해석, 데이터 차원 축소
주성분 분석이란 무엇입니까?
몇 가지 주요 구성요소를 통해 여러 변수 간의 내부 구조를 설명하는 방법을 연구합니다. 즉, 몇 가지 주성분은 원래 변수로부터 파생되어 원래 변수에 대한 정보를 최대한 유지하면서 서로 독립성을 가지게 되며, 사물이나 현상을 판단하기 위한 종합적인 지표를 찾고 분석하는데 자주
사용 됩니다 . 그 안에 담긴 종합적인 지표를 파악하고, 정보를 적절하게 해석합니다.
주성분 분석의 기본 아이디어
- 주성분 분석은 특정 상관관계가 있는 많은 원래 변수(예: p 변수)를 관련되지 않은 새로운 포괄적 변수 세트로 재결합하여 원래 변수를 대체하는 것입니다. 처리 방법 일반적인 수학적 처리는 원래의 p 변수를 새로운 포괄적 변수로 선형적으로 결합하는 것입니다.
- 선택된 첫 번째 선형결합, 즉 첫 번째 종합변수가 F1으로 기록된다면, F1이 원래 변수의 정보를 최대한 많이 반영할 수 있기를 바라는 것은 당연하다.
- 가장 고전적인 방법은 이를 분산으로 표현하는 것입니다. 즉, varF1)이 클수록 F1에 더 많은 정보가 포함됩니다. 따라서 모든 선형결합에서 선택된 F1은 가장 큰 분산을 가져야 하므로 이를 첫 번째 주성분(Principal Componentl)이라고 합니다.
- 첫 번째 주성분이 원래 p 변수의 정보를 표현하기에 충분하지 않은 경우 두 번째 선형 조합인 F2를 선택하는 것을 고려하십시오. F2를 두 번째 주성분(principalcomComponent II)이라고 합니다. F1과 F2의 관계는 무엇입니까?
- 원래 정보를 효과적으로 반영하기 위해 F1의 기존 정보는 더 이상 F2, 즉 cov (F1,F2)=0에 나타나지 않습니다. 유사하게 p개의 주성분을 얻을 수 있습니다. 따라서 이러한 주성분은 서로 상관관계가 없으며 순차적으로 분산이 감소합니다. 실제로는 처음 몇 개의 가장 큰 주성분을 선택하여 표현합니다. 기준?
- 각 주성분의 누적 분산 기여율이 >85%이거나 특성근이 >1입니다.
주성분 분석의 수학적 모델
KMO가 0.5를 초과하면 주성분 분석을 할 수 있고, KMO가 0.3~0.5이면 주성분 분석을 할 수 있으나 권장하지 않으며, 0.3 이하에서는 주성분 분석을 할 수 없다.
Sig 유의수준 검정이 0.05 미만이면 가능하고, 0.05보다 크면
두 개의 데이터 중 하나를 만족시킨 후 메인 프로그램 검정을 하는 것은 권장하지 않는다.
주성분 분석 단계
- 수준과 차원에 대한 변수의 영향을 제거하기 위해 원래 p 지표를 표준화합니다.
- 표준화된 데이터 행렬을 기반으로 상관계수 행렬을 계산합니다.
- 공분산 행렬의 고유근과 고유벡터를 구합니다.
- 주성분을 결정하고, 각 주성분에 담긴 정보를 적절하게 설명하는
부분으로, 책과 비교하면 이해하기 쉽습니다.
예
주성분 분석을 사용하여 투자 이점을 분석하고 순위를 매깁니다.
암호
clc,clear
gj=load('data14_7.txt');%获取数据
gj=zscore(gj); %数据标准化
r=corrcoef(gj); %计算相关系数矩阵
%下面利用相关系数矩阵进行主成分分析,x的列为r的特征向量,即主成分的系数
[x,y,z]=pcacov(r) %y为r的特征值,z为各个主成分的贡献率
f=repmat(sign(sum(x)),size(x,1),1); %构造与x同维数的元素为±1的矩阵
x=x.*f %修改特征向量的正负号,每个特征向量乘以所有分量和的符号函数值
num=3; %num为选取的主成分的个数
df=gj*x(:,[1:num]); %计算各个主成分的得分
tf=df*z(1:num)/100; %计算综合得分
[stf,ind]=sort(tf,'descend'); %把得分按照从高到低的次序排列
stf=stf', ind=ind'
작업 결과