| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | 6 | |
| 7 | 8 | 9 | 10 | 11 | 12 | 13 |
| 14 | 15 | 16 | 17 | 18 | 19 | 20 |
| 21 | 22 | 23 | 24 | 25 | 26 | 27 |
| 28 | 29 | 30 | 31 |
- 콘텐츠전략
- Python
- GPT-OSS
- deepseek
- NLP
- 개발자현황
- ecomgpt
- rerank
- GPT
- a.x
- mi:dm
- GS아트센터 a열
- HyperClovaX
- 딥러닝
- 리랭크
- llm비교
- gs아트센터
- Rag
- yokohamafmarinos
- AI검색
- 한국어llm
- 프롬프트엔지니어링
- 개발자생태
- llm
- it
- qwen
- 파이썬개발
- GS아트센터 주차
- re-ranker
- reranking
- Today
- Total
너드한 일상
[논문 리뷰] SELFIE: Refurbishing Unclean Samples for Robust Deep Learning, Hwanjun Song외 본문
[논문 리뷰] SELFIE: Refurbishing Unclean Samples for Robust Deep Learning, Hwanjun Song외
TiaNote 2025. 12. 3. 18:58안녕하세요, 티아입니다! 👋
딥러닝 모델이 점점 강력해지면서, 이미지 분류나 자연어 처리 같은 다양한 분야에서 놀라운 성능을 보여주고 있죠.
그런데 모델이 너무 똑똑해진 탓일까요?
현실 세계 데이터를 그대로 학습시키면 오히려 문제가 더 커지는 경우가 있습니다.
예를 들어, 라벨에 오타가 있거나,
사람이 잘못 붙인 오라벨(mislabeled sample)이 섞여 있다면,
요즘 딥러닝 모델은 그걸 그냥 그대로 외워버립니다.
이렇게 noisy·unclean 데이터가 섞인 환경은 실제 AI 산업 어디에나 존재합니다.
그러니 “라벨이 완벽하지 않은 데이터로도 강건한 모델을 만드는 법” 은 필수 연구 주제가 됐죠.
오늘 소개할 논문은 바로 이 문제를 정면으로 다룹니다.
KAIST DMLab에서 발표한 SELFIE(Self-Refurbishing) 기법은
노이즈 라벨 환경에서 딥러닝 모델이 잘못된 라벨을 스스로 교정하면서 학습하도록 만드는 새로운 접근법이에요.
이 연구의 핵심은 단순합니다:
✨ “틀린 라벨을 모두 고치는 것도, 그냥 버리는 것도 아니다.
정확히 고칠 수 있는 샘플만 똑똑하게 골라서 보정한다!” ✨
이 아이디어 하나로, SELFIE는
CIFAR-10/100, Tiny-ImageNet, 실제 noisy 데이터셋에서
SOTA(class-leading) 기법들을 크게 앞서는 성능을 보여줍니다.
이 글에서는 논문이 어떤 문제를 해결하려 했는지,
SELFIE가 어떻게 동작하는지,
그리고 실험 결과가 왜 의미 있는지
쉽게 풀어서 리뷰해 보려고 합니다.
— A Review
노이즈 라벨(noisy labels)이 포함된 데이터셋은 실제 산업 환경에서 매우 흔하다. 그러나 딥러닝 모델은 표현력이 큰 만큼 잘못된 라벨도 그대로 암기(memorization) 해버리는 문제를 갖는다(Arpit et al., 2017; Zhang et al., 2017). 이 문제를 해결하기 위해 기존에는 크게 두 가지 접근이 사용되었다:
- Loss Correction: noisy sample의 loss를 보정
- Sample Selection: clean sample만 선별해 학습
그러나 두 방식은 각각
- false correction 누적
- 데이터 활용 부족
이라는 상반된 약점을 가진다.
본 논문(Lee et al., 2019)은 이 문제를 해결하기 위해
SELFIE(SELectively reFurbIshing Unclean Samples) 라는 하이브리드 접근을 제안한다.
SELFIE는 noisy 환경에서도 딥러닝을 안정적으로 학습시키기 위해
- clean sample 활용,
- 보정할 수 있는 샘플(refurbishable)만 선별,
- unclean sample은 과감히 배제
라는 구조를 취한다.
1. 문제 정의와 전제
훈련 데이터셋은 기본적으로 (입력 샘플, 정답 라벨) 쌍들의 집합으로 구성된다.
하지만 실제 산업 환경에서는 라벨이 항상 정확하지 않기 때문에,
모델이 받는 Mini-Batch에는 오염된 라벨(노이즈 라벨)이 섞여 있는 경우가 많다.
정리하면 다음과 같다:
- Dataset D: (x, 실제 정답 라벨) 형태의 이상적인 데이터
- Mini-batch M: (x, 오염된 라벨) 형태의 실제 학습 데이터
일반적인 신경망 학습은 noisy label을 그대로 loss에 사용하기 때문에,
모델이 잘못된 라벨까지 그대로 암기하는 문제가 발생한다.
SELFIE는 이러한 문제를 해결하기 위해 미니배치를 세 가지 종류로 나누어 처리한다:
- Clean Samples (C): loss가 낮아 라벨이 정확할 가능성이 높은 샘플
- Refurbishable Samples (R): 예측 패턴이 안정적이어서 라벨을 보정할 수 있는 샘플
- Unclean Samples: 위 두 조건을 만족하지 않아 신뢰할 수 없는 샘플
SELFIE는 이 세 집합을 다음과 같이 활용한다:
- clean 샘플 → 원래 라벨로 학습
- refurbishable 샘플 → noisy 라벨을 버리고 보정된 라벨로 학습
- unclean 샘플 → 업데이트에서 제외
이 구조가 SELFIE의 핵심적인 학습 프레임워크
2. Refurbishable Sample의 핵심: “예측 이력의 엔트로피”
SELFIE의 가장 독창적인 요소는 샘플의 최근 예측 이력(label history) 을 활용해
“이 샘플은 보정해도 안전한가?”를 판단하는 기준을 만든다는 점이다.
각 샘플에 대해 모델이 최근 여러 번 예측한 라벨을 기록해 두고, 그 분포를 기반으로 예측의 일관성을 평가한다.
- 예측이 계속 같은 라벨로 수렴 → 일관성이 높은 상태
- 예측이 매번 달라짐 → 불안정한 상태
이 예측의 일관성은 엔트로피(entropy) 라는 값으로 수치화되며,
엔트로피가 낮을수록 “이 샘플의 정답을 모델이 꽤 잘 알고 있다”는 의미가 된다.
SELFIE는 다음 기준을 사용한다:
- 엔트로피가 일정 값 이하이면 → refurbishable
- 엔트로피가 높으면 → 보정하지 않음(unclean)
즉,
- 예측이 안정적 → 라벨 보정 가능
- 예측이 흔들림 → 보정 위험 → 학습에서 제외
이 방식은 단순히 loss만 보는 sample selection보다 훨씬 정교하며,
“모델 스스로가 confident한 샘플”을 선별해 보정할 수 있게 한다.
3. 라벨 보정(Refurbished Label)
refurbishable로 선택된 샘플은 noisy label을 그대로 쓰지 않는다.
대신, 최근 q번의 예측 중 가장 많이 등장한 라벨(majority label) 을 새 라벨로 사용한다.
즉,
모델이 예측을 반복할수록 특정 라벨로 수렴한다면,
그 라벨을 정제된 라벨(refurbished label) 로 사용한다.
이 보정된 라벨은 실제 true label에 가까운 경우가 많으며,
결과적으로 noisy label의 영향을 크게 줄여준다.
4. SELFIE의 학습 알고리즘
SELFIE는 다음 순서로 진행된다:
- Warm-up (초기 epoch)
- 기본 supervised 학습
- 모델은 memorization effect 덕분에 clean 샘플부터 안정적으로 학습
- Clean sample selection
- loss 기반으로 상위 (1−τ)% low-loss 샘플을 C로 선택
- Refurbishable sample selection + 보정
- 예측 이력의 엔트로피 기준
- 보정된 라벨로 loss 계산
- Unclean sample 배제
- Restart (선택)
- 첫 run에서 refurbishable이었던 샘플 전체를 모아
- 모델을 초기화한 뒤 정제된 데이터셋으로 다시 학습
논문에서는 restart 2회를 통해 test error가
46.7% → 41.3%으로 개선되었다.
5. 실험 결과 요약
데이터셋:
- CIFAR-10 / CIFAR-100
- Tiny-ImageNet
- 실제 noisy dataset: ANIMAL-10N (8% 실제 노이즈)
모델: DenseNet-25, VGG-19
노이즈 타입:
- Pair noise
- Symmetry noise
- Realistic noise (인간 라벨 오류)
▷ 주요 결과
(1) Pair Noise (40%)
SELFIE는 모든 baseline을 크게 능가함:
- Default 대비 최대 11.9pp 개선
- ActiveBias 대비 3.5~9.5pp 개선
- Coteaching 대비 2.1~10.5pp 개선
pair noise 환경은 특히 clean/unclean 분리가 어려운 환경인데,
SELFIE는 refurbishable 보정 덕분에 높은 성능을 유지했다.
(2) Symmetry Noise (40%)
SELFIE와 Coteaching이 최상위 성능.
ActiveBias는 크게 뒤처짐.
(3) 실제 노이즈 (ANIMAL-10N)
SELFIE는 DenseNet/VGG 모두에서 최소 오류를 기록.
노이즈 8%라는 상대적으로 낮은 환경이지만 안정적인 우위 유지.
6. SELFIE의 장점 요약
- 높은 보정 정확도
- 40% 노이즈에서도 diagonal probability가 0.95 이상
- 전체 데이터 활용 증가
- 회차가 진행될수록 사용 가능한 샘플 비율이 59% → 90% 이상으로 증가
- restart를 통한 성능 향상 가능
- Coteaching과 결합(CoSELFIE)하면 추가 성능 향상
- 특히 pair noise 환경에서 탁월한 성능
7. 한계와 고려 사항
- 예측 이력 저장 필요
→ 대규모 데이터셋에서는 메모리 비용 증가 - warm-up, ε, q 등 하이퍼파라미터에 민감
- 엔트로피 기반 refurbish가 항상 true label을 보장하지는 않음
- label distribution이 극단적으로 skewed한 경우 성능 저하 가능
8. 결론
SELFIE는 noisy label 환경에서 선택적 보정(selective loss correction) 을 통해 기존 loss correction과 sample selection의 단점을 모두 극복한 방식이다. 예측 이력의 엔트로피를 활용해 정확하게 refurbishable을 선별하고, clean 샘플과 함께 학습함으로써 노이즈 누적을 방지하며 전체 데이터를 효과적으로 활용한다.
실험 결과는 다양한 노이즈 환경(특히 pair noise)에서 SELFIE의 강력한 성능을 뚜렷하게 보여준다. 또한 restart와 Coteaching과의 결합(CoSELFIE) 가능성과 성능 향상까지 고려하면, SELFIE는 noisy label 학습 분야에서 의미 있는 기여라고 평가할 수 있다.
'IT > 이것저것' 카테고리의 다른 글
| [Python] GIL 없는 Python? 3.14 프리 스레딩 빌드 완벽 정리 (1) | 2025.06.19 |
|---|---|
| [SEO]AI 시대에 SEO는 끝났을까? SEO 베테랑의 진짜 이야기 (0) | 2025.06.11 |
| [개발자/Developer]2024 JetBrains 개발자 생태계 보고서 요약 (3) | 2025.06.04 |
| [Python] 왜 이제는 pip 대신 uv를 써야 할까? : Python 패키지 매니저의 진화 (0) | 2025.05.20 |