딥러닝의 큰 장점은 매우 큰 차원수를 가진 데이터(고화질 이미지, 자연어 등)를 효과적으로 쉽게 처리할 수 있다는 점입니다. 그러나 이러한 장점을 나타내기 위해서는 가장 큰 단점으로, 연산량이 매우 크다는 것과 대량의 트레이닝 데이터가 필요하다는 점을 들 수 있습니다.
그래서 등장한 것이 소수의 예제(Few)만 있어도 성능이 우수한 모델링이 가능하도록 학습하는 방법인 Few-shot Learning이며 이를 위해 제안된 알고리즘으로는 Transfer Learning과 Meta-Learning이 있습니다.
Transfer Learning(전이학습)은 큰 데이터로 학습한 가중치의 일부를 새로운 데이터에 맞춰서 학습하는 방법입니다.하지만 여전히 전이 학습도 새로운 문제에 적용하기 위해서 많은 수의 데이터와 레이블링이 필요합니다.
이러한 문제를 해결하기 위한 방법으로 Meta learning이 등장하였습니다.
Meta learning은 데이터의 패턴을 정해진 프로세스로 학습하는 것이 아니라, 데이터의 특성에 맞춰서 모델 네트워크의 구조를 변화시키면서 학습합니다. 즉, 배우는 방법을 배우는 것이라고 볼 수 있습니다.
일반적인 few-shot learning과 GPT 논문에서 말하는 few shot learning에는 차이가 있습니다.
GPT에서의 few-shot learning은 gradient를 업데이트하지 않습니다.
이 방법은 inference를 할 때 원하는 task에 대한 source(힌트)를 few 개 주는 방법입니다.
https://greeksharifa.github.io/nlp(natural%20language%20processing)%20/%20rnns/2020/08/14/OpenAI-GPT-3-Language-Models-are-Few-Shot-Learners/#2-%EC%A0%91%EA%B7%BC%EB%B2%95approach
https://jayhey.github.io/deep%20learning/2018/02/06/saimese_network/
https://zzaebok.github.io/machine_learning/FSL/
https://bigwaveai.tistory.com/18