일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- Ridge regression
- hyperplane
- lest square method
- MLE
- AdaGrad
- logistic regressionlogistic
- map
- loss function
- k-Fold
- 로지스틱 회귀
- metacode metacodem
- cross entropy loss
- metacode
- logit
- 우도확률
- 머신러닝
- l1 loss
- metacodem
- 메타코드
- Learning Rate
- 재현도
- Multiclass
- F1 Score
- 메타코드M
- l2 loss
- variacne
- colab
- regularization
- 사후확률
- lasso regression
- Today
- Total
go hard to Hardware
[머신러닝 입문] 메타코드 강의 후기_머신러닝 입문 올인원_2강 분류(2) 본문
http://mcode.co.kr/video/list2?viewMode=view&idx=21
MLE(Maximum Likelihood Estimation)
- Likelihood 가 우도 확률을 나타내는 말
- parameter 값을 잘 모르지만 안다고 가정했을 경우, 주어진 데이터의 분포를 찾아보는 것
- 중앙에 데이터가 몰려있는 형태를 정규분포라 하는데, PDF는 평균( μ )과 분산( σ )를 이용해서 정규분표의 확률값을 찾을 수 있는 함수이다.
- Sample이 n개로 표현할 때, 각각의 pdf가 모두 존재 할 것인데 이 모든 값을 곱해준 것이 Likelihood가 된다.
- Sample이 i.i.d 하다고 가정해야 하는데, 이는 각 시행이 독립적이고 같은 분포를 가지는 것을 뜻한다.
- 우도확률 : 데이터 분포가 나올 확률 → 현재의 데이터 분포가 나올 확률이 가장 높은 파라미터는 우도확률을 최대로 만드는 파라미터를 뜻하고 이를 최대 우도 추정법(MLE)라고 한다.
- 수식 : w가 주어졌을 때 데이터 분포(X)가 나올 수 있는 확률을 최대화 할 수 있는 w^을 찾자
- 동전이 앞만 계속 나오고 뒤가 한 번만 나온 데이터를 사용할 때, w가 1에 가까울 때 높은 정확도를 보일 것이다.
- 머신러닝에서 이런 데이터 의존적인 특성은 문제가 된다.
최대 사후 확률 (Maximum A Posterior, MAP)
- MAP는 사후확률을 최대로 하는 머신러닝 파라미터 w 를 찾는 것이 목표이다.
- 사후확률은 P(w)*P(X|w)를 이용해서 근사할 수 있다. (사전확률 * 우도확률)
- 곧바로 계산하는게 불가능하기 때문에 P(w)는 정규분포, 베르누이 분포 등...을 따른다고 가정하고 계산한다.
- 사후확률은 이렇게 베이즈 정리를 사용해야 한다.
MLE for Logistic Regression
[베르누이 분포 (Bernoulli)]
- 두 가지 결과값만 가지는 실험 → 머신러닝의 이진 분류와 깊은 관계!
- Y라는 예측값이 yi(0,1)의 라벨이 될 것이고 P^yi는 x가 주어졌을 때 y=1의 확률값이고 이는 [0.1] 값을 가진다. P(y=1|x)
- 시행에 따른 결과값이 y_i = 1일때 확률값은 p, y_i = 0 일 때 확률값이 1-p 가 됨을 의미한다.
- 베르느이 분포에 대한 pdf 함수를 통해 Likelihood를 모든 데이터에 대한 pdf로 표현할 수 있게 된다.
- 머신러닝에서 로지스틱 회귀는 시그모이드 함수와 선형회귀의 결합으로 표현할 수 있었다.
- 베르누이 분포는 y=1이 될 확률을 나타내는 것이라 할 수 있는데, p(y=1)=0.7이라서 시그마(W^TX)에 의해 1로 분류됐다면, parameter p 값이 시그마(W^TX)인 베르누이 분포로 해석 가능한 것이다.
- 우도 함수를 베르누이 분포의 우도함수로 작성을 할 수 있다.
- 이 우도 함수를 최대화 하므로써 손실함수를 구해볼 수 있다.
- MLE 함수는 -lnL 를 손실함수로 사용한다.
- 머신러닝의 경사하강법에 의한 ∂(-lnL)/ ∂w 를 계산 할 수 있어야 한다.
- -lnL을 전개할 때 시그모이드 함수 형태를 사용해서 깔끔하게 정리할 수 있다.
- ∂(lnL)/∂w = 0 를 정리한 결과를 보면 Xi에 대해서 묶이고 선형회귀 함수를 sigmoid 함수에 대입한것과 같은 것을 확인할 수 있다.
- 로지스틱 회귀 모델이기 때문에, 로지스틱 회귀에서 yi = 1일 때의 확률을 베르누이 분포를 따라 표현할 수 있다.
- 이를 통해 업데이트할 방향을 찾을 수 있고 learning rate와 곱한 값을 빼서 weight를 구할 수 있다.
메타코드 서포터즈로서 작성하였습니다.
'ML,DL > ML 입문' 카테고리의 다른 글
[머신러닝 입문] 메타코드 강의 후기_머신러닝 입문 올인원_2강 분류(4) (0) | 2024.05.11 |
---|---|
[머신러닝 입문] 메타코드 강의 후기_머신러닝 입문 올인원_2강 분류(3) (0) | 2024.05.11 |
[머신러닝 입문] 메타코드 강의 후기_머신러닝 입문 올인원_2강 분류(1) (0) | 2024.05.03 |
[머신러닝 입문] 메타코드 강의 후기_머신러닝 입문 올인원_1강 회귀(6) (1) | 2024.04.28 |
[머신러닝 입문] 메타코드 강의 후기_머신러닝 입문 올인원_1강 회귀(5) (1) | 2024.04.28 |