2. Factor Analysis : intuition
• 11차원(차의 특성)의 데이터셋을 2차원(Component1, Component2)으로 차원축소(빨간색점)
• 사실은 한점으로 고정되는 게 아니라 확률분포로 나옴
• 각 특성의 유닛벡터를 (1,0,0,0,0,0,0,0,0,0,0), (0,1,0,0,0,0,0,0,0,0,0)를 FA로 사영하면 comp1에 가까운 특성,
comp2에 가까운 특성을 알 수 있음
3. 12.1 Factor analysis – model spec
• An alternative is to use a vector of real-valued latent variables,zi ∈R
• where W is a D×L matrix, known as the factor loading matrix, and Ψ is a D×D covariance matrix.
• We take Ψ to be diagonal, since the whole point of the model is to “force” zi to explain the correlation, rather than
“baking it in” to the observation’s covariance.
• z가 어느 한점으로 고정된 상태에서는 변수간의 상관관계는 없다고 가정
• The special case in which Ψ=σ2I is called probabilistic principal components analysis or PPCA.
x의 정보들이 완전히 독립이 아니라서 압축의 여지가 있다는 것
x는 어떤 작은 차원의 latent한 random variable을 선형변환 시킨 것이다
4. 12.1.1 FA is a low rank parameterization of an MVN
• FA can be thought of as a way of specifying a joint density model on x using a small number of parameters.
• MVN을 표현하는데, 원래는 공분산를 표현하기 위해 O(D*D)의 parameter가 필요한데, latent variable을
가정하면 O(D*L)의 parameter만 있으면 된다
5. 12.1 Factor analysis - visualize
• The generative process, where L=1, D=2 and Ψ is diagonal, is illustrated in Figure 12.1.
• We take an isotropic Gaussian “spray can” and slide it along the 1d line defined by wzi +μ.
• This induces an ellongated (and hence correlated) Gaussian in 2d.
초록색의 2차원 정규분포는 1차원 정규분포를 가진 z를 W로 선형변환한 것으로도 compact하게 표
현할 수 있다.
6. 12.1.2 Inference of the latent factors
•
latent factors z will reveal something interesting about the data.
xi(D차원)를 넣어서 L차원으로 매핑시킬 수 잇음
training set을 D차원에서 L차원으로 차원 축소
7. 12.1.2 Inference of the latent factors
D =11차원(엔진크기, 실린더 수, 가격,...), N =328 개의 example(자동차 종류), L = 2
• 밑에 공식에 의해 각 피쳐(엔진크기, 실린더 수,.. 11개)의 유닛 벡터 e1=(1,0,...,0), e2=(0,1,0,...,0)를 저차원 공간
에 사영한 것이 파란색 선 (biplot이라고 함)
• 각 데이터 X도 사영시킴(빨간색)
L*L*(L*D*D*D*D*1 + L*L*L*1) = L*1
• biplot 가까이 있는 빨간색점(차량)이 그 특성을 잘 가지고 있는 차
training set을 D차원에서 L차원으로 차원 축소 (빨간색 점)
8. 12.1.4 Mixtures of factor analysers
• 각 데이터 Xi가 k개의 FA에서 나왔다는 모델(GMM과 비슷)
•
let [the k’th linear subspace of dimensionality Lk]] be represented by Wk, for k=1:K.
• Suppose we have a latent indicator qi ∈{1,...,K} specifying which subspace we should use to generate the data.
• We then sample zi from a Gaussian prior and pass it through the Wk matrix (where k=qi), and add noise.
어떤 FA를 쓸 것인가를 할당하는 변수
)
9. 12.1.5 EM for factor analysis models
Expected log likelihood
ESS(Expected Sufficient Statistics)
MLE를 하는데 필요한 데이터의 충분통계량
모델 parameter W,PHI,MU를 알면 추정할 수 있
다.
모델 parameter는 t-1의 것을 쓴다 초기에는 랜덤
10. 12.1.5 EM for factor analysis models
• E- step
• M-step
MLE로 구하면
11. Eigenvector, Eigenvalue
• 어떤 선형 변환(행렬)의 고유벡터는 변환 후에도 변하지 않거나 그 크기만이 변하고 방향은 일정한 벡터를 가
리킨다.
• 어떤 고유벡터의 고유값은 변환 전과 후의 고유벡터의 크기 비율이다.
선형변환
고유값
고유벡터
12. PCA: intuition
• 차원을 줄였을 때, 사영된 데이터의 분산이 최대가 되는 것이 좋다
• FA의 special case인 PCA가 왜 이런 결과를 보이는지 볼 것이다
13. 12.2 Principal components analysis (PCA)
• Consider the FA model where we constrain Ψ=σ2I, and W to be orthonormal.
• It can be shown (Tipping and Bishop 1999) that, as σ2 →0, this model reduces to classical (nonprobabilistic)principal
components analysis( PCA),
• The version where σ2 > 0 is known as probabilistic PCA(PPCA)
즉 W의 역행렬은 W’
14. • zi를 선형 변환(W)으로 보낸 hat{xi}이 xi와의 에러가 최소화되는 것이 목적 함수, 단 W는 orthonomal 가정
• 이 최적의 W는 X’*X의 공분산 행렬의 eivenvector를 대응하는 eigenvalue의 크기 순으로 붙인 것
15. proof sketch
• reconstruction error를 줄이는 W를 구하는 것 = W 로 사영되는 데이터 z의 분산이 최대가 되는 W를 구하는 것
• W로 사영되는 데이터z의 분산이 최대가 되는 W를 lagrange multiplier 최적화로 구해본다
• W로 사영되는 데이터z의 분산이 최대가 되는 W를 구해봤더니 데이터의 empirical covariance matrix X’X의 [첫
번째, 두번째, 세번쨰.. eigenvector]
16. proof of PCA
• wj ∈RD to denote the j’th principal direction
• xi ∈RD to denote the i’th high-dimensional observation,
• zi ∈RL to denote the i’th low-dimensional representation
• Let us start by estimating the best 1d solution,w1 ∈RD, and the corresponding projected points˜z1∈RN.
• So the optimal reconstruction weights are obtained by orthogonally projecting the data onto the first principal
direction
17. proof of PCA
zi가 첫번째 latent 차원 zi = w1xi로 사
영된 데이터 포인트의 분산
•
목적함수가 error를 최소화하는 것에서 사영된 점들의 분산을 최대화하는 것으로 바뀌었다
• 분산이 최대화 될수록 J(w1)가 작아짐
X의 공분산 행렬
direction that maximizes the variance is an
eigenvector of the covariance matrix.
18. proof of PCA
eigenvalue는 eigenvector에 사영된 점들의 분산
Optimizing wrt w1 and z1 gives the same solution as before.
The proof continues in this way. (Formally one can use induction.)
19. 12.2.3 Singular value decomposition (SVD)
• PCA는 SVD와 밀접한 관계가 있다
• SVD를 돌리면, PCA의 해 W를 구할 수 있다
• PCA는 결국 truncated SVD approximation와 같다
thin SVD
• SVD는 행렬 분해 알고리즘으로, 어떤 큰 행렬을 세 가지 행렬로 쪼갠다
• truncated SVD는 자신의 원하는만큼의 singular value만 쓴다.
• singular value의 정체가 뭔지는 뒤에 설명할 것이다
24. PCA는 결국 truncated SVD approximation와 같다
• 결론적으로, X= USV’에서 US(N*L 행렬)는 PCA에서 X(N*D 행렬)가 W에 사영된 차원 축소버전이라고 볼 수 있다
25. wrap up
• latent variable(zi)을 선형변환(W)한 것이 xi와 가장 가까이 되는 선형변환을 찾고 싶다
• 이 선형변환을 찾는 문제는 결국 X를 사영시켰을 때 그 점들이 가장 큰 분산을 갖는 축들을 찾는 것이다
• 그 가장 큰 분산을 갖는 축은 X의 공분산 행렬(X’X)의 가장 큰 eigenvalue값들을 갖는 eigenvector들이다.
• truncated SVD는 X 행렬을 세가지 행렬(USV’)로 분해하여 low rank appoximation을 하는데
• V는 PCA의 해 W와 같다
• US는 PCA의 X가 W에 사영된 점 Z와 같다
27. 12.2.5 EM algorithm for PCA
• PCA에서 Estep은 latent 변수 Z를 추론해 내는 것이고 FA EM에서 etep에서의 posterior의 평균을 쓴다
X가 W가 span하는 공간에 사영된 것
확률모델이 아니라 공분산 없다고 침
행렬 표현
28. 12.2.5 EM algorithm for PCA
• 파란색 막대(W)에 용수철이 동그라미(Z)에 달려있고, 그걸 초록색 위치(X)만큼 잡아당기고 있다고 해보자
• E-step은 스프링의 장력(sum of squared residual에 비례)이 최소화 되도록 동그라미를 옮긴다
• M-step은 막대 위의 동그라미 위치는 고정한 상태에서 장력이 최소화되도록 막대를 회전시킨다
•
축이 데이터 X의 가장 큰 분산의 위치에 근접하게 됨을 알 수 잇다
Wt-1
29. 12.2.5 EM algorithm for PCA
• EM의 장점
• EM can be faster
• EM can be implemented in an online fashion, i.e., we can update our estimate of W
as the data streams in.
31. Conclusion
• FA는 정규분포의 x 을(D*D paramters), 더 작은 parameter 갯수(D*L)로 표현한다.
• PCA는 FA의 special 케이스이다
• PCA문제
의 해 W는 Z로 사영되는 데이터의 분산이 최대가 되게 하고 가장 큰
eigenvalue에 대응하는 eigenvectors이다
• SVD (X = USV’)에서 V는 X의 공분산 행렬의 eigenvectors이다. 그러므로 W=V