본문 바로가기
Deep Learning

Meta, Few-shot, Zero-shot, Active Learning

by 아르카눔 2024. 10. 25.

1. Meta Learning (메타 학습)

  • 개념: 메타 학습은 '학습하는 방법을 학습'하는 것을 목표로 합니다. 일반적으로는 여러 작업에 걸쳐 학습을 반복하면서, 새로운 작업에서도 빠르게 적응할 수 있는 모델을 만드는 기법입니다.
  • 방법: 메타 학습에서는 모델이 주어진 작업의 학습 방식을 학습하여, 새로운 작업에서 적은 데이터만으로도 빠르게 성능을 향상시킬 수 있도록 합니다. 대표적인 메타 학습 알고리즘으로는 MAML(Model-Agnostic Meta-Learning)이 있습니다.
  • 장점: 메타 학습은 여러 작업에 대한 경험을 바탕으로 새로운 작업에 더 잘 적응할 수 있게 해줍니다.
  • 단점: 메타 학습을 적용하기 위해서는 여러 다양한 작업에 대한 학습 데이터가 필요하며, 학습 시간이 오래 걸릴 수 있습니다.

2. Few-Shot Learning (소수 샷 학습)

  • 개념: Few-shot learning은 매우 적은 수의 샘플(예: 몇 개의 예시)만으로도 모델이 새로운 작업을 수행할 수 있도록 하는 학습 방법입니다. 예를 들어, 1-shot learning은 단 한 개의 예시만으로도 새로운 클래스를 학습할 수 있도록 합니다.
  • 방법: Few-shot learning은 주로 메타 학습을 사용하거나 사전 학습된 모델을 기반으로 하여 새로운 클래스에 빠르게 적응할 수 있도록 만듭니다. 이를 위해 프로토타입 기반 방법, 시뮬레이션 학습 등이 자주 사용됩니다.
  • 장점: 적은 데이터로도 성능이 좋은 모델을 학습할 수 있어 새로운 클래스가 자주 추가되는 상황에서 유용합니다.
  • 단점: 적은 데이터로 학습하므로, 학습된 모델이 일반화되지 않으면 오버피팅의 위험이 있습니다.

3. Zero-Shot Learning (제로 샷 학습)

  • 개념: Zero-shot learning은 학습 시에 한 번도 보지 않은 클래스나 상황을 처리할 수 있는 모델을 만드는 기법입니다. 즉, 새로운 클래스의 데이터가 없어도 해당 클래스에 대한 추론이 가능합니다.
  • 방법: 주로 사전 학습된 지식을 이용하여 새로운 클래스를 설명하는 방법을 배웁니다. 클래스 간의 관계나 속성, 설명을 기반으로 추론합니다. 예를 들어, '고양이'라는 클래스를 본 적 없지만 '네 발이 있고 털이 난 포유류'라는 설명을 이용하여 고양이를 인식할 수 있습니다.
  • 장점: 학습하지 않은 클래스를 처리할 수 있으므로, 데이터 수집이 어려운 문제에 유용합니다.
  • 단점: 클래스 간 관계 설정이나 설명이 잘못되면 성능이 저하될 수 있습니다.

4. Active Learning (능동 학습)

  • 개념: Active learning은 모델이 학습할 데이터를 직접 선택하는 방법입니다. 즉, 모델이 현재 학습 상태에서 자신이 가장 학습에 도움이 될 것이라고 생각하는 데이터를 선택하여 라벨을 요청합니다. 이를 통해 주어진 데이터 중 중요한 데이터만 학습할 수 있습니다.
  • 방법: 주로 불확실성이 높은 샘플을 우선적으로 선택하여 라벨링을 요청하는 방법을 사용합니다. 이로써 학습에 필요한 데이터 라벨링 비용을 줄일 수 있습니다.
  • 장점: 모든 데이터를 라벨링하지 않고도 효과적인 모델을 만들 수 있어, 비용이 적게 들고 학습 속도를 높일 수 있습니다.
  • 단점: 데이터의 불확실성을 정확히 평가하지 못하면 효율이 떨어질 수 있습니다.

비교

개념 설명 장점 단점
Meta Learning 여러 작업에서 학습 방법을 학습하여, 새로운 작업에 빠르게 적응하는 모델 새로운 작업에 빠르게 적응 가능 여러 작업에 대한 학습 데이터가 필요, 학습 시간이 오래 걸릴 수 있음
Few-Shot Learning 매우 적은 데이터만으로 새로운 작업을 수행 가능 적은 데이터로도 학습 가능, 새로운 클래스 추가가 용이 오버피팅 위험 존재, 적은 데이터로 인한 일반화 어려움
Zero-Shot Learning 학습하지 않은 클래스를 처리할 수 있는 모델 학습하지 않은 클래스를 처리 가능 클래스 간 관계나 설명의 정확성이 중요
Active Learning 모델이 직접 학습할 데이터를 선택, 라벨링 비용을 줄이고 학습 효율을 높임 라벨링 비용 절감, 학습 속도 향상 불확실성 평가 실패 시 효율성 저하

 

 

ChatGPT가 알려준 답변인데 이를 숙지하고 인튜이션을 이해한 상태도 논문들을 보면 이해가 빠를 것 같다.