꾸준하고 즐겁게

Fine Tuning 본문

Machine Learning

Fine Tuning

wj9183 2021. 5. 4. 23:10
728x90
Fine Tuning

 

 

Fine Tuning은 Transfer Learning 이후 다시 한 번 학습을 시키는 것이다.

Fine tuning의 목표는 잘 만들어진 모델의 일부분만 우리가 만들 새로운 모델에 차용하는 것이다.

모델의 전체를 Fine tuning하는 것이 아니다.

Fine tuning에 앞서 Transfer Learning을 해주어야한다.

 

이미 학습이 되어있는 모델을 pre-trained model이라고 하고, 그걸 가지고 학습을 시키면 Fine tuning이다.

 

 

이전에 Transfer Learning을 하면서 weights를 변경할 수 없게 설정해두었는데,

위 코드의 1번째 줄에서 변경이 가능하도록 만들었다.

2번째 줄에서 베이스 모델의 얼마 만큼부터 학습을 시킬지 수치를 정해 변수에 저장해뒀다.

3, 4번째 줄에서는 반복문을 통해 다시 100개의 베이스 모델 레이어만 학습할 수 없게 했다.

베이스 모델의 남은 레이어만 weights가 변경될 수 있게 만든 것이다.

 

정리하면, 베이스 모델의 일부 레이어만 weights 값이 변경될 수 있게 했고, 헤드 모델은 Transfer Learning에서 그랬듯 우리가 필요에 맞게 레이어를 만들어주면 된다.

수학공식을 이해하기는 어렵지만, 이 과정을 거치면 조금 더 똑똑한 인공지능을 만들 수 있다고 한다.

728x90