학습을 간단하게 비유하자면, 도시에서 평형계를 들고 가장 낮은 지점을 찾아 여행하는 것이다. (global minimum을 찾아가자)

하지만 도시는 육안으로 봤을 땐 평평하기 때문에, 우리는 도시에서 어디가 가장 낮은 곳인지 알지 못한다. 꼬우면 사비로 인공위성 띄워 보던가. (global munimum이 어디 있는지 모름)

대신 수평계를 이용하여 현재 위치에서 땅이 어느 방향으로 기울어져 있는지는 측정 가능하다. (사실 이렇게 간단하진 않고, adam/sgd같은 옵티마이저가 크게 관여한다.)

하지만 도시가 뒤집힌 형태의 매끄러운 원뿔 모양 구덩이일 리는 없으므로, 크고 작은 저지대가 아주 많이 존재할 것이다. (local minima가 수없이 존재함)

여기서 학습률은 '지금 측정한 방향으로 어느 정도를 이동할지'를 나타낸다고 할 수 있다. 


1) 만약 측정한 방향으로 20cm를 이동한 다음 측정하는 방식을 택한다면, 직경 30cm짜리 포트홀조차 만나는 즉시 갇혀버릴 것이다. (local minima: ㅎㅇ 님 못빠져나감 => 제대로 수렴하지 못함)

2) 만약 측정한 방향으로 1km를 이동한 다음 측정하는 방식을 택한다면, 영원히 저지대를 찾지 못하고 헤매거나 운이 나쁘다면 도시 밖으로 나가버릴 것이다. (수렴에 실패하거나, 발산당함)

그럼 얼마마다 측정해야 하냐고? "적당히, 눈치껏, 알아서 잘 ㅇㅇ". 수많은 논문들의 저자들이 바보라 죄다 1e-4 쓰는 게 아니다.

여기서 우리가 스케쥴러로 cosine( with restarts)를 자주 쓰는 이유가 나온다. 가장 낮은 지점이 시작 지점에서 가까이 있을 가능성은 적으니 처음에는 한번에 멀리 이동하다가, 점점 이동 거리를 줄이면서 여기가 가장 낮거나 최소한 만만찮게 낮은 곳이기를 기도하는 것이다. (아니 이거 찾아보니 옵티마이저가 하는 일 아니냐고? 맞는데? 경험적으로 봤을 때 이러니까 효과가 더 좋더라는 거)


이쯤 들었으면 과적합은 뭐냐고 물을 수 있는데, 정말로 global minimum이나 깊은 local minimum에 안착해버리면 학습 자료를 아예 외워버리는 바보가 된다. (우리는 덧셈을 가르치기 위해 문제지를 풀렸는데, 애가 똑같은 문제지 1권만 20년을 풀다 보니 덧셈을 외우는 게 아니라 답의 순서를 외워버린 골때리는 상황)

그래서 가장 낮은 지점을 이악물고 찾는 게 아닌, '적당히' 이 정도면 충분히 낮은 곳이겠다 싶은 지점에서 끝내는 것이다.


모르겠고 학습률 얼마 하면 되냐에 대한 답변

적당히, 눈치껏, 알아서 잘