본문 바로가기

코딩 학습/인공지능 기초

[인공지능 기초] 전이학습(Transfer Learning)과 미세조정(Fine-tuning)이란?

지금 만들고 있는 스팸필터의 궁극적인 목표를 위해 

성능이 좋은 인공지능도 필요하지만 나날이 발전하고 다양해지는 스팸문자를 따라잡기 위해서는

추가로 스팸 처리된 자료에 대해서도 인공지능이 학습하는 기능이 필요하다.

 

이를 위해 원하는 기능은

그림과 같이 

 

1. 초기 DB를 통해 학습된 모델을 기반으로 해서 

2. 추가로 이용자가 서비스에서 스팸 신고를 하면

3. 해당 내용이 인공지능에 추가로 학습되어 새로운 모델을 만들고

작동하는 기능이 필요했다.

 

그런데 인공지능에 대해 잘 몰랐기에 해당 기술에 대한 용어를 몰랐어서 지인분과 chat-gpt 님께 여쭤봤더니

'Transfer Learning'과 'Fine-tuning'이란 키워드를 던져주셨다.

 

두 가지 키워드가 내가 원하는

1. 추가 학습에 대한 키워드가 맞는지?

2. 이에 따른 성능 저하나 단점같은 특성이 있는지?

 

알아보기 위해 자체적으로 알아보고 정리해보고자 한다.

 

먼저 전이학습(Transfer Learning) 이란?

*이미 학습한 지식을 성능 향상을 위해 다른 문제에 다시 사용하는 머신러닝의 접근 방식이다.

예를 들어 1) 자동차를 찾아내는 인공지능을 2) 트럭을 찾는데 특화된 인공지능을 개발할때도 사용하는 것이 있다.

 

전이학습을 이용하게 되면 

* 시간 절약 : 전체 데이터를 이용하는것에 비해 학습 빠름

* 데이터 효율성 : 대규모 데이터셋이 없어도 기존 모델을 통해 높은 성능을 내는것이 가능하다.

 

두번째로 미세조정(Fine-Tuning)이란?

전이학습을 하기위한 방법론 중의 하나로 기존에 학습된 모델의 매개변수를 새로운 데이터 기준으로 학습 시키는 것을 말한다.

이때, 학습은 전체 신경망에 대해서 수행될수도 있고 특정 층(레이어)의 하위 집단에 대해서만 수행될 수도 있다.

이때, 미세 조정 되지 않은 층을 '동결(Frozen)'층이라고 한다.

 

흠.. 비슷한거 같은데... 좀 더 공부를 해보아야 할것 같다.

아직 둘의 명확한 차이를 모르겠다.

좀 더 사용해보다가 차이가 느껴지면 추가 업데이트 하겠다.

 

출처:

https://en.wikipedia.org/wiki/Transfer_learning

https://en.wikipedia.org/wiki/Fine-tuning_(deep_learning)