Processing math: 100%

KFDA

Published: Aug 20, 2021 by Dev-hwon

이 내용은 고려대학교 강필성 교수님의 Business Analytics 수업을 보고 정리한 것입니다.

아래 이미지 클릭 시 강의 영상 Youtube URL로 넘어갑니다.

02-5: Kernel-based Learning - KFDA

Kernel Fisher Discriminant Analysis(KFDA)

LDA의 Kernel화된 확장판이라고 보면 됨

1. Linear Discriminant Analysis

data의 class가 잘 구분이 되게 사영시키기 위한 기저 찾기

✓ Two type of class distance

  • Between-class distance : 두 class의 centroid간의 거리 (커야하고)
  • Within-class distance : 각각의 객체로 부터 해당 class의 centroid까지의 누적 또는 평균 거리 (작아야 한다.)

✓ Fisher’s LDA

  • D차원 입력 벡터 x를 가져와 하나의 차원으로 투영
y=wTx
  • m1은 한 class의 centroid, m2를 다른 class의 centroid라고 하면,
m1=1N1nC1xn,m2=1N2nC2xn
  • Objective 1: between class variance가 최대한 커지는 w
m2m1=wT(m2m1),mk=wTmk
  • Objective 2: Within-class variance를 최소화하는 w
s2k=nCk(ynmk)2
  • Fishers’ criterion

J(w)를 maximize하는 것이 목표!

  • Find w
J(w)=wTSBwwTSWw

를 미분한 값이 0이 되어야 한다.

J(w)w=0

분모만 가지고 오면

  • SB는 항상 (m2m1)의 방향
  • wTSBwwTSWw를 scalar
  • 따라서 Fisher’s linear discriminant

2. Kernel Fisher Discriminant (KFD)로 확장

  • 데이터를 고차원 벡터로 mapping 후에 covariance matrix 계산 (mΦ는 sentroid)

  • within-class variance, between-class variance

✓ Objective functions

✓ Projected vector

Feature space 내의 객체들의 선형 결합으로 표현 될 수 있다.

✓ Projected mean

✓ Objected function (Numerator)

✓ Objected function (Denominator)

α와 커널 함수 매트릭스로 나온다는 것이 핵심, 결국 feature space내에서 실질적인 계산을 하지 않고 입력 공간네에서 커널 함수만 정의가 되면 분모도 계산할 수 있다.

✓ Objective function (α)

✓ 1차 도함수가 0이 되게

✓ 새 데이터 포인트의 투영 값

Machine Learning Kernel-based Learning KFDA Kernel Fisher Discriminant Analysis