2023. 12. 22. 03:55ㆍ알고싶다. LLM
들어가며
프롬프트를 통한 튜닝이 모델이 가진 데이터를 탐색하는데 주로 사용되었는데, 이제는 데이터가 없는, 즉 unseen task에 대해 추론을 잘하는 것이 인공지능의 똑똑함을 보여주는 하나의 지표가 될 것이다. 예시로, instruction-tuning은 데이터가 없는 개념에 대해서도 학습과정에서 설정된 instruction에 따라 똑똑하게 유추하여 답을 제안하는 튜닝 방법이다.
오늘은 instruction-tuning에 대해 톺아본다.
Fine-tuning / Prompt-learning / Instruction-tuning의 차이
세 가지 모두 사전 학습된 모델을 새로운 작업에 적용하기 위한 기술이다
- Fine-tuning : 이미 학습된 모델을 가져와서 추가 데이터를 사용하여 다시 학습 시키는 과정. 모델은 기존에 학습한 지식을 활용하면서도, 특정 작업에 더욱 적합한 성능을 발휘한다
- Prompt-learning : 모델에게 특정한 프롬프트를 제공하여 학습 시키는 방법. 프롬프트는 모델이 생성해야 하는 결과의 방향성을 제시함으로써, 특정한 작업에 대한 지식을 빠르게 습득할 수 있도록 돕는다
- Instruction-tuning : 모델에게 특정한 지시사항을 제공하여 학습. 이 방법은 모델이 그간 마주치지 못했던 작업에도 지시사항을 따라 답 추론이 가능하다.
Fine-tuning이란?
Fine-tuning은 모델이 이미 학습한 데이터를 기반으로 새로운 데이터에 대해 학습하는 과정이다. 예를 들어, 도서관 내 모든 정보를 알고 있는 척척박사가 컴퓨터공학에 대해 답하려고 할 때, 가진 기초지식을 활용하면서 세부적으로 조정하여 컴퓨터공학에 맞는 답을 하게 튜닝하는 것이다.
장점
- 사전 학습된 모델을 사용하기 때문에, 처음부터 모델을 학습시키는 것보다 빠르게 작업에 적용 가능
- 추가 데이터를 사용하여 모델을 더욱 세밀하게 조정
- 특정 작업에 대한 성능을 향상
단점
- 추가 데이터를 수집하고 전처리하는 데 시간과 비용이 소요
- 모델의 복잡도가 증가하여 학습이 어려워질 수 있음
- 모델의 일반적인 성능이 저하 가능성
Fine-tuning의 예시
- 자연어 처리 분야에서는 사전 학습된 언어 모델을 가져와서 추가 데이터를 사용하여 문장 생성, 감정 분석 등의 작업에 적용
- 컴퓨터 비전 분야에서는 사전 학습된 이미지 분류 모델을 가져와서 추가 데이터를 사용하여 객체 검출, 이미지 합성 등의 작업에 적용
데이터 양에 따른 딥러닝 모델 학습 방법
- zero-shot : 클래스에 해당하는 데이터가 존재하지 않을 때, 해당 클래스에 대한 분류를 수행하는 방법이다. 모델이 unseen task type에 대해 평가할 때 사용된다. ex) '감자'라는 데이터가 없을 때 모델이 추론한다.
- one-shot : 하나의 샘플 이미지만으로 새로운 클래스를 인식한다. ex)'감자' 이미지 하나를 보여주면 다른 감자를 봐도 '감자'라고 인식한다
- few-shot : 한 클래스 당 일부의 샘플 이미지를 사용하여 새로운 클래스의 이미지를 인식한다. ex)네이버 쇼핑 렌즈 : '캐논 카메라' 이미지를 넣으면 이미 가지고 있는 '캐논 카메라'의 수많은 데이터를 이요해 사물 식별을 한다
Instruction-tuning
구글 연구진이 instruction-tuning으로 낸 모델을 FLAN(Finetuned Language Models Are Zero-Shot Learners)이라 한다. 언어 모델의 제로샷 러닝 능력을 향상시키기 위한 방법 중 하나로서, instruction을 통해 설명된 데이터셋의 모델을 최적화하여, unseen task에 대해 평가할 수 있도록 한다
Zero-shot FLAN과 Few-shot FLAN의 비교
논문에 따르면, few shot FLAN이 zero shot FLAN보다 우수하다
🔗참고 자료 🔗
https://arxiv.org/abs/2109.01652 (Finetuned Language Models Are Zero-Shot Learners(2022))
https://jasonwei20.github.io/files/FLAN%20talk%20external.pdf (Instruction Tuning with FLAN)
https://smilegate.ai/2021/09/12/instruction-tuning-flan/(Smile gate AI)
https://www.youtube.com/watch?v=EEV8RPohsbw (How To Do Stable Diffusion XL (SDXL) DreamBooth Training (Full Fine Tuning) On Windows and RunPod)
'알고싶다. LLM' 카테고리의 다른 글
HCI 감성의 인공지능 : 우리와 함께 감정을 공유할 수 있을까? (2) | 2023.12.15 |
---|