본문 바로가기

자연어 처리 과정

Flat minima VS Sharp minima

개요

Flat minima와 sharp minima의 특징을 알아보자.

 

1. Flat minima

2. Sharp minima

3. 마무리

 

 

1. Flat minima

위에서 볼 수 있는 사진으로 우리는 flat minimum과 sharp minimum이 어떤 모양인지 확인할 수 있다.

검정색 선은 training data에 대한 inference를 했을 때의 loss 값을 나타낸 graph이고,

빨간색 점선은 test data에 대한 inference를 했을 때의 loss 값이라고 보면 된다.

training data와 test data는 다를 것이기 때문에, data가 다르다는 것을 표현하기 위해 조금 shifted 되어 있다.

 

Flat minima의 특징

모델이 flat minima에 수렴하게 되면 어떻게 될까?

Flat minimum에 수렴하게 된다고 가정해보자.

우리의 모델은 training data에 대해 학습을 진행하기 때문에, 수렴하게 되는 곳은 검정색 graph의 flat minimum의 가운데 부분이다.

이때, test data에 대해 inference를 한다고 하면, 위의 사진에서 볼 수 있는 화살표 부분의 차이만큼이 loss가 되는 것이다.

즉, flat minima에 수렴을 하게 되면, 

training data와 test data에 대한 parameter가 비슷한 부분에 수렴을 하게 되는 가능성이 존재한다.

따라서, flat minimum에 수렴을 하면 성능이 더 좋아지는 결과를 가져올 수 있는 것이다.

 

 

2. Sharp minima

Sharp minima의 특징

그렇다면 이번에는 우리의 모델이 sharp minimum에 수렴하게 되는 경우를 살펴보자.

모델이 sharp minimum에 수렴하게 된다고 가정해보자.

그럼, 우리의 모델은 sharp minimum에 점점 빠지게 되기 때문에 sharp minimum의 맨 아래 부분에 수렴하게 될 것이다.

이때, test data에 대해 inference를 한다고 하면, 위의 사진에서 볼 수 있는 빨간색 직선 정도의 차이가 나서 결국 큰 loss가 발생한다.

즉, sharp minima에 수렴하게 되면, test data와는 다르게 수렴하게 될 가능성이 있다는 것이다.

그렇게 된다면 당연하게도 모델의 성능은 나빠질 것이다.

그래서 우리는 모델이 flat minima에 수렴할 수 있도록 노력해야 한다.

 

 

3. 마무리

오늘은 이렇게 flat minima와 sharp minima의 특징에 대해 알아보았다.

이어서는, 그렇다면 어떻게 해야 우리의 모델이 flat minima로 수렴을 할 수 있게 되는지 알아보아야겠다.

 


Reference

https://simpling.tistory.com/35

https://arxiv.org/pdf/1609.04836.pdf