문과 열등생 2024. 2. 23. 00:15

신경망 모델의 output을 바라보는 두 가지 관점

  • input에 대한 output이 특정 label일 확률로 보는 경우 (Bernoulli)
    • 이 관점에서 신경망 모델의 weights는 input data가 정답 label일 확률을 높일 수 있도록 학습
    • 이 관점에서 model의 목적은 lassification의 관점과 유사하게, input data가 특정 label을 가질 확률을 높이도록 weight를 조절하는 것
  • input에 대한 output이 input data의 attribute의 확률분포의 평균 값으로 보는 경우 (Gaussian)
    • 이 관점에서 신경망 모델의 weight는 output이 정답 label이 갖는 확률분포의 평균 값을 출력할 수 있도록 학습
    • 이 관점에서 model의 목적은 input data에 대한 output이 label의 확률분포를 잘 표현할 수 있도록 평균값을 조정하는 것으로, 결국 label의 확률분포를 추정해가는 것
    • 이를 Maximum Likelihood Estimation이라고 함

Maximum Likelihood Estimation

  • 관측되는 데이터들을 가장 잘 모델링하는 확률분포의 parameter로서 weights를 찾는 알고리즘

Log 단조증가함수

손실함수에서 log를 사용하는 이유는 단조증가함수라는 점에서 0과 1사이의 어떤 점에 존재하더라도 기울기가 0에 수렴하지 않고 증가 추세에 있다는 점에서, backpropagation에 있어 학습이 멈추는 문제 발생하지 않음

반면, last layer에서 MSE를 사용하게 되면, sigmoid activation function을 통과한 값에 대해 MSE를 적용한다고 가정할 때, 특정 지점에서 대칭적이며 0과 1 근처에서 극값이 0에 수렴하므로, weight initialize에 큰 영향을 받게 되고, 해당 지점에서의 학습이 이루어지지 않아 비효율적인 문제가 발생할 수 있다.

그러한 이유로 손실함수에서는 log-likelihood를 많이 사용한다.

(하지만 deep한 layer에 대해서는 MSE 역시 convexity를 갖는다는 점에서, 절대적으로 사용하면 안되는 것은 아니다.)

Likelihood는 확률밀도함수는 아님

What is likelihood and what is difference between likelihood and probability?

Likelihood : 관측된 사건이 고정된 상태에서 확률분포가 변화할 때(혹은 확률 분포를 모르기 때문에 가정할 때) 관측된 사건이 나타날 확률

Probability : 확률 분포가 고정된 상태에서 관측된 사건 변화할 확률

 

왜 인공신경망은 MLE 기계인가? : input data의 확률 분포를 알지 못하는 상황에서 출력값에 대한 손실함수를 토대로 출력값을 만드는 weights를 찾는 것

신경만 모델을 통과한 output은 input에 대하여 output을 출력할 수 있는 확률분포를 만들기 위해 w를 조정하는 과정이라고 볼 수 있다.