SW/영상인식

few shot learning : 개념, 접근법, 소개

얇은생각 2019. 11. 12. 07:30
반응형

 

머신 러닝의 few shot learning 이해

머신 러닝은 최근 몇 년간 엄청난 성장을 경험했습니다. 이러한 놀라운 성장을 이끄는 요인 중 일부는 알고리즘 및 학습 모델의 정교성 향상, 기계의 컴퓨팅 기능 향상 및 빅데이터의 가용성 증가를 포함합니다.

머신 러닝 경험이 5 년 이상이고 현재 사람들에게 자신의 기술을 가르치고있는 AndreyBu는 “데이터는 성공을 보장하는 머신 러닝 훈련 학습 모델의 핵심입니다. 충분하고 양질의 데이터를 제공하는 학습 모델은 더 정확한 결과를 얻을 수있을 것”이라고 덧붙였습니다.

그러나 때로는 모델의 정확도를 높이기 위해 충분한 데이터를 축적하는 것은 비현실적이고 달성하기 어렵습니다. 예를 들어, 엄청난 비즈니스 상황에서 샘플 라벨링은 비용이 많이 들고 관리하기가 어렵습니다.

이러한 제한된 데이터 및 까다로운 시나리오에서 데이터의 패턴을 발견하고 유리한 예측을 하기 위해 퓨샷 학습 알고리즘이 성공적으로 사용되었습니다.

 

few shot learning이 무엇일까요?

이름에서 알 수 있듯이 적은 수의 학습은 많은 양의 데이터를 사용하는 일반적인 관행과 달리 매우 적은 양의 훈련 데이터로 학습 모델에 공급하는 관행을 나타냅니다.

이 기법은 주로 컴퓨터 비전 분야에서 활용되며, 개체 분류 모델을 사용하면 몇 가지 훈련 샘플이 없어도 적절한 결과를 얻을 수 있습니다.

예를 들어, 사진에서 조류를 분류하는 데 문제가 있는 경우, 희귀종의 일부 조류는 훈련 이미지에 사용하기에 충분한 그림이 부족할 수 있습니다.

결과적으로 데이터 세트의 양이 충분하지 않은 새 이미지 분류기가 있으면 이를 몇 번 또는 퓨샷의 머신 러닝 문제로 취급합니다.

새의 이미지를 하나만 가지고 있다면 이것은 원샷 머신 러닝 문제일 것입니다. 훈련에 모든 클래스 레이블이 없는 극단적인 경우에는 일부 범주에서 훈련 샘플이 0 개가 되므로 머신 러닝으로 해결할 문제가 전혀 없습니다.

 

퓨샷 머신 러닝을 위한 목적

퓨 샷 학습 딥 러닝은 미니멀리스트 데이터 세트로부터 예측을 하기 위해 신뢰할 수있는 알고리즘을 만들 수 있다는 개념에 기반합니다. 채택률을 높이는 몇 가지 상황은 다음과 같습니다.

라벨링 데이터가 부족할 때마다 머신 러닝 모델은 신뢰할 수 있는 일반화를 수행하지 못하는 경우가 많습니다.

거대한 데이터 세트로 작업 할 때 데이터에 올바르게 레이블을 지정하면 많은 비용이 들 수 있습니다. 여러 샘플을 사용할 수 있는 경우 모든 작업에 특정 기능을 추가하는 것은 힘들고 구현하기 어렵습니다.

 

퓨 샷 러닝 접근법

일반적으로 퓨샷 또는 원샷 머신 러닝 문제를 해결하기 위해 두 가지 주요 접근 방식이 사용됩니다. 두 가지 주요 접근 방식은 다음과 같습니다.

 

a) 데이터 수준 접근

이 접근법은 알고리즘의 매개 변수에 맞지 않는 데이터가 충분하지 않고 데이터에 대한 적합치 또는 과적합을 피할 때 더 많은 데이터를 추가해야한다는 개념을 기반으로합니다.

이를 실현하는 데 사용되는 일반적인 기술은 광범위한 외부 데이터 소스 모음을 활용하는 것입니다. 예를 들어, 각 범주에 충분한 레이블이 지정된 요소가 없는 조류 종에 대한 분류기를 작성하려는 경우 새 이미지가 있는 다른 외부 데이터 소스를 조사해야합니다. 이 경우 레이블이 없는 이미지라도 특히 반감독 방식으로 포함 된 경우 유용 할 수 있습니다.

외부 데이터 소스를 활용하는 것 외에도, 데이터 기반 퓨 샷 학습을 위한 또 다른 기술은 새로운 데이터를 생성하는 것입니다. 예를 들어, 데이터 증강 기술은 조류의 이미지에 랜덤 노이즈를 추가하기 위해 사용될 수 있습니다.

대안적으로, 새로운 이미지 샘플은 GAN (Generative Adversarial Network) 기술을 사용하여 생성 될 수 있습니다. 예를 들어,이 기술을 사용하면 훈련 세트에 충분한 데이터가 있는 경우 새 관점의 새 이미지를 다른 관점에서 생성 할 수 있습니다.

 

b) 파라미터 수준 접근

데이터의 가용성이 부적절하기 때문에 소수의 학습 샘플은 너무 넓은 차원의 공간을 가질 수 있습니다. 과적합 문제를 극복하기 위해 매개 변수 공간을 제한 할 수 있습니다.

이러한 머신 러닝 문제를 해결하기 위해 정규화 기술 또는 손실 기능이 종종 사용되는데, 이는 퓨샷 문제에 적용될 수 있습니다.

이 경우, 제한된 수의 트레이닝 샘플을 일반화하도록 알고리즘이 강요됩니다. 다른 기술은 알고리즘을 광범위한 매개 변수 공간으로 보내 알고리즘의 정확도를 향상시키는 것입니다.

SDG (stochastic gradient descent)와 같은 표준 최적화 알고리즘을 사용하는 경우 훈련 데이터 수가 충분하지 않기 때문에 높은 차원 공간에서 원하는 결과를 얻지 못할 수 있습니다.

이와 같이, 알고리즘은 최적 예측 결과를 제공하기 위해 파라미터 공간에서 최상의 경로를 찾도록 지시됩니다. 이 기술은 일반적으로 메타 러닝이라고합니다.

예를 들어, 파라미터 공간을 캡슐화하는 방법에 대한 대량의 데이터를 사용하여 티칭 알고리즘을 학습 할 수 있습니다. 그 후, 실제 분류기가 훈련되면, 티칭 알고리즘은 분류기에게 광범위한 파라미터를 지시하여 최상의 훈련 결과를 실현합니다.

 

마무리

머신 러닝의 몇 번의 학습은 매우 적은 양의 훈련 데이터를 사용할 수 있을 때마다 가장 적합한 솔루션으로 입증되고 있습니다. 이 기술은 데이터 부족 문제를 극복하고 비용을 줄이는 데 유용합니다.

반응형