ML

[ML] Gaussian Discriminant Analysis

mingyung 2023. 9. 23. 18:47

Background

이미 알 법한 간단한 내용이지만, GDA를 이해하기 위한 background는 다음과 같다.

Multivariate normal distribution

https://en.wikipedia.org/wiki/Multivariate_normal_distribution

Bernoulli distribution

https://en.wikipedia.org/wiki/Bernoulli_distribution

Generative learning algorithm

 

Maximum Likelihood Estimation

 

Gaussian Discriminant Analysis

❗ Assumption ❗

p(x|y) is distributed according to a multivariate normal distribution.

Gaussian Discriminant Analysis 모델은 Generatuve learning algoritm 모델 중 하나로, 따라서

For input feature x that are continous-valued random variable,

The Gaussian discriminant Analysis(GDA) model which models p(x) and p(x|y)

 

분포는 다음을 따른다.

 

Log Likelihood of GDA

파란색 부분이 likelihood 가 됨을 알 수 있고, 나머지부분은 prior이다.

 

Maximum Likelihood Estimation

1. Fit Parameters

Compute MLE of params to be as follows.

I():: indicator func. 따라서 func내의 값이 true인 경우에 1, 아니면 0 반환.

모든 m개의 샘플에 대해서 각 샘플의 y값이 1인 경우를 count하여 y=1일때의 확률 phi을 얻는다.

y=0일 때 평균mu_0은 y=0의 값을 가지는 x의 합을 개수로 나누어 구한다.

y=1일 때 또한 동일하게 구한다.

분산은 편차제곱의 평균으로 구한다. 만약 sigma값이 다른 경우 평균을 구할 때 처럼 각각에 해당하는 값으로 분산을 구한다.

 

2. Prediction

이제 테스트용 데이터와 구했던 파라미터를 활용해서 prediction해보자

Compute p(x|y=1), p(x|y=0), p(y) using params computed in step1

3. compute posterior probability