1. 사전 학습(Pre-training)
- 원하는 자연어처리 작업을 수행하는 데이터셋으로 모델을 학습시키기 이전에 일반적인 데이터에 먼저 학습을 시키는 것
- 사전학습은 대량의 자연어 코퍼스를 미리 학습하여, 자연어 코퍼스 안에 포함된 일반화된 언어 특성들을 모델의 파라미터 안에 함축하는 방법
- 사전 학습한 모델의 parameter를 이용하여 모델을 초기화한 뒤(pre-training) 사전 학습된 모델을 실제 풀려고 하는 문제의 데이터에 학습시키는 것 보다 더 높은 성능을 가짐
- 예) 컴퓨터 비전에선 엄청난 크기의 이미지 데이터인 ImageNet에 pre-train된 모델의 parameter를 가져와서 fine-tuning 하는 방법을 많이 사용하고 NLP에서는 GPT와 BERT를 시작으로 language modeling을 통한 사전 학습으로 여러가지 downstream task들에 대해서 높은 성능 향상을 보여줌
2. 전이학습(Transfer Learning)
- 데이터가 아주 많은 도메인에서 학습된 지식을 데이터가 적은 도메인으로 전이시키는 학습 방법론
- 대규모 데이터와 일반화된 목적 함수로 모델을 미리 학습한 후, 해당 모델의 파라미터로 내가 원하는 자연어처리 작업을 학습할 때 모델을 최적화하는 학습방법
- 보다 일반화된 모델의 지식을 다운스트림 작업을 수행하는 모델에 전이하는 방법으로 모델의 일반화된 언어 지식을 자연어처리 작업에 활용하는 일종의 지식 전이 과정
- 비슷한 특징을 지닌 데이터셋으로 유사한 문제를 해결하고자 한다면, 랜덤하게 초기화된 상태의 가중치 파라미터에서 최적화를 시작하기보다는 기존에 이미 훈련된 가중치 파라미터에서 조금만 바꿔서 새로운 문제를 풀게 하는 편이 쉬울 수 있음
3. 파인 튜닝(Fine-tuning)
- 사전 학습된 모델의 일반화된 지식을 활용하여 원하는 자연어처리 작업(downstream task)을 학습하는 학습 방법
- 파인 튜닝으로 모델을 학습할 때에는 사전 학습된 모델의 모든 파라미터와 더불어 downstream task를 수행하기 위해 최소한의 파라미터를 추가해서 모델을 추가로 학습해야 함
- 딥러닝 모델의 중요한 성격 중 하나가 바로 데이터셋 내 특징을 스스로 학습한다는 점 -> 모델의 low-level 레이어일수록 일반적인 특징을 추출하도록 하는 학습이 이루어짐, 마지막 레이어에 가까울 수록 특정 데이터셋이 나타날 수 있는 구체적인 특징을 추출하도록 학습이 이루어짐
- 언어도 모르는 상태에서 해당 자연어처리 작업을 학습하는 것과 언어를 어느정도 아는 상태에서 자연어처리 작업을 학습하는 것이 많은 차이가 있음
1. 파인튜닝(Fine-tuning) 세가지 방법 |
|
2. 모델 freezing |
|
3. 상황에 따른 파인 튜닝 전략 |
|
4. 최신모델 tuning |
|
5. 파인튜닝의 불안정성 |
|
6. 학습의 불안정성을 해결하는 방법 |
|
'AI > 자연어처리' 카테고리의 다른 글
18. PLM을 이용한 실습 (0) | 2024.07.12 |
---|---|
16. 문장 임베딩 | GPT (0) | 2024.07.05 |
15. 문장임베딩 | BERT (1) | 2024.07.05 |
14. 문장 임베딩 | ELmo / Transformer (1) | 2024.07.04 |
13. 문장 임베딩 | Attention Meshanism (0) | 2024.07.04 |