퓨샷 러닝: Difference between revisions
From CS Wiki
(새 문서: 분류:인공지능 ;Few-shot Learning 대량의 학습 데이터가 없는 상태에서 소량의 데이터만으로 효과적으로 학습하는데 주안점을 둔 학습 방...) |
No edit summary |
||
(4 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
[[분류:인공지능]] | [[분류:인공지능]] | ||
;Few-shot Learning | ;Few-shot Learning | ||
대량의 학습 데이터가 없는 상태에서 소량의 데이터만으로 효과적으로 학습하는데 주안점을 둔 학습 방식 | 대량의 학습 데이터가 없는 상태에서 소량의 데이터만으로 효과적으로 학습하는데 주안점을 둔 학습 방식 | ||
== 기존 학습 방법의 문제점 == | ==기존 학습 방법의 문제점== | ||
* 방대한 데이터 필요 | |||
* 방대한 데이터의 라벨링 작업 필요<ref>지도학습의 경우 데이터가 있더라도 데이터 라벨링에 상당한 시간과 인력이 필요. 자체적으로 수행할 환경이 안 되는 경우 아마존의 메커니컬터크(Mechanical Turk)처럼 유료로 데이터에 주석을 달아주는 서비스를 이용</ref> | *방대한 데이터 필요 | ||
* 학습을 위한 대량의 컴퓨팅 리소스 필요 | *방대한 데이터의 라벨링 작업 필요<ref>지도학습의 경우 데이터가 있더라도 데이터 라벨링에 상당한 시간과 인력이 필요. 자체적으로 수행할 환경이 안 되는 경우 아마존의 메커니컬터크(Mechanical Turk)처럼 유료로 데이터에 주석을 달아주는 서비스를 이용</ref> | ||
*학습을 위한 대량의 컴퓨팅 리소스 필요 | |||
==개요== | |||
===데이터셋 구성=== | |||
*'''서포트 데이터(support data)''': 훈련에 사용 | |||
*'''쿼리 데이터(query data)''': 테스트에 사용 | |||
== | ===러닝 태스크=== | ||
== | |||
;N-way K-shot 문제 | ;N-way K-shot 문제 | ||
=== 학습 | *N은 범주의 수 | ||
* 거리 학습 기반 방식 | *K는 범주별 서포트 데이터의 수 | ||
** Siamese Neural network for one-shot image recognition | **K가 많을수록 이 범주에 해당하는 데이터를 예측하는 모델의 성능(추론 정확도) 항샹 | ||
** Matching networks for one-shot learning | *'''퓨샷 러닝은 이 K가 매우 작은 상황에서의 모델 학습''' | ||
** Prototypical networks for few-shot learning | **K가 1인 경우 [[원샷 러닝]] | ||
** Learning to compare : relation network for few-shot learning | **K가 0인 경우 [[제로샷 러닝]] | ||
* 그래프 신경망 방식 | * '''예제''' | ||
** Few-shot learning with graph neural networks | ** 고양이 사진 하나를 보여주고, 동물들 중에서 고양이를 분류해 내도록 함 = 1-Way 1-Shot | ||
** Transductive propagation network for few-shot learning (TPN) | ** 고양이, 호랑이 사진을 하나씩 보여주고, 동물들 중에서 고양이, 호랑이를 분류해 내도록 함 = 2-Way 1-Shot | ||
** 고양이, 호랑이, 사자 사진을 두개씩 보여주고, 동물들 중에서 고양이, 호랑이, 사자를 분류해 내도록 함 = 3-Way, 2-Shot | |||
==학습 방안== | |||
{| class="wikitable" | |||
!방안 | |||
!설명 | |||
|- | |||
|[[전이 학습]] | |||
(파인 튜닝) | |||
| | |||
*기존에 비슷한 부류의 학습모델이 있는 경우 그 학습모델을 이용 | |||
*기존 모델에 소량의 학습 데이터를 이용해 망을 미세하게 튜닝 | |||
|- | |||
|[[메타 러닝]] | |||
| | |||
*학습에 필요한 변수, [[하이퍼파라미터]]를 자동으로 학습 및 최적화 | |||
*전이 학습의 파인 튜닝 과정의 효율을 극대화 | |||
|- | |||
|거리 학습 | |||
| | |||
*고차원 학습 데이터의 특징을 잘 표현할 수 있는 저차원 공간으로 학습 데이터를 변환 | |||
*부류들 간의 유사도 차이를 측정할 수 있는 수단을 이용해 분류 | |||
|- | |||
|[[액티브 러닝]] | |||
| | |||
*라벨링된 데이터가 적은 경우 반 자동화된 라벨링 | |||
*소수의 학습 데이터로 학습 후 자동 라벨링을 수행, 잘못 라벨링된 데이터만 사람이 정정하며 학습데이터 확보 | |||
|- | |||
|생성 모델 활용 | |||
| | |||
*소수의 학습 데이터에 [[GAN]]과 같은 생성모델을 사용해 유사 데이터 확보 | |||
|} | |||
=== [[전이 학습]] === | |||
'''Few-shot task를 해결하고자 제안됨''' | |||
* 사전 학습된 신경망을 이용하며, Test phase에서 Few-shot example들을 이용해 파인 튜닝 | |||
* '''한계점''' | |||
** 파인 튜닝 과정에서 여전히 많은 데이터 및 시간이 소모됨 | |||
** 너무 작은 수의 Few-shot example에서의 [[과적합 문제]] 발생 | |||
=== 메타 러닝 === | |||
* Learn to learn | |||
* 학습 방법을 학습함으로써 인간과 유사한 [[메타 인지]]를 표방 | |||
* 학습과정에서 접하지 않았던 데이터에 대해 Few-shot example로도 일반화하여 결과 도출 | |||
==관련 논문== | |||
*거리 학습 기반 방식 | |||
**Siamese Neural network for one-shot image recognition | |||
**Matching networks for one-shot learning | |||
**Prototypical networks for few-shot learning | |||
**Learning to compare : relation network for few-shot learning | |||
*그래프 신경망 방식 | |||
**Few-shot learning with graph neural networks | |||
**Transductive propagation network for few-shot learning (TPN) | |||
==같이 보기== | |||
*[[메타 러닝]] | |||
*[[원샷 러닝]] | |||
*[[AutoML]] | |||
==참고 문헌== | |||
*[http://aidev.co.kr/deeplearning/9286 퓨샷 러닝(few-shot learning)과 메타 러닝(meta-learning)] | |||
* [ | *[https://www.kakaobrain.com/blog/106?fbclid=IwAR3pYh_Rl0NvqQFFuTWVmPiYREU3R0d15SpDUngmRvJPN-M4q7sjyufF_vA 퓨샷 러닝(few-shot learning) 연구 동향을 소개합니다.] | ||
* [ | *[https://www.sedaily.com/NewsView/1VHPK6NWWG 소량의 데이터로 학습하는 퓨샷러닝] | ||
* [ | |||
== | ==각주== | ||
<references /> | |||
Latest revision as of 19:04, 6 May 2021
- Few-shot Learning
대량의 학습 데이터가 없는 상태에서 소량의 데이터만으로 효과적으로 학습하는데 주안점을 둔 학습 방식
기존 학습 방법의 문제점[edit | edit source]
- 방대한 데이터 필요
- 방대한 데이터의 라벨링 작업 필요[1]
- 학습을 위한 대량의 컴퓨팅 리소스 필요
개요[edit | edit source]
데이터셋 구성[edit | edit source]
- 서포트 데이터(support data): 훈련에 사용
- 쿼리 데이터(query data): 테스트에 사용
러닝 태스크[edit | edit source]
- N-way K-shot 문제
- N은 범주의 수
- K는 범주별 서포트 데이터의 수
- K가 많을수록 이 범주에 해당하는 데이터를 예측하는 모델의 성능(추론 정확도) 항샹
- 퓨샷 러닝은 이 K가 매우 작은 상황에서의 모델 학습
- 예제
- 고양이 사진 하나를 보여주고, 동물들 중에서 고양이를 분류해 내도록 함 = 1-Way 1-Shot
- 고양이, 호랑이 사진을 하나씩 보여주고, 동물들 중에서 고양이, 호랑이를 분류해 내도록 함 = 2-Way 1-Shot
- 고양이, 호랑이, 사자 사진을 두개씩 보여주고, 동물들 중에서 고양이, 호랑이, 사자를 분류해 내도록 함 = 3-Way, 2-Shot
학습 방안[edit | edit source]
방안 | 설명 |
---|---|
전이 학습
(파인 튜닝) |
|
메타 러닝 |
|
거리 학습 |
|
액티브 러닝 |
|
생성 모델 활용 |
|
전이 학습[edit | edit source]
Few-shot task를 해결하고자 제안됨
- 사전 학습된 신경망을 이용하며, Test phase에서 Few-shot example들을 이용해 파인 튜닝
- 한계점
- 파인 튜닝 과정에서 여전히 많은 데이터 및 시간이 소모됨
- 너무 작은 수의 Few-shot example에서의 과적합 문제 발생
메타 러닝[edit | edit source]
- Learn to learn
- 학습 방법을 학습함으로써 인간과 유사한 메타 인지를 표방
- 학습과정에서 접하지 않았던 데이터에 대해 Few-shot example로도 일반화하여 결과 도출
관련 논문[edit | edit source]
- 거리 학습 기반 방식
- Siamese Neural network for one-shot image recognition
- Matching networks for one-shot learning
- Prototypical networks for few-shot learning
- Learning to compare : relation network for few-shot learning
- 그래프 신경망 방식
- Few-shot learning with graph neural networks
- Transductive propagation network for few-shot learning (TPN)
같이 보기[edit | edit source]
참고 문헌[edit | edit source]
- 퓨샷 러닝(few-shot learning)과 메타 러닝(meta-learning)
- 퓨샷 러닝(few-shot learning) 연구 동향을 소개합니다.
- 소량의 데이터로 학습하는 퓨샷러닝
각주[edit | edit source]
- ↑ 지도학습의 경우 데이터가 있더라도 데이터 라벨링에 상당한 시간과 인력이 필요. 자체적으로 수행할 환경이 안 되는 경우 아마존의 메커니컬터크(Mechanical Turk)처럼 유료로 데이터에 주석을 달아주는 서비스를 이용