Section 7.4가짜 데이터를 만들기
기계 학습 모델이 더 잘 일반화하도록 만드는 가장 좋은 방법은 더 많은 데이터에서 훈련하는 것이다. 물론 실제로 우리가 가진 데이터의 양은 제한되어 있다. 이 문제를 해결하는 한 가지 방법은 가짜 데이터를 만들어 훈련 세트에 추가하는 것이다.
이 접근법은 분류(classification)에 가장 쉽다. 분류기는 복잡하고 고차원인 입력 x를 받아 단일 범주 정체성 y로 요약해야 한다. 이는 분류기가 직면한 주요 과제가 다양한 변환에 불변(invariant)하는 것임을 의미한다. 우리는 훈련 세트의 입력 x를 변환함으로써 새로운 (x, y) 쌍을 쉽게 생성할 수 있다.
반면 다른 많은 과제에는 쉽게 적용되지 않는다. 예를 들어 밀도 추정 문제를 이미 풀지 않은 한, 밀도 추정을 위한 새로운 가짜 데이터를 생성하기란 어렵다.
Section 7.4.1객체 인식과 불변성
데이터셋 증강은 특정 분류 문제인 객체 인식(object recognition)에 특히 효과적인 기술이었다. 이미지는 고차원이며 방대한 범위의 변동 요인을 포함하는데, 그중 많은 것을 쉽게 시뮬레이션할 수 있다.
훈련 이미지를 각 방향으로 몇 픽셀씩 이동(translation)하는 것과 같은 연산은, 합성곱과 풀링으로 모델이 이미 부분적으로 이동 불변하도록 설계되었더라도 종종 일반화를 크게 개선한다. 이미지 회전(rotation)이나 스케일링(scaling) 같은 많은 다른 연산도 상당히 효과적인 것으로 입증되었다.
| 변환 | 설명 | 가르치는 불변성 |
|---|---|---|
| 이동 | 몇 픽셀씩 평행 이동 | 위치 불변성 |
| 회전 | 작은 각도로 회전 | 방향 불변성 |
| 스케일링 | 확대·축소 | 크기 불변성 |
| 노이즈 | 무작위 픽셀 섭동 | 잡음 강건성 |
| 자르기 | 무작위 영역 추출 | 구도 불변성 |
Section 7.4.2레이블을 바꾸는 변환을 피하라
올바른 클래스를 바꾸는 변환을 적용하지 않도록 주의해야 한다. 변환은 입력 x만 바꿔야 하며, 레이블 y는 그대로여야 한다.
광학 문자 인식(OCR) 과제는 "b"와 "d"의 차이, "6"과 "9"의 차이를 인식해야 한다. 따라서 수평 뒤집기(horizontal flip)와 180도 회전은 이 과제의 데이터를 증강하는 적절한 방법이 아니다 — 그 변환들은 "b"를 "d"로, "6"을 "9"로 바꿔버려 레이블을 망가뜨린다.
증강 변환의 선택은 과제에 대한 도메인 지식을 요구한다 — 어떤 불변성이 참이고 어떤 것이 거짓인지 알아야 한다.
Section 7.4.3노이즈 주입
신경망의 입력에 노이즈를 주입하는 것(Sietsma and Dow, 1991)도 데이터 증강의 한 형태로 볼 수 있다. 많은 분류와 일부 회귀 과제에서, 입력에 작은 무작위 노이즈가 추가되어도 과제는 여전히 풀려야 한다.
그러나 신경망은 노이즈에 그다지 강건하지 않은 것으로 입증되었다(Tang and Eliasmith, 2010). 강건성을 개선하는 한 가지 방법은 단순히 입력에 적용된 무작위 노이즈로 훈련하는 것이다.
노이즈가 은닉 유닛(hidden unit)에 적용될 때, 노이즈 주입은 다중 수준의 추상화에서 데이터셋 증강을 수행하는 것으로 볼 수 있다 — 단순히 매개변수를 축소하는 것보다 훨씬 강력할 수 있다. 실제로 앞 절의 강력한 정규화 전략인 드롭아웃은, 노이즈를 곱하여 새로운 입력을 구성하는 과정으로 볼 수 있다.
Section 7.4.4공정한 벤치마크 비교
기계 학습 벤치마크 결과를 비교할 때, 데이터셋 증강의 효과를 고려하는 것이 중요하다. 수작업으로 설계된 증강 계획은 일반화 오류를 극적으로 줄일 수 있다.
알고리즘 A와 B를 비교하려면, 두 알고리즘 모두 동일한 증강 계획으로 평가되어야 한다. A가 증강 없이 잘 안 되고 B가 수많은 합성 변환과 함께 잘 된다면, 그 개선은 알고리즘 B 자체가 아니라 합성 변환에서 왔을 가능성이 높다.
일반적으로 (입력에 가우시안 노이즈를 더하는 것처럼) 보편적으로 적용 가능한 연산은 기계 학습 알고리즘의 일부로 간주되는 반면, (이미지를 무작위로 자르는 것처럼) 한 응용 도메인에 특화된 연산은 별도의 전처리 단계로 간주된다.