Processing math: 100%

게시물 목록

Tuesday, March 11, 2025

딥러닝의 일반화 성능에서 'flat minima' 테제의 역사

뉴럴 네트워크가 지극히 성공적인 이유를 설명할 때 주로 핵심이 되는 키워드는 일반화(generalization)이다. 일반화란 주어진 데이터에 과적합(overfitting)되지 않고 새로운 샘플들이 들어와도 좋은 성능을 내는 능력을 말한다. 이는 모델의 단순성(simplicity)과도 어느 정도 관련된다. 모델이 지나치게 복잡하면 training set은 아주 잘 맞출 수 있겠지만, (동일한 가상의 분포로부터 왔다고 간주되는) 새롭게 주어지는 test set은 잘 맞추지 못하게 되기 때문이다.

문헌들에서는 딥러닝이 이러한 높은 일반화 성능을 보여주는 이유가, loss function landscape의 flat minima와 거의 동일시되는 경우가 많다. 뉴럴 네트워크의 가중치들이 SGD와 같은 최적화 과정을 통해 도달한 지점이, 뾰족하지 않고 널찍한 곳일 때에 일반화를 잘 한다는 것이다.


SGD를 포함한 표준적인 딥러닝 학습 알고리즘의 recipe가 신경망 가중치들로 하여금 왜 이러한 flat minima를 선호하게 되는지, 혹은 표준적인 recipe를 어떻게 수정해서 flat minima를 일부러 더 선호하게 할지에 대해서, 비평형 통계물리학을 포함한 다양한 관점에서의 많은 연구가 존재한다.

그런데 더 기본으로 돌아가서, 이러한 flat minima가 일반화 성능과 동일시될 수 있는 이유는 정확히 무엇인가? 근래의 딥러닝 논문들에서 이 주장을 정당화할 때, loss landscape가 조금 뒤틀어져도 (즉, 데이터셋이 조금 바뀌어도) 모델의 특성이 크게 바뀌는 게 없어서라고 직관적으로만 주로 설명한다. 이는 설득력이 있으며 일반적으로 널리 받아들여진다. 그러나 정말로 그러한지, 그리고 이론적으로는 어떻게 설명할 수 있는지는 별개의 문제이다. 이에 문헌 조사를 해 보았다.

[1] S. Hochreiter and J. Schmidhuber, "Simplifying neural nets by discovering flat minima," NIPS 1994.

[2] S. Hochreiter and J. Schmidhuber, "Flat minimum search finds simple nets," Technische Universität München Technical report FKI-200-94, 1994.

[3] S. Hochreiter and J. Schmidhuber, "Flat minima," Neural Computation 9(1), 1997.

찾아본 결과, 위 논문 [1]이 머신 러닝에서 flat minima가 generalization에 좋다는 것을 논의한 제일 첫 문헌인 것 같다. 나는 사실 NIPS (NeurIPS의 예전 이름)가 1994년에 존재했는지도 몰랐다.

같은 저자들의 1997년 논문([3], 제목이 그냥 flat minima인)이 보통 최초라고 간주되고 많이 인용되는데, 상대적으로 인용이 덜 된 위 문헌이 사실 몇 년 더 먼저이고, [3]에도 [1]이 이미 인용이 되어 있다. 아마 조금 더 자세한 기술적 디테일과 실험 결과를 담은 technical report([2], 웹 검색으로 찾기 조금 어려운 편인데 Schmidhuber의 웹사이트에서 다행히 찾을 수 있었다)와 함께 NIPS 1994에 먼저 리포트한 뒤에, 이를 종합하고 보완해서 정식 저널에 1997년에 출판한 것으로 보인다. 내용들은 거의 비슷비슷하다.

이 논문들 역시 flat minima에 대해 위에서 서술한 직관에서 출발하지만, 그것을 이론적, 실험적으로 보다 엄밀하게 보이고자 한다. 먼저, 모델이 generalization를 잘 하기 위해서 가급적 simple해야 한다는 것 자체는 이 논문 이전에도 널리 알려진 것 같다. 이를 위해서 좋은 Gaussian prior를 골라야 한다는 Hinton 등의 연구가 있었다고 한다. 또한 지금은 Santa Fe 연구소에서 계산의 열역학을 연구하고 있는 D. H. Wolpert의 연구 또한 이 대목에서 인용된다.

반면 이 연구에서는 prior에 덜 의존하면서도 높은 generalization 성능을 달성하기 위해, flat minima를 처음으로 제안한다. 위에서 이야기한 것처럼, flat minima 제안의 토대가 되는 직관 자체는 현재 우리가 이해하고 있는 것(모델이 simple함 weight가 바뀌어도 GE가 많이 안 변해야 함 flat minima여야 함)과 거의 일치한다. Prior에 대해 덜 엄격한 가정만이 필요하다는 것은, appendix A.1.에서 GE를 overfitting error와 underfitting error로 나누고, 전자에서 베이즈 통계 기반으로 정당화한다.

다음으로 모델의 simplicity를 정보이론 내지는 코딩 이론의 MDL (minimum description length) 을 이용하여 설득력 있게 정량화하고, 이것이 loss의 Hessian과 관련지어지므로 landscape의 flatness에 대응된다는 것을 appendix 및 technical report에서 보이는 것 같다. 이론적으로 가장 흥미로운 부분이다.

이를 바탕으로, 일반적인 mean square error에 flatness를 선호하게끔 하는 항을 explicitly 더해준 채로 gradient descent를 하고, noisy classification 및 recurrent network 문제에서 그 성능을 검증해 보았다고 한다.

다만 현대 딥러닝에서는 이 논문처럼 flatness를 일부러 선호하게 해 주는 대신, 'stochastic' gradient descent가 random process로서 갖는 통계적 특성 자체가 implicit하게 flatness를 선호하게 해 주는 효과를 갖는다고 이해되고 있으며 이는 비평형 통계물리학 이론을 통해서도 활발히 연구된 바 있다. SGD는 단지 batch size 절약을 통해 계산 비용을 절감하는 것뿐 아니라, 더 나은 minima에 도달하기 위한 과정인 것이다.

Flat minima를 포함해서, 현대적인 딥러닝의 recipe에서 표준에 가깝게 받아들여지는 각각의 요소가 여러가지 다원적인 기여에 의해 만들어지는 과정이 참 흥미롭다. 수십 년 동안 제안되고 발전되어 온 여러 방법 및 개념들 중에서도, inductive bias가 적고 large scale에서도 성공적으로 작동한다고 검증된 것들이, 현재 트랜스포머 기반의 초거대 ai 시대에도 현재진행형으로 역할을 하며 도도하게 남아있는 걸 보면 너무 멋진 듯하다 (정작 트랜스포머의 원류가 되는 Kyunghyun Cho 교수님의 attention mechanism 논문은 딥러닝 붐 초기라고 할수 있는 2014년에 나오긴 했다). 이러한 과정이, 마치 양자역학의 초기 역사처럼 과학기술사가들에 의해 잘 탐구되고 정리되면 좋을 듯하다.

한편, 저자인 Hochreiter는 Neural computation 9(8) 1997에서 LSTM(Long Short-Term Memory)을 최초로 제안한 연구자이기도 하다. 1967년생이라고 하니, 20대 후반~30대 초반에 이 일련의 중요한 논문들을 쓴 셈이다.

Linkedin에서 이 글 보기: 링크
Facebook에서 이 글 보기: 링크

No comments:

Post a Comment