이번에는 인공지능 논문을 볼때 주로 나오는 용어 중 하나인 Linear Probing입니다.
1. Linear probing이란?
- Linear Probing은 사전 학습된 모델(Pretrained Model)의 Representation을 분석하거나, 특정 작업에 대한 학습된 특성의 일반화 성능을 평가하는데 사용되는 기법을 말합니다.
- 즉, 사전 학습된 모델의 중간 레이어에서 나온 특징을 고정(Frozen)하고, 새로운 선형 분류기를 학습해 해당 특징의 유용성을 평가하는 방식을 말합니다.
- Linear Probing은 다음과 같이 이루어집니다.
1) Featrue extraction : 사전 학습된 모델(BERT, ResNet 등)의 중간 레이어에서 특징 벡터(Representation)을 추출합니다.
2) 선형 분류기 학습 : 추출된 특징 벡터를 고정한 상태에서, 새로운 작업(분류, 회귀 등)을 위해 선형 분류기를 학습 시킵니다.
3) 평가 : 학습한 선형 분류기를 통해 특성이 새로운 작업에서도 효과적인지를 확인합니다. 이때 높은 성능을 보인다면, 사전 학습된 모델의 해당 레이어에서 추출한 특징이 일반적인 정보와 의미 있는 패턴을 잘 학습했다고 볼 수 있겠습니다.
- Linear Probing을 사용하는 목적
1) Representation의 일반화 성능 평가 : 사전 학습된 모델이 도출하는 Representatin이 얼마나 일반화되어있는지, 즉 새로운 task에서도 유용하게 작용하는지를 평가할 수 있습니다.
2) 효율적인 전이학습 : 전체 모델을 다시 학습시키지 않고, 특정 작업에 대해 빠르게 성능을 얻을 수 있습니다.
2. Linear Probing과 Fine tuning의 비교
- Linear Probing은 사전 학습된 모델의 가중치를 고정하여 활용하는 방식인 반면 Fine tuning은 이를 일부 조정(미세 조정)하는 방법입니다.
- 이 차이를 표로 정리해보면 아래와 같습니다.
Linear Probing | Fine Tuning | |
개념 | 사전 학습된 모델의 특정 레이어에서 추출한 특징을 고정하고, 선형 분류기만 학습하는 방식 | 사전 학습된 모델의 가중치를 조정하면서 전체 또는 일부 레이어를 특정 작업에 맞게 재학습 |
학습 범위 | 고정된 레이어를 사용해 새로운 선형 분류기만을 학습 | 사전 학습된 모델의 모든 레이어 또는 일부 레이어의 가중치를 조정 |
학습 속도 | 선형 분류기만 학습하므로 빠름 | 모델 전체 또는 일부까지 학습시키므로 느림 |
Adaptation | 사전 학습된 특징이 유용한지 확인 | 사전 학습 모델을 특정 작업에 최적화하여 성능을 극대화 |
메모리 및 계산 자원 소요 |
비교적 적게 소요 | 비교적 많음 |
'딥러닝 with Python' 카테고리의 다른 글
[딥러닝 with Python] 합성곱 신경망(Convolutional Neural Network) (1) | 2024.11.02 |
---|---|
[딥러닝 with Python] 인공신경망(Artificial Neural Network / ANN), 데이터 증강(Data Augmentation) (1) | 2024.11.01 |
[개념정리] ELBO란? Evidence Lower Bound란? (0) | 2024.10.30 |
[개념 정리] 스케쥴러란? Scheduler (딥러닝 학습) (0) | 2024.10.29 |
[딥러닝 with Python] VAE (Variational Auto Encoder) 개념 정리 (1) | 2024.10.28 |
댓글