자주 하는 실수와 요약
자주 하는 실수
| 실수 | 나온 문제 | 바로잡는 법 |
|---|---|---|
| 고친 항목 수가 적으면 가장 적게 고친 것이라고 봄 | 1 | 경사하강이 줄이는 것은 바꾼 양의 제곱합이다. 조건을 바꾸지 않는 방향은 건드리지 않고, 출발점에서 가장 가까운 해에 닿는다 |
| 파라미터를 다른 단위로 적어도 경사하강의 답은 같다고 봄 | 2 | 최소 노름은 파라미터로 삼은 숫자의 길이를 잰다. 빵을 묶음 값으로 적으면 도착 해가 (1, 2)에서 커피 2.5, 빵 1.25로 바뀐다 |
| 학습 오차가 0이면 출발점은 잊힌다고 봄 | 3 | 데이터를 바꾸지 않는 방향의 성분은 경사하강이 건드리지 않아 끝까지 남는다. 큰 초기화는 시험 오차를 키운다 |
| 평균끼리의 한가운데가 가장 안전한 경계라고 봄 | 4 | 멀리 있는 점 하나가 평균을 끌어 가까운 점을 잘못 가른다. 마진이 가장 넓은 경계는 가장 가까운 점들만 정한다 |
| 점수 차이만큼만 그래디언트 무게가 차이 난다고 봄 | 5 | 가중치 길이 s가 커지면 무게 비는 e^(−s × 점수 차이)로 벌어져, 경계에 가장 가까운 점만 남는다 |
| 같은 손실을 0으로 보내면 옵티마이저와 상관없이 같은 해에 닿는다고 봄 | 6 | 옵티마이저는 스텝을 재는 노름으로 가장 큰 마진을 잰다. 부호 경사하강은 (1, 1), 경사하강은 (2, 1) 방향으로 간다 |
| 오래 학습할수록 데이터를 더 잘 반영해 좋다고 봄 | 7 | 빨리 배우는 패턴과 늦게 배우는 노이즈가 갈리는 동안 멈춰야 노이즈를 덜 외운다 |
| 스텝 k 와 α = 1/(ηk) 의 능형 회귀가 어디서나 같다고 봄 | 8 | 두 비율은 λ ≈ α 근처에서 0.632 대 0.5처럼 어긋난다. 끝까지 밀면 둘 다 최소 노름 해에 닿는다 |
| 고른 스텝의 검증 오차를 모델 성능으로 보고함 | 9 | 검증 데이터로 고른 최솟값은 운 좋은 쪽으로 치우친다. 성능은 고르는 데 쓰지 않은 시험 데이터로 잰다 |
| 깊이가 같은 골짜기에는 노이즈가 반반씩 사람을 둔다고 봄 | 10 | 오래 걸은 뒤의 비율은 골짜기 폭 √(T/λ)에 비례한다. 곡률 16과 1이면 넓은 쪽이 80% |
| 곡률의 비가 머무는 비율의 비라고 봄 | 10 | 폭은 곡률의 제곱근에 반비례한다. 곡률 4배 차이면 비율은 2 : 1 |
| 노이즈가 있으면 늘 깊은 골짜기가 이긴다고 봄 | 11 | e^(Δ/T)와 폭의 비가 겨룬다. Δ = 0.5면 T = 0.3607보다 뜨거울 때 넓은 골짜기가 이긴다 |
| 같은 함수면 샤프니스도 같다고 봄 | 12 | 층 사이에 α와 1/α를 곱해도 함수는 같지만 샤프니스는 α² + 1/α²로 바뀐다 |
요약
이 장에서 한 일을 정리해 보자. 학습 손실을 0으로 만드는 파라미터가 수없이 많을 때, 그 가운데 하나를 고르는 것은 손실이 아니라 옵티마이저다. 손실에 적히지 않은 이 선택을 암묵적 편향이라 한다.
해가 많은 선형 회귀에서 경사하강의 그래디언트는 늘 데이터 줄들을 섞은 것이라, 데이터를 바꾸지 않는 방향으로는 한 번도 움직이지 않는다. 그래서 경사하강은 출발점에서 해의 집합에 수선을 내린 자리에 닿고, 0에서 출발하면 가장 짧은 해인 최소 노름 해에 닿는다. 영수증 두 장과 메뉴 셋에서 그 해는 (4, 3, 2)였다. 출발점이 크면 남는 성분이 시험 오차를 키우고, 파라미터를 다른 단위로 적으면 「가장 짧은」이 가리키는 해가 바뀐다.
분리 가능한 데이터의 로지스틱 회귀에서는 가중치 길이가 끝없이 자라고, 방향은 마진이 가장 넓은 SVM 방향으로 모인다. 길이가 커질수록 경계에서 먼 점의 그래디언트 무게가 지수로 사라지고 가장 가까운 점만 남기 때문이다. 방향이 모이는 속도는 스텝 수의 로그 꼴로 느려서, 점 여섯 개에서 백만 스텝 뒤에도 2.54°가 남았다. 옵티마이저가 스텝을 재는 노름을 바꾸면 마진을 재는 노름도 바뀌어, 부호 경사하강은 최대 노름으로 잰 마진이 가장 넓은 방향으로 간다.
일찍 멈추기는 스텝 수로 거는 정규화다. 경사하강은 헤시안의 고윳값이 큰 방향부터 채우고, 노이즈를 외우는 데 쓰이는 작은 방향은 가장 늦게 채운다. k스텝에서 멈춘 해는 α = 1/(ηk)인 능형 회귀의 해와 거의 같은 비율로 방향마다 성분을 남긴다. 검증 데이터로 멈출 곳을 고르고, 성능은 따로 잰다.
손실이 같은 골짜기가 여럿이면, 학습률이 2/곡률을 넘는 좁은 골짜기에는 머물 수 없고, 노이즈는 폭 √(T/λ)이 넓은 골짜기에 더 오래 머물게 한다. 곡률 16과 1의 두 골짜기에서 넓은 골짜기에 머무는 사람의 비율은 80%였다. 그러나 샤프니스는 파라미터를 적는 방식에 따라 바뀌므로, 평평함이 곧 일반화라고 말하려면 조심해야 한다.
막힌 곳
이 장의 이야기는 모두 「학습 손실이 0인 해들 가운데 어느 것을 고르나」였지만, 그 해들이 시험 데이터에서 얼마나 좋은지는 따로 물어야 한다. 곡선 맞추기에서 최소 노름 해는 시험 오차가 7,599였다. 데이터를 정확히 맞히는 해 가운데 가장 짧은 해도 이렇게 나쁠 수 있다면, 파라미터를 데이터보다 훨씬 더 많이 늘리면 가장 짧은 해는 어떻게 될까? 파라미터 수를 데이터 수 근처에서 그 너머로 늘려 가며 시험 오차를 그리면, 오버피팅으로 오르기만 할까, 아니면 어딘가에서 다시 내려올까?
그리고 이 장은 「옵티마이저가 어느 해를 고르는가」에 답했을 뿐, 「왜 그 해가 처음 보는 데이터에 통하는가」에는 답하지 않았다. 최소 노름도, 최대 마진도, 평평함도 일반화를 미리 알려 주는 잣대로는 반례가 있었다. 학습한 것이 처음 보는 데이터에도 통한다는 것은 결국 무엇을 뜻할까?