기본 콘텐츠로 건너뛰기
인공지능, AI, NLP, 논문 리뷰, Natural Language, Leetcode
PRML-01.1, 예시: 다학식 곡선 피팅
Introduction
- 간단한 회귀 문제로 예시로 든다.
, ^T)
- N=10으로 데이터 개수
- x는 같은 거리를 가지는 x 축의 값이라고 생각
- t는 sin(2*pi*x)+가우시안 noise이다.
- 물론 실제 데이터는 가우시안 노이즈가 아닌 랜덤 노이즈기 때문에 실제 상황은 아니다.
- 우리의 목표는 훈련 집합들을 사용한 모델을 가지고 새로운 입력값
을 가지고 타깃 변수
을 예측하는 것이다.

- 이는 노이즈로 인해 관측 값(t)들이 변질되어 있기 때문에 쉽지 않은 문제이다.
- 약식으로 진행을 하는데에 있어서 다음과 같은 다항식을 활용할 수 있다.

- 즉 실제로는 sin그래프지만 다항식 그래프로 생각하여 식을 구성한 것이다.
- M은 다항식의 차수이고 이는 선형 모델이라 불린다.
- 훈련 집합의 표적값들의 값과 함숫값 y(x,w)의 오차 함수를 정의해 보자.

- 이 함수는 L2 loss라고 일반적으로 부름
- 1/2이 추가되는 것은 후반부에서 설명한다고 하는데 back-propgataion으로 모델을 학습할 때, 계산 상(수식 상)의 편의를 위해서임
연습 문제 1.1
- 문제라기 보다는 w*(optimal)은 loss식이 최소하되는 w을 말하는 것이기 때문에 미분해서 나온 w에 대한 선형식을 풀면 된다는 것

- 그렇다면 M은 어떻게 결정할까?
- 다음 그림은 M=0, 1, 3, 9에 따라 피팅하는 예시이다.

- 위 그림에서 M=0, 1일 때는 잘 표현하지 못하고 M=3이 가장 유사하다.
- M=9에서는 훈련 집합에(파랑색) 대해서 완벽한 피팅이 가능하다.
- 즉 loss=0이 되지만, 피팅 곡선이 심하게 진동하고 실제 함수인 sin(2*pi*x)를 표현하는데 적합하지 않다.
- 이것을 과적합(over-fitting)이라고 부른다.
- 이렇게 학습한 곡선으로 테스트를 해보자.
- 테스트 데이터는 학습 데이터와 똑같이 만들되 노이즈만 다르게 적용하여 100개를 구성한다.
- 시험 집합에 대한 오차는 다음과 같이 RMS(root mean square) error으로 확인한다.

- N을 나눔으로써 데이터 사이즈에 의존성을 지운다.(평균 값 개념을 취한다는 것)
- Root을 씌움으로써 E(w)의 정의인 제곱을 제거해준다.
- M=0~9로 변경하면서 결과를 도출하였다.

- M=9일때는 훈련데이터의 RMS 값이 0인데, 훈련 데이터 개수가 10개이므로 자유도가 10이상이면 무조건 피팅을 시킬 수 있기 때문이다.
- 하지만 그만큼 진동이 심하게 된다.
- 하지만 실제로 M=9인 것은 M=3인 곡선을 포함하는 관계이다.
- 즉 M=9로 피팅시킨 곡선은 M=3으로 피팅시킨 곡선의 결과도 도출할 수 있다.
- 그리고 실제로 sin(2*pi*x)의 그래프는 멱급수 전개 상 M이 커질수록 성능이 단조 증가해야한다고 생각할 수 도 있다.
- M에 따른 w* 값을 표로 그려보면 이 문제를 해결하는 데 도움이 될 것이다

- M이 커질수록 w값은 점점 더욱 커진다.
- 이것에 따라 M=9일때 피팅시킨 곡선을 보면 x가 커질수록 진동이 더욱더 커지게 된다.
- 이것은 노이즈까지 정확하게 피팅시키게 된 결과이다.
- 이러한 과는 데이터의 집합 크기가 커지면 과적합 문제가 완화된다.

- 즉 다르게 말하면 데이터 집합이 클수록 복잡한 모델을 활용할 수 있다.
- 또한 좋은 모델 훈련을 위해 매개변수(w값)들을 일정 숫자를 곱한 것이 경험적으로 좋을 수 있다.
- 지금까지 설명한 것은(RMS 사용) 최대 가능도(maximum likelihood)의 방법론이다.
- 하지만 베이지안(Bayesian) 방법론을 사용한다면 과적합 문제를 피할 수 있다.
- 실제로 내가 모델을 구성할 때, M에 제약을 둔다는게 불만족스럽거나 애매할 수있기 때문에..
- 이 두개의 차이는 책 뒷절에 나오게 되므로 일단 패스
- 최대 가능도를 사용했을 때는 어떻게 해결해야할 까?
- 대표적으로 정규화(regularization)가 있다.
- 즉 loss에 penalty를 줘서 바꾸게 되는데..다음과 같다

을 의미한다.
- 추가적으로 w0은
을 구성할 때 빼고 w0 term은 따로 처리하기도 하는데, 이는 그래프의 원점에 관련된 것이기 때문이라고 하고 5.5.1절에서 논의한다고 함
는 regularization의 중요도를 결정
연습 문제 1.2
댓글
댓글 쓰기