합성 데이터 Synthetic data
합성 데이터는 사람이 실제로 만들거나 수집한 데이터가 아니라, AI 모델이나 프로그램이 인공적으로 만들어 낸 데이터다. 주로 AI 모델을 학습시키거나 평가하는 데 쓴다.
어떻게 작동하나
가장 흔한 방식은 성능 좋은 LLM에게 예시와 지침을 주고 질문·답변 쌍, 대화, 문제 풀이 같은 데이터를 대량으로 만들게 하는 것이다. 이렇게 큰 모델(Teacher 모델)이 만든 데이터로 작은 모델(Student 모델)을 학습시키는 것은 Distillation의 한 형태이기도 하다. 만들어진 데이터는 그대로 쓰지 않고, 다른 모델이나 규칙으로 품질을 검사해 틀리거나 중복된 것을 걸러 낸다. 수학·코딩처럼 정답을 자동으로 확인할 수 있는 분야에서는 정답이 맞은 데이터만 남기는 방식이 많이 쓰인다. 이미지·음성·로봇 분야에서는 그래픽 엔진이나 시뮬레이터로 데이터를 만들기도 한다.
왜 중요한가
인터넷에 있는 질 좋은 글은 한정되어 있어서, 모델을 더 키우고 더 잘 가르치려면 새로운 데이터 공급원이 필요하다. 사람이 직접 데이터를 만들고 정답을 다는 일은 비용과 시간이 많이 드는데, 합성 데이터는 이를 훨씬 싸고 빠르게 만들 수 있다. 실제로 구하기 어려운 드문 사례나 특정 언어·분야의 데이터를 일부러 채워 넣을 수도 있다. 개인정보가 담긴 실제 데이터 대신 비슷한 특성을 가진 가짜 데이터를 만들어 쓰면 사생활 침해 위험도 줄일 수 있다.
알아 둘 점
합성 데이터는 그것을 만든 모델의 실수와 편향을 그대로 물려받을 수 있다. 모델이 만든 데이터로만 계속 학습을 반복하면 다양성이 줄고 품질이 떨어질 수 있다는 우려가 있어서, 실제 데이터와 섞어 쓰는 경우가 많다. 그래서 얼마나 많이 만드느냐보다 얼마나 잘 걸러 내느냐가 더 중요하다. 또 일부 AI 서비스는 이용 약관에서 자사 모델의 출력으로 경쟁 모델을 학습시키는 것을 금지하므로 데이터를 만든 모델의 조건도 확인해야 한다.
예시
작은 언어 모델(SLM)을 만드는 회사들은 큰 모델에게 교과서 같은 설명문이나 단계별 풀이가 담긴 문제를 대량으로 쓰게 한 뒤, 이를 걸러 작은 모델의 학습 데이터로 쓰곤 한다. 자율주행이나 휴머노이드 로봇 개발에서는 시뮬레이터 안에서 다양한 날씨·조명·물체 배치를 만들어 학습 데이터를 늘리고, 이렇게 배운 것을 실제 환경에 옮기는 Sim-to-Real 방식과 함께 쓰인다.