혹은 linear discriminant analysis라고 함.
만일, 두개의 class의 average가 같다면? → average 방법으로 classify 하기 힘듦.
또한, mean 외의 covariance도 중요함.
⇒ covariance를 고려하자.
FDA : variance in the projected 1-dim space.
Remind
각각의 datum xi 를 unit vector w에 사영하면, 사영된 벡터의 길이 wTxi 를 구할 수 있었다.
⇒ 결국 w 라는 직선 위에 있게 됨.
var(w)=N1i=1∑N(wTxi−m^)2
where m^=∑wTxi/N
여기서, 원래의 vector들의 mean을 μ^ 라고 하자. 즉,
μ^=N1∑xi
이면, m^ 은 다음과 같다.
m^=wTμ^
따라서,
var(w)=N1i=1∑N(wTxi−m^)2=N1i=1∑N(wTxi−wTμ^)2=N1i=1∑NwT(xi−μ^)(xi−μ^)Tw=wTthis is covariance matrix of original vectors.[N1i=1∑N(xi−μ^)(xi−μ^)T]w=wTΣw
여기서 Σ∈RD×D 는 공분산행렬을 의미한다.
좌측 그림은, 각 class의 분산이 겹치기 때문에 좋지 못한 classification이지만, 우측의 그림은 서로의 분산이 겹치지 않기에 좋은 classification이다.
Data를 {xi,yi} 라고 하는 것은 익숙하다. 여기서, yi∈{1,2} 이다.
∣{i∣yi=1}∣=N1 이라 하고, ∣{i∣yi=2}∣=N2 라 하자. 즉, N=N1+N2 이다.
비슷하게, class 1의 평균을 μ^1, 공분산을 Σ1 이라 하고, class 2도 비슷하게 진행하자.
즉,
Σ1=N11{i∣yi=1}∑(xi−μ^1)(xi−μ^1)T
따라서, 각 class의 공분산을 최소화해야 하는 동시에, 각 class의 중심(μ^1,μ^2 ) 가 멀어져야 하므로 전체의 분산을 최대화해야 한다.