이런 분들이 찾고 있어요
이 레슨과 관련된 학습 키워드
코드를 읽고 설명하면, 합격합니다
이 레슨과 관련된 학습 키워드
딥러닝을 활용한 비전 — 검출에서 세그멘테이션까지 → 이미지 분류
모델 일반화를 향상시키고 과적합을 줄이기 위해 훈련 이미지에 랜덤 변환을 적용합니다.
핵심 질문: 왜 데이터를 "뻥튀기"해야 하는가?
딥러닝 모델은 수백만~수억 개의 파라미터를 학습합니다. 하지만 현실에서 라벨링된 데이터는 항상 부족하죠. 데이터가 적으면 모델은 훈련 데이터를 "암기"해버립니다 — 이것이 과적합(overfitting)입니다.
과적합의 전형적 신호:
Data Augmentation의 원리:
기존 데이터에 변환을 적용해서 "의미적으로 동일하지만 픽셀 수준에서 다른" 새 샘플을 만듭니다.
고양이 사진 1장이 있다고 해보죠:
이렇게 1장으로 수십~수백 장의 학습 데이터를 만들 수 있어요.
데이터 증강이 효과적인 이유 3가지:
1. 데이터 다양성 증가: 모델이 다양한 시점/조명/구도를 학습
2. 과적합 방지: 같은 이미지를 반복하지 않으니 암기가 어려움
3. 불변성(invariance) 학습: "좌우 반전해도 고양이는 고양이"라는 걸 모델이 배움
주의사항: 라벨을 보존하는 변환만 적용해야 합니다!
왜 중요한가? 딥러닝 모델은 데이터가 부족하면 학습 데이터를 외워버립니다(과적합). 직관적으로 "더 많은 데이터를 모으면 해결"이지만, 의료 영상, 위성 사진, 산업 결함 등 많은 도메인에서 데이터 수집은 극도로 비싸거나 물리적으로 불가능합니다. 데이터 증강은 기존 데이터를 변환하여 새로운 학습 샘플을 생성합니다. 핵심은 "라벨을 보존하는 변환"을 적용하는 것입니다. 고양이를 뒤집어도 여전히 고양이이지만, 6을 뒤집으면 9가 됩니다. 이 도메인 지식을 반영한 증강이 데이터 수집 대비 100배 저렴하면서도 유사한 효과를 줍니다.
여러분, 딥러닝 모델을 훈련할 때 가장 큰 고민이 무엇일까요?
바로 데이터가 부족하다는 겁니다.
데이터를 새로 수집하려면 시간과 비용이 엄청나게 들죠.
그림 왼쪽을 보세요.
원본 데이터가 고작 100장뿐이라면 어떤 일이 벌어질까요?
모델이 훈련 데이터를 달달 외워버리는 과적합이 발생합니다.
훈련 정확도는 99퍼센트인데, 검증 정확도는 55퍼센트밖에 안 되는 거죠.
이것이 바로 과적합의 전형적인 증상입니다.
가운데 상자를 보면, 데이터 증강이라는 해결책이 있습니다.
오그멘테이션은 기존 이미지를 회전하고, 뒤집고, 밝기를 바꿔서 새로운 변형을 만들어내는 거예요.
핵심은 라벨은 그대로 유지하면서 외형만 달라진다는 점입니다.
고양이 사진을 뒤집어도 여전히 고양이니까요.
오른쪽 결과를 보세요.
100장이 1000장으로 늘어나면서, 검증 정확도가 88퍼센트로 껑충 올라갑니다.
그리고 이 모든 것이 추가 비용 없이, 기존 데이터만으로 가능합니다.
아래 비교표를 한번 확인해보세요.
증강 전과 후의 차이가 한눈에 보입니다.
데이터 증강은 2012년 알렉스넷 때부터 사실상 필수 기법이 되었습니다.
지금부터 어떤 증강 기법들이 있는지, 하나하나 살펴보겠습니다.
이 레슨을 마치면 여러분도 자신의 프로젝트에 바로 적용할 수 있을 거예요.