본문 바로가기

ml_interview

LDA Linear Discriminant Analysis, 평면 방정식을 통해 이해해보자~, 결정 표면이 평면(초평면) 방정식에 해당

데이터의 차원을 축소하는 데 사용되는 기법 중 하나, 분류 문제에서 사용

데이터의 변동성을 최대한 보존하면서 클래스 간의 분리를 최대화하는 방향을 찾는 것, 

  1. 클래스 내의 분산 계산
    1. 각 클래스 내에서 샘플들의 분산 해열ㄹ의 계산
  2. 클래스 간의 분산 계산
    1. 각 클래스의 평균 벡터가 전체 평균 벡터에서 얼마나 떨어져 있는지 계산한다.
  3. 최적의 방향 탐색
    1. 일반화된 고윳값 문제로 변환하여 고유 벡터를 구하는 방식으로 해결
  4. 데이터 투영
    1. y = w^T x

 

linear discriminant function 의 단순한 표현, 입력 벡터들의 선형 함수

가중벡터 w , 편향 w_0, 임계값 w_0

결정 경계는 y(x) = 0 에 해당, D - 1차원 초평면에 해당, 

표면상의 두 점 x_A,B 을 통해 알 수 있는 것은 w(x_A - x_B) = 0 이므로 벡터 w 는 결정 표면상의 모든 벡터들과 직교 한다.

이러한 내용은 벡터 w 는 Normal Vector 라고 해석할 수 있는거??

 

n 차원 데이터, 벡터 x 가 존재, 이러한 x 값들에 의한 y(x) 의 차원은 n-1 차원이 되는데, 그 이유는 고정된 w, 법선 벡터에 의한, 자유도가 낮아지므로 n-1 차원의 초평면상에 존재,

이러한 초평면을 구성시킨? w 는 법선 벡터 Normal Vector 라고 생각할 수 있음,

 

당연히 원점으로부터 결정 표면까지의 거리는 w_0, bias 에 의해 결정되는 것도 당연하고

 

y(x) 의 절댓값은 뭘까 그럼, 각 데이터 x 에서 결정표면까지의 거리지 당연하게도,  

 

 

(x_1, y_1, z_1) 은 평면 외부의 점, 

평면의 방정식, Ax + By + Cz + D = 0 의 형태

A,B,C 는 평면의 법선 벡터 n 의 성분, D 는 상수항, 

 

점에서 평면까지의 거리를 구하기 위해 점 x_1 ,y_1, z_1 에서 평면 상의 한 점 x_0, y_0, z_0 까지의 수직 투영을 고려한다.

 

수직 투영 벡터는 평면의 법선 벡터 n = [A, B, C] 방향으로 향한다.