본문 바로가기
딥러닝 with Python

[딥러닝 with Python] Weakly Supervised Learning 이란?

by CodeCrafter 2024. 11. 13.
반응형

 

이번에 알아볼 것은 Weakly Supervised learning입니다.

 

1. Weakly Supervised Learning이란?

출처 : https://ietresearch.onlinelibrary.wiley.com/doi/full/10.1049/cit2.12216

 

- 위와 같이 Machine Learning의 학습 범주를 나누어보면 Supervised / Weakly Supervised / Unsupervised / Reinforcement Learning으로 분류해볼 수 있습니다.

 

- 이 중 오늘 알아볼

  Weakly Supervised Learning은 완전한 레이블 정보가 부족한 데이터에서 모델을 효과적으로 학습시키기 위한 다양한 기술과 접근 방식을 포괄하는 학습 방식을 말합니다.

 

- 이는 다음과 같이 크게 3가지로 나눌 수 있습니다.

 1) Incomplete Supervision : 일부 데이터에만 레이블이 존재하고 나머지 데이터는 레이블이 없는 경우

  * 예시 : 의료 영상 데이터에서 일부 샘플만 병에 대한 레이블을 가지고 나머지는 레이블이 없는 경우

  ** 문제점 : 레이블이 있는 데이터가 적어 일반화된 패턴 학습이 어려울 수 있음

 2) Inexact Supervision : 데이터 전체에 대한 일반적인 정보만 제공하며, 정확한 위치나 세부정보를 주지 않는 경우

  * 예시 : 이미지에 자동차가 포함되어 있다는 레이블은 있지만, 자동차가 이미지의 어느 위치에 있는지에 대한 정보가 없는 경우

  ** 문제점 : 모델이 전반적인 정보를 바탕으로 세부적인 학습을 진행해야하므로, 정확한 패턴을 학습하기 어려움

 3) Inaccurate Supervision : 레이블에 오류가 포함되어 있어 데이터의 실제 레이블과 불일치하는 경우

 * 예시 : 고양이와 개 사진을 분류할 때 일부 고양이 사진에 개 레이블이 잘못 부여된 경우

 ** 문제점 : 잘못된 레이블로 인해 모델이 부정확한 패턴을 학습할 수 있음

 

 

- 위와 같은 문제를 해결하기 위한 Weakly Supervsied Learning의 목표는 아래와 같습니다.

 1) 레이블링 비용 절감 : 대규모 데이터셋에 완전한 레이블을 부여하는 데 드는 비용과 시간을 절약할 수 있음

 2) 소량의 레이블로 효과적인 학습 : 제한된 레이블 데이터만으로도 모델이 의미있는 패턴을 학습하도록 유도함

 3) 일반화 능력 향상 : 모델이 제한된 레이블 데이터로부터도 유의미한 패턴을 학습함으로써, 새로운 데이터에 대한 일반화 성능을 향상시킬 수 있음

 

2. Weakly Supervised Learning에서 주요 사용되는 기법들

1. Self Training

- 정의 : 초기 모델을 일부 labeled 된 데이터로 학습한 후, 이 모델로 unlabeled 데이터의 pseudo-lable을 예측해서 다시 학습에 활용하는 방식

- 학습 절차

 a) labled 데이터로 초기 모델을 학습 

 b) 모델을 통해 unlabeled 데이터의 pseudo-lable을 생성

 c) pseudo-label이 부여된 데이터를 포함해 다시 모델을 학습 후 평가

출처 : https://towardsdatascience.com/a-gentle-introduction-to-self-training-and-semi-supervised-learning-ceee73178b38

- 장점 : 간단한 구조로 성능을 개선할 수 있으며, unlabeled 데이터를 학습에 적극 활용가능

- 단점 : pseudo-label의 오류가 누적될 경우 모델 성능이 저하될 수 있음

 

 

2. Consistency Regularization

- 정의 : 데이터에 다양한 변환(이미지의 경우 Rotation, Resize, Cropping 등)을 가해도 모델이 동일한 예측을 내도록 유도

- 학습 절차 

 a) 데이터에 변환을 적용해 서로 다른 버전의 데이터를 생성

 b) 변환된 데이터에 대해 동일한 예측이 나오도록 정규화

"OpenMatch: Open-set Consistency Regularization for Semi-supervised Learning with Outliers"

 

- 장점 : 모델이 데이터 변형에도 일관성을 유지하도록 학습되므로, unlabeled 데이터에서 의미있는 학습을 가능하게 함

- 단점 : 데이터 변환의 유형과 강도에 따라 성능에 영향을 줄 수 있음

 

3. Graph-based approaches

- 정의 : 데이터 간의 유사성을 그래프 형태로 표현하여 비슷한 데이터가 유사한 레이블을 가지도록 학습

- 학습 절차

 a) 각 데이터 포인트를 node로, 데이터 간의 유사성을 edge로 표현하여 그래프를 구성

 b) labeled 데이터와 유사한 unlabeled 데이터가 동일한 레이블을 갖도록 학습 

- 장점 : 데이터 간의 관계를 반영하여 학습할 수 있어, 데이터의 구조적 특징을 잘 반영할 수 있음

- 단점 : 대규모 데이터셋에서는 그래프 구성 및 계산이 복잡할 수 있음

출처 : https://www.yworks.com/pages/clustering-graphs-and-networks

 

 

 

4.Multiple Instance Learning

- 정의 : 각 데이터가 여러 인스턴스로 이루어진 경우, 전체 데이터에 대한 레이블만 주어지고 개별 인스턴스에 대한 레이블은 없는 경우를 다룸

- 학습 절차

 a) 전체 데이터에는 레이블이 있지만, 개별 인스턴스에는 레이블이 없는 경우, 데이터의 집합적 특성을 학습

 b) 모델이 데이터 내에서 레이블에 해당하는 인스턴스를 구분할 수 있도록 학습

https://www.youtube.com/watch?v=pizZ2fzyYeA&t=163s

- 장점 : 개별 인스턴스의 레이블링 없이도 전체 데이터를 기반으로 학습이 가능하여 레이블 비용을 절감

- 단점 : 개별 인스턴스의 정보가 부족하여 정확도가 떨어질 수 있음

 

 

 

 

 

 

반응형

댓글