[1단계] 전체 개요 및 핵심 요약
- SMOTE, ADASYN vs. Weighted Sampler
- SMOTE/ADASYN
- 소수 클래스(minority class)를 위한 **가상 샘플(합성 데이터)**을 생성하는 오버샘플링 기법.
- 실제로 데이터 양을 늘려줄 수 있으나, “가짜” 이미지(문서 이미지의 경우, 합성이 쉽지 않을 수 있음)를 만들어내므로, 신중한 적용이 필요.
- Weighted Sampler
- 원본 데이터를 그대로 두고, 학습 과정에서 소수 클래스 표본 추출 확률을 높여주는 방식.
- 데이터의 ‘실제 분포’ 왜곡을 최소화하면서도 소수 클래스를 충분히 모델이 보게 함.
- 이미지 합성 등의 추가 전처리가 부담스럽다면 간단히 적용 가능.
- AdaBN, TTA, TTAD
- AdaBN(Adaptive Batch Normalization)
- 도메인 차이(train vs. test)에 대응하기 위해, 테스트 데이터 통계량으로 Batch Norm 파라미터(평균, 분산 등)를 갱신하는 기법.
- 문서 이미지에서 노이즈, 해상도, 스캔 방식 차이가 심할 때 효과가 있을 수 있음.
- TTA(Test Time Augmentation)
- 테스트 시 다양한 형태의 이미지 변환(회전, 크롭, 밝기 조절 등)을 적용하고, 각각에 대한 예측값을 평균/투표해 최종 결과를 산출.
- 종종 레이블이 없는 테스트 세트에서 예측 안정성을 높이는 용도로 사용.
- TTAD(Test Time Domain Adaptation)
- TTA + 도메인 적응 기법(DANN, AdaBN 등)을 접목하여, 테스트 단계에서도 모델의 파라미터 일부(특히 BatchNorm 파라미터) 업데이트를 수행.
- 노이즈 많고 도메인 차이가 큰 테스트 세트에서 추가적인 성능 향상을 기대할 수 있음.
- 특정 클래스 묶어서 2단계 분류
- 17개 클래스 중 서로 유사해 잘 혼동되는 클래스들을 하나의 그룹으로 묶어서 1차 분류(‘A그룹’, ‘B그룹’, …)
- 이후, 각 그룹 내부에서 세분화 분류기를 별도로 구성(2차 분류)해, 유사 클래스를 보다 정밀하게 구분.
- 이미지를 볼 때, “겉보기로 비슷한 표지를 먼저 묶고, 그 안에서 다시 세밀한 차이를 확인”하는 구조라고 보면 됨.
[2단계] SMOTE/ADASYN vs. Weighted Sampler: 어느 쪽이 더 효과적인가?
2-1. 목적과 특징 비교
- SMOTE/ADASYN
- 장점
- 소수 클래스의 훈련 표본 수 자체가 증가하므로, 표현 학습 관점에서 유리할 수 있음.
- 단순 “복제”가 아니라 주변 이웃을 고려해 가상 샘플 생성.
- 단점
- 문서 이미지의 경우, 텍스트·레이아웃 정보가 복잡해 단순 보간(interpolation)만으로는 현실감 떨어지는 합성 데이터가 만들어질 수 있음.
- 데이터 양은 늘지만, 품질 보장이 어려우면 오히려 분류 성능 저하 위험.
- 구현 복잡도와 추가 계산 비용.
- Weighted Sampler
- 장점
- 원본 이미지 그대로 사용하므로, 데이터 왜곡이나 합성 오류 문제가 없음.
- 구현이 상대적으로 간단(파이토치
WeightedRandomSampler
등).
- 학습 루프 내에서만 확률적으로 소수 클래스를 자주 뽑아주므로, 실제 데이터 분포의 핵심 특징은 유지.
- 단점
- 소수 클래스가 가진 근본적인 '표본 다양성' 문제는 해결 어려움(데이터가 실제로 적기 때문).
- 극단적 불균형 상황에서는 샘플링만으로는 한계가 있을 수 있음.
2-2. 결론적으로 어느 쪽을 선택할까?
- 문서 이미지의 합성 난이도 및 데이터 품질을 고려해야 함.
- 데이터 증강(aug) 기법이 이미 충분히 잘 마련되어 있고, 상대적으로 소수 클래스가 가진 샘플의 다양성이 높다면 SMOTE/ADASYN을 시도해볼 만함.
- 하지만, 합성 이미지의 품질을 담보하기 어렵다면(예: 텍스트 왜곡, 국소 영역 오버레이 등 문제) 오히려 잘못된 합성 데이터가 노이즈로 작용할 수 있음.
- 그런 경우, Weighted Sampler + 클래스별 가중치(Weighted Loss) 가 더 안정적인 선택이 될 수 있음.
- 실제로는 소수 클래스가 몇 개인지, 얼마나 심한 불균형인지를 먼저 파악하고, 가능하다면 일부 파일럿 실험으로 성능 비교를 권장함.
[3단계] AdaBN, TTA, TTAD에 대한 좀 더 구체적 설명
문서 이미지에서 발생하는 도메인 격차(train vs. test)와 노이즈를 줄이고, 테스트 시 모델의 예측 안정성을 높이는 기법들입니다.
3-1. AdaBN(Adaptive Batch Normalization)