자주 하는 실수와 요약
자주 하는 실수
| 실수 | 나온 문제 | 바로잡는 법 |
|---|---|---|
| 화살이 한 점에 모였으면 잘 쏜 것이라고 봄 | 1 | 오차의 제곱 평균은 편향²(평균 자리의 빗나감²)과 분산(흩어짐)의 합이다. 모여 있어도 평균 자리가 멀면 나쁘다 |
| 편향이 0인 어림이 언제나 가장 좋다고 봄 | 2 | 분산이 크면 편향을 조금 받아들이고 줄여 말한 어림값의 오차가 더 작다. 얼마나 줄일지는 문제마다 다르다 |
| 모델 K개를 평균하면 오차가 K분의 1이 된다고 봄 | 3 | 평균은 분산만 줄이고 편향은 그대로 남긴다. 편향이 큰 작은 모델은 모아도 소용없다 |
| 데이터를 늘리면 언제나 좋아진다고 봄 | 4 | 기록 수가 특징 수에 닿는 곳에서 봉우리가 선다. 데이터를 늘리면 문턱을 지나갈 수 있다 |
| 노이즈가 없으면 봉우리도 없다고 봄 | 5 | 노이즈가 0이어도 점을 꼭 지나야 하는 문턱에서는 점 사이가 출렁인다. 노이즈는 봉우리를 키운다 |
| 오차가 값으로 옮겨 가는 배율은 오차의 크기만 정한다고 봄 | 6 | 오차가 실린 방향이 중요하다. 약한 방향에 실린 오차는 1/σₘᵢₙ배로 커진다 |
| 미지수를 늘리면 최소 노름 해의 노름도 커진다고 봄 | 7 | 옛 해에 0을 붙인 것도 새 해이므로 최소 노름은 늘 수 없다. 문턱을 넘으면 특징을 늘릴수록 줄어든다 |
| 능형 회귀의 배율이 가장 큰 곳은 특잇값이 큰 방향이라고 봄 | 8 | σ/(σ² + λ)는 σ = √λ에서 가장 크고 1/(2√λ)를 넘지 않는다 |
| 훈련 손실이 0이면 파라미터는 더 바뀌지 않는다고 봄 | 10 | 가중치 감쇠는 손실이 신경 쓰지 않는 방향을 계속 줄인다. 시험 성능은 그 뒤에 바뀔 수 있다 |
| 예산 안에서 일반화하지 않았으면 원리상 일반화할 수 없다고 봄 | 11 | 스텝 수는 1/(ηλ)에 비례한다. 감쇠가 없을 때는 이 실험의 예산 안에서 오지 않았다는 데까지만 말할 수 있다 |
요약
이 장에서 한 일을 정리해 보자. 시험 오차의 평균은 평균 예측이 정답에서 빗나간 정도의 제곱(편향²)과 예측이 데이터마다 흔들리는 정도(분산)의 합으로 쪼개진다. 1992년 게만, 비넨스톡, 두르사가 신경망에 들이댄 이 쪼개기가 「모델이 커지면 편향은 줄고 분산은 는다」는 U자 곡선을 낳았고, 검증 손실로 크기와 멈출 때를 고르는 습관의 근거가 되었다.
그 곡선의 오른쪽 끝 너머에서 시험 오차는 다시 내려간다. 기록 40개를 언덕 p개로 맞춘 장난감에서 시험 오차는 p = 29에서 0.0086으로 U자의 최저점을 찍고, 언덕 수가 기록 수에 닿는 p = 40 언저리에서 2.08까지 치솟았다가, p = 400에서 0.0070으로 U자의 최저점보다 낮아졌다. 벨킨 팀은 2018년에 이것을 이중 하강이라 불렀고, 나키란 팀은 같은 봉우리가 심층 신경망의 너비, 학습 에포크, 데이터 수를 따라서도 생긴다는 것을 보였다.
봉우리는 특징 행렬의 가장 작은 특잇값 때문에 생긴다. 최소 노름 해는 기록의 성분을 방향마다 특잇값으로 나누므로 노이즈가 1/σₘᵢₙ배로 부풀고, σₘᵢₙ은 행렬이 정사각형이 되는 보간 문턱에서 가장 작다. 문턱을 넘으면 점을 다 지나는 해가 많아져 노름이 작은 얌전한 해를 고를 수 있다. 능형 회귀는 배율을 1/(2√λ) 아래로 묶어 봉우리를 없애고, 스텝 수가 모자란 경사하강도 약한 방향을 아직 맞추지 못해 비슷하게 군다.
학습 데이터를 다 맞힌 뒤에도 학습을 계속하면 일반화가 한참 늦게 올 수 있다. 59로 나눈 나머지 덧셈에서 작은 신경망은 100스텝 만에 학습 쌍을 다 맞혔지만, 처음 보는 쌍을 99% 맞히기까지는 가중치 감쇠 1, 0.3, 0.1에서 1,800, 6,000, 19,900스텝이 걸렸다. 손실이 0에 가까운 동안에도 감쇠가 파라미터를 노름이 작은 쪽으로 끌고 가고, 스텝마다 노름에 곱해지는 비율이 1 − ηλ라서 걸리는 스텝이 감쇠에 반비례한다. 다 외운 뒤에 늦게 오는 이 일반화가 그로킹이다.
막힌 곳
이 장의 설명은 모두 「노름이 작은 해가 일반화한다」에 기대었다. 언덕 맞추기에서는 최소 노름 해가 매끈했고, 나머지 덧셈에서는 감쇠가 노름을 줄이는 동안 일반화가 왔다. 그러나 노름이 작다는 것이 왜 처음 보는 데이터를 맞힌다는 뜻이어야 할까? 노름은 좌표를 어떻게 잡느냐에 따라 바뀌는데, 신경망의 파라미터를 다르게 적으면 「작은 노름」이 가리키는 해도 달라지지 않을까? 그리고 규칙으로 맞히는 해가 외워서 맞히는 해보다 노름이 작다는 것은 이 실험에서 우연히 그랬을 뿐일까, 아니면 「짧게 적을 수 있는 설명이 더 잘 들어맞는다」는 더 일반적인 원리가 뒤에 있을까? 「일반화란 무엇인가」는 아직 열려 있다.