최대가능도방법 (最大可能度方法, 영어: maximum likelihood method) 또는 최대우도법(最大尤度法)은 어떤 확률변수에서 표집한 값들을 토대로 그 확률변수의 모수를 구하는 방법이다. 어떤 모수가 주어졌을 때, 원하는 값들이 나올 가능도를 최대로 만드는 모수를 선택하는 방법이다. 점추정 방식에 속한다.
쉽게 말하면, 우리는 어떠한 확률 변수를 가지는 상황에서 결과값들을 모으게 된다. 이 때, 확률 변수란 말 그대로 그 상황이 발생할 확률을 변수로 표현한 것이다.
이 때 Likelihood는 번의 시행이 각각 이 나올 가능성(확률)이다. 즉, 각 확률변수에 대해서 확률 밀도(질량) 함수가 라면, Likelihood값은 이다. 만약 각 확률변수들이 독립적이고 같은 확률 분포를 가지고 있다면 으로 표현이 가능할 것이고, 여기에 를 취해 단조 증가함수로 만들어 계산을 쉽게 하기도 한다.
이 때, 이러한 함수들에 영향을 주는 모수가 존재한다. Gaussian Distribution에서 가 그럴 것이다. 우리는 이 모수들을 통틀어 로 표현할 수 있다. 따라서
로 표현할 수 있다. 이 때, 우리는 이 가능도를 최대로 만드는 가 구하고 싶은 것이다. 즉 이렇게 Likelihood를 최대로 만드는 값을 라 하고, 위 내용을 수식으로 적으면
가 된다.
이러한 값을 찾기 위해서는 간단하게 말하면 미분해서 0이되는 지점을 찾는 것이다. Gradient Descent에서와 같이 Learning Rate와 Loss Function의 Gradient의 곱을 계속해서 빼주는 형식으로 업데이트를 하는 것이다.
이렇게 MLE를 최대로 하는 를 Machine Learning을 활용해서 찾아내게 되면 주어진 데이터를 가장 잘 설명하는 확률 분포 함수를 찾으려고 하다보니 Overfitting의 가능성이 매우 높다. 이 과적합을 최소화하기 위해서는 Training Set와 Test Set으로 분리할 때, 일부를 Validation Set으로 만들어 검증을 실시해주어야 한다.
실제로 학습을 진행할 때, loss값과 val_loss값을 비교할 수 있는데, loss값은 epoch수가 커질 수록 계속 작아지지만, val_loss값은 일정 수준 떨어지다가 다시 올라가는 현상을 볼 수 있다. 따라서 val_loss값이 최소가 되는 값을 찾는 것이 중요하다고 할 수 있다.
이 외에도 오버피팅을 막기 위해서는
여기서 Regularization의 방법으로는 다음과 같은 것들이 있다.