학습 데이터를 조금씩 바꾸거나 LLM으로 비슷한 예시를 만들어 양을 늘리는 기법으로, 특정 분야 데이터가 부족해 파인튜닝이나 모델 학습 성능이 잘 나오지 않을 때 쓴다. 이미지 분류에서 시작됐지만 요즘은 LLM으로 합성 데이터를 만드는 방식을 주로 쓴다.
| 방식 | 하는 일 | 예 |
|---|---|---|
| 기존 데이터 변형 | 원본을 조금 바꿔 새 샘플로 쓴다 | 이미지 뒤집기, 동의어 치환, 역번역 |
| LLM 합성 생성 | 원본을 참고해 새 예시를 만든다 | 같은 의도를 다르게 표현한 질문 만들기 |
핵심은 정답(라벨)은 그대로 두고 표현만 바꾸는 것이다. 고양이 사진을 좌우로 뒤집어도 고양이이고, 질문을 다른 말로 바꿔도 의도는 같다. 이런 데이터로 학습하면 모델이 사소한 차이에 덜 흔들린다.
| 데이터 | 대표 방법 |
|---|---|
| 이미지 | 뒤집기, 회전, 자르기, 밝기·색 조정 |
| 텍스트 | 동의어 치환, 역번역(다른 언어로 옮겼다가 되돌리기), 순서 변경 |
| 대화·지시 데이터 | LLM으로 표현을 바꾼 질문·답변 생성 |
이미지는 TensorFlow, PyTorch 같은 학습 도구에 증강 기능이 들어 있다. 학습할 때마다 무작위로 변형해서 넣는 방식이 흔하다.
의료 상담 챗봇에 쓸 실제 데이터가 1,000건뿐이라면, Claude 같은 LLM에 "같은 의도이지만 표현이 다른 질문 10가지를 만들어줘"라고 요청해 10,000건으로 늘릴 수 있다. 다만 무작정 많이 만들기보다 아래 순서를 지켜야 효과가 난다.
| 단계 | 할 일 |
|---|---|
| 1. 평가용 데이터 먼저 떼기 | 실제 데이터 일부를 따로 빼 두고, 여기에는 증강하지 않는다 |
| 2. 생성 | 실제 예시를 보여 주고 표현이나 상황을 바꾼 변형을 요청한다 |
| 3. 거르기 | 중복된 것, 의도가 바뀐 것, 틀린 답을 지운다 |
| 4. 섞어서 학습 | 실제 데이터와 섞어 학습하고, 떼어 둔 실제 데이터로 효과를 확인한다 |
데이터가 적은데 실제 입력은 다양할 것으로 예상될 때 효과가 크다. 반대로 원본에 편향이나 오류가 많으면, 증강은 그 문제까지 그대로 늘린다.
| 상황 | 판단 |
|---|---|
| 실제 데이터가 수백~수천 건뿐 | 증강 권장 |
| 사용자 표현이 제각각인 챗봇 | 증강 권장 |
| 원본 라벨 품질이 낮음 | 원본부터 정리 |
| 사실이 정확해야 하는 분야 | 사람이 꼭 검수 |
숫자 6을 뒤집으면 9가 되고, 단어 하나를 바꿨는데 문장 뜻이 반대가 될 수도 있다. 증강한 뒤에는 일부를 직접 열어 라벨이 맞는지 확인한다. LLM이 만든 데이터만으로 학습하면 표현이 비슷해지고 LLM의 실수까지 배우게 된다. 합성 데이터는 실제 데이터를 보충하는 데만 쓰고, 성능은 반드시 실제 데이터로 잰다.
가장 흔한 건 파인튜닝 데이터가 모자랄 때 채워 넣는 방식이다. 이미지 모델은 학습 설정에 변형을 기본으로 켜 두고, 챗봇·분류 모델은 LLM이나 역번역으로 표현을 늘린 뒤 실제 데이터와 섞는다.
| 어디서 | 어떻게 쓰나 |
|---|---|
| 이미지 모델 학습 | 학습할 때마다 뒤집기·자르기·색 조정을 무작위로 넣어 적은 사진으로도 학습 |
| 분야별 챗봇 파인튜닝 | 실제 문의 수백~수천 건을 LLM으로 다른 표현의 질문으로 늘려 섞어 학습 |
| 텍스트 분류 | 라벨 붙은 문장이 적을 때 동의어 치환·역번역으로 샘플을 보강 |