→ Likelihood function에 θ를 입력하고, 데이터들의 θ에 대한 확률 값의 곱을 통해 Likelihood를 최대화 하는 파라미터 찾기 ▪Likelihood라는 값을 통해 데이터를 얼마나 잘 설명하는지 알 수 있음 ▪Gradient Ascent를 통해 찾을 수 있음
Likelihood Function
입력으로 주어진 확률 분포(파라미터: μ, σ)가 데이터를 얼마나 잘 설명하는지 나타내는 점수(Likelihood)를 출력하는 함수 입력: 확률 분포를 표현하는 파라미터 출력: 데이터를 설명하는 정도
데이터를 잘 설명하는지 알 수 있는 방법 데이터가 해당 확률 분포에서 높은 확률 값을 가져야 잘 설명한다고 볼 수 있다. : Probability Density ↑
Log Likelihood
Likelihood는 확률의 곱으로 표현하기 때문에 underflow의 가능성이 있다. → log을 취하여 곱셈을 덧셈으로 바꾸어 계산한다.
Maximnum Likelihood Estimation
Likelihood를 최대화 하는 파라미터를 찾아나가는 과정
MLE via Gradient Ascent
Gradient Ascent를 통해 likelihood값을 최대로 만드는 파라미터(θ)를 찾는다.
Neural Networks는 확률 분포 함수이므로 MLE를 통해 파라미터를 찾을 수 있다.
Negative Log Likelihood (NLL)
대부분의 딥러닝 프레임워크는 Gradeint Descent만 지원한다.
→ maximization 문제에서 minimization 문제로 접근하면 된다!
→ Gradient Descent를 수행하기 위해서는 파라미터에 대한 미분을 거쳐야 함 : ∴Back propagation
MLE의 수식
DNN에 적용하여 생각해본다면, softmax 결과를 확률 분포로 볼 수 있다.
마지막 수식은 Cross Entropy Loss에서도 볼 수 있다.
Classification에서 softmax를 취한다음 Cross Entropy로 최적화를 수행하는 과정을 MLE를 하는 과정이라고 볼 수 있다!
즉, Neural Network는 θ(Layer weight)라는 확률 분포 함수의 파라미터를 갖고 있다고 볼 수 있으므로 수집한 데이터를 잘 설명하기 위한 파라미터를 찾는 과정이라고 볼 수 있다.