데이터 증강은 기존 데이터에 변환 또는 섭동을 적용하여 새로운 훈련 샘플을 생성하는 통계적 기법이다. 기계 학습에서 이는 원본 데이터셋의 약간 수정된 사본 여러 개로 모델을 훈련시켜 과적합을 줄이고 일반화를 개선하는 데 널리 사용된다. 이 접근법은 데이터가 부족하거나 불균형할 때 특히 유용하며, 더 크고 다양한 데이터셋을 시뮬레이션하여 모델 견고성을 향상시킬 수 있다.
일반적인 통계적 형태에서 데이터 증강은 잠재 변수나 누락 데이터 구성 요소를 도입하여 불완전한 데이터로부터 최대 우도 추정을 가능하게 하며, 이는 베이즈 분석에서 중요한 응용을 가진 방법이다. Machine learning의 맥락에서 이 기법은 추가 실제 데이터를 수집하지 않고 모델 성능을 개선할 수 있는 능력 덕분에 이미지 분류에서 신호 처리에 이르기까지 다양한 영역에서 표준 관행이 되었다.
역사적 배경과 초기 사용
기계 학습에서 데이터 증강의 뿌리는 합성곱 신경망(CNN)이 더 커지기 시작한 1990년대 중반으로 거슬러 올라간다. 당시에는 데이터셋의 일부를 테스트용으로 예약해야 했기 때문에 이러한 네트워크를 효과적으로 훈련시킬 충분한 데이터가 부족했다. 연구자들은 회전, 평행 이동, 스케일링과 같은 아핀 변환으로 기존 데이터를 섭동하여 원본과 동일한 레이블을 공유하는 새 예제를 생성할 것을 제안했다. 이 접근법은 2003년 탄성 왜곡으로 보완되어 더 미묘하고 현실적인 변형을 도입했다. 2010년대까지 데이터 증강은 CNN 훈련에서 널리 채택되어 성능을 향상시키고 프로파일링과 같은 적대적 공격에 대한 대응책으로 사용되었다.
불균형 데이터를 위한 합성 오버샘플링
전통적인 기계 학습에서 흔한 과제는 한 클래스가 다른 클래스보다 샘플 수가 현저히 적은 불균형 데이터셋이다. 예를 들어, 건강한 개인 90개 샘플과 특정 질병을 가진 개인 10개 샘플만 있는 의료 진단 데이터셋을 고려해 보자. 이러한 경우 알고리즘은 다수 클래스에 대한 편향 때문에 소수 클래스를 분류하지 못하는 경우가 많다.
Synthetic Minority Over-sampling Technique(SMOTE)는 소수 클래스에 대한 합성 샘플을 생성하여 이 문제를 해결한다. SMOTE는 소수 클래스 샘플을 무작위로 선택하고, 가장 가까운 이웃을 찾은 다음, 이 이웃들을 연결하는 선분을 따라 새 샘플을 생성한다. 예를 들어, 다수 클래스에 100개 샘플과 소수 클래스에 10개 샘플이 있다면, SMOTE는 소수 클래스를 예를 들어 100개로 늘리는 합성 소수 샘플을 생성하여 데이터셋을 균형 있게 만들 수 있다. 2000년대 초반에 등장한 이 기법은 모델 성능을 개선하며, 표 형식 데이터를 위한 데이터 증강의 초석이다.
이미지 기법
이미지 분류는 특히 딥 러닝의 부상과 함께 데이터 증강의 주요 수혜자 중 하나였다. 이 관행은 광범위한 변환을 포함하도록 진화하여 훈련 데이터를 풍부하게 하고 모델이 더 잘 일반화하도록 돕는다. 일반적인 범주에는 기하 변환, 색 공간 조정, 노이즈 주입이 포함된다.
기하 변환
기하 변환은 이미지의 공간적 속성을 변경하여 다양한 시각, 방향, 스케일을 시뮬레이션한다. 기법은 다음과 같다:
- 아핀 변환(회전, 반사, 평행 이동, 스케일링을 결합)
- 회전: 지정된 각도로 이미지를 회전시켜 모델이 다양한 각도에서 객체를 인식하도록 돕는다.
- 반사: 이미지를 수평 또는 수직으로 반사하여 방향의 변동성을 도입한다.
- 평행 이동: 이미지를 다른 방향으로 이동시켜 위치 불변성을 가르친다.
- 스케일링: 이미지 내 객체의 크기를 조정한다.
- 전단 매핑: 이미지를 기울여 다양한 시야각을 모방한다.
- 크롭: 이미지의 일부를 제거하여 특정 특징에 초점을 맞추거나 더 가까운 시야를 시뮬레이션한다.
- 탄성 왜곡: 이미지를 비선형 방식으로 변형하며, 2003년 제안되어 손글씨 인식과 같은 작업에서 효과적이었다.
- 같은 클래스 내 모핑: 같은 클래스에 속하는 두 이미지 사이에 모핑 기법을 적용하여 새 샘플을 생성함으로써 클래스 내 다양성을 증가시킨다.
색 공간 변환
색 공간 변환은 이미지의 색상 속성을 수정하여 조명, 채도, 대비의 변화를 처리한다. 여기에는 다음이 포함된다:
- 밝기 조정: 다양한 조명 조건을 시뮬레이션하기 위해 이미지의 밝기를 변화시킨다.
- 대비 조정: 다양한 선명도 수준에서 대비를 변경하여 도움을 준다.
- 채도 조정: 다양한 색상 강도를 가진 이미지에 대비하기 위해 채도를 변경한다.
- 색상 지터링: 밝기, 대비, 채도, 색조를 무작위로 조정하여 색상 변동성을 도입하며, CNN의 견고성 향상을 위한 표준이다.
노이즈 주입
이미지에 노이즈를 주입하면 실제 세계의 불완전성을 시뮬레이션하여 모델이 관련 없는 변동을 무시하도록 가르친다. 일반적인 기법은 다음과 같다:
- 가우시안 노이즈: 센서 노이즈나 입자를 모방하기 위해 가우시안 노이즈를 추가한다.
- 소금-후추 노이즈: 센서 먼지나 죽은 픽셀을 시뮬레이션하기 위해 무작위 검은색 또는 흰색 픽셀을 도입한다.
이러한 방법은 분류기를 실제 세계 왜곡에 견고하게 만드는 데 기초가 되었으며, 1990년대부터 널리 사용되었다.
신호 처리를 위한 데이터 증강
데이터 증강은 시계열 및 신호 처리에도 적용 가능하다. 시계열의 경우 잔차 또는 블록 부트스트랩 방법을 사용하여 증강 시퀀스를 생성할 수 있으며, 이는 시간적 데이터를 처리하는 모델의 견고성을 개선하는 데 도움이 된다.
생체 신호
생체 신호 영역에서 데이터 증강은 높은 차원성과 데이터 부족으로 인해 매우 중요하다. 로봇 제어 및 장애인과 비장애인 피험자 모두의 응용은 샘플 수가 제한적이기 때문에 종종 피험자별 분석에 의존한다. 그러나 합성 데이터 생성은 이러한 데이터셋을 크게 확장할 수 있다.
연구자들은 파킨슨병에 대한 근전도(EMG)와 같은 신호를 확보하는 어려움을 지적했다. Zanini 등은 생성적 적대 신경망(특히 딥 컨볼루션 GAN)을 사용하여 스타일 전이를 수행하고 파킨슨 환자의 신호에 해당하는 합성 EMG 신호를 생성하는 것을 시연했다. 이 접근법은 Generative AI 기법이 데이터 증강을 지원할 수 있는 방법을 보여준다.
마찬가지로 뇌전도(EEG) 데이터에서 Wang 등은 EEG 기반 감정 인식을 위한 딥 컨볼루션 신경망 사용을 탐구했으며, 데이터 증강을 적용했을 때 감정 인식 정확도가 향상된 결과를 보여주었다.
합성 신호 생성을 위한 일반적인 방법은 실제 데이터의 구성 요소를 재배열하는 것이다. Lotte는 "유추 기반 인공 시험 생성"이라는 방법을 제안했는데, 여기서 세 개의 데이터 예제 x₁, x₂, x₃가 기초를 제공하고, 유추에 의해 인공 합성 샘플 x_synthetic이 구성된다. 이를 위해 x₁을 x₂에 더 유사하게 만드는 변환이 정의되고, 이 변환이 x₃에 적용되어 합성 샘플을 생성한다. 이 접근법은 데이터 부족이 심각한 뇌-컴퓨터 인터페이스 응용에서 사용되었다.
2010년대에는 딥 러닝의 부상으로 데이터 증강의 필요성이 증폭되었는데, 신경망은 데이터를 많이 필요로 하기 때문이다. SMOTE 및 GAN 기반 방법과 같은 기법은 의료 영상 및 생체 신호와 같은 전문 분야의 불균형과 부족을 해결하기 위해 도구 키트에 통합되었다.
다른 방법과의 관계
데이터 증강은 드롭아웃이나 가중치 감쇠와 같은 다른 형태의 정규화와 자주 비교되지만, 모델이 아닌 데이터를 수정한다는 점에서 구별된다. 이는 컴퓨터 비전(예: ImageNet), 자연어 처리, 음성 인식에서 딥 러닝 모델의 성공에 핵심 구성 요소이다.
트랜스포머 분야에서 데이터 증강은 일반적으로 덜 일반적인데, 이러한 모델은 대규모 말뭉치로 훈련되기 때문이지만, 미세 조정 및 퓨샷 학습과 같은 응용에서는 여전히 사용된다.
최근에는 생성 모델 자체가 데이터 증강기로 사용되기도 하며, 예를 들어 생성적 적대 신경망을 사용하여 현실적인 이미지를 생성하지만, 원래의 가벼운 기법은 낮은 계산 비용 덕분에 여전히 인기가 있다.
한계 및 고려 사항
데이터 증강은 효과적이지만, 변환은 레이블을 보존하도록 선택되어야 한다. 예를 들어, 손글씨 숫자의 수평 반전은 '6'을 '9'로 바꿀 수 있어 모델을 오도할 수 있다. 따라서 도메인별 증강이 중요하다. 데이터셋마다 다른 증강 전략이 필요한 경우가 많으며, 부적절한 증강을 사용하면 모델 정확도가 감소할 수 있다.
이미지 분류에서 연구는 수작업 변환에서 AutoAugment와 같은 학습된 증강 정책으로 확장되었으며, 이는 2019년 Google에서 최적 증강 전략을 검색하기 위해 개발되었다.
또한, 여러 도메인에서 데이터 증강은 항상 별도의 테스트 세트에서 검증되어야 하는데, 합성 데이터가 비현실적인 편향을 도입할 수 있기 때문이다. 그럼에도 불구하고 이 기법은 기계 학습 실무자의 기본 도구가 되었다.
의료 영상에서 자율 주행에 이르기까지 다양한 분야에서 광범위하게 사용됨에 따라 데이터 증강은 현대 AI의 기초이다. Amazon Web Services, Azure, Google Cloud와 같은 주요 클라우드 서비스 제공업체의 채택으로 표준 알고리즘이 자동화된 기계 학습 파이프라인에 통합되어 사용자가 사용자 지정 코드를 작성하지 않고도 이러한 기법의 이점을 누릴 수 있게 되었다.
이 기법이 Overfitting을 줄이는 데 효과적이기 때문에 제한된 데이터셋으로 훈련하는 모델에 필수적이며, 생성 모델의 발전이 실제 분포를 밀접하게 모방하는 합성 데이터 생성의 새로운 가능성을 제공함에 따라 계속해서 역동적인 연구 영역으로 남아 있다.
요약하면, 데이터 증강은 데이터 부족, 불균형, 과적합을 해결하는 다재다능하고 강력한 방법이며, 컴퓨터 비전에서 자연어 처리에 이르는 응용 분야를 가진다.