BETAInsomnia Studyroom기울기를 따라 예측 모델 개선하기
기울기를 따라 예측 모델 개선하기

2022 Revised Curriculum · Career Elective

인공지능 수학

데이터를 숫자로 표현하고, 예측과 최적화에 사용되는 수학을 계산과 탐구로 연결합니다.

5개 단원과 14개 강의에서 인공지능의 판단 구조, 텍스트·이미지 데이터, 예측, 손실함수, 경사하강법과 책임 있는 수학 탐구를 학습합니다.

22개정 인공지능 수학 · Unit 4 · 데이터로 예측하고 모델 개선하기

기울기를 따라 예측 모델 개선하기

경사하강법은 현재 위치에서 손실이 가장 빠르게 증가하는 방향을 기울기로 찾은 뒤 그 반대쪽으로 이동하는 반복 알고리즘입니다. 한 번의 계산보다 갱신 과정과 손실 곡선을 함께 읽는 것이 중요합니다.

이번 강의의 목표

기울기를 계산해 한 단계씩 매개변수를 갱신하고 학습률에 따른 움직임을 비교합니다.

\[\theta_{t+1}=\theta_t-\eta L'(\theta_t)\]

기울기의 부호

기울기가 양수이면 매개변수를 줄이고, 음수이면 늘려야 가까운 곳에서 손실이 감소합니다.

\[L'(\theta)>0\Rightarrow\theta\downarrow\]

학습률

학습률은 기울기에 곱해 한 번에 이동하는 크기를 조절하는 양의 설정값입니다.

\[\Delta\theta=-\eta L'(\theta)\]

수렴 진단

손실과 매개변수 변화가 충분히 작아졌는지 확인하되 검증 성능도 함께 살핍니다.

\[|L_{t+1}-L_t|<\varepsilon\]

기울기는 무엇을 알려 주는가

손실 \(L(\theta)\)에서 도함수 \(L'(\theta)\)는 매개변수 \(\theta\)를 아주 조금 늘렸을 때 손실이 변하는 방향과 비율을 나타냅니다.

\(L'(\theta)>0\)오른쪽으로 가면 손실이 증가하므로 왼쪽으로 이동
\(L'(\theta)<0\)오른쪽으로 가면 손실이 감소하므로 오른쪽으로 이동
\(L'(\theta)=0\)평평한 지점이며 최소·최대 또는 안장점인지 추가 확인
\(|L'(\theta)|\)현재 위치에서 손실 곡선이 얼마나 가파른지 표시

그래서 기울기의 반대 방향인 \(-L'(\theta)\)으로 이동합니다. ‘하강’은 매개변수 값이 항상 작아진다는 뜻이 아니라 손실이 작아지는 쪽을 뜻합니다.

한 변수에서 직접 네 번 갱신하기

목표값 3에 가까운 수를 찾는 독자 예제로 \(L(\theta)=(\theta-3)^2\)를 사용합시다.

\[L'(\theta)=2(\theta-3),\qquad\theta_{t+1}=\theta_t-\eta\,2(\theta_t-3)\]

초깃값 \(\theta_0=0\), 학습률 \(\eta=0.25\)이면 갱신식은 \(\theta_{t+1}=0.5\theta_t+1.5\)가 됩니다.

포물선 손실에서의 경사하강 과정
반복 \(t\)\(\theta_t\)기울기 \(2(\theta_t-3)\)손실 \(L(\theta_t)\)
00-69
11.5-32.25
22.25-1.50.5625
32.625-0.750.140625
42.8125-0.3750.03515625

최솟값 \(\theta=3\)에 가까워질수록 기울기와 이동 거리가 함께 작아지며 손실은 매번 4분의 1로 줄어듭니다.

포물선 위를 내려가는 매개변수금색 곡선은 \(L(\theta)=(\theta-3)^2\), 청록색 점은 위 표의 반복 위치입니다.
포물선 손실 위 경사하강 과정 세타 0에서 출발한 점들이 세타 3의 최소점으로 가까워지면서 손실이 감소한다. t=0t=1최소점 θ=3매개변수 θ손실 L0235

그래프는 개념을 설명하기 위해 직접 만든 SVG입니다. 실제 학습에서는 매개변수가 여러 개이므로 손실은 곡선이 아니라 고차원 표면이 됩니다.

학습률이 움직임을 바꾼다

같은 포물선에서는 오차 \(d_t=\theta_t-3\)가 다음과 같이 바뀝니다.

\[d_{t+1}=(1-2\eta)d_t\]
너무 작음

\(\eta=0.05\)

오차가 매번 0.9배라 안정적이지만 느림
적절한 예

\(\eta=0.25\)

오차가 매번 0.5배로 감소
크지만 수렴

\(\eta=0.9\)

부호가 바뀌며 0.8배로 진동 수렴
발산

\(\eta=1.1\)

오차 크기가 1.2배로 증가

이 특별한 함수에서는 \(0<\eta<1\)일 때 수렴하지만, 안전한 범위는 손실 곡선과 데이터 척도에 따라 달라집니다. 모든 문제에 통하는 하나의 학습률은 없습니다.

직선 모델의 두 매개변수 갱신

직선 \(\hat y_i=wx_i+b\)와 평균제곱오차를 사용하면 \(w,b\)에 대한 편미분은 다음과 같습니다.

\[L(w,b)=\frac1n\sum_{i=1}^{n}(y_i-wx_i-b)^2\]
\[\frac{\partial L}{\partial w}=-\frac2n\sum_i x_i(y_i-\hat y_i),\qquad\frac{\partial L}{\partial b}=-\frac2n\sum_i(y_i-\hat y_i)\]
\[w\leftarrow w-\eta\frac{\partial L}{\partial w},\qquad b\leftarrow b-\eta\frac{\partial L}{\partial b}\]

각 편미분은 다른 매개변수를 잠시 고정하고 해당 방향의 경사를 측정합니다. 둘을 모은 벡터 \(\nabla L=(\partial L/\partial w,\partial L/\partial b)\)가 다차원에서의 기울기입니다.

두 점으로 한 단계 계산하기

독자 데이터 \((x,y)=(1,2),(2,4)\)에서 \(w_0=b_0=0\), \(\eta=0.1\)로 시작합시다. 처음 예측은 모두 0이고 잔차는 2와 4입니다.

\[L_0=\frac{2^2+4^2}{2}=10,\quad\frac{\partial L}{\partial w}=-(1\cdot2+2\cdot4)=-10,\quad\frac{\partial L}{\partial b}=-(2+4)=-6\]
\[w_1=0-0.1(-10)=1,\qquad b_1=0-0.1(-6)=0.6\]

새 예측은 1.6과 2.6이고 새 잔차는 0.4와 1.4이므로 \(L_1=(0.4^2+1.4^2)/2=1.06\)입니다. 한 번의 갱신으로 MSE가 10에서 1.06으로 줄었지만, 이후에도 계산을 반복해야 합니다.

전체 배치, 확률적 방식과 미니 배치

전체 배치모든 \(n\)개 사례의 평균 기울기로 한 번 갱신
SGD무작위 사례 하나로 갱신하여 빠르지만 경로가 흔들릴 수 있음
미니 배치일부 사례의 평균 기울기로 속도와 안정성을 절충
에포크학습 자료 전체를 한 차례 처리한 횟수

자료가 1,000개이고 배치 크기가 100이면 한 에포크에 10번 갱신합니다. 20에포크라면 총 200번입니다. 반복 횟수는 갱신 횟수이고 에포크는 전체 자료를 본 횟수이므로 구분해야 합니다.

특징의 척도가 중요한 이유

한 특징은 0~1, 다른 특징은 수만 단위라면 같은 학습률을 곱해도 매개변수 방향마다 갱신 크기가 크게 달라질 수 있습니다. 평균 0, 표준편차 1의 표준점수는 흔한 해결 방법입니다.

\[z=\frac{x-\mu}{\sigma}\]

평균과 표준편차는 학습 자료에서만 구한 뒤 검증·테스트 자료에 그대로 적용해야 합니다. 전체 자료에서 먼저 계산하면 미래 정보가 학습 과정에 새어 들어갑니다.

손실 곡선으로 진단하기

  • 천천히 계속 감소: 학습률이 작거나 더 많은 반복이 필요할 수 있습니다.
  • 크게 오르내림: 학습률이 지나치게 크거나 미니 배치가 너무 작을 수 있습니다.
  • NaN 또는 급격한 증가: 발산, 잘못된 척도, 0 나눗셈이나 수치 범위를 확인합니다.
  • 학습 손실만 감소: 검증 손실이 증가한다면 과적합 가능성을 점검합니다.
  • 초기부터 변화 없음: 기울기 계산, 데이터 연결, 학습률 0 또는 매개변수 고정을 확인합니다.

멈추는 조건과 재현 가능한 기록

  1. 최대 에포크 또는 최대 갱신 횟수를 정합니다.
  2. 최근 손실 감소가 허용값 \(\varepsilon\)보다 작은지 확인합니다.
  3. 검증 손실이 여러 차례 개선되지 않으면 조기 종료를 검토합니다.
  4. 초깃값, 학습률, 배치 크기, 자료 순서의 무작위 시드를 기록합니다.
  5. 가장 마지막 값이 아니라 검증 성능이 가장 좋았던 매개변수를 보관합니다.

기울기가 0에 가깝다는 사실만으로 새 자료에서도 좋은 모델이라는 결론은 나오지 않습니다. 최적화 성공과 일반화 성능은 별도로 평가해야 합니다.

볼록함수에서 시작해 비볼록 문제로

선형회귀의 MSE는 매개변수에 대해 볼록한 그릇 모양이므로 적절한 조건에서 하나의 전역 최솟값을 찾을 수 있습니다. 신경망의 손실 표면은 일반적으로 비볼록하여 여러 평평한 영역과 안장점이 존재할 수 있습니다.

\[L(\lambda\theta_1+(1-\lambda)\theta_2)\le\lambda L(\theta_1)+(1-\lambda)L(\theta_2),\quad0\le\lambda\le1\]

경사하강법이 손실을 낮췄다는 사실과 가능한 모든 모델 중 절대적으로 가장 좋은 해를 증명했다는 주장은 구분해야 합니다.

활동 1 · 세 번 갱신하기

\(L(\theta)=(\theta-5)^2\), \(\theta_0=1\), \(\eta=0.25\)입니다. \(\theta_1,\theta_2,\theta_3\)과 각 단계의 손실을 구하세요.

정답과 해설 보기

\(L'(\theta)=2(\theta-5)\)입니다. 갱신하면 \(\theta_1=3\), \(\theta_2=4\), \(\theta_3=4.5\)이고 손실은 처음 16에서 차례로 4, 1, 0.25가 됩니다. 목표값과의 거리는 매번 절반, 제곱손실은 매번 4분의 1이 됩니다.

활동 2 · 학습 로그 해석하기

모델 P의 검증 손실이 \((8,5,3,2.5,2.4)\), 모델 Q가 \((8,3,7,2,9)\)입니다. 어떤 모델의 학습률이 더 안정적으로 보이는지 설명하고 Q에서 먼저 바꿔 볼 설정을 제안하세요.

가능한 답안 보기

P는 감소 폭이 작아지며 수렴하는 전형적인 모습입니다. Q는 크게 오르내리므로 학습률을 낮춰 먼저 비교할 수 있습니다. 다만 작은 미니 배치의 무작위성도 원인일 수 있으므로 배치 크기와 개별 반복이 아닌 이동평균 손실도 함께 확인합니다.

공개 자료 참고 및 저작권 안내

경사하강법과 확률적 최적화의 개념을 확인하기 위해 공개 라이선스가 안내된 공식 자료를 참고했습니다.

외부 문장, 코드, 데이터, 표, 그림이나 문제는 복제하지 않았습니다. 두 개의 수치 예제, 모든 갱신표와 계산, 학습 로그, 활동 및 SVG 손실 곡선은 이 강의를 위해 독립적으로 작성했습니다. 라이브러리 코드를 직접 사용할 때에는 해당 버전의 라이선스와 기본 설정을 확인하세요.

학습 원칙

계산 결과만 제시하지 않고 사용한 데이터, 수학적 가정, 평가 기준과 적용 한계를 함께 설명합니다. 개인정보와 편향 가능성을 확인하고 인공지능의 출력을 확정된 사실로 해석하지 않습니다.

교육과정 구성 근거

국가교육과정정보센터의 2022 개정 교육과정, 한국과학창의재단 수학과 교육과정 개발 연구, 부산광역시교육청 고교학점제 과목 안내를 과목 성격과 내용 범위 확인에 참고했습니다. 단원 구성, 강의명, 설명과 예시는 이 사이트의 학습 흐름에 맞게 독립적으로 작성했습니다.

Checkpoint

손실함수 \(L(\theta)=(\theta-4)^2\), 초깃값 \(\theta_0=0\)에 대해 (가) \(\eta=0.25\), (나) \(\eta=1\), (다) \(\eta=1.2\)일 때 각각 세 번 갱신하세요. 매 단계의 손실을 계산하고 수렴·진동·발산 중 어떤 모습인지 설명하세요.